{"version":3,"sources":["options/formTemplates/labelPlacements.js","components/FormTemplates/FormView/PageForm.jsx","containers/FormTemplates/FormView/PageForm.js","components/FormTemplates/FormView/SectionForm.jsx","containers/FormTemplates/FormView/SectionForm.js","options/formTemplates/questionTypes.js","options/formTemplates/fieldWidths.js","options/formTemplates/labelWidths.js","components/FormTemplates/FormView/Settings.jsx","components/FormTemplates/FormView/FieldForm.jsx","containers/FormTemplates/FormView/FieldForm.js","options/formTemplates/sideDrawerItems.js","components/FormTemplates/FormView/Field.jsx","components/FormTemplates/FormView/index.jsx","containers/FormTemplates/FormView/index.js","helpers/formTemplates.jsx","components/FormTemplates/Select/Filter.jsx","containers/FormTemplates/Select/Filter.js","components/FormTemplates/Select/index.jsx","containers/FormTemplates/Select/index.js"],"names":["templateLabelPlacements","Default","LeftOfField","fieldLabelPlacements","BasedOnForm","FormView","React","constructor","props","_this","super","this","state","getItemId","_this$state$item","_this$props$linkTarge","item","id","linkTargetRecord","find","Boolean","fetchItem","async","itemId","arguments","length","undefined","responses","Promise","all","getItem","catch","error","_this$props$onCancel","_this$props","onCancel","call","resourceNotFound","newItem","name","concat","t","parentRecord","formPages","position","formPageSections","getSettings","type","setState","value","data","fieldSettings","showError","handleSubmit","createHandleSubmit","componentDidMount","render","_jsx","_Spin","createLabel","createLabelFactory","createFieldDecorator","createFieldFactory","form","readOnly","isReadOnly","_jsxs","_Form","layout","colon","onSubmit","stopEvent","children","className","ValidationError","errors","validationErrors","Item","label","_Input","autoFocus","InputNumber","min","max","isNil","_Button","onClick","_Tooltip","title","placement","htmlType","loading","saveAndCloseButtonLoading","create","createChildFormViewContainer","actions","Component","pageId","headerBackgroundColor","headerForegroundColor","overrideFormColor","contentBackgroundColor","contentForegroundColor","headerFontName","headerFontSize","boldHeader","italicHeader","underlineHeader","showSectionBorder","numberOfColumns","formQuestions","cloneDeep","_this$props$rootRecor","_this$props$rootRecor2","rootRecord","formForegroundColor","formBackgroundColor","setItemValue","produce","draft","set","setFieldsValue","siblingRecords","one","Select","onChange","allowClear","map","each","Option","getOptionProps","_Tabs","defaultActiveKey","TabPane","tab","forceRender","defaultPageId","Row","Col","xs","placeholder","fontNames","style","fontFamily","valuePropName","Checkbox","gutter","ColorPicker","foreground","e","target","checked","disabled","Textbox","Textarea","NumberInput","Dropdown","Date","Time","DateTime","SingleSelection","MultipleSelection","Hyperlink","Paragraph","OneQuarter","OneThird","OneHalf","TwoThirds","ThreeQuarters","Full","Settings","dtoFieldName","recordLabelLanguageKey","recordInfoLanguageKey","fetchSettings","response","size","allowInput","includes","questionType","_Fragment","_Radio","Group","fieldWidthType","Object","entries","fieldWidths","_ref","key","Button","labelPlacementType","_ref2","labelWidthType","labelWidths","_ref3","connect","transformSaveItemParams","values","required","allowRequired","defaultBoolean","formQuestionOptions","get","split","filter","isEmpty","v","i","a","indexOf","index","_this$state$formQuest","_this$props$parentRec","_item$formQuestionOpt","createQuestion","sectionId","orderBy","join","overrideSectionColor","_this$props$parentRec2","_this$props$parentRec3","_this$props$parentRec4","foregroundColor","backgroundColor","defaultText","formPageSection","any","some","questionTypes","page","OptGroup","TextArea","rows","uniq","line","languageKey","icon","outlined","question","color","defaultValue","placeholderText","height","_InputNumber","defaultNumber","defaultTo","minValue","maxValue","step","Math","pow","decimalPlaces","_Select","_question$formQuestio","_DatePicker","showTime","_TimePicker","format","use12Hours","_Checkbox","defaultChecked","cx","text","_question$formQuestio2","_question$formQuestio3","fontName","fontSize","fontWeight","bold","fontStyle","italic","textDecoration","underline","opacity","href","questionOption","rel","whiteSpace","Container","styled","div","_templateObject","_taggedTemplateLiteral","Section","_Card","_templateObject2","Actions","_templateObject3","Line","_templateObject4","isDraggingOver","LineItem","_templateObject5","isDragging","SideLine","_templateObject6","SideLineItem","_templateObject7","forEach","formPage","_formPage$formPageSec","unset","formTemplateId","_formPageSection$form","formQuestion","_formQuestion$formQue","formQuestionOption","questionId","_this$props$linkTarge2","templateId","settingsType","getFormGroups","getUserGroups","seed","now","formGroups","userGroups","_this$props$onSave","_this$props2","onSave","updateStatus","showClientNotifications","_this$props$onSave2","_this$props3","handleActionsMenuClick","copyFromExistingVisible","copyFromExistingSelectedRecord","_message","warn","handlePageDrawerSaveAndClose","saved","remove","splice","pageDrawerVisible","handleSectionDrawerSaveAndClose","sectionDrawerVisible","handleFieldDrawerSaveAndClose","snapshot","eachPage","eachSection","flatMap","sortFormQuestions","fieldDrawerVisible","message","_notification","description","console","deleteFormPage","pageIndex","Modal","confirm","autoFocusButton","okType","okText","cancelText","onOk","deleteFormPageSection","sectionIndex","deleteFormQuestion","handlePageDrawerClose","pageDrawerLinkTargetRecord","handleFieldDrawerClose","fieldDrawerLinkTargetRecord","fieldDrawerParentRecord","handleSectionDrawerClose","sectionDrawerLinkTargetRecord","sectionDrawerParentRecord","duplicateQuestion","cloned","push","handleCopyFromExisting","copyFromLabelTemplateRecordLoading","footer","then","r","createHandleEditPageClick","pageDrawerTitle","createHandleAddSectionClick","sectionDrawerTitle","createHandleEditSectionClick","createHandleAddFieldClick","fieldDrawerTitle","createHandleAddPageClick","handleDragEnd","_ref4","draggableId","source","destination","isEqual","JSON","parse","sourceIds","droppableId","destinationIds","section","from","findIndex","range","changeFieldSettings","questions","extractFormQuestions","assign","getTotalWidth","containerRef","_item$instanceCount","_this$state$formGroup","_this$state$userGroup","_formTemplate$formPag","instanceCount","formTemplate","DragDropContext","onDragEnd","ref","_Dropdown","overlay","_Menu","trigger","Icon","_Alert","showIcon","lg","validateTrigger","displayName","_ref5","HARD_SPACE","active","tabBarExtraContent","focusedId","_formPage$formPageSec2","numberOfLines","extra","getSectionProps","Array","keys","Droppable","stringify","direction","isDropDisabled","provided","innerRef","droppableProps","fieldWidth","labelWidth","inputWidth","getWidths","getLabel","focused","setFocusId","handleEdit","Draggable","isDragDisabled","_label$props","draggableProps","dragHandleProps","labelCol","span","wrapperCol","onMouseEnter","onMouseLeave","help","_Popover","content","Field","FormButtons","saveButtonLoading","Drawer","getContainer","current","visible","sideDrawer","row","col","sideDrawerItems","onClose","PageForm","onSaveAndClose","SectionForm","FieldForm","okButtonProps","copyFromExistingLoading","width","SelectFormTemplate","onSelect","filterProps","allowFilterByStatus","createFormViewContainer","extraDispatchToProps","dispatch","params","formInstanceId","formGroupActions","getOptions","userGroupActions","getFormTemplates","allowHighlight","allowAttachment","template","bordered","headStyle","bodyStyle","getFieldWidth","getLabelWidth","getInputWidth","reduce","acc","unsorted","injected","_injected$line","grid","questionIndex","rowIndex","colIndex","Error","flat","isValidAnswer","formAnswer","_formAnswer$value","toLower","trim","Filter","setFilterValue","createSetFilterValue","_this$props$formGroup","filterDto","third","formGroupId","statusOptions","mapStateToProps","createAuthStateToProps","selectors","selectOptions","createListModalComponent","getStorageKey","self","getSettingsType","initialFilterDto","versionType","createListModalContainer"],"mappings":"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","file":"static/js/14.a2cf7eda.chunk.js","sourcesContent":["export const templateLabelPlacements = {\r\n Default: 'default',\r\n LeftOfField: 'leftOfField',\r\n}\r\n\r\nexport const fieldLabelPlacements = {\r\n BasedOnForm: 'formSetting',\r\n Default: 'default',\r\n LeftOfField: 'leftOfField',\r\n}\r\n","import * as React from 'react'\r\nimport { Form, Input, Spin, Button, Tooltip } from 'antd'\r\nimport { isNil } from 'lodash'\r\nimport { showError, resourceNotFound, ValidationError } from 'helpers/errors'\r\nimport { createLabelFactory, createFieldFactory, createHandleSubmit, isReadOnly } from 'helpers/formViews'\r\nimport { t } from 'helpers/i18n'\r\nimport { stopEvent } from 'helpers/events'\r\nimport InputNumber from 'elements/InputNumber'\r\n\r\nclass FormView extends React.Component {\r\n state = {}\r\n\r\n constructor(props) {\r\n super(props)\r\n\r\n this.handleSubmit = createHandleSubmit(this)\r\n }\r\n\r\n componentDidMount() {\r\n this.fetchItem()\r\n }\r\n\r\n getItemId = () => [this.state.item?.id, this.props.linkTargetRecord?.id].find(Boolean)\r\n\r\n fetchItem = async ({ itemId = this.getItemId() } = {}) => {\r\n try {\r\n const responses = await Promise.all([\r\n itemId\r\n ? this.props.getItem(itemId).catch((error) => {\r\n this.props.onCancel?.()\r\n throw error\r\n })\r\n : !this.props.linkTargetRecord\r\n ? this.props.newItem({\r\n name: `${t('page')} ${this.props.parentRecord.formPages.length + 1}`,\r\n position: this.props.parentRecord.formPages.length + 1,\r\n formPageSections: [],\r\n })\r\n : resourceNotFound(this),\r\n this.props.getSettings({ type: 'page' }),\r\n ])\r\n\r\n this.setState({\r\n item: responses[0].value.data,\r\n fieldSettings: responses[1].value.data.fieldSettings,\r\n })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n\r\n render() {\r\n const { parentRecord } = this.props\r\n const { item, fieldSettings } = this.state\r\n\r\n if (!item || !fieldSettings) {\r\n return \r\n }\r\n\r\n const createLabel = createLabelFactory(fieldSettings)\r\n const createFieldDecorator = createFieldFactory(this.props.form, item, fieldSettings)\r\n const readOnly = isReadOnly(this)\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n {createFieldDecorator('name')()}\r\n \r\n \r\n {createFieldDecorator('position')(\r\n \r\n )}\r\n \r\n
\r\n
\r\n {' '}\r\n {!readOnly && (\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Form.create()(FormView)\r\n","import actions from 'actions/formTemplates'\r\nimport { createChildFormViewContainer } from 'factories/ChildFormView'\r\nimport Component from 'components/FormTemplates/FormView/PageForm'\r\n\r\nexport default createChildFormViewContainer({ actions })(Component)\r\n","import * as React from 'react'\r\nimport produce from 'immer'\r\nimport { Form, Input, Spin, Button, Tooltip, Tabs } from 'antd'\r\nimport { set, cloneDeep } from 'lodash'\r\nimport { showError, resourceNotFound, ValidationError } from 'helpers/errors'\r\nimport { createLabelFactory, createFieldFactory, createHandleSubmit, isReadOnly } from 'helpers/formViews'\r\nimport fontNames from 'options/fontNames'\r\nimport { t } from 'helpers/i18n'\r\nimport { stopEvent } from 'helpers/events'\r\nimport InputNumber from 'elements/InputNumber'\r\nimport Select, { Option, getOptionProps } from 'elements/Select'\r\nimport Checkbox from 'elements/Checkbox'\r\nimport ColorPicker from 'elements/ColorPicker'\r\nimport { Row, Col } from 'elements/Grid'\r\n\r\nclass FormView extends React.Component {\r\n state = {}\r\n\r\n constructor(props) {\r\n super(props)\r\n\r\n this.handleSubmit = createHandleSubmit(this)\r\n }\r\n\r\n componentDidMount() {\r\n this.fetchItem()\r\n }\r\n\r\n getItemId = () => [this.state.item?.id, this.props.linkTargetRecord?.id].find(Boolean)\r\n\r\n fetchItem = async ({ itemId = this.getItemId() } = {}) => {\r\n try {\r\n const responses = await Promise.all([\r\n itemId\r\n ? this.props.getItem(itemId).catch((error) => {\r\n this.props.onCancel?.()\r\n throw error\r\n })\r\n : !this.props.linkTargetRecord\r\n ? this.props.newItem({\r\n pageId: this.props.parentRecord.id,\r\n position: this.props.parentRecord.formPageSections.length + 1,\r\n name: `${t('section')} ${this.props.parentRecord.formPageSections.length + 1}`,\r\n headerBackgroundColor: '#E0E0E0',\r\n headerForegroundColor: '#333333',\r\n overrideFormColor: false,\r\n contentBackgroundColor: '#FFFFFF',\r\n contentForegroundColor: '#333333',\r\n headerFontName: '',\r\n headerFontSize: 16,\r\n boldHeader: true,\r\n italicHeader: false,\r\n underlineHeader: false,\r\n showSectionBorder: true,\r\n numberOfColumns: 0,\r\n formQuestions: [],\r\n })\r\n : resourceNotFound(this),\r\n this.props.getSettings({ type: 'section' }),\r\n ])\r\n\r\n const item = cloneDeep(responses[0].value.data)\r\n\r\n if (!item.overrideFormColor) {\r\n item.contentForegroundColor = this.props.rootRecord?.formForegroundColor\r\n item.contentBackgroundColor = this.props.rootRecord?.formBackgroundColor\r\n }\r\n\r\n this.setState({\r\n item,\r\n fieldSettings: responses[1].value.data.fieldSettings,\r\n })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n\r\n setItemValue = (name, value) =>\r\n this.setState(\r\n produce((draft) => {\r\n set(draft.item, name, value)\r\n\r\n this.props.form.setFieldsValue({ [name]: value })\r\n })\r\n )\r\n\r\n render() {\r\n const { rootRecord } = this.props\r\n const { item, fieldSettings } = this.state\r\n\r\n if (!item || !fieldSettings) {\r\n return \r\n }\r\n\r\n const createLabel = createLabelFactory(fieldSettings)\r\n const createFieldDecorator = createFieldFactory(this.props.form, item, fieldSettings)\r\n const readOnly = isReadOnly(this)\r\n\r\n const siblingRecords = rootRecord.formPages.find((one) => one.id === item.pageId).formPageSections\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n {createFieldDecorator('pageId')(\r\n this.setItemValue('pageId', value)}\r\n readOnly={readOnly}\r\n allowClear={false}\r\n >\r\n {rootRecord.formPages.map((each) => (\r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('name')()}\r\n \r\n \r\n {createFieldDecorator('position')(\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {createFieldDecorator('headerFontName')(\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('headerFontSize')()}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {createFieldDecorator('boldHeader', { valuePropName: 'checked' })(\r\n {createLabel('boldHeader')}\r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('underlineHeader', { valuePropName: 'checked' })(\r\n {createLabel('underlineHeader')}\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {createFieldDecorator('italicHeader', { valuePropName: 'checked' })(\r\n {createLabel('italicHeader')}\r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('showSectionBorder', { valuePropName: 'checked' })(\r\n {createLabel('showSectionBorder')}\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.setItemValue('headerBackgroundColor', value)}\r\n readOnly={readOnly}\r\n />\r\n \r\n \r\n this.setItemValue('headerForegroundColor', value)}\r\n readOnly={readOnly}\r\n foreground\r\n />\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('overrideFormColor', { valuePropName: 'checked' })(\r\n this.setItemValue('overrideFormColor', e.target.checked)}\r\n readOnly={readOnly}\r\n >\r\n {createLabel('overrideFormColor')}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n this.setItemValue('contentBackgroundColor', value)}\r\n readOnly={readOnly}\r\n disabled={!item.overrideFormColor}\r\n />\r\n \r\n \r\n this.setItemValue('contentForegroundColor', value)}\r\n readOnly={readOnly}\r\n disabled={!item.overrideFormColor}\r\n foreground\r\n />\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {' '}\r\n {!readOnly && (\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Form.create()(FormView)\r\n","import actions from 'actions/formTemplates'\r\nimport { createChildFormViewContainer } from 'factories/ChildFormView'\r\nimport Component from 'components/FormTemplates/FormView/SectionForm'\r\n\r\nexport default createChildFormViewContainer({ actions })(Component)\r\n","export default {\r\n Textbox: 'textBox',\r\n Textarea: 'textArea',\r\n NumberInput: 'numberInput',\r\n Dropdown: 'dropDown',\r\n Checkbox: 'checkBox',\r\n Date: 'date',\r\n Time: 'time',\r\n DateTime: 'dateAndTime',\r\n SingleSelection: 'optionGroupSingleSelection',\r\n MultipleSelection: 'optionGroupMultipleSelection',\r\n Hyperlink: 'hyperlink',\r\n Paragraph: 'paragraph',\r\n}\r\n","export default {\r\n OneQuarter: 'oneQuarterFraction',\r\n OneThird: 'oneThirdFraction',\r\n OneHalf: 'oneHalfFraction',\r\n TwoThirds: 'twoThirdsFraction',\r\n ThreeQuarters: 'threeQuartersFraction',\r\n Full: 'full',\r\n}\r\n","export default {\r\n OneQuarter: 'oneQuarterFraction',\r\n OneThird: 'oneThirdFraction',\r\n OneHalf: 'oneHalfFraction',\r\n TwoThirds: 'twoThirdsFraction',\r\n ThreeQuarters: 'threeQuartersFraction',\r\n}\r\n","import * as React from 'react'\r\nimport { connect } from 'react-redux'\r\nimport { Form, Radio } from 'antd'\r\nimport produce from 'immer'\r\nimport { set } from 'lodash'\r\nimport { showError } from 'helpers/errors'\r\nimport { createLabelFactory, isReadOnly } from 'helpers/formViews'\r\nimport fieldWidths from 'options/formTemplates/fieldWidths'\r\nimport { fieldLabelPlacements } from 'options/formTemplates/labelPlacements'\r\nimport labelWidths from 'options/formTemplates/labelWidths'\r\nimport actions from 'actions/formTemplates'\r\nimport { t } from 'helpers/i18n'\r\n\r\nclass Settings extends React.Component {\r\n state = {\r\n fieldSettings: [\r\n {\r\n dtoFieldName: 'fieldWidthType',\r\n recordLabelLanguageKey: 'fieldWidth',\r\n recordInfoLanguageKey: 'fieldWidthInfo',\r\n },\r\n {\r\n dtoFieldName: 'labelPlacementType',\r\n recordLabelLanguageKey: 'labelPlacement',\r\n recordInfoLanguageKey: 'labelPlacementInfo',\r\n },\r\n {\r\n dtoFieldName: 'labelWidthType',\r\n recordLabelLanguageKey: 'labelWidth',\r\n recordInfoLanguageKey: 'labelWidthInfo',\r\n },\r\n ],\r\n }\r\n\r\n componentDidMount() {\r\n this.fetchSettings()\r\n }\r\n\r\n fetchSettings = async () => {\r\n try {\r\n const response = await this.props.getSettings({ type: 'field' })\r\n\r\n this.setState({ fieldSettings: response.value.data.fieldSettings })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n\r\n setItemValue = (name, value) =>\r\n this.props.onChange(\r\n produce(this.props.item, (draft) => {\r\n set(draft, name, value)\r\n })\r\n )\r\n\r\n render() {\r\n const { item, rootRecord, size = 'default' } = this.props\r\n\r\n const createLabel = createLabelFactory(this.state.fieldSettings)\r\n const readOnly = isReadOnly(this)\r\n\r\n const allowInput = !['Hyperlink', 'Paragraph'].includes(item.questionType)\r\n\r\n return (\r\n <>\r\n \r\n readOnly || this.setItemValue('fieldWidthType', e.target.value)}\r\n size={size}\r\n >\r\n {Object.entries(fieldWidths).map(([key, value]) => (\r\n \r\n {t(value)}\r\n \r\n ))}\r\n \r\n \r\n {allowInput && (\r\n <>\r\n \r\n readOnly || this.setItemValue('labelPlacementType', e.target.value)}\r\n size={size}\r\n >\r\n {Object.entries(fieldLabelPlacements).map(([key, value]) => (\r\n \r\n {t(value)}\r\n \r\n ))}\r\n \r\n \r\n \r\n readOnly || this.setItemValue('labelWidthType', e.target.value)}\r\n disabled={\r\n item.labelPlacementType === 'Default' ||\r\n (item.labelPlacementType === 'BasedOnForm' && rootRecord.labelPlacementType === 'Default')\r\n }\r\n size={size}\r\n >\r\n {Object.entries(labelWidths).map(([key, value]) => (\r\n \r\n {t(value)}\r\n \r\n ))}\r\n \r\n \r\n \r\n )}\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default connect(null, { getSettings: actions.getSettings })(Settings)\r\n","import * as React from 'react'\r\nimport produce from 'immer'\r\nimport { Form, Input, Spin, Button, Tooltip, Tabs } from 'antd'\r\nimport { get, set, uniq, cloneDeep, orderBy, isEmpty } from 'lodash'\r\nimport { showError, resourceNotFound, ValidationError } from 'helpers/errors'\r\nimport { createLabelFactory, createFieldFactory, createHandleSubmit, isReadOnly } from 'helpers/formViews'\r\nimport questionTypes from 'options/formTemplates/questionTypes'\r\nimport fontNames from 'options/fontNames'\r\nimport { createQuestion, allowRequired } from 'helpers/formTemplates'\r\nimport { t } from 'helpers/i18n'\r\nimport { stopEvent } from 'helpers/events'\r\nimport InputNumber from 'elements/InputNumber'\r\nimport Select, { Option, OptGroup, getOptionProps } from 'elements/Select'\r\nimport Checkbox from 'elements/Checkbox'\r\nimport Settings from './Settings'\r\nimport ColorPicker from 'elements/ColorPicker'\r\nimport { Row, Col } from 'elements/Grid'\r\n\r\nclass FormView extends React.Component {\r\n state = {}\r\n\r\n constructor(props) {\r\n super(props)\r\n\r\n this.handleSubmit = createHandleSubmit(this)\r\n }\r\n\r\n componentDidMount() {\r\n this.fetchItem()\r\n }\r\n\r\n transformSaveItemParams = ({ item, values }) => ({\r\n required: allowRequired(item) ? values.required : false,\r\n defaultBoolean: Boolean(values.defaultBoolean),\r\n formQuestionOptions: get(values, 'formQuestionOptions', '')\r\n .split(/[\\r\\n]/)\r\n .filter((each) => !isEmpty(each))\r\n .filter((v, i, a) => a.indexOf(v) === i) // uniq\r\n .map((name, index) => ({\r\n id: this.state.formQuestionOptions.find((one) => one.name === name)?.id,\r\n name,\r\n value: name,\r\n position: index + 1,\r\n })),\r\n })\r\n\r\n getItemId = () => [this.state.item?.id, this.props.linkTargetRecord?.id].find(Boolean)\r\n\r\n fetchItem = async ({ itemId = this.getItemId() } = {}) => {\r\n try {\r\n const responses = await Promise.all([\r\n itemId\r\n ? this.props.getItem(itemId).catch((error) => {\r\n this.props.onCancel?.()\r\n throw error\r\n })\r\n : !this.props.linkTargetRecord\r\n ? this.props.newItem(createQuestion({ sectionId: this.props.parentRecord?.id }))\r\n : resourceNotFound(this),\r\n this.props.getSettings({ type: 'field' }),\r\n ])\r\n\r\n const item = cloneDeep(responses[0].value.data)\r\n\r\n const formQuestionOptions = item?.formQuestionOptions ?? []\r\n\r\n item.formQuestionOptions = orderBy(formQuestionOptions, ['position'])\r\n .map((each) => each.name)\r\n .join('\\n')\r\n\r\n item.defaultBoolean = item.defaultBoolean ? 1 : 0\r\n\r\n if (!item.overrideSectionColor) {\r\n const { overrideFormColor } = this.props.parentRecord ?? {}\r\n\r\n item.foregroundColor =\r\n item.questionType === 'Hyperlink'\r\n ? '#0080FF'\r\n : overrideFormColor\r\n ? this.props.parentRecord?.contentForegroundColor\r\n : this.props.rootRecord?.formForegroundColor\r\n item.backgroundColor = overrideFormColor\r\n ? this.props.parentRecord?.contentBackgroundColor\r\n : this.props.rootRecord?.formBackgroundColor\r\n }\r\n\r\n this.setState({\r\n item,\r\n fieldSettings: responses[1].value.data.fieldSettings,\r\n formQuestionOptions,\r\n })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n\r\n setItemValue = (name, value) =>\r\n this.setState(\r\n produce((draft) => {\r\n set(draft.item, name, value)\r\n\r\n this.props.form.setFieldsValue({ [name]: value })\r\n }),\r\n () => {\r\n if (name === 'formQuestionOptions') {\r\n const options = value.split(/[\\r\\n]/).filter((each) => !isEmpty(each))\r\n\r\n if (!options.includes(this.state.item.defaultText)) {\r\n this.setItemValue('defaultText', '')\r\n }\r\n }\r\n }\r\n )\r\n\r\n render() {\r\n const { rootRecord } = this.props\r\n const { item, fieldSettings } = this.state\r\n\r\n if (!item || !fieldSettings) {\r\n return \r\n }\r\n\r\n const createLabel = createLabelFactory(fieldSettings)\r\n const createFieldDecorator = createFieldFactory(this.props.form, item, fieldSettings)\r\n const readOnly = isReadOnly(this)\r\n\r\n const formPage = rootRecord.formPages.find((any) =>\r\n any.formPageSections.some((one) => one.id === item.sectionId)\r\n )\r\n\r\n const formPageSection = formPage.formPageSections.find((one) => one.id === item.sectionId)\r\n\r\n const allowInput = !['Hyperlink', 'Paragraph'].includes(item.questionType)\r\n\r\n return (\r\n
\r\n
\r\n \r\n \r\n {createFieldDecorator('questionType')(\r\n this.setItemValue('questionType', value)}\r\n allowClear={false}\r\n readOnly={readOnly}\r\n >\r\n {Object.entries(questionTypes).map(([key, value]) => (\r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n {createFieldDecorator('sectionId')(\r\n this.setItemValue('sectionId', value)}\r\n allowClear={false}\r\n readOnly={readOnly}\r\n >\r\n {rootRecord.formPages.map((page) => (\r\n \r\n {page.formPageSections.map((each) => (\r\n \r\n ))}\r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('text')()}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('line')(\r\n this.setItemValue('line', value)}\r\n min={0}\r\n max={uniq(formPageSection.formQuestions.map((each) => each.line)).length + 1}\r\n readOnly={readOnly}\r\n />\r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('position')(\r\n each.line === item.line).length + 1\r\n }\r\n readOnly={readOnly}\r\n />\r\n )}\r\n \r\n \r\n \r\n {item.questionType === 'Hyperlink' && (\r\n \r\n {createFieldDecorator('questionOption')()}\r\n \r\n )}\r\n {item.questionType === 'NumberInput' && (\r\n <>\r\n \r\n \r\n \r\n {createFieldDecorator('minValue')()}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('maxValue')()}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {createFieldDecorator('decimalPlaces')()}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('defaultNumber')(\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n )}\r\n {['Textbox', 'Textarea', 'Dropdown', 'Date', 'Time', 'DateTime'].includes(\r\n item.questionType\r\n ) && (\r\n \r\n {createFieldDecorator('placeholderText')()}\r\n \r\n )}\r\n {['Textbox', 'Textarea'].includes(item.questionType) && (\r\n \r\n {createFieldDecorator('defaultText')()}\r\n \r\n )}\r\n {['Dropdown', 'SingleSelection'].includes(item.questionType) && (\r\n \r\n {createFieldDecorator('defaultText')(\r\n \r\n )}\r\n \r\n )}\r\n {item.questionType === 'Checkbox' && (\r\n \r\n {createFieldDecorator('defaultBoolean')(\r\n \r\n )}\r\n \r\n )}\r\n {!['MultipleSelection', 'Hyperlink', 'Paragraph'].includes(item.questionType) && (\r\n \r\n {createFieldDecorator('required', { valuePropName: 'checked' })(\r\n {createLabel('required')}\r\n )}\r\n \r\n )}\r\n \r\n \r\n this.setState({ item: value })}\r\n rootRecord={rootRecord}\r\n readOnly={readOnly}\r\n />\r\n {item.questionType === 'Textarea' && (\r\n \r\n \r\n \r\n {createFieldDecorator('height')()}\r\n \r\n \r\n \r\n )}\r\n {allowInput && (\r\n \r\n {createFieldDecorator('allowAttachment', { valuePropName: 'checked' })(\r\n {createLabel('allowAttachment')}\r\n )}\r\n \r\n )}\r\n {!['SingleSelection', 'MultipleSelection', 'Hyperlink', 'Paragraph', 'Checkbox'].includes(\r\n item.questionType\r\n ) && (\r\n \r\n {createFieldDecorator('allowHighlight', { valuePropName: 'checked' })(\r\n {createLabel('allowHighlight')}\r\n )}\r\n \r\n )}\r\n {!allowInput && (\r\n <>\r\n \r\n \r\n \r\n {createFieldDecorator('fontName')(\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('fontSize')()}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {createFieldDecorator('bold', { valuePropName: 'checked' })(\r\n {createLabel('bold')}\r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('underline', { valuePropName: 'checked' })(\r\n {createLabel('underline')}\r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('italic', { valuePropName: 'checked' })(\r\n {createLabel('italic')}\r\n )}\r\n \r\n \r\n {createFieldDecorator('overrideSectionColor', { valuePropName: 'checked' })(\r\n this.setItemValue('overrideSectionColor', e.target.checked)}\r\n readOnly={readOnly}\r\n >\r\n {item.questionType === 'Hyperlink'\r\n ? t('overrideHyperlinkColor')\r\n : createLabel('overrideSectionColor')}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n this.setItemValue('backgroundColor', value)}\r\n readOnly={readOnly}\r\n disabled={!item.overrideSectionColor}\r\n />\r\n \r\n \r\n this.setItemValue('foregroundColor', value)}\r\n readOnly={readOnly}\r\n disabled={!item.overrideSectionColor}\r\n foreground\r\n />\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {['Dropdown', 'SingleSelection', 'MultipleSelection'].includes(item.questionType) && (\r\n \r\n \r\n {createFieldDecorator('formQuestionOptions')(\r\n this.setItemValue('formQuestionOptions', e.target.value)}\r\n rows={10}\r\n readOnly={readOnly}\r\n />\r\n )}\r\n \r\n \r\n )}\r\n \r\n
\r\n
\r\n {' '}\r\n {!readOnly && (\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Form.create()(FormView)\r\n","import actions from 'actions/formTemplates'\r\nimport { createChildFormViewContainer } from 'factories/ChildFormView'\r\nimport Component from 'components/FormTemplates/FormView/FieldForm'\r\n\r\nexport default createChildFormViewContainer({ actions })(Component)\r\n","export default [\r\n { questionType: 'Textbox', languageKey: 'textBox', icon: 'text_fields' },\r\n { questionType: 'Textarea', languageKey: 'textArea', icon: 'subject' },\r\n { questionType: 'NumberInput', languageKey: 'numberInput', icon: 'money' },\r\n {\r\n questionType: 'Dropdown',\r\n languageKey: 'dropDown',\r\n icon: 'arrow_drop_down_circle',\r\n outlined: true,\r\n },\r\n { questionType: 'Checkbox', languageKey: 'checkBox', icon: 'check_box' },\r\n { questionType: 'Date', languageKey: 'date', icon: 'event' },\r\n { questionType: 'Time', languageKey: 'time', icon: 'schedule' },\r\n { questionType: 'DateTime', languageKey: 'dateAndTime', icon: 'date_range' },\r\n { questionType: 'SingleSelection', languageKey: 'singleSelection', icon: 'format_list_bulleted' },\r\n {\r\n questionType: 'MultipleSelection',\r\n languageKey: 'multiSelection',\r\n icon: 'ballot',\r\n outlined: true,\r\n },\r\n { questionType: 'Hyperlink', languageKey: 'hyperlink', icon: 'link' },\r\n { questionType: 'Paragraph', languageKey: 'paragraph', icon: 'code' },\r\n]\r\n","import cx from 'clsx'\r\nimport { Input, InputNumber, Checkbox, DatePicker, TimePicker, Select, Radio } from 'antd'\r\nimport { defaultTo } from 'lodash'\r\n\r\nfunction Component(props) {\r\n const { question = {}, layout = 'vertical', color } = props\r\n\r\n if (question.questionType === 'Textarea') {\r\n return (\r\n \r\n )\r\n }\r\n\r\n if (question.questionType === 'NumberInput') {\r\n return (\r\n \r\n )\r\n }\r\n\r\n if (question.questionType === 'Dropdown') {\r\n return (\r\n \r\n {(question?.formQuestionOptions ?? []).map((each) => (\r\n \r\n {each.name}\r\n \r\n ))}\r\n \r\n )\r\n }\r\n\r\n if (question.questionType === 'Date') {\r\n return \r\n }\r\n\r\n if (question.questionType === 'DateTime') {\r\n return \r\n }\r\n\r\n if (question.questionType === 'Time') {\r\n return (\r\n \r\n )\r\n }\r\n\r\n if (question.questionType === 'Checkbox') {\r\n return (\r\n \r\n {layout === 'vertical' ? (\r\n \r\n {question.text}\r\n \r\n ) : null}\r\n \r\n )\r\n }\r\n\r\n if (question.questionType === 'SingleSelection') {\r\n return (\r\n \r\n {(question?.formQuestionOptions ?? []).map((each) => (\r\n \r\n {each.name}\r\n \r\n ))}\r\n \r\n )\r\n }\r\n\r\n if (question.questionType === 'MultipleSelection') {\r\n return (\r\n \r\n {(question?.formQuestionOptions ?? []).map((each) => (\r\n \r\n {each.name}\r\n \r\n ))}\r\n \r\n )\r\n }\r\n\r\n if (question.questionType === 'Hyperlink') {\r\n return (\r\n \r\n {question.text}\r\n \r\n )\r\n }\r\n\r\n if (question.questionType === 'Paragraph') {\r\n return (\r\n \r\n {question.text}\r\n \r\n )\r\n }\r\n\r\n return (\r\n \r\n )\r\n}\r\n\r\nexport default Component\r\n","import * as React from 'react'\r\nimport styled from 'styled-components'\r\nimport {\r\n Form,\r\n Input,\r\n Spin,\r\n Button,\r\n Dropdown,\r\n Menu,\r\n Tabs,\r\n Tooltip,\r\n Alert,\r\n Popover,\r\n Card,\r\n message,\r\n notification,\r\n} from 'antd'\r\nimport { set, orderBy, cloneDeep, range, max, isEmpty, isEqual, remove, unset, get } from 'lodash'\r\nimport produce from 'immer'\r\nimport { DragDropContext, Droppable, Draggable } from 'react-beautiful-dnd'\r\nimport { showError, resourceNotFound, ValidationError, showClientNotifications } from 'helpers/errors'\r\nimport { createLabelFactory, createFieldFactory, createHandleSubmit, isReadOnly } from 'helpers/formViews'\r\nimport { HARD_SPACE } from 'helpers/utils'\r\nimport { templateLabelPlacements } from 'options/formTemplates/labelPlacements'\r\nimport FormButtons from 'elements/FormButtons'\r\nimport Select, { Option, getOptionProps } from 'elements/Select'\r\nimport Checkbox from 'elements/Checkbox'\r\nimport Icon from 'elements/Icon'\r\nimport Drawer from 'elements/Drawer'\r\nimport PageForm from 'containers/FormTemplates/FormView/PageForm'\r\nimport SectionForm from 'containers/FormTemplates/FormView/SectionForm'\r\nimport FieldForm from 'containers/FormTemplates/FormView/FieldForm'\r\nimport Modal from 'elements/Modal'\r\nimport { Row, Col } from 'elements/Grid'\r\nimport {\r\n getLabel,\r\n getSectionProps,\r\n getWidths,\r\n sortFormQuestions,\r\n createQuestion,\r\n getTotalWidth,\r\n allowRequired,\r\n extractFormQuestions,\r\n} from 'helpers/formTemplates'\r\nimport sideDrawerItems from 'options/formTemplates/sideDrawerItems'\r\nimport { t } from 'helpers/i18n'\r\nimport { stopEvent } from 'helpers/events'\r\nimport ColorPicker from 'elements/ColorPicker'\r\nimport SelectFormTemplate from 'containers/FormTemplates/Select'\r\nimport Field from './Field'\r\nimport Settings from './Settings'\r\n\r\nconst Container = styled.div`\r\n .ant-tabs-nav-scroll {\r\n min-height: 46px;\r\n }\r\n\r\n .ant-tabs-tab {\r\n padding-right: 8px !important;\r\n\r\n .ant-btn-link {\r\n color: unset !important;\r\n margin-left: 8px;\r\n padding: 1px 0;\r\n\r\n .anticon {\r\n margin: 0 !important;\r\n }\r\n }\r\n\r\n &:hover,\r\n &.ant-tabs-tab-active {\r\n color: unset !important;\r\n }\r\n }\r\n`\r\n\r\nconst Section = styled(Card)`\r\n .ant-card-head {\r\n border-bottom: none;\r\n\r\n .ant-card-extra {\r\n .ant-btn-link {\r\n color: unset;\r\n }\r\n }\r\n }\r\n\r\n &.ant-card-bordered + .ant-card-bordered {\r\n border-top: none !important;\r\n border-top-right-radius: 0;\r\n border-top-left-radius: 0;\r\n }\r\n\r\n .ant-select-search__field__placeholder {\r\n color: rgba(0, 0, 0, 0.33) !important;\r\n }\r\n\r\n .ant-select-selection__placeholder {\r\n color: rgba(0, 0, 0, 0.33) !important;\r\n }\r\n\r\n *::placeholder {\r\n color: rgba(0, 0, 0, 0.33) !important;\r\n }\r\n\r\n textarea {\r\n resize: none;\r\n }\r\n`\r\n\r\nconst Actions = styled.div`\r\n text-align: right;\r\n white-space: nowrap;\r\n height: 16px;\r\n\r\n .ant-btn-link {\r\n color: #333;\r\n margin-left: 3px;\r\n }\r\n`\r\n\r\nconst Line = styled.div`\r\n display: flex;\r\n flex-wrap: wrap;\r\n min-height: ${(props) => (props.isDraggingOver ? '32px' : '6px')};\r\n outline: ${(props) => (props.isDraggingOver ? '1px dashed #d9d9d9' : 'none')};\r\n`\r\n\r\nconst LineItem = styled.div`\r\n padding-left: 6px;\r\n padding-right: 6px;\r\n user-select: none;\r\n border: ${(props) => (props.isDragging ? '1px dashed #d9d9d9' : 'none')};\r\n`\r\n\r\nconst SideLine = styled.div`\r\n display: flex;\r\n`\r\n\r\nconst SideLineItem = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n font-size: 13px;\r\n width: 99px;\r\n height: 79px;\r\n margin-bottom: 6px;\r\n border: ${(props) => (props.isDragging ? '1px dashed #d9d9d9' : 'none')};\r\n\r\n &:hover {\r\n border: 1px dashed #d9d9d9;\r\n }\r\n\r\n & > div {\r\n text-align: center;\r\n }\r\n`\r\n\r\nclass FormView extends React.Component {\r\n state = {}\r\n\r\n constructor(props) {\r\n super(props)\r\n\r\n this.handleSubmit = createHandleSubmit(this)\r\n this.containerRef = React.createRef()\r\n }\r\n\r\n componentDidMount() {\r\n this.fetchItem()\r\n }\r\n\r\n transformSaveItemParams = ({ item, values }) => ({\r\n formPages: produce(item.formPages, (draft) => {\r\n draft.forEach((formPage) => {\r\n if (formPage.id <= 0) {\r\n unset(formPage, 'id')\r\n }\r\n\r\n if (item.id) {\r\n formPage.formTemplateId = item.id\r\n }\r\n\r\n formPage.formPageSections = formPage?.formPageSections ?? []\r\n\r\n formPage.formPageSections.forEach((formPageSection) => {\r\n if (formPageSection.id <= 0) {\r\n unset(formPageSection, 'id')\r\n }\r\n\r\n if (formPage.id > 0) {\r\n formPageSection.pageId = formPage.id\r\n } else {\r\n unset(formPageSection, 'pageId')\r\n }\r\n\r\n formPageSection.formQuestions = formPageSection?.formQuestions ?? []\r\n\r\n formPageSection.formQuestions.forEach((formQuestion) => {\r\n if (formQuestion.id <= 0) {\r\n unset(formQuestion, 'id')\r\n }\r\n\r\n if (formPageSection.id > 0) {\r\n formQuestion.sectionId = formPageSection.id\r\n } else {\r\n unset(formQuestion, 'sectionId')\r\n }\r\n\r\n if (!allowRequired(formQuestion)) {\r\n formQuestion.required = false\r\n }\r\n\r\n formQuestion.formQuestionOptions = formQuestion?.formQuestionOptions ?? []\r\n\r\n formQuestion.formQuestionOptions.forEach((formQuestionOption) => {\r\n if (formQuestionOption.id <= 0) {\r\n unset(formQuestionOption, 'id')\r\n }\r\n\r\n if (formQuestion.id > 0) {\r\n formQuestionOption.questionId = formQuestion.id\r\n } else {\r\n unset(formQuestionOption, 'questionId')\r\n }\r\n })\r\n })\r\n })\r\n })\r\n }),\r\n })\r\n\r\n getItemId = () =>\r\n [\r\n this.state.item?.id,\r\n this.props.linkTargetRecord?.formTemplateId,\r\n this.props.linkTargetRecord?.templateId,\r\n ].find(Boolean)\r\n\r\n fetchItem = async ({ itemId = this.getItemId() } = {}) => {\r\n try {\r\n const responses = await Promise.all([\r\n itemId\r\n ? this.props.getItem(itemId).catch((error) => {\r\n this.props.onCancel?.()\r\n throw error\r\n })\r\n : !this.props.linkTargetRecord\r\n ? this.props.newItem({})\r\n : resourceNotFound(this),\r\n this.props.getSettings({ type: this.props.settingsType }),\r\n this.props.getFormGroups(),\r\n this.props.getUserGroups(),\r\n this.props.getSettings({ type: 'field' }), // HACK: Making sure this is cached\r\n ])\r\n\r\n const item = produce(responses[0].value.data, (draft) => {\r\n let seed = Date.now() * -1\r\n\r\n draft.formPages.forEach((formPage) => {\r\n formPage.id = formPage.id || seed--\r\n\r\n if (formPage.formTemplateId === 0) {\r\n unset(formPage, 'formTemplateId')\r\n }\r\n\r\n formPage.formPageSections.forEach((formPageSection) => {\r\n formPageSection.id = formPageSection.id || seed--\r\n formPageSection.pageId = formPage.id\r\n\r\n formPageSection.formQuestions.forEach((formQuestion) => {\r\n formQuestion.id = formQuestion.id || seed--\r\n formQuestion.sectionId = formPageSection.id\r\n\r\n formQuestion.formQuestionOptions.forEach((formQuestionOption) => {\r\n formQuestionOption.id = formQuestionOption.id || seed--\r\n formQuestionOption.questionId = formQuestion.id\r\n })\r\n })\r\n })\r\n })\r\n })\r\n\r\n this.setState({\r\n item,\r\n fieldSettings: responses[1].value.data.fieldSettings,\r\n formGroups: get(responses[2], 'value.data.items', []),\r\n userGroups: get(responses[3], 'value.data.items', []),\r\n })\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n\r\n setItemValue = (name, value) =>\r\n this.setState(\r\n produce((draft) => {\r\n set(draft.item, name, value)\r\n\r\n this.props.form.setFieldsValue({ [name]: value })\r\n }),\r\n async () => {\r\n if (name === 'active') {\r\n try {\r\n await this.props.onSave?.(true)\r\n\r\n const response = await this.props.updateStatus(this.state.item.id, name, value)\r\n\r\n showClientNotifications({ response })\r\n } catch (error) {\r\n showError({ error })\r\n\r\n this.props.form.setFieldsValue({ [name]: !value })\r\n } finally {\r\n await this.fetchItem()\r\n await this.props.onSave?.(false)\r\n }\r\n }\r\n }\r\n )\r\n\r\n handleActionsMenuClick = ({ key }) => {\r\n switch (key) {\r\n case 'copyFromExistingRecord':\r\n this.setState({\r\n copyFromExistingVisible: true,\r\n copyFromExistingSelectedRecord: null,\r\n })\r\n break\r\n\r\n default:\r\n message.warn(t('underDevelopment'))\r\n break\r\n }\r\n }\r\n\r\n handlePageDrawerSaveAndClose = (saved) => {\r\n if (!saved.id) {\r\n saved.id = Date.now() * -1\r\n }\r\n\r\n this.setState(\r\n produce((draft) => {\r\n remove(draft.item.formPages, (one) => one.id === saved.id)\r\n draft.item.formPages.splice(saved.position - 1, 0, { ...saved })\r\n\r\n draft.item.formPages.forEach((formPage, index) => {\r\n formPage.position = index + 1\r\n })\r\n\r\n draft.pageDrawerVisible = false\r\n })\r\n )\r\n }\r\n\r\n handleSectionDrawerSaveAndClose = (saved) => {\r\n if (!saved.id) {\r\n saved.id = Date.now() * -1\r\n }\r\n\r\n this.setState(\r\n produce((draft) => {\r\n draft.item.formPages.forEach((formPage) => {\r\n remove(formPage.formPageSections, (one) => one.id === saved.id)\r\n })\r\n\r\n const formPage = draft.item.formPages.find((one) => one.id === saved.pageId)\r\n\r\n formPage.formPageSections.splice(saved.position - 1, 0, { ...saved })\r\n\r\n formPage.formPageSections.forEach((formPageSection, index) => {\r\n formPageSection.position = index + 1\r\n })\r\n\r\n draft.sectionDrawerVisible = false\r\n })\r\n )\r\n }\r\n\r\n handleFieldDrawerSaveAndClose = (saved) => {\r\n if (!saved.id) {\r\n saved.id = Date.now() * -1\r\n }\r\n\r\n this.setState(\r\n produce((draft) => {\r\n const snapshot = cloneDeep(draft.item)\r\n\r\n try {\r\n draft.item.formPages.forEach((eachPage) => {\r\n eachPage.formPageSections.forEach((eachSection) => {\r\n remove(eachSection.formQuestions, (one) => one.id === saved.id)\r\n })\r\n })\r\n\r\n const formPageSection = draft.item.formPages\r\n .flatMap((each) => each.formPageSections)\r\n .find((one) => one.id === saved.sectionId)\r\n\r\n formPageSection.formQuestions = sortFormQuestions(formPageSection.formQuestions, saved)\r\n\r\n draft.item.formPages.forEach((eachPage) => {\r\n eachPage.formPageSections.forEach((eachSection) => {\r\n eachSection.formQuestions = sortFormQuestions(eachSection.formQuestions)\r\n })\r\n })\r\n\r\n draft.fieldDrawerVisible = false\r\n } catch (error) {\r\n draft.item = snapshot\r\n\r\n if (error.message === 'formSectionOverflowError') {\r\n notification.error({\r\n message: t('formSectionOverflowError'),\r\n description: t('formSectionOverflowErrorDescription'),\r\n })\r\n } else {\r\n console.error(error)\r\n }\r\n }\r\n })\r\n )\r\n }\r\n\r\n deleteFormPage = (pageIndex) => {\r\n Modal.confirm({\r\n autoFocusButton: 'ok',\r\n title: t('confirmDeleteFormPage'),\r\n okType: 'danger',\r\n okText: t('delete'),\r\n cancelText: t('cancel'),\r\n onOk: () =>\r\n this.setState(\r\n produce((draft) => {\r\n draft.item.formPages.splice(pageIndex, 1)\r\n\r\n draft.item.formPages.forEach((formPage, index) => {\r\n formPage.position = index + 1\r\n })\r\n })\r\n ),\r\n })\r\n }\r\n\r\n deleteFormPageSection = (pageIndex, sectionIndex) => {\r\n Modal.confirm({\r\n autoFocusButton: 'ok',\r\n title: t('confirmDeleteFormPageSection'),\r\n okType: 'danger',\r\n okText: t('delete'),\r\n cancelText: t('cancel'),\r\n onOk: () =>\r\n this.setState(\r\n produce((draft) => {\r\n draft.item.formPages[pageIndex].formPageSections.splice(sectionIndex, 1)\r\n\r\n draft.item.formPages[pageIndex].formPageSections.forEach((formPageSection, index) => {\r\n formPageSection.position = index + 1\r\n })\r\n })\r\n ),\r\n })\r\n }\r\n\r\n deleteFormQuestion = (formQuestion) =>\r\n this.setState(\r\n produce((draft) => {\r\n draft.item.formPages.forEach((formPage) => {\r\n formPage.formPageSections.forEach((formPageSection) => {\r\n remove(formPageSection.formQuestions, (one) => one.id === formQuestion.id)\r\n formPageSection.formQuestions = sortFormQuestions(formPageSection.formQuestions)\r\n })\r\n })\r\n })\r\n )\r\n\r\n handlePageDrawerClose = () =>\r\n this.setState({\r\n pageDrawerVisible: false,\r\n pageDrawerLinkTargetRecord: null,\r\n })\r\n\r\n handleFieldDrawerClose = () =>\r\n this.setState({\r\n fieldDrawerVisible: false,\r\n fieldDrawerLinkTargetRecord: null,\r\n fieldDrawerParentRecord: null,\r\n })\r\n\r\n handleSectionDrawerClose = () =>\r\n this.setState({\r\n sectionDrawerVisible: false,\r\n sectionDrawerLinkTargetRecord: null,\r\n sectionDrawerParentRecord: null,\r\n })\r\n\r\n duplicateQuestion = (formQuestion) =>\r\n this.setState(\r\n produce((draft) => {\r\n const formPageSection = draft.item.formPages\r\n .flatMap((each) => each.formPageSections)\r\n .find((one) => one.id === formQuestion.sectionId)\r\n\r\n const cloned = cloneDeep(formQuestion)\r\n\r\n let seed = Date.now() * -1\r\n\r\n cloned.id = seed--\r\n cloned.line++\r\n cloned.position = 1\r\n cloned.formQuestionOptions.forEach((one) => {\r\n one.id = seed--\r\n one.questionId = cloned.id\r\n })\r\n\r\n cloned.text = `${t('field')} ${formPageSection.formQuestions.length + 1}`\r\n\r\n if (cloned.questionType === 'Paragraph') {\r\n cloned.text = `${t('paragraph')} ${\r\n formPageSection.formQuestions.filter((each) => each.questionType === cloned.questionType).length +\r\n 1\r\n }`\r\n }\r\n\r\n if (cloned.questionType === 'Hyperlink') {\r\n cloned.text = `${t('hyperlink')} ${\r\n formPageSection.formQuestions.filter((each) => each.questionType === cloned.questionType).length +\r\n 1\r\n }`\r\n }\r\n\r\n formPageSection.formQuestions\r\n .filter((each) => each.line >= cloned.line)\r\n .forEach((each) => each.line++)\r\n formPageSection.formQuestions.push(cloned)\r\n formPageSection.formQuestions = orderBy(formPageSection.formQuestions, ['line', 'position'])\r\n })\r\n )\r\n\r\n handleCopyFromExisting = async () => {\r\n try {\r\n this.setState({ copyFromLabelTemplateRecordLoading: true })\r\n\r\n const { footer, formBackgroundColor, formForegroundColor, formPages, labelPlacementType } =\r\n await this.props\r\n .getItem(this.state.copyFromExistingSelectedRecord.id)\r\n .then((r) => r.value.data)\r\n .then(cloneDeep)\r\n\r\n this.setState(\r\n produce((draft) => {\r\n draft.item.footer = footer\r\n draft.item.formBackgroundColor = formBackgroundColor\r\n draft.item.formForegroundColor = formForegroundColor\r\n draft.item.formPages = formPages\r\n draft.item.labelPlacementType = labelPlacementType\r\n\r\n let seed = Date.now() * -1\r\n\r\n draft.item.formPages.forEach((formPage) => {\r\n formPage.id = seed--\r\n\r\n if (draft.item.id) {\r\n formPage.formTemplateId = draft.item.id\r\n } else {\r\n unset(formPage, 'formTemplateId')\r\n }\r\n\r\n formPage.formPageSections.forEach((formPageSection) => {\r\n formPageSection.id = seed--\r\n formPageSection.pageId = formPage.id\r\n\r\n formPageSection.formQuestions.forEach((formQuestion) => {\r\n formQuestion.id = seed--\r\n formQuestion.sectionId = formPageSection.id\r\n\r\n formQuestion.formQuestionOptions.forEach((formQuestionOption) => {\r\n formQuestionOption.id = seed--\r\n formQuestionOption.questionId = formQuestion.id\r\n })\r\n })\r\n })\r\n })\r\n\r\n draft.copyFromExistingVisible = false\r\n draft.copyFromExistingSelectedRecord = null\r\n })\r\n )\r\n } catch (error) {\r\n showError({ error })\r\n } finally {\r\n this.setState({ copyFromLabelTemplateRecordLoading: false })\r\n }\r\n }\r\n\r\n createHandleEditPageClick = (formPage) => () =>\r\n this.setState({\r\n pageDrawerVisible: true,\r\n pageDrawerTitle: formPage.name,\r\n pageDrawerLinkTargetRecord: formPage,\r\n })\r\n\r\n createHandleAddSectionClick = (formPage) => () =>\r\n this.setState({\r\n sectionDrawerVisible: true,\r\n sectionDrawerTitle: t('addSection'),\r\n sectionDrawerLinkTargetRecord: null,\r\n sectionDrawerParentRecord: formPage,\r\n })\r\n\r\n createHandleEditSectionClick =\r\n ({ formPage, formPageSection }) =>\r\n () =>\r\n this.setState({\r\n sectionDrawerVisible: true,\r\n sectionDrawerTitle: formPageSection.name,\r\n sectionDrawerLinkTargetRecord: formPageSection,\r\n sectionDrawerParentRecord: formPage,\r\n })\r\n\r\n createHandleAddFieldClick = (formPageSection) => () =>\r\n this.setState({\r\n fieldDrawerVisible: true,\r\n fieldDrawerTitle: t('addField'),\r\n fieldDrawerParentRecord: formPageSection,\r\n fieldDrawerLinkTargetRecord: null,\r\n })\r\n\r\n createHandleAddPageClick = () => () =>\r\n this.setState({\r\n pageDrawerVisible: true,\r\n pageDrawerTitle: t('addPage'),\r\n pageDrawerLinkTargetRecord: null,\r\n })\r\n\r\n handleDragEnd = ({ draggableId, source, destination }) => {\r\n if (isEmpty(destination) || isEqual(source, destination)) {\r\n return\r\n }\r\n\r\n const { questionId, questionType } = JSON.parse(draggableId)\r\n const sourceIds = JSON.parse(source.droppableId)\r\n const destinationIds = JSON.parse(destination.droppableId)\r\n\r\n this.setState(\r\n produce((draft) => {\r\n const snapshot = cloneDeep(draft.item)\r\n\r\n try {\r\n const page = draft.item.formPages.find((one) => one.id === destinationIds.pageId)\r\n const section = page.formPageSections.find((one) => one.id === destinationIds.sectionId)\r\n\r\n if (questionId && sourceIds.pageId === destinationIds.pageId) {\r\n const from = page.formPageSections.find((one) => one.id === sourceIds.sectionId)\r\n const index = from.formQuestions.findIndex((one) => one.id === questionId)\r\n const [question] = from.formQuestions.splice(index, 1)\r\n\r\n question.line = destinationIds.line\r\n question.position = destination.index\r\n question.sectionId = section.id\r\n\r\n section.formQuestions = sortFormQuestions(section.formQuestions, question)\r\n from.formQuestions = sortFormQuestions(from.formQuestions)\r\n } else if (questionType) {\r\n const question = createQuestion({ sectionId: section.id })\r\n\r\n let seed = Date.now() * -1\r\n\r\n question.id = seed--\r\n question.questionType = questionType\r\n question.line = destinationIds.line\r\n question.position = destination.index\r\n question.text = `${t('field')} ${section.formQuestions.length + 1}`\r\n\r\n const formPageSection = draft.item.formPages\r\n .flatMap((each) => each.formPageSections)\r\n .find((one) => one.id === section.id)\r\n\r\n const [fieldWidthType] = formPageSection.formQuestions\r\n .filter((each) => each.line === question.line)\r\n .map((each) => each.fieldWidthType)\r\n .filter((v, i, a) => a.indexOf(v) === i) // uniq\r\n\r\n question.fieldWidthType =\r\n fieldWidthType === 'TwoThirds'\r\n ? 'OneThird'\r\n : fieldWidthType === 'ThreeQuarters'\r\n ? 'OneQuarter'\r\n : fieldWidthType\r\n\r\n question.fieldWidthType = question.fieldWidthType || 'OneThird'\r\n\r\n if (['Dropdown', 'SingleSelection', 'MultipleSelection'].includes(questionType)) {\r\n question.formQuestionOptions = range(1, 4).map((each) => {\r\n const name = `${t('option')} ${each}`\r\n\r\n return { name, value: name, position: each, id: seed-- }\r\n })\r\n }\r\n\r\n if (questionType === 'Paragraph') {\r\n question.text = `${t('paragraph')} ${\r\n section.formQuestions.filter((each) => each.questionType === questionType).length + 1\r\n }`\r\n }\r\n\r\n if (questionType === 'Hyperlink') {\r\n question.text = `${t('hyperlink')} ${\r\n section.formQuestions.filter((each) => each.questionType === questionType).length + 1\r\n }`\r\n question.questionOption = 'https://www.wikipedia.org/'\r\n }\r\n\r\n section.formQuestions = sortFormQuestions(section.formQuestions, question)\r\n } else {\r\n message.warn(t('underDevelopment'))\r\n }\r\n } catch (error) {\r\n draft.item = snapshot\r\n\r\n if (error.message === 'formSectionOverflowError') {\r\n notification.error({\r\n message: t('formSectionOverflowError'),\r\n description: t('formSectionOverflowErrorDescription'),\r\n })\r\n } else {\r\n console.error(error)\r\n }\r\n }\r\n })\r\n )\r\n }\r\n\r\n changeFieldSettings = (formQuestion, value) =>\r\n this.setState(\r\n produce((draft) => {\r\n const questions = extractFormQuestions(draft.item)\r\n\r\n const question = questions.find((one) => one.id === formQuestion.id)\r\n\r\n if (question) {\r\n const snapshot = cloneDeep(\r\n questions.filter((each) => each.sectionId === question.sectionId && each.line === question.line)\r\n )\r\n\r\n Object.assign(\r\n snapshot.find((one) => one.id === question.id),\r\n value\r\n )\r\n\r\n if (getTotalWidth(snapshot) <= 24) {\r\n Object.assign(question, value)\r\n } else {\r\n notification.error({\r\n message: t('formSectionOverflowError'),\r\n description: t('formSectionOverflowErrorDescription'),\r\n })\r\n }\r\n }\r\n })\r\n )\r\n\r\n render() {\r\n const { item, fieldSettings } = this.state\r\n\r\n if (!item || !fieldSettings) {\r\n return \r\n }\r\n\r\n const createLabel = createLabelFactory(fieldSettings)\r\n const createFieldDecorator = createFieldFactory(this.props.form, item, fieldSettings)\r\n\r\n const instanceCount = item?.instanceCount ?? 0\r\n const readOnly = isReadOnly(this) || instanceCount > 0\r\n const formTemplate = item\r\n\r\n return (\r\n <>\r\n \r\n \r\n
\r\n \r\n \r\n {t('copyFromFormTemplateRecord')}\r\n \r\n \r\n }\r\n trigger={['click']}\r\n >\r\n \r\n \r\n
\r\n {instanceCount > 0 && (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('name', {\r\n valuePropName: 'defaultValue',\r\n trigger: 'onBlur',\r\n validateTrigger: false,\r\n })()}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('formGroupId')(\r\n this.setItemValue('formGroupId', value || 0)}\r\n placeholder={t('none')}\r\n readOnly={readOnly}\r\n >\r\n \r\n {(this.state.formGroups ?? [])\r\n .filter((each) => each.id)\r\n .map((each) => (\r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('notifyGroupId')(\r\n this.setItemValue('notifyGroupId', value || 0)}\r\n placeholder={t('none')}\r\n readOnly={readOnly}\r\n >\r\n \r\n {(this.state.userGroups ?? [])\r\n .filter((each) => each.id)\r\n .map((each) => (\r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {createFieldDecorator('description')()}\r\n \r\n \r\n \r\n \r\n {createFieldDecorator('labelPlacementType')(\r\n this.setItemValue('labelPlacementType', value)}\r\n readOnly={readOnly}\r\n allowClear={false}\r\n >\r\n {Object.entries(templateLabelPlacements).map(([key, value]) => (\r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {createFieldDecorator('footer')()}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.setItemValue('formBackgroundColor', value)}\r\n readOnly={readOnly}\r\n />\r\n \r\n \r\n this.setItemValue('formForegroundColor', value)}\r\n readOnly={readOnly}\r\n foreground\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n this.setItemValue('active', e.target.checked)}\r\n disabled={!formTemplate.id}\r\n readOnly={readOnly}\r\n >\r\n {createLabel('active')}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : null\r\n }\r\n onChange={() => this.setState({ focusedId: null })}\r\n >\r\n {(formTemplate?.formPages ?? []).map((formPage, pageIndex) => (\r\n \r\n {formPage.name}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n }\r\n forceRender\r\n >\r\n {(formPage?.formPageSections ?? []).map((formPageSection, sectionIndex) => {\r\n const numberOfLines = !isEmpty(formPageSection.formQuestions)\r\n ? max(formPageSection.formQuestions.map((each) => each.line)) + 2\r\n : 1\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.deleteFormPageSection(pageIndex, sectionIndex)}\r\n type=\"link\"\r\n size=\"small\"\r\n >\r\n \r\n \r\n \r\n \r\n ) : undefined\r\n }\r\n {...getSectionProps(formTemplate, formPageSection)}\r\n >\r\n {[...Array(numberOfLines).keys()].map((line) => (\r\n \r\n \r\n {(provided, snapshot) => {\r\n const formQuestions = orderBy(formPageSection.formQuestions, [\r\n 'line',\r\n 'position',\r\n ]).filter((each) => each.line === line)\r\n\r\n return (\r\n \r\n {formQuestions.map((formQuestion) => {\r\n const { fieldWidth, labelWidth, inputWidth } = getWidths({\r\n formTemplate,\r\n formQuestion,\r\n })\r\n const color = formPageSection.overrideFormColor\r\n ? formPageSection.contentForegroundColor\r\n : formTemplate.formForegroundColor\r\n const label = getLabel({\r\n formQuestion,\r\n labelWidth,\r\n color,\r\n })\r\n const focused = this.state.focusedId === formQuestion.id\r\n const setFocusId = (id) => this.setState({ focusedId: id })\r\n const handleEdit = () =>\r\n this.setState({\r\n fieldDrawerVisible: true,\r\n fieldDrawerTitle: formQuestion.text,\r\n fieldDrawerLinkTargetRecord: formQuestion,\r\n fieldDrawerParentRecord: formPageSection,\r\n })\r\n\r\n return (\r\n \r\n {\r\n // eslint-disable-next-line no-shadow\r\n (provided, snapshot) => (\r\n \r\n setFocusId(formQuestion.id)}\r\n onMouseEnter={() => setFocusId(formQuestion.id)}\r\n onMouseLeave={() => setFocusId(null)}\r\n help={\r\n focused && !readOnly ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n this.changeFieldSettings(\r\n formQuestion,\r\n value\r\n )\r\n }\r\n />\r\n }\r\n trigger={['click']}\r\n >\r\n \r\n \r\n \r\n \r\n this.duplicateQuestion(formQuestion)\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n \r\n this.deleteFormQuestion(formQuestion)\r\n }\r\n >\r\n \r\n \r\n \r\n \r\n ) : undefined\r\n }\r\n >\r\n \r\n \r\n \r\n )\r\n }\r\n \r\n )\r\n })}\r\n {provided.placeholder}\r\n \r\n )\r\n }}\r\n \r\n \r\n ))}\r\n \r\n )\r\n })}\r\n \r\n ))}\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n {!readOnly && (\r\n \r\n

{t('fieldComponentInfo')}

\r\n {[...Array(4).keys()].map((row) => (\r\n
\r\n \r\n {(provided, snapshot) => (\r\n \r\n {[...Array(3).keys()].map((col) => {\r\n const { questionType, icon, languageKey, outlined } = sideDrawerItems[row * 3 + col]\r\n\r\n return (\r\n \r\n {\r\n // eslint-disable-next-line no-shadow\r\n (provided, snapshot) => (\r\n <>\r\n \r\n
\r\n \r\n
\r\n
{t(languageKey)}
\r\n \r\n {snapshot.isDragging && (\r\n \r\n
\r\n \r\n
\r\n
{t(languageKey)}
\r\n
\r\n )}\r\n \r\n )\r\n }\r\n \r\n )\r\n })}\r\n
\r\n )}\r\n \r\n
\r\n ))}\r\n
\r\n )}\r\n
\r\n \r\n {}}\r\n onSaveAndClose={this.handlePageDrawerSaveAndClose}\r\n onCancel={this.handlePageDrawerClose}\r\n />\r\n \r\n \r\n {}}\r\n onSaveAndClose={this.handleSectionDrawerSaveAndClose}\r\n onCancel={this.handleSectionDrawerClose}\r\n />\r\n \r\n \r\n {}}\r\n onSaveAndClose={this.handleFieldDrawerSaveAndClose}\r\n onCancel={this.handleFieldDrawerClose}\r\n />\r\n \r\n \r\n this.setState({\r\n copyFromExistingVisible: false,\r\n copyFromExistingSelectedRecord: null,\r\n })\r\n }\r\n width={992}\r\n >\r\n this.setState({ copyFromExistingSelectedRecord: values[0] })}\r\n filterProps={{ allowFilterByStatus: true }}\r\n />\r\n \r\n \r\n )\r\n }\r\n}\r\n\r\nexport default Form.create()(FormView)\r\n","import actions from 'actions/formTemplates'\r\nimport formGroupActions from 'actions/formGroups'\r\nimport userGroupActions from 'actions/userGroups'\r\nimport { createFormViewContainer } from 'factories/FormView'\r\nimport Component from 'components/FormTemplates/FormView'\r\n\r\nexport default createFormViewContainer({\r\n actions,\r\n extraDispatchToProps: (dispatch, props) => ({\r\n newItem: (params) => dispatch(actions.newItem(params)),\r\n updateStatus: (formInstanceId, name, value) =>\r\n dispatch(actions.updateStatus(formInstanceId, name, value)),\r\n getFormGroups: (params) => dispatch(formGroupActions.getOptions(params)),\r\n getUserGroups: (params) => dispatch(userGroupActions.getOptions(params)),\r\n getFormTemplates: (params) => dispatch(actions.getOptions(params)),\r\n }),\r\n})(Component)\r\n","import { range, max, isEmpty, orderBy, cloneDeep, trim, toLower } from 'lodash'\r\nimport { HARD_SPACE } from 'helpers/utils'\r\n\r\nconst allowInput = (formQuestion) => !['Hyperlink', 'Paragraph'].includes(formQuestion.questionType)\r\n\r\nexport const allowHighlight = (formQuestion) =>\r\n allowInput(formQuestion) &&\r\n formQuestion.allowHighlight &&\r\n !['Checkbox', 'SingleSelection', 'MultipleSelection'].includes(formQuestion.questionType)\r\n\r\nexport const allowAttachment = (formQuestion) => allowInput(formQuestion) && formQuestion.allowAttachment\r\n\r\nexport const allowRequired = (formQuestion) =>\r\n allowInput(formQuestion) && formQuestion.questionType !== 'MultipleSelection'\r\n\r\nexport const getSectionProps = (template, section) => ({\r\n title: section.name,\r\n bordered: section.showSectionBorder,\r\n headStyle: {\r\n color: section.headerForegroundColor,\r\n backgroundColor: section.headerBackgroundColor,\r\n fontFamily: section.headerFontName,\r\n fontSize: Math.max(section.headerFontSize, 8),\r\n fontWeight: section.boldHeader ? 600 : 'normal',\r\n fontStyle: section.italicHeader ? 'italic' : 'normal',\r\n textDecoration: section.underlineHeader ? 'underline' : 'none',\r\n },\r\n bodyStyle: {\r\n color: section.overrideFormColor ? section.contentForegroundColor : template.formForegroundColor,\r\n backgroundColor: section.overrideFormColor\r\n ? section.contentBackgroundColor\r\n : template.formBackgroundColor,\r\n },\r\n})\r\n\r\nconst getFieldWidth = ({ formQuestion: { fieldWidthType } }) => {\r\n switch (fieldWidthType) {\r\n case 'OneQuarter':\r\n return 24 / 4\r\n case 'OneThird':\r\n return 24 / 3\r\n case 'OneHalf':\r\n return 24 / 2\r\n case 'TwoThirds':\r\n return (24 / 3) * 2\r\n case 'ThreeQuarters':\r\n return (24 / 4) * 3\r\n default:\r\n return 24\r\n }\r\n}\r\n\r\nconst getLabelWidth = ({\r\n formTemplate,\r\n formQuestion: { questionType, labelWidthType, labelPlacementType },\r\n}) => {\r\n if (!allowInput({ questionType })) {\r\n return 0\r\n }\r\n\r\n if (labelPlacementType === 'Default') {\r\n return 24\r\n }\r\n\r\n if (labelPlacementType === 'BasedOnForm' && formTemplate.labelPlacementType === 'Default') {\r\n return 24\r\n }\r\n\r\n switch (labelWidthType) {\r\n case 'OneQuarter':\r\n return 24 / 4\r\n case 'OneThird':\r\n return 24 / 3\r\n case 'OneHalf':\r\n return 24 / 2\r\n case 'TwoThirds':\r\n return (24 / 3) * 2\r\n case 'ThreeQuarters':\r\n return (24 / 4) * 3\r\n default:\r\n return 24\r\n }\r\n}\r\n\r\nconst getInputWidth = ({\r\n formTemplate,\r\n formQuestion: { questionType, labelWidthType, labelPlacementType },\r\n}) => {\r\n if (!allowInput({ questionType })) {\r\n return 24\r\n }\r\n\r\n if (labelPlacementType === 'Default') {\r\n return 24\r\n }\r\n\r\n if (labelPlacementType === 'BasedOnForm' && formTemplate.labelPlacementType === 'Default') {\r\n return 24\r\n }\r\n\r\n switch (labelWidthType) {\r\n case 'OneQuarter':\r\n return (24 / 4) * 3\r\n case 'OneThird':\r\n return (24 / 3) * 2\r\n case 'OneHalf':\r\n return 24 / 2\r\n case 'TwoThirds':\r\n return 24 / 3\r\n case 'ThreeQuarters':\r\n return 24 / 4\r\n default:\r\n return 24\r\n }\r\n}\r\n\r\nexport const getWidths = (params) => ({\r\n fieldWidth: getFieldWidth(params),\r\n labelWidth: getLabelWidth(params),\r\n inputWidth: getInputWidth(params),\r\n})\r\n\r\nexport const getTotalWidth = (questions = []) =>\r\n questions.map((each) => getFieldWidth({ formQuestion: each })).reduce((acc, each) => acc + each, 0)\r\n\r\nexport const sortFormQuestions = (unsorted, injected) => {\r\n const formQuestions = cloneDeep(orderBy(unsorted, ['line', 'position']))\r\n const numberOfLines = max([...formQuestions.map((each) => each.line), injected?.line ?? 1])\r\n\r\n let grid = []\r\n\r\n range(numberOfLines + 3).forEach((row) => {\r\n grid.push(\r\n formQuestions\r\n .filter((each) => each.line === row)\r\n .map((formQuestion, questionIndex) => ({\r\n ...formQuestion,\r\n position: questionIndex + 1,\r\n }))\r\n )\r\n })\r\n\r\n if (injected) {\r\n grid[injected.line].splice(injected.position - 1, 0, injected)\r\n }\r\n\r\n grid = grid.filter((each) => !isEmpty(each)).map((row) => row.filter((each) => !isEmpty(each)))\r\n\r\n grid.forEach((row, rowIndex) => {\r\n row.forEach((col, colIndex) => {\r\n col.line = rowIndex + 1\r\n col.position = colIndex + 1\r\n })\r\n })\r\n\r\n if (injected && grid.some((row) => row.some((col) => col.id === injected.id) && getTotalWidth(row) > 24)) {\r\n throw new Error('formSectionOverflowError')\r\n }\r\n\r\n return grid.flat().filter((each) => !isEmpty(each))\r\n}\r\n\r\nexport const getLabel = ({ formQuestion, labelWidth, color }) =>\r\n !allowInput(formQuestion) ? null : formQuestion.questionType === 'Checkbox' && labelWidth === 24 ? (\r\n HARD_SPACE\r\n ) : (\r\n {formQuestion.text}\r\n )\r\n\r\nexport const createQuestion = (params) => ({\r\n sectionId: 0,\r\n text: '',\r\n questionType: 'Textbox',\r\n questionOption: 'http://',\r\n position: 1,\r\n line: 1,\r\n fieldWidthType: 'OneThird',\r\n required: false,\r\n labelPlacementType: 'BasedOnForm',\r\n labelWidthType: 'OneHalf',\r\n placeholderText: '',\r\n defaultText: '',\r\n defaultNumber: null,\r\n defaultBoolean: false,\r\n minValue: null,\r\n maxValue: null,\r\n decimalPlaces: 0,\r\n height: 5,\r\n allowHighlight: false,\r\n allowAttachment: false,\r\n overrideSectionColor: false,\r\n foregroundColor: '#333333',\r\n backgroundColor: '#FFFFFF',\r\n fontName: '',\r\n fontSize: 14,\r\n bold: false,\r\n italic: false,\r\n underline: false,\r\n formQuestionOptions: [],\r\n ...params,\r\n})\r\n\r\nexport const isValidAnswer = (formQuestion, formAnswer) => {\r\n const text = toLower(trim(formAnswer?.value ?? ''))\r\n\r\n if (allowRequired(formQuestion) && formQuestion.required) {\r\n if (formQuestion.questionType === 'Checkbox') {\r\n return text === 'true'\r\n }\r\n\r\n return text !== ''\r\n }\r\n\r\n return true\r\n}\r\n\r\nexport const extractFormQuestions = (formTemplate) =>\r\n formTemplate.formPages.flatMap((each) => each.formPageSections).flatMap((each) => each.formQuestions)\r\n","import * as React from 'react'\r\nimport { Form } from 'antd'\r\nimport { showError } from 'helpers/errors'\r\nimport { createSetFilterValue } from 'helpers/filters'\r\nimport { stopEvent } from 'helpers/events'\r\nimport statusOptions from 'options/statusOptions'\r\nimport { t } from 'helpers/i18n'\r\nimport Select, { Option, getOptionProps } from 'elements/Select'\r\nimport { Row, Col } from 'elements/Grid'\r\n\r\nclass Filter extends React.Component {\r\n state = {}\r\n\r\n constructor(props) {\r\n super(props)\r\n\r\n this.setFilterValue = createSetFilterValue(this)\r\n }\r\n\r\n async componentDidMount() {\r\n try {\r\n await this.props.getFormGroups()\r\n } catch (error) {\r\n showError({ error })\r\n }\r\n }\r\n\r\n render() {\r\n const { filterDto = {}, disabled, allowFilterByStatus } = this.props\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n this.setFilterValue('formGroupId', value)}\r\n placeholder={t('all')}\r\n value={filterDto?.formGroupId}\r\n disabled={disabled}\r\n allowClear\r\n >\r\n {(this.props.formGroups ?? []).map((each) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n {allowFilterByStatus && (\r\n \r\n \r\n this.setFilterValue('active', value || 'Active')}\r\n value={filterDto.active || 'Active'}\r\n disabled={disabled}\r\n >\r\n {Object.entries(statusOptions).map(([key, value]) => (\r\n \r\n ))}\r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Form.create()(Filter)\r\n","import { connect } from 'react-redux'\r\nimport { createAuthStateToProps } from 'helpers/auth'\r\nimport selectors from 'selectors'\r\nimport actions from 'actions/formGroups'\r\nimport Component from 'components/FormTemplates/Select/Filter'\r\n\r\nconst mapStateToProps = (state, props) => ({\r\n ...createAuthStateToProps(state, props),\r\n formGroups: selectors.formGroups.selectOptions(state),\r\n})\r\n\r\nexport default connect(mapStateToProps, { getFormGroups: actions.getOptions })(Component)\r\n","import { createListModalComponent } from 'factories/ListModal'\r\nimport Filter from 'containers/FormTemplates/Select/Filter'\r\n\r\nexport default createListModalComponent({\r\n getStorageKey: (self) => 'selectFormTemplate',\r\n getSettingsType: (self) => 'selectFormTemplate',\r\n initialFilterDto: (self) => ({\r\n versionType: 'NonLegacy',\r\n active: 'Active',\r\n }),\r\n})(Filter)\r\n","import { createListModalContainer } from 'factories/ListModal'\r\nimport actions from 'actions/formTemplates'\r\nimport Component from 'components/FormTemplates/Select'\r\n\r\nexport default createListModalContainer({ actions })(Component)\r\n"],"sourceRoot":""}