@bigbinary/neeto-form-frontend 3.12.2 → 3.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/app/javascript/src/translations/en.json +1 -1
  2. package/dist/BuildForm.js +10 -10
  3. package/dist/BuildForm.js.map +1 -1
  4. package/dist/ExternalForm.js +9 -9
  5. package/dist/ExternalForm.js.map +1 -1
  6. package/dist/Submission.js +1 -1
  7. package/dist/UrlBuilder.js +9 -9
  8. package/dist/UrlBuilder.js.map +1 -1
  9. package/dist/{buildForm-C8ATbuv6.js → buildForm-BHII-vAK.js} +2 -2
  10. package/dist/{buildForm-C8ATbuv6.js.map → buildForm-BHII-vAK.js.map} +1 -1
  11. package/dist/{buildForm-3Wdzcz2x.js → buildForm-C53vOltw.js} +2 -2
  12. package/dist/{buildForm-3Wdzcz2x.js.map → buildForm-C53vOltw.js.map} +1 -1
  13. package/dist/cjs/BuildForm.js +10 -10
  14. package/dist/cjs/BuildForm.js.map +1 -1
  15. package/dist/cjs/ExternalForm.js +9 -9
  16. package/dist/cjs/ExternalForm.js.map +1 -1
  17. package/dist/cjs/Submission.js +1 -1
  18. package/dist/cjs/UrlBuilder.js +9 -9
  19. package/dist/cjs/UrlBuilder.js.map +1 -1
  20. package/dist/cjs/hooks.js +5 -4
  21. package/dist/cjs/hooks.js.map +1 -1
  22. package/dist/cjs/index.js +7 -6
  23. package/dist/cjs/index.js.map +1 -1
  24. package/dist/{constants-DojODK3U.js → constants-B33YjyaT.js} +3 -3
  25. package/dist/{constants-DojODK3U.js.map → constants-B33YjyaT.js.map} +1 -1
  26. package/dist/{constants-LQk7jxH9.js → constants-DBuFEVFA.js} +4 -4
  27. package/dist/constants-DBuFEVFA.js.map +1 -0
  28. package/dist/{constants-CkGU4abB.js → constants-Dq9-rvtB.js} +4 -4
  29. package/dist/constants-Dq9-rvtB.js.map +1 -0
  30. package/dist/{constants-Cg0HQXNC.js → constants-DyjXQHMR.js} +3 -3
  31. package/dist/{constants-Cg0HQXNC.js.map → constants-DyjXQHMR.js.map} +1 -1
  32. package/dist/hooks.js +4 -4
  33. package/dist/{index-OmmVAj8-.js → index-BGEdOqsc.js} +2 -2
  34. package/dist/{index-OmmVAj8-.js.map → index-BGEdOqsc.js.map} +1 -1
  35. package/dist/{index-qEhecRV2.js → index-CAtNQTCZ.js} +2 -2
  36. package/dist/{index-qEhecRV2.js.map → index-CAtNQTCZ.js.map} +1 -1
  37. package/dist/index.js +6 -6
  38. package/dist/{useFormSubmission-Cab-hFHR.js → useFormSubmission-Bor3TuEO.js} +2 -2
  39. package/dist/{useFormSubmission-Cab-hFHR.js.map → useFormSubmission-Bor3TuEO.js.map} +1 -1
  40. package/dist/{useFormSubmission-CqQgBLsl.js → useFormSubmission-D3Bxhy6g.js} +2 -2
  41. package/dist/{useFormSubmission-CqQgBLsl.js.map → useFormSubmission-D3Bxhy6g.js.map} +1 -1
  42. package/dist/{utils-CWpYc-_S.js → utils-O5jbq3ZQ.js} +4 -4
  43. package/dist/{utils-CWpYc-_S.js.map → utils-O5jbq3ZQ.js.map} +1 -1
  44. package/dist/{utils-DE2Rc41X.js → utils-vq3PBRhD.js} +4 -4
  45. package/dist/{utils-DE2Rc41X.js.map → utils-vq3PBRhD.js.map} +1 -1
  46. package/package.json +1 -1
  47. package/types.d.ts +6 -0
  48. package/dist/constants-CkGU4abB.js.map +0 -1
  49. package/dist/constants-LQk7jxH9.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"BuildForm.js","sources":["../../app/javascript/src/components/BuildForm/Form/DeleteAlert.jsx","../../app/javascript/src/components/BuildForm/Form/DeleteSmsReminderModal.jsx","../../app/javascript/src/components/BuildForm/Form/ChangeLanguageDropdown.jsx","../../app/javascript/src/components/BuildForm/Form/Overview.jsx","../../app/javascript/src/components/BuildForm/Questions/Card.jsx","../../app/javascript/src/components/BuildForm/Form/Questions.jsx","../../app/javascript/src/common/helpers/array.js","../../app/javascript/src/components/BuildForm/Form/utils.js","../../app/javascript/src/components/BuildForm/AddFirstQuestion.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/constants.js","../../app/javascript/src/components/Common/FormikAdaptiveInput.jsx","../../app/javascript/src/components/BuildForm/commons/LabelWithPlaceholder.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Name.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/Properties.jsx","../../app/javascript/src/components/BuildForm/commons/Block.jsx","../../app/javascript/src/components/BuildForm/hooks/useUpdateEditorContent.js","../../app/javascript/src/components/BuildForm/commons/Editor.jsx","../../app/javascript/src/components/BuildForm/commons/RequiredSwitch.jsx","../../app/javascript/src/components/Common/InputWithMaxLength.jsx","../../app/javascript/src/components/BuildForm/Questions/FieldCode.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/Form.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/validations.js","../../app/javascript/src/components/BuildForm/ManageQuestionPane/Add.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/Edit.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Captcha/index.jsx","../../app/javascript/src/components/BuildForm/commons/SwitchBlock.jsx","../../app/javascript/src/components/BuildForm/commons/TitleWithHelpPopover.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/constants.js","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/MultiDomainInput/constants.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/MultiDomainInput/utils.js","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/MultiDomainInput/index.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/utils.js","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/EmailDomains.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/RestrictDomainsBlock.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/index.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/FileUpload/FileGroup.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/FileUpload/utils.js","../../app/javascript/src/components/BuildForm/Questions/Fields/FileUpload/index.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Options.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Rating.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/StarRating.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/utils.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/index.jsx","../../app/javascript/src/components/BuildForm/Questions/AddQuestion.jsx","../../app/javascript/src/components/BuildForm/Form/index.jsx","../../app/javascript/src/components/BuildForm/index.jsx"],"sourcesContent":["import { findBy, isPresent, truncate } from \"neetocist\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { Alert } from \"neetoui\";\nimport { equals } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useDeleteQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { INDEPENDENT_LABELS_MAP } from \"../Questions/constants\";\nimport { buildDisplayLabel } from \"../Questions/utils\";\n\nconst DeleteAlert = ({\n selectedQuestion,\n isOpen,\n onClose,\n languagesCount,\n handleSelect,\n}) => {\n const { t } = useTranslation();\n\n const { selectedLanguage } = useBuildFormStore.pick(\"formState\");\n\n const renderQuestionLabel = () => {\n const questionKind = selectedQuestion.kind;\n const independentLabel = INDEPENDENT_LABELS_MAP[questionKind];\n if (isPresent(independentLabel)) return independentLabel;\n\n const questionLabel = buildDisplayLabel(selectedQuestion);\n\n return truncate(questionLabel, 40);\n };\n\n const { mutate: deleteQuestion, isPending: isDeleting } = useDeleteQuestion(\n selectedQuestion?.formId,\n selectedLanguage,\n {\n onSuccess: () => {\n showThumbsUpToastr();\n onClose();\n },\n }\n );\n\n const selectNextQuestion = questions => {\n const selectedQuestionIndex = selectedQuestion.displayOrder;\n const wasLastQuestion = equals(selectedQuestionIndex, questions.length);\n\n const newDisplayOrder = wasLastQuestion\n ? selectedQuestionIndex - 1\n : selectedQuestionIndex;\n\n const newQuestion = findBy({ displayOrder: newDisplayOrder }, questions);\n handleSelect(newQuestion);\n };\n\n const handleSubmit = () => {\n deleteQuestion(selectedQuestion.id, {\n onSuccess: ({ questions }) => selectNextQuestion(questions),\n });\n };\n\n return (\n <Alert\n {...{ isOpen, onClose }}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoForm.common.delete\")}\n title={t(\"neetoForm.questions.deleteAlert.title\")}\n message={\n isPresent(selectedQuestion) && (\n <Trans\n i18nKey=\"neetoForm.questions.deleteAlert.message\"\n values={{\n count: languagesCount,\n label: renderQuestionLabel(),\n }}\n />\n )\n }\n onSubmit={handleSubmit}\n />\n );\n};\n\nexport default DeleteAlert;\n","import { Typography, Modal } from \"neetoui\";\nimport { path } from \"ramda\";\n\nconst DeleteSmsReminderModal = ({ isOpen, onClose, hostSpecificData = {} }) => (\n <Modal {...{ isOpen, onClose }}>\n <Modal.Header>\n <Typography\n data-cy=\"delete-sms-reminder-modal-header\"\n style=\"h2\"\n weight=\"medium\"\n >\n {path([\"smsReminder\", \"deleteModal\", \"title\"], hostSpecificData)}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography data-cy=\"delete-sms-reminder-modal-description\" style=\"body2\">\n {path([\"smsReminder\", \"deleteModal\", \"description\"], hostSpecificData)}\n </Typography>\n </Modal.Body>\n </Modal>\n);\n\nexport default DeleteSmsReminderModal;\n","import { useState } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { findBy } from \"neetocist\";\nimport { Alert, Dropdown, Tooltip } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ChangeLanguageDropdown = ({ currentLanguage, languages, onChange }) => {\n const [isUnsavedChangesAlertOpen, setIsUnsavedChangesAlertOpen] =\n useState(false);\n const [selectedLanguage, setSelectedLanguage] = useState(currentLanguage);\n\n const { t } = useTranslation();\n\n const { dirty } = useFormikContext();\n\n const languageChangeHandler = code => {\n if (!dirty) {\n onChange(code);\n\n return;\n }\n\n setSelectedLanguage(code);\n setIsUnsavedChangesAlertOpen(true);\n };\n\n const selectedLanguageName = findBy(\n { code: currentLanguage },\n languages\n )?.name;\n\n return (\n <>\n <Tooltip content={t(\"neetoForm.questions.changeLanguage\")}>\n <div>\n <Dropdown buttonStyle=\"secondary\" label={selectedLanguageName}>\n <Dropdown.Menu>\n {languages.map(({ code, name }) => (\n <Dropdown.MenuItem.Button\n isActive={currentLanguage === code}\n key={code}\n onClick={() => languageChangeHandler(code)}\n >\n {name}\n </Dropdown.MenuItem.Button>\n ))}\n </Dropdown.Menu>\n </Dropdown>\n </div>\n </Tooltip>\n <Alert\n isOpen={isUnsavedChangesAlertOpen}\n message={t(\"neetoForm.questions.unsavedChangesAlert.message\")}\n submitButtonLabel={t(\"neetoForm.questions.unsavedChangesAlert.discard\")}\n title={t(\"neetoForm.questions.unsavedChangesAlert.title\")}\n onClose={() => setIsUnsavedChangesAlertOpen(false)}\n onSubmit={() => {\n onChange(selectedLanguage);\n setIsUnsavedChangesAlertOpen(false);\n }}\n />\n </>\n );\n};\n\nexport default ChangeLanguageDropdown;\n","import { isPresent } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nimport ChangeLanguageDropdown from \"./ChangeLanguageDropdown\";\n\nconst Overview = ({\n title,\n description,\n availableLanguages,\n selectedLanguage,\n onLanguageChange,\n additionalActionOptions,\n}) => (\n <div className=\"neeto-form-nano-form-wrapper__overview mb-4 w-full flex-shrink-0 space-y-4 pt-6\">\n <div className=\"flex items-center justify-between\">\n <Typography\n data-cy=\"neeto-form-engine-overview-title\"\n lineHeight=\"neeto-ui-leading-normal\"\n style=\"h2\"\n weight=\"neeto-ui-font-semibold\"\n >\n {title}\n </Typography>\n <div className=\"flex flex-shrink-0 items-center justify-between space-x-1\">\n {availableLanguages.length > 1 && (\n <ChangeLanguageDropdown\n currentLanguage={selectedLanguage}\n languages={availableLanguages}\n onChange={onLanguageChange}\n />\n )}\n {isPresent(additionalActionOptions) && (\n <MoreDropdown\n dropdownButtonProps={{ isRounded: true, style: \"tertiary\" }}\n dropdownProps={{ strategy: \"fixed\", position: \"bottom-start\" }}\n menuItems={additionalActionOptions}\n />\n )}\n </div>\n </div>\n <Typography data-cy=\"neeto-form-engine-overview-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n);\n\nexport default Overview;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isNotPresent, slugify } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isFunction } from \"utils\";\n\nimport { buildDisplayLabel, isElementOverflowing } from \"./utils\";\n\nimport { Drag } from \"../Icons\";\n\nconst Card = ({\n question = {},\n allQuestionKinds,\n getActiveKindDetails,\n isActive,\n onSelect,\n onEdit,\n onClone,\n onDelete,\n}) => {\n const [isTooltipEnabled, setIsTooltipEnabled] = useState(false);\n\n const questionLabelRef = useRef(null);\n\n const { t } = useTranslation();\n\n const { isSingular } = getActiveKindDetails({\n allQuestionKinds,\n item: question,\n });\n\n const questionLabel = buildDisplayLabel(question);\n\n useEffect(() => {\n const element = questionLabelRef.current;\n if (isNotPresent(element)) return;\n\n setIsTooltipEnabled(isElementOverflowing(element));\n }, [questionLabel]);\n\n return (\n <div\n data-cy={`neeto-form-engine-${slugify(questionLabel)}`}\n className={classNames(\n \"neeto-ui-rounded neeto-ui-border-gray-300 neeto-ui-bg-white neeto-form-nano-form__card flex h-10 w-full items-center justify-between gap-1 border p-2\",\n {\n \"neeto-ui-border-primary-500 neeto-form-nano-form__card--active\":\n isActive,\n }\n )}\n onClick={() => onSelect(question)}\n >\n <div className=\"flex min-w-0 flex-grow items-center gap-1\">\n <Drag className=\"neeto-ui-text-gray-600 flex-shrink-0\" />\n <Tooltip\n content={questionLabel}\n disabled={!isTooltipEnabled}\n position=\"top\"\n >\n <Typography\n className=\"line-clamp-2 min-w-0 flex-grow truncate break-words\"\n data-cy={`${slugify(questionLabel)}-question-card-label`}\n lineHeight=\"snug\"\n ref={questionLabelRef}\n style=\"body2\"\n weight=\"medium\"\n >\n {questionLabel}\n </Typography>\n </Tooltip>\n </div>\n <MoreDropdown\n dropdownButtonProps={{ className: \"shrink-0\" }}\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={[\n {\n \"data-cy\": \"edit-question\",\n key: \"edit\",\n label: t(\"neetoForm.common.edit\"),\n onClick: onEdit,\n },\n {\n \"data-cy\": \"clone-question\",\n key: \"clone\",\n label: t(\"neetoForm.common.clone\"),\n isVisible: !isSingular && isFunction(onClone),\n onClick: onClone,\n },\n {\n \"data-cy\": \"delete-question\",\n key: \"delete\",\n label: t(\"neetoForm.common.delete\"),\n isVisible: isFunction(onDelete),\n onClick: () => onDelete(question),\n },\n ]}\n />\n </div>\n );\n};\n\nexport default Card;\n","import { Droppable, Draggable } from \"@hello-pangea/dnd\";\nimport { equals } from \"ramda\";\n\nimport Card from \"../Questions/Card\";\n\nconst Questions = ({\n questions,\n isDeletable,\n allQuestionKinds,\n getActiveKindDetails,\n selectedQuestion,\n onEdit,\n onClone,\n onDelete,\n onSelect,\n}) => (\n <Droppable droppableId=\"droppable\">\n {({ droppableProps, placeholder, innerRef }) => (\n <div {...droppableProps} className=\"space-y-2\" ref={innerRef}>\n {questions.map((question, index) => (\n <Draggable\n {...{ index }}\n draggableId={`question-${question.id ?? question.nodeId}`}\n key={`question-${question.id ?? question.nodeId}`}\n >\n {({ draggableProps, dragHandleProps, innerRef }) => (\n <div {...draggableProps} {...dragHandleProps} ref={innerRef}>\n <Card\n {...{\n allQuestionKinds,\n getActiveKindDetails,\n onClone,\n onEdit,\n onSelect,\n question,\n }}\n isActive={equals(selectedQuestion, question)}\n onDelete={isDeletable(question) && onDelete}\n />\n </div>\n )}\n </Draggable>\n ))}\n {placeholder}\n </div>\n )}\n </Droppable>\n);\nexport default Questions;\n","const moveItem = (arr, sourceIndex, destinationIndex) => {\n if (sourceIndex === destinationIndex) return arr;\n\n if (arr instanceof Array && arr[sourceIndex] !== undefined) {\n const removedItem = arr.splice(sourceIndex, 1)[0];\n arr.splice(destinationIndex, 0, removedItem);\n }\n\n return arr;\n};\n\nconst arrayHelpers = {\n moveItem,\n};\n\nexport default arrayHelpers;\n","import { t } from \"i18next\";\nimport { findBy } from \"neetocist\";\nimport {\n isEmpty,\n reject,\n omit,\n keys,\n pick,\n when,\n assoc,\n includes,\n evolve,\n map,\n curry,\n prop,\n dissoc,\n} from \"ramda\";\nimport { v4 as uuid } from \"uuid\";\n\nimport arrayHelpers from \"common/helpers/array\";\nimport { LABEL_FIELDS } from \"components/Common/constants\";\nimport { fieldWithFallback, isNameQuestion } from \"utils\";\n\nimport {\n NON_BASIC_LATIN_CHARACTERS_REGEX,\n RESERVED_FIELD_CODES,\n SELECTABLE_KINDS,\n} from \"../constants\";\nimport {\n isAutoGeneratedQuestion,\n isDefaultLanguage,\n isRichTextQuestion,\n} from \"../utils\";\n\nconst isChoiceQuestion = question => includes(question?.kind, SELECTABLE_KINDS);\n\nconst underscoredWithoutSpecialCharacters = string =>\n string\n .toLowerCase()\n .replace(/[\\s-]/g, \"_\")\n .replace(/[\\W]/gi, \"\")\n .replace(/_+/g, \"_\")\n .replace(/^_+|_+$/, \"\");\n\nconst addSuffixForReservedFieldCode = fieldCode =>\n RESERVED_FIELD_CODES.includes(fieldCode) ? `${fieldCode}_field` : fieldCode;\n\nconst getUniqueNumbersFromExistingFieldCodes = (prefix, questions) =>\n questions\n .filter(question => question.fieldCode.startsWith(prefix))\n .map(question => parseInt(question.fieldCode.replace(prefix, \"\")) || 0);\n\nconst generateFieldCodePrefix = (label, kind) => {\n let prefix;\n\n if (\n isNameQuestion(kind) ||\n NON_BASIC_LATIN_CHARACTERS_REGEX.test(label) ||\n isEmpty(label)\n ) {\n prefix = kind;\n } else {\n const sanitizedLabel = underscoredWithoutSpecialCharacters(label).slice(\n 0,\n 30\n );\n prefix = isEmpty(sanitizedLabel) ? kind : sanitizedLabel;\n }\n\n return addSuffixForReservedFieldCode(prefix) || \"\";\n};\n\nconst renameKey = curry((oldKey, newKey, obj) =>\n assoc(newKey, prop(oldKey, obj), dissoc(oldKey, obj))\n);\n\nconst modifyDefaultValues = ({\n values,\n kind,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n}) => {\n if (isNameQuestion(kind)) {\n return renameKey(LABEL_FIELDS.DEFAULT, LABEL_FIELDS.FULL_NAME, values);\n }\n\n if (\n !includes(kind, SELECTABLE_KINDS) ||\n isDefaultLanguage(selectedLanguage) ||\n !isUsingDefaultQuestionKinds\n ) {\n return values;\n }\n\n return evolve({ optionsAttributes: map(assoc(\"label\", \"\")) }, values);\n};\n\nexport const generateUniqueFieldCode = ({\n questions,\n label = \"\",\n kind = \"\",\n}) => {\n const prefix = generateFieldCodePrefix(label, kind);\n\n let uniqueNumber = Math.max(\n 0,\n ...getUniqueNumbersFromExistingFieldCodes(prefix, questions)\n );\n let candidateFieldCode = \"\";\n\n //We need to continue this while loop until we can generate a unique fieldCode\n // eslint-disable-next-line no-constant-condition\n while (true) {\n candidateFieldCode = `${prefix}${uniqueNumber === 0 ? \"\" : uniqueNumber}`;\n\n if (!findBy({ fieldCode: candidateFieldCode }, questions)) break;\n\n uniqueNumber += 1;\n }\n\n return candidateFieldCode;\n};\n\nexport const isQuestionKindAlreadyActive = ({ activeQuestions, kind }) =>\n activeQuestions.some(\n activeQuestion =>\n activeQuestion.kind === kind.type && activeQuestion._destroy !== true\n );\n\nexport const handleFieldDragEnd = ({\n items,\n setValue,\n source,\n destination,\n}) => {\n if (!(destination && items instanceof Array)) return;\n const nextItems = [...items];\n arrayHelpers.moveItem(nextItems, source.index, destination.index);\n const orderedItems = nextItems.map((item, index) => ({\n ...item,\n displayOrder: index,\n }));\n setValue(\"questions\", orderedItems);\n};\n\nexport const createFieldData = ({\n kind: { defaults, type, metadata },\n isRequired = undefined,\n questions,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n}) => {\n const modifiedDefaultValues = modifyDefaultValues({\n values: defaults,\n kind: type,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n });\n\n return {\n ...modifiedDefaultValues,\n metadata,\n isRequired,\n kind: type,\n nodeId: uuid(),\n fieldCode: generateUniqueFieldCode({\n questions,\n kind: type,\n label: defaults[\"label\"],\n }),\n };\n};\n\nexport const duplicateFieldData = ({ item, questionKinds, questions }) => {\n const { isRequired, kind, optionsAttributes } = item;\n\n const questionKind = findBy({ type: kind }, questionKinds);\n const label = fieldWithFallback(item, \"label\");\n const defaultAttributeNames = keys(questionKind.defaults || {});\n const defaultAttributes = pick(defaultAttributeNames, item);\n const newQuestionLabel = isRichTextQuestion(kind)\n ? label\n : t(\"neetoForm.common.clonedElementLabel\", { label });\n\n return {\n ...defaultAttributes,\n isRequired,\n kind,\n label: newQuestionLabel,\n optionsAttributes: optionsAttributes && optionsAttributes.map(omit([\"id\"])),\n nodeId: uuid(),\n fieldCode: generateUniqueFieldCode({\n questions,\n kind,\n label: newQuestionLabel,\n }),\n displayOrder: item.displayOrder + 1,\n };\n};\n\nexport const getAvailableQuestionKinds = ({\n allQuestionKinds,\n activeQuestions = [],\n isKindAlreadyActive,\n}) => {\n if (isEmpty(activeQuestions)) return allQuestionKinds;\n\n return reject(kind => {\n const isSingularKind = kind.isSingular;\n\n return (\n isAutoGeneratedQuestion(kind.type) ||\n (isSingularKind && isKindAlreadyActive({ activeQuestions, kind }))\n );\n }, allQuestionKinds);\n};\n\nexport const formatQuestionAttributesForClone = when(\n isChoiceQuestion,\n assoc(\"isCloning\", true)\n);\n","import { NoData } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n buildAddQuestionButtonProps,\n buildDisabledAddButtonTooltipProps,\n} from \"./utils\";\n\nconst AddFirstQuestion = ({\n onAdd,\n isDisabled,\n disabledAddButtonTooltipProps,\n}) => {\n const { t } = useTranslation();\n const tooltipProps = buildDisabledAddButtonTooltipProps(\n isDisabled,\n disabledAddButtonTooltipProps\n );\n\n return (\n <div className=\"flex h-full flex-col items-center justify-center py-8\">\n <NoData\n showTooltipWhenButtonDisabled\n className=\"min-h-80\"\n title={t(\"neetoForm.questions.common.noData\")}\n primaryButtonProps={buildAddQuestionButtonProps(\n onAdd,\n isDisabled,\n tooltipProps\n )}\n />\n </div>\n );\n};\n\nexport default AddFirstQuestion;\n","import { t } from \"i18next\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\n\nimport { SELECTABLE_KINDS } from \"../constants\";\n\nconst {\n NAME,\n PHONE,\n EMAIL,\n ADDITIONAL_GUESTS,\n TEXT,\n TEXTAREA,\n RICH_TEXT,\n INTEGER,\n DECIMAL,\n STAR_RATING,\n RATING,\n DATE,\n FILE_UPLOAD,\n CAPTCHA,\n SMS_REMINDER,\n} = QUESTION_TYPES;\n\nexport const QUESTIONS_WITH_ADDITIONAL_DATA = [\n ...SELECTABLE_KINDS,\n STAR_RATING,\n RATING,\n FILE_UPLOAD,\n CAPTCHA,\n EMAIL,\n];\n\nexport const QUESTIONS_WITH_PLACEHOLDERS = [\n NAME,\n PHONE,\n EMAIL,\n ADDITIONAL_GUESTS,\n TEXT,\n TEXTAREA,\n RICH_TEXT,\n INTEGER,\n DECIMAL,\n DATE,\n SMS_REMINDER,\n];\n\nexport const DEFAULT_PLACEHOLDERS = {\n CHECKBOX: t(\"neetoForm.questions.common.questionFields.field.labelExample\", {\n what: t(\"neetoForm.common.hobbies\"),\n }),\n RADIO: t(\"neetoForm.questions.common.questionFields.field.labelExample\", {\n what: t(\"neetoForm.common.country\"),\n }),\n DROPDOWN: t(\"neetoForm.questions.common.questionFields.field.labelExample\", {\n what: t(\"neetoForm.common.company\"),\n }),\n};\n\nexport const INITIAL_VALUES = {\n kind: \"\",\n label: \"\",\n fieldCode: \"\",\n isSplitMode: false,\n};\n\nexport const VALID_FIELD_CODE_REGEX = /^[a-z0-9]+(_[a-z0-9]+)*$/;\n","import { useFormikContext } from \"formik\";\nimport { isMetaKeyPressed } from \"neetocommons/react-utils\";\nimport { Textarea } from \"neetoui/formik\";\n\nconst FormikAdaptiveInput = ({ label, name, ...otherProps }) => {\n const { dirty, isValid, submitForm } = useFormikContext();\n\n const handleKeyDown = event => {\n if (event.key !== \"Enter\" || event.shiftKey) return;\n\n event.preventDefault();\n if (isMetaKeyPressed(event)) return;\n\n dirty && isValid && submitForm();\n };\n\n const handleFocus = element => {\n const end = element.value.length;\n element.setSelectionRange(end, end);\n };\n\n return (\n <Textarea\n {...{ label, name }}\n className=\"neeto-form-nano-adaptive-input\"\n resize=\"none\"\n size=\"small\"\n onFocus={({ target }) => handleFocus(target)}\n onKeyDown={handleKeyDown}\n {...otherProps}\n />\n );\n};\n\nexport default FormikAdaptiveInput;\n","import { withEventTargetValue } from \"neetocommons/utils\";\nimport { includes } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n DEFAULT_PLACEHOLDERS,\n QUESTIONS_WITH_PLACEHOLDERS,\n} from \"components/BuildForm/ManageQuestionPane/constants\";\nimport FormikAdaptiveInput from \"components/Common/FormikAdaptiveInput\";\n\nconst LabelWithPlaceholder = ({\n kind,\n isLabelDisabled,\n handleLabelChange,\n labelProps = {},\n placeholderProps = {},\n}) => {\n const { t } = useTranslation();\n\n const shouldShowPlaceholder = includes(kind, QUESTIONS_WITH_PLACEHOLDERS);\n\n return (\n <div className=\"space-y-4\">\n <FormikAdaptiveInput\n required\n disabled={isLabelDisabled}\n label={t(\"neetoForm.questions.common.questionFields.field.question\")}\n name=\"label\"\n placeholder={DEFAULT_PLACEHOLDERS[kind]}\n onChange={withEventTargetValue(handleLabelChange)}\n {...labelProps}\n />\n {shouldShowPlaceholder && (\n <FormikAdaptiveInput\n className={`neeto-form-nano-placeholder-input neeto-form-nano-placeholder-input-${kind}`}\n name=\"placeholder\"\n label={t(\n \"neetoForm.questions.common.questionFields.field.placeholder\"\n )}\n {...placeholderProps}\n />\n )}\n </div>\n );\n};\n\nexport default LabelWithPlaceholder;\n","import { useFormikContext } from \"formik\";\nimport { Switch } from \"neetoui/formik\";\nimport { path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { LABEL_FIELDS } from \"components/Common/constants\";\nimport { QUESTION_TYPES } from \"components/constants\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport LabelWithPlaceholder from \"../../commons/LabelWithPlaceholder\";\n\nconst Name = ({ isLabelDisabled, handleLabelChange }) => {\n const {\n values: { isSplitMode = false },\n } = useFormikContext();\n\n const { t } = useTranslation();\n\n const usesCustomSubmissionComponent = useBuildFormStore(\n path([\"formState\", \"usesCustomSubmissionComponent\"])\n );\n\n const commonProps = { kind: QUESTION_TYPES.NAME, isLabelDisabled };\n\n return (\n <div className=\"space-y-4\">\n {!usesCustomSubmissionComponent && (\n <Switch\n label={t(\"neetoForm.common.splitAsFirstAndLastNames\")}\n name=\"isSplitMode\"\n />\n )}\n {isSplitMode && !usesCustomSubmissionComponent ? (\n <>\n <LabelWithPlaceholder\n {...commonProps}\n handleLabelChange={value =>\n handleLabelChange(value, LABEL_FIELDS.FIRST_NAME)\n }\n labelProps={{\n label: t(\n \"neetoForm.questions.common.questionFields.field.firstNameQuestion\"\n ),\n name: LABEL_FIELDS.FIRST_NAME,\n }}\n placeholderProps={{\n label: t(\n \"neetoForm.questions.common.questionFields.field.firstNamePlaceholder\"\n ),\n name: \"firstNamePlaceholder\",\n }}\n />\n <LabelWithPlaceholder\n {...commonProps}\n handleLabelChange={value =>\n handleLabelChange(value, LABEL_FIELDS.LAST_NAME)\n }\n labelProps={{\n label: t(\n \"neetoForm.questions.common.questionFields.field.lastNameQuestion\"\n ),\n name: LABEL_FIELDS.LAST_NAME,\n }}\n placeholderProps={{\n label: t(\n \"neetoForm.questions.common.questionFields.field.lastNamePlaceholder\"\n ),\n name: \"lastNamePlaceholder\",\n }}\n />\n </>\n ) : (\n <LabelWithPlaceholder\n {...commonProps}\n labelProps={{ name: LABEL_FIELDS.FULL_NAME }}\n placeholderProps={{ name: \"fullNamePlaceholder\" }}\n handleLabelChange={value =>\n handleLabelChange(value, LABEL_FIELDS.FULL_NAME)\n }\n />\n )}\n </div>\n );\n};\n\nexport default Name;\n","import { includes } from \"ramda\";\n\nimport useBuildFormStore from \"src/stores/buildForm\";\nimport { isNameQuestion } from \"utils\";\n\nimport { QUESTIONS_WITH_ADDITIONAL_DATA } from \"./constants\";\nimport { renderAdditionalData } from \"./utils\";\n\nimport LabelWithPlaceholder from \"../commons/LabelWithPlaceholder\";\nimport Name from \"../Questions/Fields/Name\";\n\nconst Properties = ({\n kind,\n isLabelDisabled,\n handleLabelChange,\n questionProps,\n}) => {\n const { enableDomainWhitelisting, enableDomainBlacklisting } =\n useBuildFormStore.pick(\"formState\");\n\n const hasAdditionalData = includes(kind, QUESTIONS_WITH_ADDITIONAL_DATA);\n\n if (isNameQuestion(kind)) {\n return <Name {...{ handleLabelChange, isLabelDisabled }} />;\n }\n\n return (\n <div className=\"space-y-4\">\n <LabelWithPlaceholder {...{ handleLabelChange, isLabelDisabled, kind }} />\n {hasAdditionalData &&\n renderAdditionalData({\n kind,\n questionProps,\n enableDomainWhitelisting,\n enableDomainBlacklisting,\n })}\n </div>\n );\n};\n\nexport default Properties;\n","import { Typography } from \"neetoui\";\n\nconst Block = ({ title, children, dataCy }) => (\n <div className=\"mt-4 space-y-4\" data-cy={dataCy}>\n <div\n className=\"flex items-center justify-between\"\n data-cy=\"properties-header\"\n >\n <Typography lineHeight=\"normal\" style=\"body1\" weight=\"semibold\">\n {title}\n </Typography>\n </div>\n <div className=\"space-y-4\">{children}</div>\n </div>\n);\n\nexport default Block;\n","import { useEffect, useRef } from \"react\";\n\nimport { modify, path, without } from \"ramda\";\n\nimport { useFetchQuestions } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nconst useUpdateEditorContent = ({\n editorRef,\n fieldName,\n value,\n initialValue,\n fieldCode,\n}) => {\n const initialStateRef = useRef({ language: \"\", value: null });\n\n const { setFormData } = useBuildFormStore.pick();\n const { formId, selectedLanguage: language } =\n useBuildFormStore.pick(\"formState\");\n\n const shouldReset = useBuildFormStore(store =>\n store.formState.richTextFieldsToReset.includes(fieldCode)\n );\n\n const setEditorContent = content =>\n editorRef.current.editor?.commands?.setContent(content);\n\n if (shouldReset) {\n setEditorContent(initialValue);\n setFormData(modify(\"richTextFieldsToReset\", without([fieldCode])));\n }\n\n const { data } = useFetchQuestions({ formId, language });\n\n useEffect(() => {\n if (!data) return;\n\n const pathArray = fieldName.split(\".\").map(part => {\n const parsedPart = parseInt(part);\n\n return isNaN(parsedPart) ? part : parsedPart;\n });\n\n setEditorContent(path(pathArray, data));\n }, [data]);\n\n useEffect(() => {\n if (initialStateRef.current[\"language\"] !== language) {\n initialStateRef.current[\"language\"] = language;\n initialStateRef.current[\"value\"] = null;\n\n return;\n }\n\n if (initialStateRef.current[\"value\"] === null && value !== null) {\n setEditorContent(value);\n initialStateRef.current[\"value\"] = value;\n }\n }, [language, value]);\n};\n\nexport default useUpdateEditorContent;\n","import { useRef } from \"react\";\n\nimport { useField, useFormikContext } from \"formik\";\nimport { Editor as NeetoEditor } from \"neetoeditor\";\n\nimport useUpdateEditorContent from \"../hooks/useUpdateEditorContent\";\nimport { validateEditorContent } from \"../utils\";\n\nconst Editor = () => {\n const editorRef = useRef({ editor: {} });\n\n const {\n values: { fieldCode },\n } = useFormikContext();\n\n const fieldName = \"label\";\n\n const [\n { value },\n { touched, error, initialValue },\n { setTouched, setValue },\n ] = useField({\n name: fieldName,\n validate: validateEditorContent(editorRef),\n });\n\n useUpdateEditorContent({\n editorRef,\n fieldName,\n value,\n initialValue,\n fieldCode,\n });\n\n return (\n <div className=\"w-full cursor-auto\">\n <NeetoEditor\n required\n error={touched ? error : \"\"}\n id=\"editor\"\n initialValue={value}\n name={fieldName}\n ref={editorRef}\n onBlur={() => setTouched(true)}\n onChange={setValue}\n />\n </div>\n );\n};\n\nexport default Editor;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Switch } from \"neetoui/formik\";\n\nconst RequiredSwitch = withT(({ t }) => (\n <div className=\"w-full\">\n <Switch label={t(\"neetoForm.common.required\")} name=\"isRequired\" />\n </div>\n));\n\nexport default RequiredSwitch;\n","import { useEffect } from \"react\";\n\nimport { useField } from \"formik\";\nimport { Input } from \"neetoui/formik\";\n\nconst InputWithMaxLength = ({ maxLength, ...props }) => {\n const [{ value }, , { setValue }] = useField(props);\n\n useEffect(() => {\n if (value && value.length > maxLength) {\n setValue(value.substring(0, maxLength));\n }\n }, [value, maxLength, setValue]);\n\n const shouldShowMaxLength = value && value.length > maxLength - 10;\n\n return <Input {...props} {...(shouldShowMaxLength && { maxLength })} />;\n};\n\nexport default InputWithMaxLength;\n","import { Button } from \"neetoui\";\nimport { path } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport Input from \"components/Common/InputWithMaxLength\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { FIELD_CODES_REJECT_CHARS_REGEX } from \"./constants\";\n\nconst FieldCode = () => {\n const helpDocUrl = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"fieldCode\"])\n );\n\n const { t } = useTranslation();\n\n return (\n <Input\n required\n label={t(\"neetoForm.questions.common.questionFields.field.fieldCode\")}\n name=\"fieldCode\"\n rejectCharsRegex={FIELD_CODES_REJECT_CHARS_REGEX}\n helpText={\n helpDocUrl && (\n <Trans\n i18nKey=\"neetoForm.questions.common.questionFields.field.fieldCodeHelpDescription\"\n components={{\n Link: (\n <Button\n className=\"text-xs\"\n href={helpDocUrl}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n )\n }\n />\n );\n};\n\nexport default FieldCode;\n","import { useFormikContext } from \"formik\";\nimport { useStateWithDependency } from \"neetocommons/react-utils\";\nimport { Pane, Accordion } from \"neetoui\";\nimport { Select, Switch } from \"neetoui/formik\";\nimport { includes, isNil, mergeLeft, path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { LABEL_FIELDS } from \"components/Common/constants\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport Properties from \"./Properties\";\nimport {\n buildDefaultValueForKind,\n buildKindOptions,\n extractKindFromOption,\n getQuestionKind,\n hideSwitchLabelProps,\n readOnlySwitchLabelProps,\n responseVisibleOnlyToHostSwitchLabelProps,\n} from \"./utils\";\n\nimport Block from \"../commons/Block\";\nimport Editor from \"../commons/Editor\";\nimport RequiredSwitch from \"../commons/RequiredSwitch\";\nimport {\n NON_HIDEABLE_FIELDS,\n NON_READ_ONLY_FIELDS,\n QUESTIONS_WITHOUT_FIELD_CODE,\n} from \"../constants\";\nimport { createFieldData, generateUniqueFieldCode } from \"../Form/utils\";\nimport FieldCode from \"../Questions/FieldCode\";\nimport { isImmutableField, isRichTextQuestion } from \"../utils\";\n\nconst Form = ({\n questions,\n initialFocusRef,\n isRequiredField,\n isDisabledFieldLabel,\n enableFieldCode,\n allQuestionKinds,\n availableQuestionKinds,\n getActiveKindDetails,\n additionalQuestionKindPattern,\n isEdit = false,\n}) => {\n const { t } = useTranslation();\n\n const { values, setValues, setErrors, setTouched, setFieldValue } =\n useFormikContext();\n\n const hideQuestionHelpDoc = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"hideQuestion\"])\n );\n\n const readOnlyHelpDoc = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"readOnly\"])\n );\n\n const responseVisibleOnlyToHostHelpDoc = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"responseVisibleOnlyToHost\"])\n );\n\n const {\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n } = useBuildFormStore.pick(\"formState\");\n\n const { kind } = values;\n\n const questionKinds = isEdit ? allQuestionKinds : availableQuestionKinds;\n\n const questionKindUniquenessPattern = mergeLeft(\n isEdit && additionalQuestionKindPattern\n ? additionalQuestionKindPattern(values)\n : {},\n { type: kind }\n );\n\n const [questionKind] = useStateWithDependency(\n getQuestionKind(questionKinds, questionKindUniquenessPattern),\n [kind]\n );\n\n const { questionProps = {} } = questionKind\n ? getActiveKindDetails({ allQuestionKinds, item: questionKind })\n : {};\n\n const isRequired = questionKind && isRequiredField(questionKind);\n const isLabelDisabled = questionKind && isDisabledFieldLabel(questionKind);\n const isImmutable = questionKind && isImmutableField(questionKind);\n const shouldShowFieldCode =\n enableFieldCode && !includes(kind, QUESTIONS_WITHOUT_FIELD_CODE);\n\n const shouldShowHideSwitch = !includes(kind, NON_HIDEABLE_FIELDS);\n const shouldShowResponseVisibleOnlyToHostSwitch =\n showResponseVisibleOnlyToHostSwitch && !includes(kind, NON_HIDEABLE_FIELDS);\n\n const shouldShowReadOnlySwitch =\n showReadOnlySwitch && !includes(kind, NON_READ_ONLY_FIELDS);\n\n const isSettingsBlockVisible =\n !isRequired && (!isImmutable || shouldShowHideSwitch);\n\n const handleKindChange = option => {\n const data = buildQuestionData(option);\n updateFormState(data);\n };\n\n const buildQuestionData = option => {\n if (isNil(option)) {\n return INITIAL_VALUES;\n }\n\n const { label, value } = option;\n const kind = extractKindFromOption(value);\n const questionKind = getQuestionKind(availableQuestionKinds, {\n type: kind,\n label,\n });\n\n return createFieldData({\n kind: questionKind,\n isRequired,\n questions,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n });\n };\n\n const updateFormState = data => {\n setValues(data);\n setErrors({});\n setTouched({});\n };\n\n const handleLabelChange = (label, name = LABEL_FIELDS.DEFAULT) => {\n setFieldValue(name, label);\n\n if (isEdit) return;\n\n const uniqueFieldCode = generateUniqueFieldCode({\n questions,\n label,\n kind,\n });\n\n setFieldValue(\"fieldCode\", uniqueFieldCode);\n };\n\n return (\n <Pane.Body>\n <div className=\"w-full space-y-4\">\n <Select\n isClearable\n isSearchable\n defaultValue={buildDefaultValueForKind(questionKind)}\n innerRef={initialFocusRef}\n isDisabled={isEdit}\n name=\"kind\"\n options={buildKindOptions(questionKinds)}\n label={t(\n \"neetoForm.questions.common.questionFields.field.questionType\"\n )}\n onChange={handleKindChange}\n />\n {isRichTextQuestion(kind) ? (\n <Editor {...{ isLabelDisabled }} />\n ) : (\n <div className=\"space-y-6\">\n <Properties\n {...{ handleLabelChange, isLabelDisabled, kind, questionProps }}\n />\n {isSettingsBlockVisible && (\n <Block\n dataCy=\"settings-card\"\n title={t(\"neetoForm.common.settings\")}\n >\n {!isImmutable && <RequiredSwitch />}\n {shouldShowHideSwitch && (\n <Switch\n label={t(\"neetoForm.common.hideQuestion\")}\n labelProps={hideSwitchLabelProps(hideQuestionHelpDoc)}\n name=\"isHidden\"\n />\n )}\n {shouldShowResponseVisibleOnlyToHostSwitch && (\n <Switch\n label={t(\"neetoForm.common.responseVisibleOnlyToHost\")}\n name=\"isResponseVisibleOnlyToHost\"\n labelProps={responseVisibleOnlyToHostSwitchLabelProps(\n responseVisibleOnlyToHostHelpDoc\n )}\n />\n )}\n </Block>\n )}\n {(shouldShowFieldCode || shouldShowReadOnlySwitch) && (\n <Accordion\n className=\"neeto-form-nano-advanced-properties-accordion\"\n data-cy=\"advanced-properties-card\"\n >\n <Accordion.Item\n title={t(\"neetoForm.common.advancedProperties\")}\n >\n <div className=\"flex flex-col space-y-4\">\n {shouldShowFieldCode && <FieldCode />}\n {shouldShowReadOnlySwitch && (\n <Switch\n label={t(\"neetoForm.common.readOnly\")}\n labelProps={readOnlySwitchLabelProps(readOnlyHelpDoc)}\n name=\"isReadOnly\"\n />\n )}\n </div>\n </Accordion.Item>\n </Accordion>\n )}\n </div>\n )}\n </div>\n </Pane.Body>\n );\n};\n\nexport default Form;\n","/* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */\nimport { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport { equals, includes } from \"ramda\";\nimport * as yup from \"yup\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\nimport { isNameQuestion } from \"utils\";\n\nimport { VALID_FIELD_CODE_REGEX } from \"./constants\";\n\nimport {\n QUESTIONS_WITHOUT_FIELD_CODE,\n RESERVED_FIELD_CODES,\n RICH_TEXT_QUESTIONS,\n SELECTABLE_KINDS,\n} from \"../constants\";\n\nconst requiredLabelValidation = (schema, field) =>\n schema.trim().required(t(\"neetoForm.common.fieldReq\", { field }));\n\nconst fieldCodeValidation = (schema, field) =>\n schema\n .trim()\n .required(t(\"neetoForm.common.fieldReq\", { field }))\n .matches(\n VALID_FIELD_CODE_REGEX,\n t(\"neetoForm.error.invalidField\", { label: field })\n );\n\nconst richTextFieldMissingErrorMessage = kind => {\n const field = equals(kind, QUESTION_TYPES.PARAGRAPH)\n ? t(\"neetoForm.fields.def\")\n : t(\"neetoForm.fields.tcf\");\n\n return t(\"neetoForm.error.fieldCantBeEmpty\", { field });\n};\n\nconst buildLabelValidationSchema = (kind, schema) => {\n if (isNameQuestion(kind)) {\n return schema.notRequired();\n }\n\n return includes(kind, RICH_TEXT_QUESTIONS)\n ? schema.test(\n \"required\",\n richTextFieldMissingErrorMessage(kind),\n value => !isEditorEmpty(value)\n )\n : requiredLabelValidation(\n schema,\n t(\"neetoForm.questions.common.questionFields.field.question\")\n );\n};\n\nconst buildNameLabelValidationSchema = (\n question,\n schema,\n isFullName = false\n) => {\n const isRequired = isFullName ? !question.isSplitMode : question.isSplitMode;\n\n return isNameQuestion(question.kind) && isRequired\n ? requiredLabelValidation(\n schema,\n t(\"neetoForm.questions.common.questionFields.field.question\")\n )\n : schema.notRequired();\n};\n\nconst stringSchema = yup.string();\n\nexport const formValidationSchema = (question, enableFieldCode = false) =>\n yup.object().shape({\n kind: yup\n .string()\n .trim()\n .required(\n t(\"neetoForm.common.fieldReq\", {\n field: t(\n \"neetoForm.questions.common.questionFields.field.questionType\"\n ),\n })\n ),\n label: yup.string().when(\"kind\", buildLabelValidationSchema),\n fullNameLabel: buildNameLabelValidationSchema(question, stringSchema, true),\n firstNameLabel: buildNameLabelValidationSchema(question, stringSchema),\n lastNameLabel: buildNameLabelValidationSchema(question, stringSchema),\n fieldCode: yup\n .string()\n .trim()\n .notOneOf(RESERVED_FIELD_CODES, t(\"neetoForm.error.invalidFieldCode\"))\n .when(\"kind\", (kind, schema) =>\n enableFieldCode && !includes(kind, QUESTIONS_WITHOUT_FIELD_CODE)\n ? fieldCodeValidation(\n schema,\n t(\"neetoForm.questions.common.questionFields.field.fieldCode\")\n )\n : schema.notRequired()\n ),\n optionsAttributes: yup.array().when(\"kind\", (kind, schema) =>\n includes(kind, SELECTABLE_KINDS)\n ? schema.of(\n yup.object().shape({\n label: yup.string().when(\"_destroy\", {\n is: true,\n otherwise: requiredLabelValidation(\n yup.string(),\n t(\"neetoForm.questions.common.questionFields.field.option\")\n ),\n }),\n })\n )\n : schema.notRequired()\n ),\n highestRatingLabel: yup.string().nullable(),\n averageRatingLabel: yup.string().nullable(),\n lowestRatingLabel: yup.string().nullable(),\n });\n","import { findBy } from \"neetocist\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form } from \"neetoui/formik\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport QuestionForm from \"./Form\";\nimport { formValidationSchema } from \"./validations\";\n\nconst Add = ({\n question,\n onClose,\n questions,\n handleSelect,\n buildRequestArgs,\n isOpen,\n ...props\n}) => {\n const { formId, selectedLanguage: language } =\n useBuildFormStore.pick(\"formState\");\n\n const { t } = useTranslation();\n\n const { mutate: createQuestion, isPending: isCreating } = useCreateQuestion(\n formId,\n language,\n {\n onSuccess: () => {\n showThumbsUpToastr();\n onClose();\n },\n }\n );\n\n const handleSubmit = values => {\n if (isCreating || !isOpen) return;\n\n const displayOrder = question\n ? question.displayOrder + 1\n : questions.length;\n\n createQuestion(\n {\n language,\n neetoFormQuestion: mergeLeft({ displayOrder }, values),\n ...buildRequestArgs,\n },\n {\n onSuccess: ({ questions }) => {\n const newQuestion = findBy({ displayOrder }, questions);\n handleSelect(newQuestion);\n },\n }\n );\n };\n\n return (\n <>\n <Pane.Header>\n <Typography data-cy=\"add-question-pane-header\" style=\"h2\">\n {t(\"neetoForm.questions.common.primaryPanel.addQuestion\")}\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues: INITIAL_VALUES,\n validationSchema: formValidationSchema(\n INITIAL_VALUES,\n props[\"enableFieldCode\"]\n ),\n onSubmit: handleSubmit,\n }}\n >\n <>\n <QuestionForm {...{ ...props, question, questions }} />\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isCreating}\n />\n </Pane.Footer>\n </>\n </Form>\n </>\n );\n};\n\nexport default Add;\n","import { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport QuestionForm from \"./Form\";\nimport { formValidationSchema } from \"./validations\";\n\nconst Edit = ({ question, isOpen, onClose, ...props }) => {\n const { t } = useTranslation();\n\n const { selectedLanguage: language } = useBuildFormStore.pick(\"formState\");\n\n const { mutate: updateQuestion, isPending: isUpdating } = useUpdateQuestion(\n question?.formId,\n language\n );\n\n const handleSubmit = (values, { setSubmitting }) => {\n if (isUpdating || !isOpen) return;\n\n const payload = { language, neetoFormQuestion: values };\n updateQuestion(\n { questionId: question.id, payload },\n {\n onSuccess: () => {\n showThumbsUpToastr();\n onClose();\n },\n onSettled: () => setSubmitting(false),\n }\n );\n };\n\n return (\n <>\n <Pane.Header>\n <Typography data-cy=\"edit-question-pane-header\" style=\"h2\">\n {t(\"neetoForm.questions.common.editQuestion\")}\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues: question,\n validationSchema: formValidationSchema(\n question,\n props[\"enableFieldCode\"]\n ),\n onSubmit: handleSubmit,\n }}\n >\n <>\n <QuestionForm {...{ question, ...props }} isEdit />\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isUpdating}\n />\n </Pane.Footer>\n </>\n </Form>\n </>\n );\n};\n\nexport default Edit;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Radio } from \"neetoui/formik\";\n\nimport { CAPTCHA_TYPES } from \"components/constants\";\n\nconst Captcha = withT(({ t }) => (\n <Radio\n label={t(\"neetoForm.common.captchaType\")}\n labelProps={{ required: true }}\n name=\"variant\"\n >\n <Radio.Item\n label={t(\"neetoForm.common.reCaptchaV2\")}\n value={CAPTCHA_TYPES.RECAPTCHA_V2}\n />\n <Radio.Item\n label={t(\"neetoForm.common.mathCaptcha\")}\n value={CAPTCHA_TYPES.MATH_CAPTCHA}\n />\n </Radio>\n));\n\nexport default Captcha;\n","import classnames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\nimport { Label, Typography } from \"neetoui\";\nimport { Switch } from \"neetoui/formik\";\n\nconst SwitchBlock = ({ name, title, className = \"\", ...otherProps }) => (\n <Label\n className={classnames(\"flex items-center justify-start gap-2 \", className)}\n data-cy={`neeto-form-engine-${hyphenate(title && name)}-toggle-label`}\n >\n <Switch\n {...{ ...otherProps, name }}\n data-cy={`neeto-form-engine-${hyphenate(title && name)}-switch`}\n />\n <Typography component=\"span\" style=\"body1\">\n {title}\n </Typography>\n </Label>\n);\n\nexport default SwitchBlock;\n","import HelpPopover from \"neetomolecules/HelpPopover\";\n\nconst TitleWithHelpPopover = ({ title, description, helpLink }) => (\n <div className=\"flex gap-2\">\n {title}\n <HelpPopover\n {...{ description }}\n popoverProps={{ position: \"top\" }}\n {...(helpLink && { helpLinkProps: { href: helpLink } })}\n />\n </div>\n);\n\nexport default TitleWithHelpPopover;\n","import { t } from \"i18next\";\n\nexport const DOMAIN_RESTRICTION_TRANSLATIONS = {\n whitelistedDomains: {\n title: t(\"neetoForm.domainRestriction.whitelistedDomains.label\"),\n description: t(\n \"neetoForm.domainRestriction.whitelistedDomains.description\"\n ),\n popoverDescription: t(\n \"neetoForm.domainRestriction.whitelistedDomains.popoverDescription\"\n ),\n },\n blacklistedDomains: {\n title: t(\"neetoForm.domainRestriction.blacklistedDomains.label\"),\n description: t(\n \"neetoForm.domainRestriction.blacklistedDomains.description\"\n ),\n popoverDescription: t(\n \"neetoForm.domainRestriction.blacklistedDomains.popoverDescription\"\n ),\n },\n};\n","import { t } from \"i18next\";\nimport { hyphenize } from \"neetocommons/utils\";\nimport { Close } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { components } from \"react-select\";\nimport * as yup from \"yup\";\n\nconst STYLES = {\n border: {\n default: \"1px solid rgb(var(--neeto-ui-gray-400))\",\n error: \"1px solid rgb(var(--neeto-ui-error-800)) !important\",\n },\n color: {\n default: \"rgb(var(--neeto-ui-gray-800))\",\n error: \"rgb(var(--neeto-ui-error-800)) !important\",\n },\n};\n\nconst MultiValueRemove = props => (\n <components.MultiValueRemove\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: `${hyphenize(props.data.label)}-remove-icon`,\n }}\n >\n <Close size={16} />\n </components.MultiValueRemove>\n);\n\nconst ValueContainer = ({ children, ...props }) => {\n const { t } = useTranslation();\n\n const {\n getValue,\n selectProps: { isFocused, visibleDomainsCount },\n } = props;\n const value = getValue();\n const [firstChild, ...rest] = children;\n\n const shouldCollapse = !isFocused && value.length > visibleDomainsCount;\n\n return (\n <components.ValueContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-domain-input-container\",\n }}\n >\n {shouldCollapse ? firstChild.slice(0, visibleDomainsCount) : firstChild}\n {shouldCollapse && (\n <Tag\n style=\"secondary\"\n label={t(\"neetoForm.common.remainingItemsCount\", {\n count: value.length - visibleDomainsCount,\n })}\n />\n )}\n {rest}\n </components.ValueContainer>\n );\n};\n\nconst ClearIndicator = props => (\n <components.ClearIndicator\n {...props}\n innerProps={{ ...props.innerProps, [\"data-cy\"]: \"clear-all-button\" }}\n >\n <Close className=\"cursor-pointer\" size={16} />\n </components.ClearIndicator>\n);\n\nexport const ERROR_MESSAGE_DELIMITER = \". \";\nexport const DELIMITER_KEYS = [\"Enter\", \"Tab\", \",\", \" \"];\nexport const DOMAIN_SEPARATION_REGEX = /[^\\s,]+/g;\nexport const FLEXIBLE_DOMAIN_REGEX = /^[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)+$/;\n\nexport const VALID_DOMAIN_REGEX =\n /^(?:[a-zA-Z0-9-]{1,63}\\.)+[a-zA-Z0-9-]{2,63}$/;\n\nexport const DOMAIN_VALIDATION_SCHEMA = yup\n .string()\n .required(\n t(\"neetoForm.error.requiredField\", {\n label: t(\"neetoForm.common.domain\"),\n })\n )\n .test(\"verify domains\", t(\"neetoForm.error.invalidDomain\"), domain =>\n VALID_DOMAIN_REGEX.test(domain)\n );\n\nexport const CUSTOM_STYLES = {\n input: assoc(\"overflow\", \"hidden\"),\n multiValue: (styles, { data: { valid } }) => ({\n ...styles,\n border: valid ? STYLES.border.default : STYLES.border.error,\n color: valid ? STYLES.color.default : STYLES.color.error,\n }),\n};\n\nexport const CUSTOM_COMPONENTS = {\n DropdownIndicator: null,\n MultiValueRemove,\n ValueContainer,\n ClearIndicator,\n};\n","import { filter, isNotNil, join, map, pipe, pluck, uniq } from \"ramda\";\n\nimport { ERROR_MESSAGE_DELIMITER, DOMAIN_VALIDATION_SCHEMA } from \"./constants\";\n\nconst removeDuplicateErrorMessages = pipe(\n filter(isNotNil),\n uniq,\n join(ERROR_MESSAGE_DELIMITER)\n);\n\nexport const formatDomainInputOptions = domain => {\n let isValid;\n\n try {\n DOMAIN_VALIDATION_SCHEMA.validateSync(domain);\n isValid = true;\n } catch {\n isValid = false;\n }\n\n return { label: domain, value: domain, valid: isValid };\n};\n\nexport const pruneDuplicates = pipe(\n pluck(\"value\"),\n uniq,\n map(formatDomainInputOptions)\n);\n\nexport const getValidDomains = domains =>\n domains.filter(domain => domain?.valid);\n\nexport const getValidDomainsCount = domains => getValidDomains(domains).length;\n\nexport const formatErrorMessage = error => {\n if (typeof error === \"string\") return error;\n\n return removeDuplicateErrorMessages(error);\n};\n","import { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { hyphenize } from \"neetocommons/utils\";\nimport { Label } from \"neetoui\";\nimport { mergeLeft, filter, includes, test } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport CreatableSelect from \"react-select/creatable\";\n\nimport {\n CUSTOM_COMPONENTS,\n CUSTOM_STYLES,\n DELIMITER_KEYS,\n DOMAIN_SEPARATION_REGEX,\n ERROR_MESSAGE_DELIMITER,\n FLEXIBLE_DOMAIN_REGEX,\n} from \"./constants\";\nimport {\n formatDomainInputOptions,\n formatErrorMessage,\n getValidDomainsCount,\n pruneDuplicates,\n getValidDomains,\n} from \"./utils\";\n\nconst MultiDomainInput = ({\n label = \"\",\n value = [],\n onChange = noop,\n error = \"\",\n onBlur = noop,\n ...otherProps\n}) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isFocused, setIsFocused] = useState(false);\n\n const { t } = useTranslation();\n\n const handleFilterDomains = () => onChange(getValidDomains(value));\n\n const handleDomainChange = () => {\n const inputValues = inputValue.match(DOMAIN_SEPARATION_REGEX) || [];\n const domainMatches = filter(test(FLEXIBLE_DOMAIN_REGEX), inputValues);\n\n const domains = domainMatches.map(formatDomainInputOptions);\n onChange(pruneDuplicates([...value, ...domains]));\n setInputValue(\"\");\n };\n\n const handleKeyDown = event => {\n if (!inputValue) return;\n\n if (includes(event.key, DELIMITER_KEYS)) {\n handleDomainChange();\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n const onCreateOption = input => {\n const domain = formatDomainInputOptions(input);\n onChange(pruneDuplicates([...value, domain]));\n };\n\n const handleBlur = event => {\n inputValue ? handleDomainChange() : onBlur(event);\n setIsFocused(false);\n };\n\n const isFilterDomainsLinkVisible = value.length > getValidDomainsCount(value);\n\n return (\n <div className=\"neeto-ui-input__wrapper neeto-ui-email-input__wrapper\">\n <div className=\"neeto-ui-email-input__label-wrapper\">\n <Label\n className=\"neeto-ui-email-input__label\"\n data-cy={`${hyphenize(label)}-input-label`}\n >\n {label}\n </Label>\n </div>\n <CreatableSelect\n isMulti\n required\n classNamePrefix=\"neeto-ui-react-select\"\n components={CUSTOM_COMPONENTS}\n menuIsOpen={false}\n visibleDomainsCount={3}\n className={classnames(\n \"neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select\",\n { \"neeto-ui-react-select__container--error\": !!error }\n )}\n styles={{\n ...CUSTOM_STYLES,\n control: mergeLeft({\n maxHeight: \"200px\",\n overflowY: \"auto\",\n }),\n }}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onInputChange={setInputValue}\n onKeyDown={handleKeyDown}\n {...{\n inputValue,\n isFocused,\n onChange,\n onCreateOption,\n value,\n ...otherProps,\n }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n >\n {formatErrorMessage(error)}\n {isFilterDomainsLinkVisible && (\n <span\n className=\"neeto-ui-font-semibold cursor-pointer\"\n onClick={handleFilterDomains}\n >\n {ERROR_MESSAGE_DELIMITER}\n {t(\"neetoForm.domainRestriction.removeInvalidDomains\")}\n </span>\n )}\n </p>\n )}\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n >\n {t(\"neetoForm.domainRestriction.helpText\")}\n </p>\n </div>\n );\n};\n\nexport default MultiDomainInput;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nimport { VALID_DOMAIN_REGEX } from \"./MultiDomainInput/constants\";\n\nexport const validateDomains = value => {\n const schema = yup\n .array()\n .of(\n yup\n .string()\n .test(\"verify domains\", t(\"neetoForm.error.invalidDomain\"), domain =>\n VALID_DOMAIN_REGEX.test(domain)\n )\n )\n .ensure()\n .compact()\n .min(\n 1,\n t(\"neetoForm.error.minOneEntity\", {\n entity: t(\"neetoForm.common.domain\"),\n })\n );\n\n // eslint-disable-next-line no-async-promise-executor\n return new Promise(async resolve => {\n try {\n await schema.validate(value);\n resolve(undefined);\n } catch (err) {\n resolve(err.message);\n }\n });\n};\n","import { useField } from \"formik\";\nimport { nullSafe } from \"neetocist\";\nimport { map, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MultiDomainInput from \"./MultiDomainInput\";\nimport { formatDomainInputOptions } from \"./MultiDomainInput/utils\";\nimport { validateDomains } from \"./utils\";\n\nconst EmailDomains = ({ name, label }) => {\n const { t } = useTranslation();\n\n const [{ value: domains = [] }, meta, { setValue, setTouched }] = useField({\n name,\n validate: validateDomains,\n });\n\n const formattedDomains = map(formatDomainInputOptions, domains);\n\n return (\n <div className=\"mb-4\">\n <MultiDomainInput\n {...{ label, name }}\n error={meta.touched ? meta.error : \"\"}\n placeholder={t(\"neetoForm.domainRestriction.placeholder\")}\n value={formattedDomains}\n onBlur={() => setTouched(true)}\n onChange={value => setValue(nullSafe(pluck)(\"value\", value))}\n />\n </div>\n );\n};\n\nexport default EmailDomains;\n","import { hyphenate } from \"neetocist\";\nimport { path } from \"ramda\";\n\nimport SwitchBlock from \"components/BuildForm/commons/SwitchBlock\";\nimport TitleWithHelpPopover from \"components/BuildForm/commons/TitleWithHelpPopover\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { DOMAIN_RESTRICTION_TRANSLATIONS } from \"./constants\";\nimport EmailDomains from \"./EmailDomains\";\n\nconst RestrictDomainsBlock = ({\n switchName,\n domainName,\n isDomainRestrictionEnabled,\n}) => {\n const { title, description, popoverDescription } =\n DOMAIN_RESTRICTION_TRANSLATIONS[domainName];\n\n const helpLink = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", domainName])\n );\n\n return (\n <div\n className=\"flex flex-col space-y-4\"\n data-cy={`${hyphenate(switchName)}-container`}\n >\n <SwitchBlock\n className=\"mt-4\"\n name={switchName}\n title={\n <TitleWithHelpPopover\n {...{ helpLink, title }}\n description={popoverDescription}\n />\n }\n />\n {isDomainRestrictionEnabled && (\n <EmailDomains label={description} name={domainName} />\n )}\n </div>\n );\n};\n\nexport default RestrictDomainsBlock;\n","import { useFormikContext } from \"formik\";\n\nimport RestrictDomainsBlock from \"./RestrictDomainsBlock\";\n\nconst Email = ({ enableDomainWhitelisting, enableDomainBlacklisting }) => {\n const {\n values: {\n isDomainWhitelistingEnabled = false,\n isDomainBlacklistingEnabled = false,\n },\n } = useFormikContext();\n\n return (\n <div className=\"flex flex-col space-y-4\">\n {enableDomainWhitelisting && (\n <RestrictDomainsBlock\n domainName=\"whitelistedDomains\"\n isDomainRestrictionEnabled={isDomainWhitelistingEnabled}\n switchName=\"isDomainWhitelistingEnabled\"\n />\n )}\n {enableDomainBlacklisting && (\n <RestrictDomainsBlock\n domainName=\"blacklistedDomains\"\n isDomainRestrictionEnabled={isDomainBlacklistingEnabled}\n switchName=\"isDomainBlacklistingEnabled\"\n />\n )}\n </div>\n );\n};\n\nexport default Email;\n","import { Checkbox } from \"neetoui\";\n\nconst FileGroup = ({ name, label, checked, handleAllowedFileTypesChange }) => (\n <Checkbox\n {...{ checked, label, name }}\n data-cy={`neeto-form-engine-file-type-${name}`}\n id={name}\n onChange={handleAllowedFileTypesChange}\n />\n);\n\nexport default FileGroup;\n","import { difference, isEmpty } from \"ramda\";\n\nimport { FILE_TYPES_MAP } from \"../constants\";\n\nconst buildFileTypesList = fileTypes => (fileTypes ?? \"\").split(\", \");\n\nexport const getAllowedFileTypes = ({ type, isChecked, allowedFileTypes }) => {\n const fileTypes = buildFileTypesList(allowedFileTypes);\n if (isChecked) {\n const fileTypesSet = new Set([...FILE_TYPES_MAP[type], ...fileTypes]);\n\n return Array.from(fileTypesSet).join(\", \");\n }\n const newFileTypes = difference(fileTypes, FILE_TYPES_MAP[type]);\n\n return newFileTypes.join(\", \");\n};\n\nexport const isFileTypeEnabled = (type, allowedFileTypes) => {\n const fileTypes = buildFileTypesList(allowedFileTypes);\n\n return isEmpty(difference(FILE_TYPES_MAP[type], fileTypes));\n};\n","import { useFormikContext } from \"formik\";\nimport { Typography } from \"neetoui\";\nimport { Checkbox } from \"neetoui/formik\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport FileGroup from \"./FileGroup\";\nimport { getAllowedFileTypes, isFileTypeEnabled } from \"./utils\";\n\nimport { FILE_GROUPS } from \"../constants\";\n\nconst FileUpload = () => {\n const { t } = useTranslation();\n\n const { values, setFieldValue } = useFormikContext();\n\n const allowedFileTypes = prop(\"allowedFileTypes\", values);\n\n const handleAllowedFileTypesChange = ({\n target: { name: fileType, checked },\n }) =>\n setFieldValue(\n \"allowedFileTypes\",\n getAllowedFileTypes({\n type: fileType,\n isChecked: checked,\n allowedFileTypes,\n })\n );\n\n return (\n <>\n <div className=\"w-full\">\n <Checkbox\n id=\"multipleFilesAllowed\"\n label={t(\"neetoForm.fileUpload.enableMultipleFilesUpload\")}\n name=\"multipleFilesAllowed\"\n />\n </div>\n <div className=\"flex flex-col space-y-3\">\n <Typography style=\"body1\" weight=\"semibold\">\n {t(\"neetoForm.fileUpload.fileTypes\")}\n </Typography>\n <div className=\"flex space-x-4\">\n {FILE_GROUPS.map(({ name, label }) => (\n <FileGroup\n {...{ handleAllowedFileTypesChange, label, name }}\n checked={isFileTypeEnabled(name, allowedFileTypes)}\n key={name}\n />\n ))}\n </div>\n </div>\n </>\n );\n};\n\nexport default FileUpload;\n","import { useField } from \"formik\";\nimport OptionFields from \"neetomolecules/OptionFields\";\nimport { Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isDefaultLanguage } from \"components/BuildForm/utils\";\nimport useBuildFormStore from \"src/stores/buildForm\";\nimport { isFunction } from \"utils\";\n\nimport { MINIMUM_OPTIONS } from \"../../constants\";\n\nconst Options = ({ questionProps }) => {\n const { t } = useTranslation();\n\n const { selectedLanguage } = useBuildFormStore.pick(\"formState\");\n\n const name = \"optionsAttributes\";\n const [_, __, { setValue: setOptionsAttributes }] = useField(name);\n\n const {\n optionLabelProps = {},\n freezeOptions = false,\n disableAddOption = false,\n disableRemoveOption = false,\n } = questionProps || {};\n\n const isManageOptionDisabled = isFunction(freezeOptions)\n ? freezeOptions(selectedLanguage)\n : freezeOptions;\n\n const isAddOptionDisabled = disableAddOption || isManageOptionDisabled;\n const isRemoveOptionDisabled = disableRemoveOption || isManageOptionDisabled;\n\n return (\n <div className=\"w-full\">\n <Label className=\"mb-2 block\" {...optionLabelProps}>\n {t(\"neetoForm.questions.common.questionFields.field.options\")}\n </Label>\n <OptionFields\n {...{ name }}\n shouldDestroy\n destroyFlagName=\"_destroy\"\n disabled={isManageOptionDisabled}\n draggable={!isManageOptionDisabled}\n isAddOptionEnabled={!isAddOptionDisabled}\n isDeleteOptionEnabled={!isRemoveOptionDisabled}\n isNewItemsPrefilled={isDefaultLanguage(selectedLanguage)}\n minOptions={MINIMUM_OPTIONS}\n shouldResetEmptyOptionOnBlur={false}\n onChange={setOptionsAttributes}\n />\n </div>\n );\n};\n\nexport default Options;\n","import { hyphenate } from \"neetocist\";\n\nimport Input from \"components/Common/InputWithMaxLength\";\n\nimport { RATING_OPTIONS } from \"./constants\";\n\nconst RatingItem = ({ children }) => (\n <div className=\"flex w-16 flex-col items-center gap-3\">{children}</div>\n);\n\nconst Rating = () => (\n <div className=\"flex flex-col\">\n <div className=\"w-full\">\n <div className=\"flex gap-6\">\n {RATING_OPTIONS.map(({ icon: Icon, name, color }) => (\n <RatingItem key={name}>\n <Icon {...{ color }} size={48} />\n <Input\n {...{ name }}\n data-cy={`neeto-form-engine-${hyphenate(name)}`}\n />\n </RatingItem>\n ))}\n </div>\n </div>\n </div>\n);\n\nexport default Rating;\n","import classNames from \"classnames\";\nimport { useField, useFormikContext } from \"formik\";\nimport { Label } from \"neetoui\";\nimport { Select } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n STAR_RATING_ICONS_MAP,\n STAR_RATING_MAX_VALUE_OPTIONS,\n STAR_RATING_MIN_VALUE_OPTIONS,\n} from \"./constants\";\n\nconst StarRating = () => {\n const { t } = useTranslation();\n\n const { setFieldValue } = useFormikContext();\n\n const [{ value: iconType }, _, { setValue: setIconType }] =\n useField(\"iconType\");\n\n return (\n <>\n <div className=\"flex space-x-4\">\n <Select\n className=\"w-1/2\"\n data-cy=\"neeto-form-engine-star-rating-min-value\"\n label={t(\"neetoForm.common.start\")}\n name=\"minValue\"\n options={STAR_RATING_MIN_VALUE_OPTIONS}\n onChange={option => setFieldValue(\"minValue\", option?.value)}\n />\n <Select\n className=\"w-1/2\"\n data-cy=\"neeto-form-engine-star-rating-max-value\"\n label={t(\"neetoForm.common.end\")}\n name=\"maxValue\"\n options={STAR_RATING_MAX_VALUE_OPTIONS}\n onChange={option => setFieldValue(\"maxValue\", option?.value)}\n />\n </div>\n <Label>{t(\"neetoForm.common.shape\")}</Label>\n <div className=\"flex gap-2\">\n {Object.entries(STAR_RATING_ICONS_MAP).map(([name, IconType]) => {\n const isActive = name === iconType;\n\n return (\n <div\n data-cy={`neeto-form-engine-rating-icon-${name}`}\n key={name}\n className={classNames(\n \"flex h-10 w-10 items-center justify-center gap-2\",\n \"neeto-ui-border-gray-800 neeto-ui-rounded-full cursor-pointer border\",\n \"transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-text-gray-800 neeto-ui-bg-gray-200\": !isActive,\n \"neeto-ui-text-white neeto-ui-bg-gray-800\": isActive,\n }\n )}\n onClick={() => setIconType(name)}\n >\n <IconType />\n </div>\n );\n })}\n </div>\n </>\n );\n};\n\nexport default StarRating;\n","import { t } from \"i18next\";\nimport { findBy, isPresent, slugify } from \"neetocist\";\nimport { assoc, equals, last, pipe, split } from \"ramda\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\n\nimport Add from \"./Add\";\nimport Edit from \"./Edit\";\n\nimport { QUESTION_ACTIONS } from \"../constants\";\nimport Captcha from \"../Questions/Fields/Captcha\";\nimport Email from \"../Questions/Fields/Email\";\nimport FileUpload from \"../Questions/Fields/FileUpload\";\nimport Options from \"../Questions/Fields/Options\";\nimport Rating from \"../Questions/Fields/Rating\";\nimport StarRating from \"../Questions/Fields/StarRating\";\n\nconst {\n CHECKBOX,\n RADIO,\n DROPDOWN,\n STAR_RATING,\n RATING,\n FILE_UPLOAD,\n CAPTCHA,\n EMAIL,\n} = QUESTION_TYPES;\n\nconst transformValueForOption = ({ label, type }) =>\n `${slugify(label)}-${type}`;\n\nexport const renderAdditionalData = ({\n kind,\n questionProps,\n enableDomainWhitelisting,\n enableDomainBlacklisting,\n}) => {\n switch (kind) {\n case CHECKBOX:\n case RADIO:\n case DROPDOWN:\n return <Options {...{ questionProps }} />;\n case RATING:\n return <Rating />;\n case STAR_RATING:\n return <StarRating />;\n case FILE_UPLOAD:\n return <FileUpload />;\n case CAPTCHA:\n return <Captcha />;\n case EMAIL:\n return enableDomainWhitelisting || enableDomainBlacklisting ? (\n <Email {...{ enableDomainBlacklisting, enableDomainWhitelisting }} />\n ) : null;\n default:\n return null;\n }\n};\n\nexport const resolveActionComponent = action =>\n equals(action, QUESTION_ACTIONS.ADD) ? Add : Edit;\n\nexport const getQuestionKind = (questionKinds, pattern) => {\n const questionKind = findBy(pattern, questionKinds);\n\n return questionKind ? assoc(\"kind\", questionKind.type, questionKind) : null;\n};\n\nexport const buildKindOptions = kinds =>\n kinds.map(({ label, type }) => ({\n label,\n value: transformValueForOption({ label, type }),\n }));\n\nexport const extractKindFromOption = pipe(split(\"-\"), last);\n\nexport const buildDefaultValueForKind = questionKind =>\n isPresent(questionKind)\n ? { value: transformValueForOption(questionKind) }\n : undefined;\n\nexport const hideSwitchLabelProps = helpUrl =>\n helpUrl\n ? {\n helpIconProps: {\n popoverProps: {\n description: t(\n \"neetoForm.questions.common.questionFields.field.hideQuestionHelpDescription\"\n ),\n helpLinkProps: {\n href: helpUrl,\n label: t(\"neetoForm.common.viewHelpArticle\"),\n },\n },\n },\n }\n : undefined;\n\nexport const responseVisibleOnlyToHostSwitchLabelProps = helpUrl => ({\n helpIconProps: {\n popoverProps: {\n description: t(\n \"neetoForm.questions.common.questionFields.field.responseVisibleOnlyToHostHelpDescription\"\n ),\n helpLinkProps: {\n href: helpUrl,\n label: t(\"neetoForm.common.viewHelpArticle\"),\n },\n },\n },\n});\n\nexport const readOnlySwitchLabelProps = helpUrl => ({\n helpIconProps: {\n popoverProps: {\n description: t(\n \"neetoForm.questions.common.questionFields.field.readOnlyHelpDescription\"\n ),\n helpLinkProps: helpUrl\n ? {\n href: helpUrl,\n label: t(\"neetoForm.common.viewHelpArticle\"),\n }\n : undefined,\n },\n },\n});\n","import { useRef } from \"react\";\n\nimport { Pane } from \"neetoui\";\n\nimport { resolveActionComponent } from \"./utils\";\n\nconst ManageQuestionPane = ({\n isOpen,\n onClose,\n action,\n question,\n availableQuestionKinds,\n ...props\n}) => {\n const initialFocusRef = useRef(null);\n\n const Component = resolveActionComponent(action);\n\n return (\n <Pane {...{ initialFocusRef, isOpen, onClose }}>\n <Component\n {...{\n availableQuestionKinds,\n initialFocusRef,\n isOpen,\n onClose,\n question,\n ...props,\n }}\n />\n </Pane>\n );\n};\n\nexport default ManageQuestionPane;\n","import { Button, Tooltip } from \"neetoui\";\n\nimport {\n buildAddQuestionButtonProps,\n buildDisabledAddButtonTooltipProps,\n} from \"../utils\";\n\nconst AddQuestion = ({ onAdd, disabledAddButtonTooltipProps, isDisabled }) => {\n const tooltipProps = buildDisabledAddButtonTooltipProps(\n isDisabled,\n disabledAddButtonTooltipProps\n );\n\n return (\n <Tooltip {...tooltipProps}>\n <span>\n <Button {...buildAddQuestionButtonProps(onAdd, isDisabled)} />\n </span>\n </Tooltip>\n );\n};\nexport default AddQuestion;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport { DragDropContext } from \"@hello-pangea/dnd\";\nimport { Form as FormikForm, useFormikContext } from \"formik\";\nimport { filterBy, findBy, isPresent } from \"neetocist\";\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { ActionBlock } from \"neetoui/formik\";\nimport { __, includes, isEmpty, mergeLeft, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\nimport { useCreateQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport DeleteSmsReminderModal from \"./DeleteSmsReminderModal\";\nimport Overview from \"./Overview\";\nimport Questions from \"./Questions\";\nimport {\n handleFieldDragEnd,\n getAvailableQuestionKinds,\n duplicateFieldData,\n formatQuestionAttributesForClone,\n} from \"./utils\";\n\nimport AddFirstQuestion from \"../AddFirstQuestion\";\nimport { QUESTION_ACTIONS, RICH_TEXT_QUESTIONS } from \"../constants\";\nimport ManageQuestionPane from \"../ManageQuestionPane\";\nimport AddQuestion from \"../Questions/AddQuestion\";\n\nconst Form = ({\n questionKinds,\n onValueChange,\n formId,\n isDeletable,\n isRequiredField,\n submitButtonProps,\n cancelButtonProps,\n isKindAlreadyActive,\n getActiveKindDetails,\n isDisabledFieldLabel,\n disabledAddButtonTooltipProps,\n enableFieldCode,\n isFormEnabled,\n savedTitle,\n formTitle,\n formDescription,\n selectedLanguage,\n availableLanguages,\n onLanguageChange,\n additionalActionOptions,\n isReordering,\n additionalQuestionKindPattern,\n showActionBlock,\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n buildRequestArgs,\n enableDomainBlacklisting,\n enableDomainWhitelisting,\n helpDocUrls,\n hostSpecificData,\n questionsHelpProps,\n isUsingDefaultQuestionKinds,\n usesCustomSubmissionComponent,\n ...formDomProps\n}) => {\n const containerRef = useRef();\n\n const { t } = useTranslation();\n const formikContext = useFormikContext();\n const [selectedQuestion, setSelectedQuestion] = useState(null);\n const [selectedAction, setSelectedAction] = useState(\"\");\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isDeleteSmsReminderModalOpen, setIsDeleteSmsReminderModalOpen] =\n useState(false);\n\n const [isManageQuestionPaneOpen, setIsManageQuestionPaneOpen] =\n useState(false);\n\n const {\n values,\n setFieldValue,\n dirty,\n isSubmitting,\n isValid,\n errors,\n submitForm,\n resetForm,\n } = formikContext;\n\n const setFormData = useBuildFormStore(prop(\"setFormData\"));\n\n const { mutate: createQuestion } = useCreateQuestion(\n formId,\n selectedLanguage,\n { onSuccess: showThumbsUpToastr }\n );\n\n useEffect(() => {\n setFormData({\n formId,\n enabled: isFormEnabled,\n title: savedTitle,\n values,\n dirty,\n isSubmitting,\n isValid,\n errors,\n submitForm,\n resetForm,\n selectedLanguage,\n helpDocUrls,\n enableDomainBlacklisting,\n enableDomainWhitelisting,\n isUsingDefaultQuestionKinds,\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n usesCustomSubmissionComponent,\n });\n }, [\n formId,\n isFormEnabled,\n savedTitle,\n setFormData,\n values,\n dirty,\n isSubmitting,\n isValid,\n errors,\n submitForm,\n resetForm,\n selectedLanguage,\n helpDocUrls,\n enableDomainBlacklisting,\n enableDomainWhitelisting,\n isUsingDefaultQuestionKinds,\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n usesCustomSubmissionComponent,\n ]);\n\n const { questions } = values;\n\n const handleSelect = question => {\n setSelectedQuestion(question);\n };\n\n const handleAdd = () => {\n setSelectedAction(QUESTION_ACTIONS.ADD);\n setIsManageQuestionPaneOpen(true);\n };\n\n const handleEdit = () => {\n setSelectedAction(QUESTION_ACTIONS.EDIT);\n setIsManageQuestionPaneOpen(true);\n };\n\n const handleClone = () => {\n const values = duplicateFieldData({\n item: selectedQuestion,\n questionKinds: availableQuestionKinds,\n questions,\n });\n const displayOrder = selectedQuestion.displayOrder + 1;\n const attributes = mergeLeft({ displayOrder }, values);\n\n const payload = {\n language: selectedLanguage,\n neetoFormQuestion: formatQuestionAttributesForClone(attributes),\n ...buildRequestArgs,\n };\n\n createQuestion(payload, {\n onSuccess: ({ questions }) => {\n const newQuestion = findBy({ displayOrder }, questions);\n handleSelect(newQuestion);\n },\n });\n };\n\n const handleDelete = question => {\n if (question.kind === QUESTION_TYPES.SMS_REMINDER) {\n setIsDeleteSmsReminderModalOpen(true);\n } else {\n setIsDeleteAlertOpen(true);\n }\n };\n\n useOnClickOutside(containerRef, () => handleSelect(null), {\n enabled: !(isDeleteAlertOpen || isManageQuestionPaneOpen),\n });\n\n useEffect(() => {\n onValueChange?.(questions);\n }, [questions]);\n\n const availableQuestionKinds = getAvailableQuestionKinds({\n allQuestionKinds: questionKinds,\n activeQuestions: questions,\n isKindAlreadyActive,\n });\n\n const hasActiveQuestions =\n questions &&\n questions.length &&\n questions.some(question => question._destroy !== true);\n\n const handleLanguageChange = code => {\n resetForm();\n onLanguageChange(code);\n };\n\n const richTextQuestions = filterBy(\n { kind: includes(__, RICH_TEXT_QUESTIONS) },\n questions\n );\n\n const resetFormData = () => {\n resetForm();\n setFormData({\n richTextFieldsToReset: pluck(\"fieldCode\", richTextQuestions),\n });\n };\n\n return (\n <>\n <DeleteAlert\n {...{ handleSelect, selectedQuestion }}\n isOpen={isDeleteAlertOpen}\n languagesCount={availableLanguages.length}\n onClose={() => setIsDeleteAlertOpen(false)}\n />\n <DeleteSmsReminderModal\n {...{ hostSpecificData }}\n isOpen={isDeleteSmsReminderModalOpen}\n onClose={() => setIsDeleteSmsReminderModalOpen(false)}\n />\n <FormikForm\n className=\"neeto-form-nano-form-wrapper flex h-full flex-col\"\n {...formDomProps}\n noValidate\n >\n {formTitle && (\n <Overview\n {...{\n additionalActionOptions,\n availableLanguages,\n selectedLanguage,\n }}\n description={formDescription}\n title={formTitle}\n onLanguageChange={handleLanguageChange}\n />\n )}\n <div className=\"neeto-form-nano-form-wrapper__body min-h-0 w-full flex-grow space-y-6 overflow-y-auto pb-6\">\n {hasActiveQuestions ? (\n <div className=\"space-y-6\" ref={containerRef}>\n <DragDropContext\n onDragEnd={({ source, destination }) =>\n handleFieldDragEnd({\n source,\n destination,\n items: questions,\n setValue: setFieldValue,\n })\n }\n >\n <Questions\n {...{\n getActiveKindDetails,\n isDeletable,\n questions,\n selectedQuestion,\n }}\n allQuestionKinds={questionKinds}\n onClone={handleClone}\n onDelete={handleDelete}\n onEdit={handleEdit}\n onSelect={handleSelect}\n />\n </DragDropContext>\n <div className=\"mb-8 flex w-full items-center gap-x-1\">\n <AddQuestion\n {...{ disabledAddButtonTooltipProps }}\n isDisabled={isEmpty(availableQuestionKinds)}\n onAdd={handleAdd}\n />\n {isPresent(questionsHelpProps) && (\n <span>\n <HelpPopover {...questionsHelpProps} />\n </span>\n )}\n </div>\n </div>\n ) : (\n <AddFirstQuestion\n {...{ disabledAddButtonTooltipProps }}\n isDisabled={isEmpty(availableQuestionKinds)}\n onAdd={handleAdd}\n />\n )}\n </div>\n {(showActionBlock || dirty) && (\n <div className=\"neeto-ui-border-gray-300 neeto-form-nano-form-wrapper__footer neeto-ui-bg-white sticky bottom-0 flex flex-shrink-0 justify-end border-t px-6 py-4\">\n <ActionBlock\n {...{ submitButtonProps }}\n isSubmitting={isReordering}\n cancelButtonProps={{\n label: t(\"neetoForm.common.reset\"),\n onClick: resetFormData,\n ...cancelButtonProps,\n }}\n />\n </div>\n )}\n <ManageQuestionPane\n {...{\n additionalQuestionKindPattern,\n availableQuestionKinds,\n buildRequestArgs,\n enableFieldCode,\n getActiveKindDetails,\n handleSelect,\n isDisabledFieldLabel,\n isRequiredField,\n questions,\n }}\n action={selectedAction}\n allQuestionKinds={questionKinds}\n isOpen={isManageQuestionPaneOpen}\n question={selectedQuestion}\n onClose={() => setIsManageQuestionPaneOpen(false)}\n />\n </FormikForm>\n </>\n );\n};\n\nexport default Form;\n","import { useEffect } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport classNames from \"classnames\";\nimport { Formik } from \"formik\";\nimport { noop, removeBy } from \"neetocist\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { assoc, concat, F, isEmpty, isNil } from \"ramda\";\n\nimport { QUERY_KEYS } from \"common/constants\";\nimport { QUESTION_KIND } from \"components/ExternalForm/constants\";\nimport { useFetchQuestions, useReorderQuestions } from \"hooks/useFormApi\";\n\nimport {\n DEFAULT_AVAILABLE_LANGUAGES,\n MANDATORY_KINDS,\n QUESTIONS_INITIAL_VALUE,\n} from \"./constants\";\nimport Form from \"./Form\";\nimport { isQuestionKindAlreadyActive } from \"./Form/utils\";\nimport { QUESTION_KINDS } from \"./Questions/constants\";\nimport { getActiveQuestionKindDetails } from \"./Questions/utils\";\nimport { buildReorderPayload, isImmutableField } from \"./utils\";\n\nconst BuildForm = ({\n id,\n onUpdate,\n buildRequestArgs,\n nonRemovableFields = [],\n requiredFields = [],\n formDomProps,\n showActionBlock = false,\n submitButtonProps,\n cancelButtonProps,\n questionKinds,\n isKindAlreadyActive = isQuestionKindAlreadyActive,\n getActiveKindDetails = getActiveQuestionKindDetails,\n isQuestionDeletable,\n isFieldRequired,\n isFieldLabelDisabled,\n showLoader = false,\n kindUniqueOn = [\"type\"],\n allowAdditionalGuests = false,\n disabledAddButtonTooltipProps,\n enableFieldCode = false,\n availableLanguages = DEFAULT_AVAILABLE_LANGUAGES,\n formDescription,\n formTitle = \"\",\n selectedLanguage = \"en\",\n onLanguageChange = noop,\n additionalActionOptions = [],\n additionalQuestionKindPattern,\n enableDomainBlacklisting = true,\n enableDomainWhitelisting = true,\n helpDocUrls,\n className,\n questionsHelpProps = {},\n hostSpecificData = {},\n showReadOnlySwitch = false,\n showResponseVisibleOnlyToHostSwitch = false,\n usesCustomSubmissionComponent = false,\n}) => {\n const queryClient = useQueryClient();\n\n const { mutate: reorderQuestions, isPending: isReordering } =\n useReorderQuestions(id, { onSuccess: showThumbsUpToastr });\n\n const {\n data,\n isLoading,\n isPending: isQuestionsPending,\n } = useFetchQuestions({ formId: id, language: selectedLanguage });\n\n const {\n enabled: isFormEnabled,\n title: savedTitle,\n questions,\n isQuestionsLoading,\n } = data || QUESTIONS_INITIAL_VALUE;\n\n useEffect(() => {\n if (data) {\n onUpdate?.(data);\n }\n }, [data]);\n\n if (isLoading || (showLoader && isQuestionsLoading && !isQuestionsPending)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center py-6\">\n <PageLoader />\n </div>\n );\n }\n\n const handleSubmit = ({ questions }, { setSubmitting }) => {\n const payload = {\n neetoFormQuestions: {\n questions: buildReorderPayload(questions),\n },\n };\n\n reorderQuestions(payload, {\n onSettled: () => setSubmitting(false),\n });\n };\n\n const onValueChange = questions => {\n const { dataUpdateCount } = queryClient.getQueryState([\n QUERY_KEYS.QUESTIONS,\n id,\n selectedLanguage,\n ]);\n\n if (dataUpdateCount > 0) {\n queryClient.setQueryData(\n [QUERY_KEYS.QUESTIONS, `preview/${id}`, selectedLanguage],\n assoc(\"questions\", questions)\n );\n }\n };\n\n const isDeletable =\n isQuestionDeletable ??\n (question => !nonRemovableFields.includes(question.kind));\n\n const isRequiredField =\n isFieldRequired ??\n (({ kind }) => concat(MANDATORY_KINDS, requiredFields).includes(kind));\n\n const isDisabledFieldLabel = field =>\n isImmutableField(field) || (isFieldLabelDisabled ?? F)(field);\n\n const defaultQuestionKinds = allowAdditionalGuests\n ? QUESTION_KINDS\n : removeBy({ type: QUESTION_KIND.ADDITIONAL_GUESTS.value }, QUESTION_KINDS);\n\n const isUsingDefaultQuestionKinds = isNil(questionKinds);\n\n return (\n <div\n className={classNames(\n \"neeto-form-nano-form-outer-wrapper relative\",\n className\n )}\n >\n <Formik\n enableReinitialize\n initialValues={{ questions }}\n onSubmit={handleSubmit}\n >\n {({ errors, setFieldError }) => (\n <Form\n {...{\n ...formDomProps,\n additionalActionOptions,\n additionalQuestionKindPattern,\n availableLanguages,\n buildRequestArgs,\n cancelButtonProps,\n disabledAddButtonTooltipProps,\n enableDomainBlacklisting,\n enableDomainWhitelisting,\n enableFieldCode,\n formDescription,\n formTitle,\n getActiveKindDetails,\n helpDocUrls,\n hostSpecificData,\n isDeletable,\n isDisabledFieldLabel,\n isFormEnabled,\n isKindAlreadyActive,\n isReordering,\n isRequiredField,\n isUsingDefaultQuestionKinds,\n kindUniqueOn,\n onLanguageChange,\n onValueChange,\n questionsHelpProps,\n savedTitle,\n selectedLanguage,\n showActionBlock,\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n submitButtonProps,\n usesCustomSubmissionComponent,\n }}\n formId={id}\n questionKinds={\n isUsingDefaultQuestionKinds ? defaultQuestionKinds : questionKinds\n }\n onChange={event => {\n if (isEmpty(errors)) return;\n setFieldError(event.target.name);\n }}\n />\n )}\n </Formik>\n {isQuestionsLoading && !isQuestionsPending && (\n <div className=\"neeto-ui-bg-white absolute inset-0 flex items-center justify-center\">\n <PageLoader />\n </div>\n )}\n </div>\n );\n};\n\nexport default BuildForm;\n"],"names":["DeleteAlert","_ref","selectedQuestion","isOpen","onClose","languagesCount","handleSelect","_useTranslation","useTranslation","t","_useBuildFormStore","useBuildFormStore","store","_store$formState","selectedLanguage","shallow","renderQuestionLabel","questionKind","kind","independentLabel","INDEPENDENT_LABELS_MAP","isPresent","questionLabel","buildDisplayLabel","truncate","_useDeleteQuestion","useDeleteQuestion","formId","onSuccess","showThumbsUpToastr","deleteQuestion","mutate","isDeleting","isPending","selectNextQuestion","questions","selectedQuestionIndex","displayOrder","wasLastQuestion","equals","length","newDisplayOrder","newQuestion","findBy","handleSubmit","id","_ref2","_jsx","Alert","isSubmitting","submitButtonLabel","title","message","Trans","i18nKey","values","count","label","onSubmit","DeleteSmsReminderModal","_ref$hostSpecificData","hostSpecificData","_jsxs","Modal","children","Header","Typography","style","weight","path","Body","ChangeLanguageDropdown","_findBy","currentLanguage","languages","onChange","_useState","useState","_useState2","_slicedToArray","isUnsavedChangesAlertOpen","setIsUnsavedChangesAlertOpen","_useState3","_useState4","setSelectedLanguage","_useFormikContext","useFormikContext","dirty","languageChangeHandler","code","selectedLanguageName","name","_Fragment","Tooltip","content","Dropdown","buttonStyle","Menu","map","MenuItem","Button","isActive","onClick","Overview","description","availableLanguages","onLanguageChange","additionalActionOptions","className","lineHeight","MoreDropdown","dropdownButtonProps","isRounded","dropdownProps","strategy","position","menuItems","Card","_ref$question","question","allQuestionKinds","getActiveKindDetails","onSelect","onEdit","onClone","onDelete","isTooltipEnabled","setIsTooltipEnabled","questionLabelRef","useRef","_getActiveKindDetails","item","isSingular","useEffect","element","current","isNotPresent","isElementOverflowing","concat","slugify","classNames","Drag","disabled","ref","key","isVisible","isFunction","Questions","isDeletable","Droppable","droppableId","droppableProps","placeholder","innerRef","_objectSpread","index","_question$id","_question$id2","_createElement","Draggable","draggableId","nodeId","_ref3","draggableProps","dragHandleProps","moveItem","arr","sourceIndex","destinationIndex","Array","undefined","removedItem","splice","arrayHelpers","isChoiceQuestion","includes","SELECTABLE_KINDS","underscoredWithoutSpecialCharacters","string","toLowerCase","replace","addSuffixForReservedFieldCode","fieldCode","RESERVED_FIELD_CODES","getUniqueNumbersFromExistingFieldCodes","prefix","filter","startsWith","parseInt","generateFieldCodePrefix","isNameQuestion","NON_BASIC_LATIN_CHARACTERS_REGEX","test","isEmpty","sanitizedLabel","slice","renameKey","curry","oldKey","newKey","obj","assoc","prop","dissoc","modifyDefaultValues","isUsingDefaultQuestionKinds","LABEL_FIELDS","DEFAULT","FULL_NAME","isDefaultLanguage","evolve","optionsAttributes","generateUniqueFieldCode","_ref2$label","_ref2$kind","uniqueNumber","Math","max","apply","_toConsumableArray","candidateFieldCode","isQuestionKindAlreadyActive","activeQuestions","some","activeQuestion","type","_destroy","handleFieldDragEnd","_ref4","items","setValue","source","destination","nextItems","orderedItems","createFieldData","_ref5","_ref5$kind","defaults","metadata","_ref5$isRequired","isRequired","modifiedDefaultValues","uuid","duplicateFieldData","_ref6","questionKinds","fieldWithFallback","defaultAttributeNames","keys","defaultAttributes","pick","newQuestionLabel","isRichTextQuestion","omit","getAvailableQuestionKinds","_ref7","_ref7$activeQuestions","isKindAlreadyActive","reject","isSingularKind","isAutoGeneratedQuestion","formatQuestionAttributesForClone","when","AddFirstQuestion","onAdd","isDisabled","disabledAddButtonTooltipProps","tooltipProps","buildDisabledAddButtonTooltipProps","NoData","showTooltipWhenButtonDisabled","primaryButtonProps","buildAddQuestionButtonProps","NAME","QUESTION_TYPES","PHONE","EMAIL","ADDITIONAL_GUESTS","TEXT","TEXTAREA","RICH_TEXT","INTEGER","DECIMAL","STAR_RATING","RATING","DATE","FILE_UPLOAD","CAPTCHA","SMS_REMINDER","QUESTIONS_WITH_ADDITIONAL_DATA","QUESTIONS_WITH_PLACEHOLDERS","DEFAULT_PLACEHOLDERS","CHECKBOX","what","RADIO","DROPDOWN","INITIAL_VALUES","isSplitMode","VALID_FIELD_CODE_REGEX","FormikAdaptiveInput","otherProps","_objectWithoutProperties","_excluded","isValid","submitForm","handleKeyDown","event","shiftKey","preventDefault","isMetaKeyPressed","handleFocus","end","value","setSelectionRange","Textarea","resize","size","onFocus","target","onKeyDown","LabelWithPlaceholder","isLabelDisabled","handleLabelChange","_ref$labelProps","labelProps","_ref$placeholderProps","placeholderProps","shouldShowPlaceholder","required","withEventTargetValue","Name","_useFormikContext$val","usesCustomSubmissionComponent","commonProps","Switch","FIRST_NAME","LAST_NAME","Properties","questionProps","_store$formState2","enableDomainWhitelisting","enableDomainBlacklisting","hasAdditionalData","renderAdditionalData","Block","dataCy","useUpdateEditorContent","editorRef","fieldName","initialValue","initialStateRef","language","setFormData","_useBuildFormStore2","shouldReset","formState","richTextFieldsToReset","setEditorContent","_editorRef$current$ed","editor","commands","setContent","modify","without","_useFetchQuestions","useFetchQuestions","data","pathArray","split","part","parsedPart","isNaN","Editor","_useField","useField","validate","validateEditorContent","_useField2","_useField2$","touched","error","_useField2$2","setTouched","NeetoEditor","onBlur","RequiredSwitch","withT","InputWithMaxLength","maxLength","props","substring","shouldShowMaxLength","Input","FieldCode","helpDocUrl","rejectCharsRegex","FIELD_CODES_REJECT_CHARS_REGEX","helpText","components","Link","href","Form","initialFocusRef","isRequiredField","isDisabledFieldLabel","enableFieldCode","availableQuestionKinds","additionalQuestionKindPattern","_ref$isEdit","isEdit","setValues","setErrors","setFieldValue","hideQuestionHelpDoc","readOnlyHelpDoc","responseVisibleOnlyToHostHelpDoc","_store$formState3","_store$formState4","showReadOnlySwitch","showResponseVisibleOnlyToHostSwitch","questionKindUniquenessPattern","mergeLeft","_useStateWithDependen","useStateWithDependency","getQuestionKind","_useStateWithDependen2","_ref2$questionProps","isImmutable","isImmutableField","shouldShowFieldCode","QUESTIONS_WITHOUT_FIELD_CODE","shouldShowHideSwitch","NON_HIDEABLE_FIELDS","shouldShowResponseVisibleOnlyToHostSwitch","shouldShowReadOnlySwitch","NON_READ_ONLY_FIELDS","isSettingsBlockVisible","handleKindChange","option","buildQuestionData","updateFormState","isNil","extractKindFromOption","arguments","uniqueFieldCode","Pane","Select","isClearable","isSearchable","defaultValue","buildDefaultValueForKind","options","buildKindOptions","hideSwitchLabelProps","responseVisibleOnlyToHostSwitchLabelProps","Accordion","Item","readOnlySwitchLabelProps","requiredLabelValidation","schema","field","trim","fieldCodeValidation","matches","richTextFieldMissingErrorMessage","PARAGRAPH","buildLabelValidationSchema","notRequired","RICH_TEXT_QUESTIONS","isEditorEmpty","buildNameLabelValidationSchema","isFullName","stringSchema","yup","formValidationSchema","object","shape","fullNameLabel","firstNameLabel","lastNameLabel","notOneOf","array","of","is","otherwise","highestRatingLabel","nullable","averageRatingLabel","lowestRatingLabel","Add","buildRequestArgs","_useCreateQuestion","useCreateQuestion","createQuestion","isCreating","neetoFormQuestion","formikProps","initialValues","validationSchema","QuestionForm","Footer","ActionBlock","cancelButtonProps","Edit","_useUpdateQuestion","useUpdateQuestion","updateQuestion","isUpdating","setSubmitting","payload","questionId","onSettled","Captcha","Radio","CAPTCHA_TYPES","RECAPTCHA_V2","MATH_CAPTCHA","SwitchBlock","_ref$className","Label","classnames","hyphenate","component","TitleWithHelpPopover","helpLink","HelpPopover","popoverProps","helpLinkProps","DOMAIN_RESTRICTION_TRANSLATIONS","whitelistedDomains","popoverDescription","blacklistedDomains","STYLES","border","color","MultiValueRemove","innerProps","_defineProperty","hyphenize","Close","ValueContainer","getValue","_props$selectProps","selectProps","isFocused","visibleDomainsCount","_children","_toArray","firstChild","rest","shouldCollapse","Tag","ClearIndicator","ERROR_MESSAGE_DELIMITER","DELIMITER_KEYS","DOMAIN_SEPARATION_REGEX","FLEXIBLE_DOMAIN_REGEX","VALID_DOMAIN_REGEX","DOMAIN_VALIDATION_SCHEMA","domain","CUSTOM_STYLES","input","multiValue","styles","valid","CUSTOM_COMPONENTS","DropdownIndicator","removeDuplicateErrorMessages","pipe","isNotNil","uniq","join","formatDomainInputOptions","validateSync","_unused","pruneDuplicates","pluck","getValidDomains","domains","getValidDomainsCount","formatErrorMessage","MultiDomainInput","_ref$label","_ref$value","_ref$onChange","noop","_ref$error","_ref$onBlur","inputValue","setInputValue","setIsFocused","handleFilterDomains","handleDomainChange","inputValues","match","domainMatches","stopPropagation","onCreateOption","handleBlur","isFilterDomainsLinkVisible","CreatableSelect","isMulti","classNamePrefix","menuIsOpen","control","maxHeight","overflowY","onInputChange","validateDomains","ensure","compact","min","entity","Promise","_asyncToGenerator","_regeneratorRuntime","mark","_callee","resolve","wrap","_callee$","_context","prev","next","t0","stop","_x","EmailDomains","_useField2$0$value","meta","formattedDomains","nullSafe","RestrictDomainsBlock","switchName","domainName","isDomainRestrictionEnabled","_DOMAIN_RESTRICTION_T","Email","_useFormikContext$val2","isDomainWhitelistingEnabled","_useFormikContext$val3","isDomainBlacklistingEnabled","FileGroup","checked","handleAllowedFileTypesChange","Checkbox","buildFileTypesList","fileTypes","getAllowedFileTypes","isChecked","allowedFileTypes","fileTypesSet","Set","FILE_TYPES_MAP","from","newFileTypes","difference","isFileTypeEnabled","FileUpload","_ref$target","fileType","FILE_GROUPS","Options","_","__","setOptionsAttributes","_ref2$optionLabelProp","optionLabelProps","_ref2$freezeOptions","freezeOptions","_ref2$disableAddOptio","disableAddOption","_ref2$disableRemoveOp","disableRemoveOption","isManageOptionDisabled","isAddOptionDisabled","isRemoveOptionDisabled","OptionFields","shouldDestroy","destroyFlagName","draggable","isAddOptionEnabled","isDeleteOptionEnabled","isNewItemsPrefilled","minOptions","MINIMUM_OPTIONS","shouldResetEmptyOptionOnBlur","RatingItem","Rating","RATING_OPTIONS","Icon","icon","StarRating","iconType","setIconType","STAR_RATING_MIN_VALUE_OPTIONS","STAR_RATING_MAX_VALUE_OPTIONS","Object","entries","STAR_RATING_ICONS_MAP","IconType","transformValueForOption","resolveActionComponent","action","QUESTION_ACTIONS","ADD","pattern","kinds","last","helpUrl","helpIconProps","ManageQuestionPane","Component","AddQuestion","onValueChange","submitButtonProps","isFormEnabled","savedTitle","formTitle","formDescription","isReordering","showActionBlock","helpDocUrls","questionsHelpProps","formDomProps","containerRef","formikContext","setSelectedQuestion","selectedAction","setSelectedAction","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isDeleteSmsReminderModalOpen","setIsDeleteSmsReminderModalOpen","_useState9","_useState10","isManageQuestionPaneOpen","setIsManageQuestionPaneOpen","errors","resetForm","enabled","handleAdd","handleEdit","EDIT","handleClone","attributes","handleDelete","useOnClickOutside","hasActiveQuestions","handleLanguageChange","richTextQuestions","filterBy","resetFormData","FormikForm","noValidate","DragDropContext","onDragEnd","BuildForm","onUpdate","_ref$nonRemovableFiel","nonRemovableFields","_ref$requiredFields","requiredFields","_ref$showActionBlock","_ref$isKindAlreadyAct","_ref$getActiveKindDet","getActiveQuestionKindDetails","isQuestionDeletable","isFieldRequired","isFieldLabelDisabled","_ref$showLoader","showLoader","_ref$kindUniqueOn","kindUniqueOn","_ref$allowAdditionalG","allowAdditionalGuests","_ref$enableFieldCode","_ref$availableLanguag","DEFAULT_AVAILABLE_LANGUAGES","_ref$formTitle","_ref$selectedLanguage","_ref$onLanguageChange","_ref$additionalAction","_ref$enableDomainBlac","_ref$enableDomainWhit","_ref$questionsHelpPro","_ref$showReadOnlySwit","_ref$showResponseVisi","_ref$usesCustomSubmis","queryClient","useQueryClient","_useReorderQuestions","useReorderQuestions","reorderQuestions","isLoading","isQuestionsPending","QUESTIONS_INITIAL_VALUE","isQuestionsLoading","PageLoader","neetoFormQuestions","buildReorderPayload","_queryClient$getQuery","getQueryState","QUERY_KEYS","QUESTIONS","dataUpdateCount","setQueryData","MANDATORY_KINDS","F","defaultQuestionKinds","QUESTION_KINDS","removeBy","QUESTION_KIND","Formik","enableReinitialize","setFieldError"],"mappings":"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"}
1
+ {"version":3,"file":"BuildForm.js","sources":["../../app/javascript/src/components/BuildForm/Form/DeleteAlert.jsx","../../app/javascript/src/components/BuildForm/Form/DeleteSmsReminderModal.jsx","../../app/javascript/src/components/BuildForm/Form/ChangeLanguageDropdown.jsx","../../app/javascript/src/components/BuildForm/Form/Overview.jsx","../../app/javascript/src/components/BuildForm/Questions/Card.jsx","../../app/javascript/src/components/BuildForm/Form/Questions.jsx","../../app/javascript/src/common/helpers/array.js","../../app/javascript/src/components/BuildForm/Form/utils.js","../../app/javascript/src/components/BuildForm/AddFirstQuestion.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/constants.js","../../app/javascript/src/components/Common/FormikAdaptiveInput.jsx","../../app/javascript/src/components/BuildForm/commons/LabelWithPlaceholder.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Name.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/Properties.jsx","../../app/javascript/src/components/BuildForm/commons/Block.jsx","../../app/javascript/src/components/BuildForm/hooks/useUpdateEditorContent.js","../../app/javascript/src/components/BuildForm/commons/Editor.jsx","../../app/javascript/src/components/BuildForm/commons/RequiredSwitch.jsx","../../app/javascript/src/components/Common/InputWithMaxLength.jsx","../../app/javascript/src/components/BuildForm/Questions/FieldCode.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/Form.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/validations.js","../../app/javascript/src/components/BuildForm/ManageQuestionPane/Add.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/Edit.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Captcha/index.jsx","../../app/javascript/src/components/BuildForm/commons/SwitchBlock.jsx","../../app/javascript/src/components/BuildForm/commons/TitleWithHelpPopover.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/constants.js","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/MultiDomainInput/constants.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/MultiDomainInput/utils.js","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/MultiDomainInput/index.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/utils.js","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/EmailDomains.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/RestrictDomainsBlock.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Email/index.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/FileUpload/FileGroup.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/FileUpload/utils.js","../../app/javascript/src/components/BuildForm/Questions/Fields/FileUpload/index.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Options.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/Rating.jsx","../../app/javascript/src/components/BuildForm/Questions/Fields/StarRating.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/utils.jsx","../../app/javascript/src/components/BuildForm/ManageQuestionPane/index.jsx","../../app/javascript/src/components/BuildForm/Questions/AddQuestion.jsx","../../app/javascript/src/components/BuildForm/Form/index.jsx","../../app/javascript/src/components/BuildForm/index.jsx"],"sourcesContent":["import { findBy, isPresent, truncate } from \"neetocist\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { Alert } from \"neetoui\";\nimport { equals } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useDeleteQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { INDEPENDENT_LABELS_MAP } from \"../Questions/constants\";\nimport { buildDisplayLabel } from \"../Questions/utils\";\n\nconst DeleteAlert = ({\n selectedQuestion,\n isOpen,\n onClose,\n languagesCount,\n handleSelect,\n}) => {\n const { t } = useTranslation();\n\n const { selectedLanguage } = useBuildFormStore.pick(\"formState\");\n\n const renderQuestionLabel = () => {\n const questionKind = selectedQuestion.kind;\n const independentLabel = INDEPENDENT_LABELS_MAP[questionKind];\n if (isPresent(independentLabel)) return independentLabel;\n\n const questionLabel = buildDisplayLabel(selectedQuestion);\n\n return truncate(questionLabel, 40);\n };\n\n const { mutate: deleteQuestion, isPending: isDeleting } = useDeleteQuestion(\n selectedQuestion?.formId,\n selectedLanguage,\n {\n onSuccess: () => {\n showThumbsUpToastr();\n onClose();\n },\n }\n );\n\n const selectNextQuestion = questions => {\n const selectedQuestionIndex = selectedQuestion.displayOrder;\n const wasLastQuestion = equals(selectedQuestionIndex, questions.length);\n\n const newDisplayOrder = wasLastQuestion\n ? selectedQuestionIndex - 1\n : selectedQuestionIndex;\n\n const newQuestion = findBy({ displayOrder: newDisplayOrder }, questions);\n handleSelect(newQuestion);\n };\n\n const handleSubmit = () => {\n deleteQuestion(selectedQuestion.id, {\n onSuccess: ({ questions }) => selectNextQuestion(questions),\n });\n };\n\n return (\n <Alert\n {...{ isOpen, onClose }}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoForm.common.delete\")}\n title={t(\"neetoForm.questions.deleteAlert.title\")}\n message={\n isPresent(selectedQuestion) && (\n <Trans\n i18nKey=\"neetoForm.questions.deleteAlert.message\"\n values={{\n count: languagesCount,\n label: renderQuestionLabel(),\n }}\n />\n )\n }\n onSubmit={handleSubmit}\n />\n );\n};\n\nexport default DeleteAlert;\n","import { Typography, Modal } from \"neetoui\";\nimport { path } from \"ramda\";\n\nconst DeleteSmsReminderModal = ({ isOpen, onClose, hostSpecificData = {} }) => (\n <Modal {...{ isOpen, onClose }}>\n <Modal.Header>\n <Typography\n data-cy=\"delete-sms-reminder-modal-header\"\n style=\"h2\"\n weight=\"medium\"\n >\n {path([\"smsReminder\", \"deleteModal\", \"title\"], hostSpecificData)}\n </Typography>\n </Modal.Header>\n <Modal.Body>\n <Typography data-cy=\"delete-sms-reminder-modal-description\" style=\"body2\">\n {path([\"smsReminder\", \"deleteModal\", \"description\"], hostSpecificData)}\n </Typography>\n </Modal.Body>\n </Modal>\n);\n\nexport default DeleteSmsReminderModal;\n","import { useState } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { findBy } from \"neetocist\";\nimport { Alert, Dropdown, Tooltip } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst ChangeLanguageDropdown = ({ currentLanguage, languages, onChange }) => {\n const [isUnsavedChangesAlertOpen, setIsUnsavedChangesAlertOpen] =\n useState(false);\n const [selectedLanguage, setSelectedLanguage] = useState(currentLanguage);\n\n const { t } = useTranslation();\n\n const { dirty } = useFormikContext();\n\n const languageChangeHandler = code => {\n if (!dirty) {\n onChange(code);\n\n return;\n }\n\n setSelectedLanguage(code);\n setIsUnsavedChangesAlertOpen(true);\n };\n\n const selectedLanguageName = findBy(\n { code: currentLanguage },\n languages\n )?.name;\n\n return (\n <>\n <Tooltip content={t(\"neetoForm.questions.changeLanguage\")}>\n <div>\n <Dropdown buttonStyle=\"secondary\" label={selectedLanguageName}>\n <Dropdown.Menu>\n {languages.map(({ code, name }) => (\n <Dropdown.MenuItem.Button\n isActive={currentLanguage === code}\n key={code}\n onClick={() => languageChangeHandler(code)}\n >\n {name}\n </Dropdown.MenuItem.Button>\n ))}\n </Dropdown.Menu>\n </Dropdown>\n </div>\n </Tooltip>\n <Alert\n isOpen={isUnsavedChangesAlertOpen}\n message={t(\"neetoForm.questions.unsavedChangesAlert.message\")}\n submitButtonLabel={t(\"neetoForm.questions.unsavedChangesAlert.discard\")}\n title={t(\"neetoForm.questions.unsavedChangesAlert.title\")}\n onClose={() => setIsUnsavedChangesAlertOpen(false)}\n onSubmit={() => {\n onChange(selectedLanguage);\n setIsUnsavedChangesAlertOpen(false);\n }}\n />\n </>\n );\n};\n\nexport default ChangeLanguageDropdown;\n","import { isPresent } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\n\nimport ChangeLanguageDropdown from \"./ChangeLanguageDropdown\";\n\nconst Overview = ({\n title,\n description,\n availableLanguages,\n selectedLanguage,\n onLanguageChange,\n additionalActionOptions,\n}) => (\n <div className=\"neeto-form-nano-form-wrapper__overview mb-4 w-full flex-shrink-0 space-y-4 pt-6\">\n <div className=\"flex items-center justify-between\">\n <Typography\n data-cy=\"neeto-form-engine-overview-title\"\n lineHeight=\"neeto-ui-leading-normal\"\n style=\"h2\"\n weight=\"neeto-ui-font-semibold\"\n >\n {title}\n </Typography>\n <div className=\"flex flex-shrink-0 items-center justify-between space-x-1\">\n {availableLanguages.length > 1 && (\n <ChangeLanguageDropdown\n currentLanguage={selectedLanguage}\n languages={availableLanguages}\n onChange={onLanguageChange}\n />\n )}\n {isPresent(additionalActionOptions) && (\n <MoreDropdown\n dropdownButtonProps={{ isRounded: true, style: \"tertiary\" }}\n dropdownProps={{ strategy: \"fixed\", position: \"bottom-start\" }}\n menuItems={additionalActionOptions}\n />\n )}\n </div>\n </div>\n <Typography data-cy=\"neeto-form-engine-overview-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n);\n\nexport default Overview;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isNotPresent, slugify } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isFunction } from \"utils\";\n\nimport { buildDisplayLabel, isElementOverflowing } from \"./utils\";\n\nimport { Drag } from \"../Icons\";\n\nconst Card = ({\n question = {},\n allQuestionKinds,\n getActiveKindDetails,\n isActive,\n onSelect,\n onEdit,\n onClone,\n onDelete,\n}) => {\n const [isTooltipEnabled, setIsTooltipEnabled] = useState(false);\n\n const questionLabelRef = useRef(null);\n\n const { t } = useTranslation();\n\n const { isSingular } = getActiveKindDetails({\n allQuestionKinds,\n item: question,\n });\n\n const questionLabel = buildDisplayLabel(question);\n\n useEffect(() => {\n const element = questionLabelRef.current;\n if (isNotPresent(element)) return;\n\n setIsTooltipEnabled(isElementOverflowing(element));\n }, [questionLabel]);\n\n return (\n <div\n data-cy={`neeto-form-engine-${slugify(questionLabel)}`}\n className={classNames(\n \"neeto-ui-rounded neeto-ui-border-gray-300 neeto-ui-bg-white neeto-form-nano-form__card flex h-10 w-full items-center justify-between gap-1 border p-2\",\n {\n \"neeto-ui-border-primary-500 neeto-form-nano-form__card--active\":\n isActive,\n }\n )}\n onClick={() => onSelect(question)}\n >\n <div className=\"flex min-w-0 flex-grow items-center gap-1\">\n <Drag className=\"neeto-ui-text-gray-600 flex-shrink-0\" />\n <Tooltip\n content={questionLabel}\n disabled={!isTooltipEnabled}\n position=\"top\"\n >\n <Typography\n className=\"line-clamp-2 min-w-0 flex-grow truncate break-words\"\n data-cy={`${slugify(questionLabel)}-question-card-label`}\n lineHeight=\"snug\"\n ref={questionLabelRef}\n style=\"body2\"\n weight=\"medium\"\n >\n {questionLabel}\n </Typography>\n </Tooltip>\n </div>\n <MoreDropdown\n dropdownButtonProps={{ className: \"shrink-0\" }}\n dropdownProps={{ strategy: \"fixed\" }}\n menuItems={[\n {\n \"data-cy\": \"edit-question\",\n key: \"edit\",\n label: t(\"neetoForm.common.edit\"),\n onClick: onEdit,\n },\n {\n \"data-cy\": \"clone-question\",\n key: \"clone\",\n label: t(\"neetoForm.common.clone\"),\n isVisible: !isSingular && isFunction(onClone),\n onClick: onClone,\n },\n {\n \"data-cy\": \"delete-question\",\n key: \"delete\",\n label: t(\"neetoForm.common.delete\"),\n isVisible: isFunction(onDelete),\n onClick: () => onDelete(question),\n },\n ]}\n />\n </div>\n );\n};\n\nexport default Card;\n","import { Droppable, Draggable } from \"@hello-pangea/dnd\";\nimport { equals } from \"ramda\";\n\nimport Card from \"../Questions/Card\";\n\nconst Questions = ({\n questions,\n isDeletable,\n allQuestionKinds,\n getActiveKindDetails,\n selectedQuestion,\n onEdit,\n onClone,\n onDelete,\n onSelect,\n}) => (\n <Droppable droppableId=\"droppable\">\n {({ droppableProps, placeholder, innerRef }) => (\n <div {...droppableProps} className=\"space-y-2\" ref={innerRef}>\n {questions.map((question, index) => (\n <Draggable\n {...{ index }}\n draggableId={`question-${question.id ?? question.nodeId}`}\n key={`question-${question.id ?? question.nodeId}`}\n >\n {({ draggableProps, dragHandleProps, innerRef }) => (\n <div {...draggableProps} {...dragHandleProps} ref={innerRef}>\n <Card\n {...{\n allQuestionKinds,\n getActiveKindDetails,\n onClone,\n onEdit,\n onSelect,\n question,\n }}\n isActive={equals(selectedQuestion, question)}\n onDelete={isDeletable(question) && onDelete}\n />\n </div>\n )}\n </Draggable>\n ))}\n {placeholder}\n </div>\n )}\n </Droppable>\n);\nexport default Questions;\n","const moveItem = (arr, sourceIndex, destinationIndex) => {\n if (sourceIndex === destinationIndex) return arr;\n\n if (arr instanceof Array && arr[sourceIndex] !== undefined) {\n const removedItem = arr.splice(sourceIndex, 1)[0];\n arr.splice(destinationIndex, 0, removedItem);\n }\n\n return arr;\n};\n\nconst arrayHelpers = {\n moveItem,\n};\n\nexport default arrayHelpers;\n","import { t } from \"i18next\";\nimport { findBy } from \"neetocist\";\nimport {\n isEmpty,\n reject,\n omit,\n keys,\n pick,\n when,\n assoc,\n includes,\n evolve,\n map,\n curry,\n prop,\n dissoc,\n} from \"ramda\";\nimport { v4 as uuid } from \"uuid\";\n\nimport arrayHelpers from \"common/helpers/array\";\nimport { LABEL_FIELDS } from \"components/Common/constants\";\nimport { fieldWithFallback, isNameQuestion } from \"utils\";\n\nimport {\n NON_BASIC_LATIN_CHARACTERS_REGEX,\n RESERVED_FIELD_CODES,\n SELECTABLE_KINDS,\n} from \"../constants\";\nimport {\n isAutoGeneratedQuestion,\n isDefaultLanguage,\n isRichTextQuestion,\n} from \"../utils\";\n\nconst isChoiceQuestion = question => includes(question?.kind, SELECTABLE_KINDS);\n\nconst underscoredWithoutSpecialCharacters = string =>\n string\n .toLowerCase()\n .replace(/[\\s-]/g, \"_\")\n .replace(/[\\W]/gi, \"\")\n .replace(/_+/g, \"_\")\n .replace(/^_+|_+$/, \"\");\n\nconst addSuffixForReservedFieldCode = fieldCode =>\n RESERVED_FIELD_CODES.includes(fieldCode) ? `${fieldCode}_field` : fieldCode;\n\nconst getUniqueNumbersFromExistingFieldCodes = (prefix, questions) =>\n questions\n .filter(question => question.fieldCode.startsWith(prefix))\n .map(question => parseInt(question.fieldCode.replace(prefix, \"\")) || 0);\n\nconst generateFieldCodePrefix = (label, kind) => {\n let prefix;\n\n if (\n isNameQuestion(kind) ||\n NON_BASIC_LATIN_CHARACTERS_REGEX.test(label) ||\n isEmpty(label)\n ) {\n prefix = kind;\n } else {\n const sanitizedLabel = underscoredWithoutSpecialCharacters(label).slice(\n 0,\n 30\n );\n prefix = isEmpty(sanitizedLabel) ? kind : sanitizedLabel;\n }\n\n return addSuffixForReservedFieldCode(prefix) || \"\";\n};\n\nconst renameKey = curry((oldKey, newKey, obj) =>\n assoc(newKey, prop(oldKey, obj), dissoc(oldKey, obj))\n);\n\nconst modifyDefaultValues = ({\n values,\n kind,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n}) => {\n if (isNameQuestion(kind)) {\n return renameKey(LABEL_FIELDS.DEFAULT, LABEL_FIELDS.FULL_NAME, values);\n }\n\n if (\n !includes(kind, SELECTABLE_KINDS) ||\n isDefaultLanguage(selectedLanguage) ||\n !isUsingDefaultQuestionKinds\n ) {\n return values;\n }\n\n return evolve({ optionsAttributes: map(assoc(\"label\", \"\")) }, values);\n};\n\nexport const generateUniqueFieldCode = ({\n questions,\n label = \"\",\n kind = \"\",\n}) => {\n const prefix = generateFieldCodePrefix(label, kind);\n\n let uniqueNumber = Math.max(\n 0,\n ...getUniqueNumbersFromExistingFieldCodes(prefix, questions)\n );\n let candidateFieldCode = \"\";\n\n //We need to continue this while loop until we can generate a unique fieldCode\n // eslint-disable-next-line no-constant-condition\n while (true) {\n candidateFieldCode = `${prefix}${uniqueNumber === 0 ? \"\" : uniqueNumber}`;\n\n if (!findBy({ fieldCode: candidateFieldCode }, questions)) break;\n\n uniqueNumber += 1;\n }\n\n return candidateFieldCode;\n};\n\nexport const isQuestionKindAlreadyActive = ({ activeQuestions, kind }) =>\n activeQuestions.some(\n activeQuestion =>\n activeQuestion.kind === kind.type && activeQuestion._destroy !== true\n );\n\nexport const handleFieldDragEnd = ({\n items,\n setValue,\n source,\n destination,\n}) => {\n if (!(destination && items instanceof Array)) return;\n const nextItems = [...items];\n arrayHelpers.moveItem(nextItems, source.index, destination.index);\n const orderedItems = nextItems.map((item, index) => ({\n ...item,\n displayOrder: index,\n }));\n setValue(\"questions\", orderedItems);\n};\n\nexport const createFieldData = ({\n kind: { defaults, type, metadata },\n isRequired = undefined,\n questions,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n}) => {\n const modifiedDefaultValues = modifyDefaultValues({\n values: defaults,\n kind: type,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n });\n\n return {\n ...modifiedDefaultValues,\n metadata,\n isRequired,\n kind: type,\n nodeId: uuid(),\n fieldCode: generateUniqueFieldCode({\n questions,\n kind: type,\n label: defaults[\"label\"],\n }),\n };\n};\n\nexport const duplicateFieldData = ({ item, questionKinds, questions }) => {\n const { isRequired, kind, optionsAttributes } = item;\n\n const questionKind = findBy({ type: kind }, questionKinds);\n const label = fieldWithFallback(item, \"label\");\n const defaultAttributeNames = keys(questionKind.defaults || {});\n const defaultAttributes = pick(defaultAttributeNames, item);\n const newQuestionLabel = isRichTextQuestion(kind)\n ? label\n : t(\"neetoForm.common.clonedElementLabel\", { label });\n\n return {\n ...defaultAttributes,\n isRequired,\n kind,\n label: newQuestionLabel,\n optionsAttributes: optionsAttributes && optionsAttributes.map(omit([\"id\"])),\n nodeId: uuid(),\n fieldCode: generateUniqueFieldCode({\n questions,\n kind,\n label: newQuestionLabel,\n }),\n displayOrder: item.displayOrder + 1,\n };\n};\n\nexport const getAvailableQuestionKinds = ({\n allQuestionKinds,\n activeQuestions = [],\n isKindAlreadyActive,\n}) => {\n if (isEmpty(activeQuestions)) return allQuestionKinds;\n\n return reject(kind => {\n const isSingularKind = kind.isSingular;\n\n return (\n isAutoGeneratedQuestion(kind.type) ||\n (isSingularKind && isKindAlreadyActive({ activeQuestions, kind }))\n );\n }, allQuestionKinds);\n};\n\nexport const formatQuestionAttributesForClone = when(\n isChoiceQuestion,\n assoc(\"isCloning\", true)\n);\n","import { NoData } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n buildAddQuestionButtonProps,\n buildDisabledAddButtonTooltipProps,\n} from \"./utils\";\n\nconst AddFirstQuestion = ({\n onAdd,\n isDisabled,\n disabledAddButtonTooltipProps,\n}) => {\n const { t } = useTranslation();\n const tooltipProps = buildDisabledAddButtonTooltipProps(\n isDisabled,\n disabledAddButtonTooltipProps\n );\n\n return (\n <div className=\"flex h-full flex-col items-center justify-center py-8\">\n <NoData\n showTooltipWhenButtonDisabled\n className=\"min-h-80\"\n title={t(\"neetoForm.questions.common.noData\")}\n primaryButtonProps={buildAddQuestionButtonProps(\n onAdd,\n isDisabled,\n tooltipProps\n )}\n />\n </div>\n );\n};\n\nexport default AddFirstQuestion;\n","import { t } from \"i18next\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\n\nimport { SELECTABLE_KINDS } from \"../constants\";\n\nconst {\n NAME,\n PHONE,\n EMAIL,\n ADDITIONAL_GUESTS,\n TEXT,\n TEXTAREA,\n RICH_TEXT,\n INTEGER,\n DECIMAL,\n STAR_RATING,\n RATING,\n DATE,\n FILE_UPLOAD,\n CAPTCHA,\n SMS_REMINDER,\n} = QUESTION_TYPES;\n\nexport const QUESTIONS_WITH_ADDITIONAL_DATA = [\n ...SELECTABLE_KINDS,\n STAR_RATING,\n RATING,\n FILE_UPLOAD,\n CAPTCHA,\n EMAIL,\n];\n\nexport const QUESTIONS_WITH_PLACEHOLDERS = [\n NAME,\n PHONE,\n EMAIL,\n ADDITIONAL_GUESTS,\n TEXT,\n TEXTAREA,\n RICH_TEXT,\n INTEGER,\n DECIMAL,\n DATE,\n SMS_REMINDER,\n];\n\nexport const DEFAULT_PLACEHOLDERS = {\n CHECKBOX: t(\"neetoForm.questions.common.questionFields.field.labelExample\", {\n what: t(\"neetoForm.common.hobbies\"),\n }),\n RADIO: t(\"neetoForm.questions.common.questionFields.field.labelExample\", {\n what: t(\"neetoForm.common.country\"),\n }),\n DROPDOWN: t(\"neetoForm.questions.common.questionFields.field.labelExample\", {\n what: t(\"neetoForm.common.company\"),\n }),\n};\n\nexport const INITIAL_VALUES = {\n kind: \"\",\n label: \"\",\n fieldCode: \"\",\n isSplitMode: false,\n};\n\nexport const VALID_FIELD_CODE_REGEX = /^[a-z0-9]+(_[a-z0-9]+)*$/;\n","import { useFormikContext } from \"formik\";\nimport { isMetaKeyPressed } from \"neetocommons/react-utils\";\nimport { Textarea } from \"neetoui/formik\";\n\nconst FormikAdaptiveInput = ({ label, name, ...otherProps }) => {\n const { dirty, isValid, submitForm } = useFormikContext();\n\n const handleKeyDown = event => {\n if (event.key !== \"Enter\" || event.shiftKey) return;\n\n event.preventDefault();\n if (isMetaKeyPressed(event)) return;\n\n dirty && isValid && submitForm();\n };\n\n const handleFocus = element => {\n const end = element.value.length;\n element.setSelectionRange(end, end);\n };\n\n return (\n <Textarea\n {...{ label, name }}\n className=\"neeto-form-nano-adaptive-input\"\n resize=\"none\"\n size=\"small\"\n onFocus={({ target }) => handleFocus(target)}\n onKeyDown={handleKeyDown}\n {...otherProps}\n />\n );\n};\n\nexport default FormikAdaptiveInput;\n","import { withEventTargetValue } from \"neetocommons/utils\";\nimport { includes } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n DEFAULT_PLACEHOLDERS,\n QUESTIONS_WITH_PLACEHOLDERS,\n} from \"components/BuildForm/ManageQuestionPane/constants\";\nimport FormikAdaptiveInput from \"components/Common/FormikAdaptiveInput\";\n\nconst LabelWithPlaceholder = ({\n kind,\n isLabelDisabled,\n handleLabelChange,\n labelProps = {},\n placeholderProps = {},\n}) => {\n const { t } = useTranslation();\n\n const shouldShowPlaceholder = includes(kind, QUESTIONS_WITH_PLACEHOLDERS);\n\n return (\n <div className=\"space-y-4\">\n <FormikAdaptiveInput\n required\n disabled={isLabelDisabled}\n label={t(\"neetoForm.questions.common.questionFields.field.question\")}\n name=\"label\"\n placeholder={DEFAULT_PLACEHOLDERS[kind]}\n onChange={withEventTargetValue(handleLabelChange)}\n {...labelProps}\n />\n {shouldShowPlaceholder && (\n <FormikAdaptiveInput\n className={`neeto-form-nano-placeholder-input neeto-form-nano-placeholder-input-${kind}`}\n name=\"placeholder\"\n label={t(\n \"neetoForm.questions.common.questionFields.field.placeholder\"\n )}\n {...placeholderProps}\n />\n )}\n </div>\n );\n};\n\nexport default LabelWithPlaceholder;\n","import { useFormikContext } from \"formik\";\nimport { Switch } from \"neetoui/formik\";\nimport { path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { LABEL_FIELDS } from \"components/Common/constants\";\nimport { QUESTION_TYPES } from \"components/constants\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport LabelWithPlaceholder from \"../../commons/LabelWithPlaceholder\";\n\nconst Name = ({ isLabelDisabled, handleLabelChange }) => {\n const {\n values: { isSplitMode = false },\n } = useFormikContext();\n\n const { t } = useTranslation();\n\n const usesCustomSubmissionComponent = useBuildFormStore(\n path([\"formState\", \"usesCustomSubmissionComponent\"])\n );\n\n const commonProps = { kind: QUESTION_TYPES.NAME, isLabelDisabled };\n\n return (\n <div className=\"space-y-4\">\n {!usesCustomSubmissionComponent && (\n <Switch\n label={t(\"neetoForm.common.splitAsFirstAndLastNames\")}\n name=\"isSplitMode\"\n />\n )}\n {isSplitMode && !usesCustomSubmissionComponent ? (\n <>\n <LabelWithPlaceholder\n {...commonProps}\n handleLabelChange={value =>\n handleLabelChange(value, LABEL_FIELDS.FIRST_NAME)\n }\n labelProps={{\n label: t(\n \"neetoForm.questions.common.questionFields.field.firstNameQuestion\"\n ),\n name: LABEL_FIELDS.FIRST_NAME,\n }}\n placeholderProps={{\n label: t(\n \"neetoForm.questions.common.questionFields.field.firstNamePlaceholder\"\n ),\n name: \"firstNamePlaceholder\",\n }}\n />\n <LabelWithPlaceholder\n {...commonProps}\n handleLabelChange={value =>\n handleLabelChange(value, LABEL_FIELDS.LAST_NAME)\n }\n labelProps={{\n label: t(\n \"neetoForm.questions.common.questionFields.field.lastNameQuestion\"\n ),\n name: LABEL_FIELDS.LAST_NAME,\n }}\n placeholderProps={{\n label: t(\n \"neetoForm.questions.common.questionFields.field.lastNamePlaceholder\"\n ),\n name: \"lastNamePlaceholder\",\n }}\n />\n </>\n ) : (\n <LabelWithPlaceholder\n {...commonProps}\n labelProps={{ name: LABEL_FIELDS.FULL_NAME }}\n placeholderProps={{ name: \"fullNamePlaceholder\" }}\n handleLabelChange={value =>\n handleLabelChange(value, LABEL_FIELDS.FULL_NAME)\n }\n />\n )}\n </div>\n );\n};\n\nexport default Name;\n","import { includes } from \"ramda\";\n\nimport useBuildFormStore from \"src/stores/buildForm\";\nimport { isNameQuestion } from \"utils\";\n\nimport { QUESTIONS_WITH_ADDITIONAL_DATA } from \"./constants\";\nimport { renderAdditionalData } from \"./utils\";\n\nimport LabelWithPlaceholder from \"../commons/LabelWithPlaceholder\";\nimport Name from \"../Questions/Fields/Name\";\n\nconst Properties = ({\n kind,\n isLabelDisabled,\n handleLabelChange,\n questionProps,\n}) => {\n const { enableDomainWhitelisting, enableDomainBlacklisting } =\n useBuildFormStore.pick(\"formState\");\n\n const hasAdditionalData = includes(kind, QUESTIONS_WITH_ADDITIONAL_DATA);\n\n if (isNameQuestion(kind)) {\n return <Name {...{ handleLabelChange, isLabelDisabled }} />;\n }\n\n return (\n <div className=\"space-y-4\">\n <LabelWithPlaceholder {...{ handleLabelChange, isLabelDisabled, kind }} />\n {hasAdditionalData &&\n renderAdditionalData({\n kind,\n questionProps,\n enableDomainWhitelisting,\n enableDomainBlacklisting,\n })}\n </div>\n );\n};\n\nexport default Properties;\n","import { Typography } from \"neetoui\";\n\nconst Block = ({ title, children, dataCy }) => (\n <div className=\"mt-4 space-y-4\" data-cy={dataCy}>\n <div\n className=\"flex items-center justify-between\"\n data-cy=\"properties-header\"\n >\n <Typography lineHeight=\"normal\" style=\"body1\" weight=\"semibold\">\n {title}\n </Typography>\n </div>\n <div className=\"space-y-4\">{children}</div>\n </div>\n);\n\nexport default Block;\n","import { useEffect, useRef } from \"react\";\n\nimport { modify, path, without } from \"ramda\";\n\nimport { useForm } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nconst useUpdateEditorContent = ({\n editorRef,\n fieldName,\n value,\n initialValue,\n fieldCode,\n}) => {\n const initialStateRef = useRef({ language: \"\", value: null });\n\n const { setFormData } = useBuildFormStore.pick();\n const { formId, selectedLanguage: language } =\n useBuildFormStore.pick(\"formState\");\n\n const shouldReset = useBuildFormStore(store =>\n store.formState.richTextFieldsToReset.includes(fieldCode)\n );\n\n const setEditorContent = content =>\n editorRef.current.editor?.commands?.setContent(content);\n\n if (shouldReset) {\n setEditorContent(initialValue);\n setFormData(modify(\"richTextFieldsToReset\", without([fieldCode])));\n }\n\n const { data } = useForm({ formId, language });\n\n useEffect(() => {\n if (!data) return;\n\n const pathArray = fieldName.split(\".\").map(part => {\n const parsedPart = parseInt(part);\n\n return isNaN(parsedPart) ? part : parsedPart;\n });\n\n setEditorContent(path(pathArray, data));\n }, [data]);\n\n useEffect(() => {\n if (initialStateRef.current[\"language\"] !== language) {\n initialStateRef.current[\"language\"] = language;\n initialStateRef.current[\"value\"] = null;\n\n return;\n }\n\n if (initialStateRef.current[\"value\"] === null && value !== null) {\n setEditorContent(value);\n initialStateRef.current[\"value\"] = value;\n }\n }, [language, value]);\n};\n\nexport default useUpdateEditorContent;\n","import { useRef } from \"react\";\n\nimport { useField, useFormikContext } from \"formik\";\nimport { Editor as NeetoEditor } from \"neetoeditor\";\n\nimport useUpdateEditorContent from \"../hooks/useUpdateEditorContent\";\nimport { validateEditorContent } from \"../utils\";\n\nconst Editor = () => {\n const editorRef = useRef({ editor: {} });\n\n const {\n values: { fieldCode },\n } = useFormikContext();\n\n const fieldName = \"label\";\n\n const [\n { value },\n { touched, error, initialValue },\n { setTouched, setValue },\n ] = useField({\n name: fieldName,\n validate: validateEditorContent(editorRef),\n });\n\n useUpdateEditorContent({\n editorRef,\n fieldName,\n value,\n initialValue,\n fieldCode,\n });\n\n return (\n <div className=\"w-full cursor-auto\">\n <NeetoEditor\n required\n error={touched ? error : \"\"}\n id=\"editor\"\n initialValue={value}\n name={fieldName}\n ref={editorRef}\n onBlur={() => setTouched(true)}\n onChange={setValue}\n />\n </div>\n );\n};\n\nexport default Editor;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Switch } from \"neetoui/formik\";\n\nconst RequiredSwitch = withT(({ t }) => (\n <div className=\"w-full\">\n <Switch label={t(\"neetoForm.common.required\")} name=\"isRequired\" />\n </div>\n));\n\nexport default RequiredSwitch;\n","import { useEffect } from \"react\";\n\nimport { useField } from \"formik\";\nimport { Input } from \"neetoui/formik\";\n\nconst InputWithMaxLength = ({ maxLength, ...props }) => {\n const [{ value }, , { setValue }] = useField(props);\n\n useEffect(() => {\n if (value && value.length > maxLength) {\n setValue(value.substring(0, maxLength));\n }\n }, [value, maxLength, setValue]);\n\n const shouldShowMaxLength = value && value.length > maxLength - 10;\n\n return <Input {...props} {...(shouldShowMaxLength && { maxLength })} />;\n};\n\nexport default InputWithMaxLength;\n","import { Button } from \"neetoui\";\nimport { path } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport Input from \"components/Common/InputWithMaxLength\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { FIELD_CODES_REJECT_CHARS_REGEX } from \"./constants\";\n\nconst FieldCode = () => {\n const helpDocUrl = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"fieldCode\"])\n );\n\n const { t } = useTranslation();\n\n return (\n <Input\n required\n label={t(\"neetoForm.questions.common.questionFields.field.fieldCode\")}\n name=\"fieldCode\"\n rejectCharsRegex={FIELD_CODES_REJECT_CHARS_REGEX}\n helpText={\n helpDocUrl && (\n <Trans\n i18nKey=\"neetoForm.questions.common.questionFields.field.fieldCodeHelpDescription\"\n components={{\n Link: (\n <Button\n className=\"text-xs\"\n href={helpDocUrl}\n style=\"link\"\n target=\"_blank\"\n />\n ),\n }}\n />\n )\n }\n />\n );\n};\n\nexport default FieldCode;\n","import { useFormikContext } from \"formik\";\nimport { useStateWithDependency } from \"neetocommons/react-utils\";\nimport { Pane, Accordion } from \"neetoui\";\nimport { Select, Switch } from \"neetoui/formik\";\nimport { includes, isNil, mergeLeft, path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { LABEL_FIELDS } from \"components/Common/constants\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport Properties from \"./Properties\";\nimport {\n buildDefaultValueForKind,\n buildKindOptions,\n extractKindFromOption,\n getQuestionKind,\n hideSwitchLabelProps,\n readOnlySwitchLabelProps,\n responseVisibleOnlyToHostSwitchLabelProps,\n} from \"./utils\";\n\nimport Block from \"../commons/Block\";\nimport Editor from \"../commons/Editor\";\nimport RequiredSwitch from \"../commons/RequiredSwitch\";\nimport {\n NON_HIDEABLE_FIELDS,\n NON_READ_ONLY_FIELDS,\n QUESTIONS_WITHOUT_FIELD_CODE,\n} from \"../constants\";\nimport { createFieldData, generateUniqueFieldCode } from \"../Form/utils\";\nimport FieldCode from \"../Questions/FieldCode\";\nimport { isImmutableField, isRichTextQuestion } from \"../utils\";\n\nconst Form = ({\n questions,\n initialFocusRef,\n isRequiredField,\n isDisabledFieldLabel,\n enableFieldCode,\n allQuestionKinds,\n availableQuestionKinds,\n getActiveKindDetails,\n additionalQuestionKindPattern,\n isEdit = false,\n}) => {\n const { t } = useTranslation();\n\n const { values, setValues, setErrors, setTouched, setFieldValue } =\n useFormikContext();\n\n const hideQuestionHelpDoc = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"hideQuestion\"])\n );\n\n const readOnlyHelpDoc = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"readOnly\"])\n );\n\n const responseVisibleOnlyToHostHelpDoc = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"responseVisibleOnlyToHost\"])\n );\n\n const {\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n } = useBuildFormStore.pick(\"formState\");\n\n const { kind } = values;\n\n const questionKinds = isEdit ? allQuestionKinds : availableQuestionKinds;\n\n const questionKindUniquenessPattern = mergeLeft(\n isEdit && additionalQuestionKindPattern\n ? additionalQuestionKindPattern(values)\n : {},\n { type: kind }\n );\n\n const [questionKind] = useStateWithDependency(\n getQuestionKind(questionKinds, questionKindUniquenessPattern),\n [kind]\n );\n\n const { questionProps = {} } = questionKind\n ? getActiveKindDetails({ allQuestionKinds, item: questionKind })\n : {};\n\n const isRequired = questionKind && isRequiredField(questionKind);\n const isLabelDisabled = questionKind && isDisabledFieldLabel(questionKind);\n const isImmutable = questionKind && isImmutableField(questionKind);\n const shouldShowFieldCode =\n enableFieldCode && !includes(kind, QUESTIONS_WITHOUT_FIELD_CODE);\n\n const shouldShowHideSwitch = !includes(kind, NON_HIDEABLE_FIELDS);\n const shouldShowResponseVisibleOnlyToHostSwitch =\n showResponseVisibleOnlyToHostSwitch && !includes(kind, NON_HIDEABLE_FIELDS);\n\n const shouldShowReadOnlySwitch =\n showReadOnlySwitch && !includes(kind, NON_READ_ONLY_FIELDS);\n\n const isSettingsBlockVisible =\n !isRequired && (!isImmutable || shouldShowHideSwitch);\n\n const handleKindChange = option => {\n const data = buildQuestionData(option);\n updateFormState(data);\n };\n\n const buildQuestionData = option => {\n if (isNil(option)) {\n return INITIAL_VALUES;\n }\n\n const { label, value } = option;\n const kind = extractKindFromOption(value);\n const questionKind = getQuestionKind(availableQuestionKinds, {\n type: kind,\n label,\n });\n\n return createFieldData({\n kind: questionKind,\n isRequired,\n questions,\n selectedLanguage,\n isUsingDefaultQuestionKinds,\n });\n };\n\n const updateFormState = data => {\n setValues(data);\n setErrors({});\n setTouched({});\n };\n\n const handleLabelChange = (label, name = LABEL_FIELDS.DEFAULT) => {\n setFieldValue(name, label);\n\n if (isEdit) return;\n\n const uniqueFieldCode = generateUniqueFieldCode({\n questions,\n label,\n kind,\n });\n\n setFieldValue(\"fieldCode\", uniqueFieldCode);\n };\n\n return (\n <Pane.Body>\n <div className=\"w-full space-y-4\">\n <Select\n isClearable\n isSearchable\n defaultValue={buildDefaultValueForKind(questionKind)}\n innerRef={initialFocusRef}\n isDisabled={isEdit}\n name=\"kind\"\n options={buildKindOptions(questionKinds)}\n label={t(\n \"neetoForm.questions.common.questionFields.field.questionType\"\n )}\n onChange={handleKindChange}\n />\n {isRichTextQuestion(kind) ? (\n <Editor {...{ isLabelDisabled }} />\n ) : (\n <div className=\"space-y-6\">\n <Properties\n {...{ handleLabelChange, isLabelDisabled, kind, questionProps }}\n />\n {isSettingsBlockVisible && (\n <Block\n dataCy=\"settings-card\"\n title={t(\"neetoForm.common.settings\")}\n >\n {!isImmutable && <RequiredSwitch />}\n {shouldShowHideSwitch && (\n <Switch\n label={t(\"neetoForm.common.hideQuestion\")}\n labelProps={hideSwitchLabelProps(hideQuestionHelpDoc)}\n name=\"isHidden\"\n />\n )}\n {shouldShowResponseVisibleOnlyToHostSwitch && (\n <Switch\n label={t(\"neetoForm.common.responseVisibleOnlyToHost\")}\n name=\"isResponseVisibleOnlyToHost\"\n labelProps={responseVisibleOnlyToHostSwitchLabelProps(\n responseVisibleOnlyToHostHelpDoc\n )}\n />\n )}\n </Block>\n )}\n {(shouldShowFieldCode || shouldShowReadOnlySwitch) && (\n <Accordion\n className=\"neeto-form-nano-advanced-properties-accordion\"\n data-cy=\"advanced-properties-card\"\n >\n <Accordion.Item\n title={t(\"neetoForm.common.advancedProperties\")}\n >\n <div className=\"flex flex-col space-y-4\">\n {shouldShowFieldCode && <FieldCode />}\n {shouldShowReadOnlySwitch && (\n <Switch\n label={t(\"neetoForm.common.readOnly\")}\n labelProps={readOnlySwitchLabelProps(readOnlyHelpDoc)}\n name=\"isReadOnly\"\n />\n )}\n </div>\n </Accordion.Item>\n </Accordion>\n )}\n </div>\n )}\n </div>\n </Pane.Body>\n );\n};\n\nexport default Form;\n","/* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */\nimport { t } from \"i18next\";\nimport { isEditorEmpty } from \"neetoeditor\";\nimport { equals, includes } from \"ramda\";\nimport * as yup from \"yup\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\nimport { isNameQuestion } from \"utils\";\n\nimport { VALID_FIELD_CODE_REGEX } from \"./constants\";\n\nimport {\n QUESTIONS_WITHOUT_FIELD_CODE,\n RESERVED_FIELD_CODES,\n RICH_TEXT_QUESTIONS,\n SELECTABLE_KINDS,\n} from \"../constants\";\n\nconst requiredLabelValidation = (schema, field) =>\n schema.trim().required(t(\"neetoForm.common.fieldReq\", { field }));\n\nconst fieldCodeValidation = (schema, field) =>\n schema\n .trim()\n .required(t(\"neetoForm.common.fieldReq\", { field }))\n .matches(\n VALID_FIELD_CODE_REGEX,\n t(\"neetoForm.error.invalidField\", { label: field })\n );\n\nconst richTextFieldMissingErrorMessage = kind => {\n const field = equals(kind, QUESTION_TYPES.PARAGRAPH)\n ? t(\"neetoForm.fields.def\")\n : t(\"neetoForm.fields.tcf\");\n\n return t(\"neetoForm.error.fieldCantBeEmpty\", { field });\n};\n\nconst buildLabelValidationSchema = (kind, schema) => {\n if (isNameQuestion(kind)) {\n return schema.notRequired();\n }\n\n return includes(kind, RICH_TEXT_QUESTIONS)\n ? schema.test(\n \"required\",\n richTextFieldMissingErrorMessage(kind),\n value => !isEditorEmpty(value)\n )\n : requiredLabelValidation(\n schema,\n t(\"neetoForm.questions.common.questionFields.field.question\")\n );\n};\n\nconst buildNameLabelValidationSchema = (\n question,\n schema,\n isFullName = false\n) => {\n const isRequired = isFullName ? !question.isSplitMode : question.isSplitMode;\n\n return isNameQuestion(question.kind) && isRequired\n ? requiredLabelValidation(\n schema,\n t(\"neetoForm.questions.common.questionFields.field.question\")\n )\n : schema.notRequired();\n};\n\nconst stringSchema = yup.string();\n\nexport const formValidationSchema = (question, enableFieldCode = false) =>\n yup.object().shape({\n kind: yup\n .string()\n .trim()\n .required(\n t(\"neetoForm.common.fieldReq\", {\n field: t(\n \"neetoForm.questions.common.questionFields.field.questionType\"\n ),\n })\n ),\n label: yup.string().when(\"kind\", buildLabelValidationSchema),\n fullNameLabel: buildNameLabelValidationSchema(question, stringSchema, true),\n firstNameLabel: buildNameLabelValidationSchema(question, stringSchema),\n lastNameLabel: buildNameLabelValidationSchema(question, stringSchema),\n fieldCode: yup\n .string()\n .trim()\n .notOneOf(RESERVED_FIELD_CODES, t(\"neetoForm.error.invalidFieldCode\"))\n .when(\"kind\", (kind, schema) =>\n enableFieldCode && !includes(kind, QUESTIONS_WITHOUT_FIELD_CODE)\n ? fieldCodeValidation(\n schema,\n t(\"neetoForm.questions.common.questionFields.field.fieldCode\")\n )\n : schema.notRequired()\n ),\n optionsAttributes: yup.array().when(\"kind\", (kind, schema) =>\n includes(kind, SELECTABLE_KINDS)\n ? schema.of(\n yup.object().shape({\n label: yup.string().when(\"_destroy\", {\n is: true,\n otherwise: requiredLabelValidation(\n yup.string(),\n t(\"neetoForm.questions.common.questionFields.field.option\")\n ),\n }),\n })\n )\n : schema.notRequired()\n ),\n highestRatingLabel: yup.string().nullable(),\n averageRatingLabel: yup.string().nullable(),\n lowestRatingLabel: yup.string().nullable(),\n });\n","import { findBy } from \"neetocist\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form } from \"neetoui/formik\";\nimport { mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport QuestionForm from \"./Form\";\nimport { formValidationSchema } from \"./validations\";\n\nconst Add = ({\n question,\n onClose,\n questions,\n handleSelect,\n buildRequestArgs,\n isOpen,\n ...props\n}) => {\n const { formId, selectedLanguage: language } =\n useBuildFormStore.pick(\"formState\");\n\n const { t } = useTranslation();\n\n const { mutate: createQuestion, isPending: isCreating } = useCreateQuestion(\n formId,\n language,\n {\n onSuccess: () => {\n showThumbsUpToastr();\n onClose();\n },\n }\n );\n\n const handleSubmit = values => {\n if (isCreating || !isOpen) return;\n\n const displayOrder = question\n ? question.displayOrder + 1\n : questions.length;\n\n createQuestion(\n {\n language,\n neetoFormQuestion: mergeLeft({ displayOrder }, values),\n ...buildRequestArgs,\n },\n {\n onSuccess: ({ questions }) => {\n const newQuestion = findBy({ displayOrder }, questions);\n handleSelect(newQuestion);\n },\n }\n );\n };\n\n return (\n <>\n <Pane.Header>\n <Typography data-cy=\"add-question-pane-header\" style=\"h2\">\n {t(\"neetoForm.questions.common.primaryPanel.addQuestion\")}\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues: INITIAL_VALUES,\n validationSchema: formValidationSchema(\n INITIAL_VALUES,\n props[\"enableFieldCode\"]\n ),\n onSubmit: handleSubmit,\n }}\n >\n <>\n <QuestionForm {...{ ...props, question, questions }} />\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isCreating}\n />\n </Pane.Footer>\n </>\n </Form>\n </>\n );\n};\n\nexport default Add;\n","import { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Form } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useUpdateQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport QuestionForm from \"./Form\";\nimport { formValidationSchema } from \"./validations\";\n\nconst Edit = ({ question, isOpen, onClose, ...props }) => {\n const { t } = useTranslation();\n\n const { selectedLanguage: language } = useBuildFormStore.pick(\"formState\");\n\n const { mutate: updateQuestion, isPending: isUpdating } = useUpdateQuestion(\n question?.formId,\n language\n );\n\n const handleSubmit = (values, { setSubmitting }) => {\n if (isUpdating || !isOpen) return;\n\n const payload = { language, neetoFormQuestion: values };\n updateQuestion(\n { questionId: question.id, payload },\n {\n onSuccess: () => {\n showThumbsUpToastr();\n onClose();\n },\n onSettled: () => setSubmitting(false),\n }\n );\n };\n\n return (\n <>\n <Pane.Header>\n <Typography data-cy=\"edit-question-pane-header\" style=\"h2\">\n {t(\"neetoForm.questions.common.editQuestion\")}\n </Typography>\n </Pane.Header>\n <Form\n formikProps={{\n initialValues: question,\n validationSchema: formValidationSchema(\n question,\n props[\"enableFieldCode\"]\n ),\n onSubmit: handleSubmit,\n }}\n >\n <>\n <QuestionForm {...{ question, ...props }} isEdit />\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isUpdating}\n />\n </Pane.Footer>\n </>\n </Form>\n </>\n );\n};\n\nexport default Edit;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Radio } from \"neetoui/formik\";\n\nimport { CAPTCHA_TYPES } from \"components/constants\";\n\nconst Captcha = withT(({ t }) => (\n <Radio\n label={t(\"neetoForm.common.captchaType\")}\n labelProps={{ required: true }}\n name=\"variant\"\n >\n <Radio.Item\n label={t(\"neetoForm.common.reCaptchaV2\")}\n value={CAPTCHA_TYPES.RECAPTCHA_V2}\n />\n <Radio.Item\n label={t(\"neetoForm.common.mathCaptcha\")}\n value={CAPTCHA_TYPES.MATH_CAPTCHA}\n />\n </Radio>\n));\n\nexport default Captcha;\n","import classnames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\nimport { Label, Typography } from \"neetoui\";\nimport { Switch } from \"neetoui/formik\";\n\nconst SwitchBlock = ({ name, title, className = \"\", ...otherProps }) => (\n <Label\n className={classnames(\"flex items-center justify-start gap-2 \", className)}\n data-cy={`neeto-form-engine-${hyphenate(title && name)}-toggle-label`}\n >\n <Switch\n {...{ ...otherProps, name }}\n data-cy={`neeto-form-engine-${hyphenate(title && name)}-switch`}\n />\n <Typography component=\"span\" style=\"body1\">\n {title}\n </Typography>\n </Label>\n);\n\nexport default SwitchBlock;\n","import HelpPopover from \"neetomolecules/HelpPopover\";\n\nconst TitleWithHelpPopover = ({ title, description, helpLink }) => (\n <div className=\"flex gap-2\">\n {title}\n <HelpPopover\n {...{ description }}\n popoverProps={{ position: \"top\" }}\n {...(helpLink && { helpLinkProps: { href: helpLink } })}\n />\n </div>\n);\n\nexport default TitleWithHelpPopover;\n","import { t } from \"i18next\";\n\nexport const DOMAIN_RESTRICTION_TRANSLATIONS = {\n whitelistedDomains: {\n title: t(\"neetoForm.domainRestriction.whitelistedDomains.label\"),\n description: t(\n \"neetoForm.domainRestriction.whitelistedDomains.description\"\n ),\n popoverDescription: t(\n \"neetoForm.domainRestriction.whitelistedDomains.popoverDescription\"\n ),\n },\n blacklistedDomains: {\n title: t(\"neetoForm.domainRestriction.blacklistedDomains.label\"),\n description: t(\n \"neetoForm.domainRestriction.blacklistedDomains.description\"\n ),\n popoverDescription: t(\n \"neetoForm.domainRestriction.blacklistedDomains.popoverDescription\"\n ),\n },\n};\n","import { t } from \"i18next\";\nimport { hyphenize } from \"neetocommons/utils\";\nimport { Close } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\nimport { assoc } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { components } from \"react-select\";\nimport * as yup from \"yup\";\n\nconst STYLES = {\n border: {\n default: \"1px solid rgb(var(--neeto-ui-gray-400))\",\n error: \"1px solid rgb(var(--neeto-ui-error-800)) !important\",\n },\n color: {\n default: \"rgb(var(--neeto-ui-gray-800))\",\n error: \"rgb(var(--neeto-ui-error-800)) !important\",\n },\n};\n\nconst MultiValueRemove = props => (\n <components.MultiValueRemove\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: `${hyphenize(props.data.label)}-remove-icon`,\n }}\n >\n <Close size={16} />\n </components.MultiValueRemove>\n);\n\nconst ValueContainer = ({ children, ...props }) => {\n const { t } = useTranslation();\n\n const {\n getValue,\n selectProps: { isFocused, visibleDomainsCount },\n } = props;\n const value = getValue();\n const [firstChild, ...rest] = children;\n\n const shouldCollapse = !isFocused && value.length > visibleDomainsCount;\n\n return (\n <components.ValueContainer\n {...props}\n innerProps={{\n ...props.innerProps,\n [\"data-cy\"]: \"multi-domain-input-container\",\n }}\n >\n {shouldCollapse ? firstChild.slice(0, visibleDomainsCount) : firstChild}\n {shouldCollapse && (\n <Tag\n style=\"secondary\"\n label={t(\"neetoForm.common.remainingItemsCount\", {\n count: value.length - visibleDomainsCount,\n })}\n />\n )}\n {rest}\n </components.ValueContainer>\n );\n};\n\nconst ClearIndicator = props => (\n <components.ClearIndicator\n {...props}\n innerProps={{ ...props.innerProps, [\"data-cy\"]: \"clear-all-button\" }}\n >\n <Close className=\"cursor-pointer\" size={16} />\n </components.ClearIndicator>\n);\n\nexport const ERROR_MESSAGE_DELIMITER = \". \";\nexport const DELIMITER_KEYS = [\"Enter\", \"Tab\", \",\", \" \"];\nexport const DOMAIN_SEPARATION_REGEX = /[^\\s,]+/g;\nexport const FLEXIBLE_DOMAIN_REGEX = /^[a-zA-Z0-9-]+(\\.[a-zA-Z0-9-]+)+$/;\n\nexport const VALID_DOMAIN_REGEX =\n /^(?:[a-zA-Z0-9-]{1,63}\\.)+[a-zA-Z0-9-]{2,63}$/;\n\nexport const DOMAIN_VALIDATION_SCHEMA = yup\n .string()\n .required(\n t(\"neetoForm.error.requiredField\", {\n label: t(\"neetoForm.common.domain\"),\n })\n )\n .test(\"verify domains\", t(\"neetoForm.error.invalidDomain\"), domain =>\n VALID_DOMAIN_REGEX.test(domain)\n );\n\nexport const CUSTOM_STYLES = {\n input: assoc(\"overflow\", \"hidden\"),\n multiValue: (styles, { data: { valid } }) => ({\n ...styles,\n border: valid ? STYLES.border.default : STYLES.border.error,\n color: valid ? STYLES.color.default : STYLES.color.error,\n }),\n};\n\nexport const CUSTOM_COMPONENTS = {\n DropdownIndicator: null,\n MultiValueRemove,\n ValueContainer,\n ClearIndicator,\n};\n","import { filter, isNotNil, join, map, pipe, pluck, uniq } from \"ramda\";\n\nimport { ERROR_MESSAGE_DELIMITER, DOMAIN_VALIDATION_SCHEMA } from \"./constants\";\n\nconst removeDuplicateErrorMessages = pipe(\n filter(isNotNil),\n uniq,\n join(ERROR_MESSAGE_DELIMITER)\n);\n\nexport const formatDomainInputOptions = domain => {\n let isValid;\n\n try {\n DOMAIN_VALIDATION_SCHEMA.validateSync(domain);\n isValid = true;\n } catch {\n isValid = false;\n }\n\n return { label: domain, value: domain, valid: isValid };\n};\n\nexport const pruneDuplicates = pipe(\n pluck(\"value\"),\n uniq,\n map(formatDomainInputOptions)\n);\n\nexport const getValidDomains = domains =>\n domains.filter(domain => domain?.valid);\n\nexport const getValidDomainsCount = domains => getValidDomains(domains).length;\n\nexport const formatErrorMessage = error => {\n if (typeof error === \"string\") return error;\n\n return removeDuplicateErrorMessages(error);\n};\n","import { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { hyphenize } from \"neetocommons/utils\";\nimport { Label } from \"neetoui\";\nimport { mergeLeft, filter, includes, test } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport CreatableSelect from \"react-select/creatable\";\n\nimport {\n CUSTOM_COMPONENTS,\n CUSTOM_STYLES,\n DELIMITER_KEYS,\n DOMAIN_SEPARATION_REGEX,\n ERROR_MESSAGE_DELIMITER,\n FLEXIBLE_DOMAIN_REGEX,\n} from \"./constants\";\nimport {\n formatDomainInputOptions,\n formatErrorMessage,\n getValidDomainsCount,\n pruneDuplicates,\n getValidDomains,\n} from \"./utils\";\n\nconst MultiDomainInput = ({\n label = \"\",\n value = [],\n onChange = noop,\n error = \"\",\n onBlur = noop,\n ...otherProps\n}) => {\n const [inputValue, setInputValue] = useState(\"\");\n const [isFocused, setIsFocused] = useState(false);\n\n const { t } = useTranslation();\n\n const handleFilterDomains = () => onChange(getValidDomains(value));\n\n const handleDomainChange = () => {\n const inputValues = inputValue.match(DOMAIN_SEPARATION_REGEX) || [];\n const domainMatches = filter(test(FLEXIBLE_DOMAIN_REGEX), inputValues);\n\n const domains = domainMatches.map(formatDomainInputOptions);\n onChange(pruneDuplicates([...value, ...domains]));\n setInputValue(\"\");\n };\n\n const handleKeyDown = event => {\n if (!inputValue) return;\n\n if (includes(event.key, DELIMITER_KEYS)) {\n handleDomainChange();\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n const onCreateOption = input => {\n const domain = formatDomainInputOptions(input);\n onChange(pruneDuplicates([...value, domain]));\n };\n\n const handleBlur = event => {\n inputValue ? handleDomainChange() : onBlur(event);\n setIsFocused(false);\n };\n\n const isFilterDomainsLinkVisible = value.length > getValidDomainsCount(value);\n\n return (\n <div className=\"neeto-ui-input__wrapper neeto-ui-email-input__wrapper\">\n <div className=\"neeto-ui-email-input__label-wrapper\">\n <Label\n className=\"neeto-ui-email-input__label\"\n data-cy={`${hyphenize(label)}-input-label`}\n >\n {label}\n </Label>\n </div>\n <CreatableSelect\n isMulti\n required\n classNamePrefix=\"neeto-ui-react-select\"\n components={CUSTOM_COMPONENTS}\n menuIsOpen={false}\n visibleDomainsCount={3}\n className={classnames(\n \"neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select\",\n { \"neeto-ui-react-select__container--error\": !!error }\n )}\n styles={{\n ...CUSTOM_STYLES,\n control: mergeLeft({\n maxHeight: \"200px\",\n overflowY: \"auto\",\n }),\n }}\n onBlur={handleBlur}\n onFocus={() => setIsFocused(true)}\n onInputChange={setInputValue}\n onKeyDown={handleKeyDown}\n {...{\n inputValue,\n isFocused,\n onChange,\n onCreateOption,\n value,\n ...otherProps,\n }}\n />\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-cy={`${hyphenize(label)}-input-error`}\n >\n {formatErrorMessage(error)}\n {isFilterDomainsLinkVisible && (\n <span\n className=\"neeto-ui-font-semibold cursor-pointer\"\n onClick={handleFilterDomains}\n >\n {ERROR_MESSAGE_DELIMITER}\n {t(\"neetoForm.domainRestriction.removeInvalidDomains\")}\n </span>\n )}\n </p>\n )}\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${hyphenize(label)}-input-help`}\n >\n {t(\"neetoForm.domainRestriction.helpText\")}\n </p>\n </div>\n );\n};\n\nexport default MultiDomainInput;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nimport { VALID_DOMAIN_REGEX } from \"./MultiDomainInput/constants\";\n\nexport const validateDomains = value => {\n const schema = yup\n .array()\n .of(\n yup\n .string()\n .test(\"verify domains\", t(\"neetoForm.error.invalidDomain\"), domain =>\n VALID_DOMAIN_REGEX.test(domain)\n )\n )\n .ensure()\n .compact()\n .min(\n 1,\n t(\"neetoForm.error.minOneEntity\", {\n entity: t(\"neetoForm.common.domain\"),\n })\n );\n\n // eslint-disable-next-line no-async-promise-executor\n return new Promise(async resolve => {\n try {\n await schema.validate(value);\n resolve(undefined);\n } catch (err) {\n resolve(err.message);\n }\n });\n};\n","import { useField } from \"formik\";\nimport { nullSafe } from \"neetocist\";\nimport { map, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MultiDomainInput from \"./MultiDomainInput\";\nimport { formatDomainInputOptions } from \"./MultiDomainInput/utils\";\nimport { validateDomains } from \"./utils\";\n\nconst EmailDomains = ({ name, label }) => {\n const { t } = useTranslation();\n\n const [{ value: domains = [] }, meta, { setValue, setTouched }] = useField({\n name,\n validate: validateDomains,\n });\n\n const formattedDomains = map(formatDomainInputOptions, domains);\n\n return (\n <div className=\"mb-4\">\n <MultiDomainInput\n {...{ label, name }}\n error={meta.touched ? meta.error : \"\"}\n placeholder={t(\"neetoForm.domainRestriction.placeholder\")}\n value={formattedDomains}\n onBlur={() => setTouched(true)}\n onChange={value => setValue(nullSafe(pluck)(\"value\", value))}\n />\n </div>\n );\n};\n\nexport default EmailDomains;\n","import { hyphenate } from \"neetocist\";\nimport { path } from \"ramda\";\n\nimport SwitchBlock from \"components/BuildForm/commons/SwitchBlock\";\nimport TitleWithHelpPopover from \"components/BuildForm/commons/TitleWithHelpPopover\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport { DOMAIN_RESTRICTION_TRANSLATIONS } from \"./constants\";\nimport EmailDomains from \"./EmailDomains\";\n\nconst RestrictDomainsBlock = ({\n switchName,\n domainName,\n isDomainRestrictionEnabled,\n}) => {\n const { title, description, popoverDescription } =\n DOMAIN_RESTRICTION_TRANSLATIONS[domainName];\n\n const helpLink = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", domainName])\n );\n\n return (\n <div\n className=\"flex flex-col space-y-4\"\n data-cy={`${hyphenate(switchName)}-container`}\n >\n <SwitchBlock\n className=\"mt-4\"\n name={switchName}\n title={\n <TitleWithHelpPopover\n {...{ helpLink, title }}\n description={popoverDescription}\n />\n }\n />\n {isDomainRestrictionEnabled && (\n <EmailDomains label={description} name={domainName} />\n )}\n </div>\n );\n};\n\nexport default RestrictDomainsBlock;\n","import { useFormikContext } from \"formik\";\n\nimport RestrictDomainsBlock from \"./RestrictDomainsBlock\";\n\nconst Email = ({ enableDomainWhitelisting, enableDomainBlacklisting }) => {\n const {\n values: {\n isDomainWhitelistingEnabled = false,\n isDomainBlacklistingEnabled = false,\n },\n } = useFormikContext();\n\n return (\n <div className=\"flex flex-col space-y-4\">\n {enableDomainWhitelisting && (\n <RestrictDomainsBlock\n domainName=\"whitelistedDomains\"\n isDomainRestrictionEnabled={isDomainWhitelistingEnabled}\n switchName=\"isDomainWhitelistingEnabled\"\n />\n )}\n {enableDomainBlacklisting && (\n <RestrictDomainsBlock\n domainName=\"blacklistedDomains\"\n isDomainRestrictionEnabled={isDomainBlacklistingEnabled}\n switchName=\"isDomainBlacklistingEnabled\"\n />\n )}\n </div>\n );\n};\n\nexport default Email;\n","import { Checkbox } from \"neetoui\";\n\nconst FileGroup = ({ name, label, checked, handleAllowedFileTypesChange }) => (\n <Checkbox\n {...{ checked, label, name }}\n data-cy={`neeto-form-engine-file-type-${name}`}\n id={name}\n onChange={handleAllowedFileTypesChange}\n />\n);\n\nexport default FileGroup;\n","import { difference, isEmpty } from \"ramda\";\n\nimport { FILE_TYPES_MAP } from \"../constants\";\n\nconst buildFileTypesList = fileTypes => (fileTypes ?? \"\").split(\", \");\n\nexport const getAllowedFileTypes = ({ type, isChecked, allowedFileTypes }) => {\n const fileTypes = buildFileTypesList(allowedFileTypes);\n if (isChecked) {\n const fileTypesSet = new Set([...FILE_TYPES_MAP[type], ...fileTypes]);\n\n return Array.from(fileTypesSet).join(\", \");\n }\n const newFileTypes = difference(fileTypes, FILE_TYPES_MAP[type]);\n\n return newFileTypes.join(\", \");\n};\n\nexport const isFileTypeEnabled = (type, allowedFileTypes) => {\n const fileTypes = buildFileTypesList(allowedFileTypes);\n\n return isEmpty(difference(FILE_TYPES_MAP[type], fileTypes));\n};\n","import { useFormikContext } from \"formik\";\nimport { Typography } from \"neetoui\";\nimport { Checkbox } from \"neetoui/formik\";\nimport { prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport FileGroup from \"./FileGroup\";\nimport { getAllowedFileTypes, isFileTypeEnabled } from \"./utils\";\n\nimport { FILE_GROUPS } from \"../constants\";\n\nconst FileUpload = () => {\n const { t } = useTranslation();\n\n const { values, setFieldValue } = useFormikContext();\n\n const allowedFileTypes = prop(\"allowedFileTypes\", values);\n\n const handleAllowedFileTypesChange = ({\n target: { name: fileType, checked },\n }) =>\n setFieldValue(\n \"allowedFileTypes\",\n getAllowedFileTypes({\n type: fileType,\n isChecked: checked,\n allowedFileTypes,\n })\n );\n\n return (\n <>\n <div className=\"w-full\">\n <Checkbox\n id=\"multipleFilesAllowed\"\n label={t(\"neetoForm.fileUpload.enableMultipleFilesUpload\")}\n name=\"multipleFilesAllowed\"\n />\n </div>\n <div className=\"flex flex-col space-y-3\">\n <Typography style=\"body1\" weight=\"semibold\">\n {t(\"neetoForm.fileUpload.fileTypes\")}\n </Typography>\n <div className=\"flex space-x-4\">\n {FILE_GROUPS.map(({ name, label }) => (\n <FileGroup\n {...{ handleAllowedFileTypesChange, label, name }}\n checked={isFileTypeEnabled(name, allowedFileTypes)}\n key={name}\n />\n ))}\n </div>\n </div>\n </>\n );\n};\n\nexport default FileUpload;\n","import { useField } from \"formik\";\nimport OptionFields from \"neetomolecules/OptionFields\";\nimport { Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isDefaultLanguage } from \"components/BuildForm/utils\";\nimport useBuildFormStore from \"src/stores/buildForm\";\nimport { isFunction } from \"utils\";\n\nimport { MINIMUM_OPTIONS } from \"../../constants\";\n\nconst Options = ({ questionProps }) => {\n const { t } = useTranslation();\n\n const { selectedLanguage } = useBuildFormStore.pick(\"formState\");\n\n const name = \"optionsAttributes\";\n const [_, __, { setValue: setOptionsAttributes }] = useField(name);\n\n const {\n optionLabelProps = {},\n freezeOptions = false,\n disableAddOption = false,\n disableRemoveOption = false,\n } = questionProps || {};\n\n const isManageOptionDisabled = isFunction(freezeOptions)\n ? freezeOptions(selectedLanguage)\n : freezeOptions;\n\n const isAddOptionDisabled = disableAddOption || isManageOptionDisabled;\n const isRemoveOptionDisabled = disableRemoveOption || isManageOptionDisabled;\n\n return (\n <div className=\"w-full\">\n <Label className=\"mb-2 block\" {...optionLabelProps}>\n {t(\"neetoForm.questions.common.questionFields.field.options\")}\n </Label>\n <OptionFields\n {...{ name }}\n shouldDestroy\n destroyFlagName=\"_destroy\"\n disabled={isManageOptionDisabled}\n draggable={!isManageOptionDisabled}\n isAddOptionEnabled={!isAddOptionDisabled}\n isDeleteOptionEnabled={!isRemoveOptionDisabled}\n isNewItemsPrefilled={isDefaultLanguage(selectedLanguage)}\n minOptions={MINIMUM_OPTIONS}\n shouldResetEmptyOptionOnBlur={false}\n onChange={setOptionsAttributes}\n />\n </div>\n );\n};\n\nexport default Options;\n","import { hyphenate } from \"neetocist\";\n\nimport Input from \"components/Common/InputWithMaxLength\";\n\nimport { RATING_OPTIONS } from \"./constants\";\n\nconst RatingItem = ({ children }) => (\n <div className=\"flex w-16 flex-col items-center gap-3\">{children}</div>\n);\n\nconst Rating = () => (\n <div className=\"flex flex-col\">\n <div className=\"w-full\">\n <div className=\"flex gap-6\">\n {RATING_OPTIONS.map(({ icon: Icon, name, color }) => (\n <RatingItem key={name}>\n <Icon {...{ color }} size={48} />\n <Input\n {...{ name }}\n data-cy={`neeto-form-engine-${hyphenate(name)}`}\n />\n </RatingItem>\n ))}\n </div>\n </div>\n </div>\n);\n\nexport default Rating;\n","import classNames from \"classnames\";\nimport { useField, useFormikContext } from \"formik\";\nimport { Label } from \"neetoui\";\nimport { Select } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n STAR_RATING_ICONS_MAP,\n STAR_RATING_MAX_VALUE_OPTIONS,\n STAR_RATING_MIN_VALUE_OPTIONS,\n} from \"./constants\";\n\nconst StarRating = () => {\n const { t } = useTranslation();\n\n const { setFieldValue } = useFormikContext();\n\n const [{ value: iconType }, _, { setValue: setIconType }] =\n useField(\"iconType\");\n\n return (\n <>\n <div className=\"flex space-x-4\">\n <Select\n className=\"w-1/2\"\n data-cy=\"neeto-form-engine-star-rating-min-value\"\n label={t(\"neetoForm.common.start\")}\n name=\"minValue\"\n options={STAR_RATING_MIN_VALUE_OPTIONS}\n onChange={option => setFieldValue(\"minValue\", option?.value)}\n />\n <Select\n className=\"w-1/2\"\n data-cy=\"neeto-form-engine-star-rating-max-value\"\n label={t(\"neetoForm.common.end\")}\n name=\"maxValue\"\n options={STAR_RATING_MAX_VALUE_OPTIONS}\n onChange={option => setFieldValue(\"maxValue\", option?.value)}\n />\n </div>\n <Label>{t(\"neetoForm.common.shape\")}</Label>\n <div className=\"flex gap-2\">\n {Object.entries(STAR_RATING_ICONS_MAP).map(([name, IconType]) => {\n const isActive = name === iconType;\n\n return (\n <div\n data-cy={`neeto-form-engine-rating-icon-${name}`}\n key={name}\n className={classNames(\n \"flex h-10 w-10 items-center justify-center gap-2\",\n \"neeto-ui-border-gray-800 neeto-ui-rounded-full cursor-pointer border\",\n \"transition-all duration-300 ease-in-out\",\n {\n \"neeto-ui-text-gray-800 neeto-ui-bg-gray-200\": !isActive,\n \"neeto-ui-text-white neeto-ui-bg-gray-800\": isActive,\n }\n )}\n onClick={() => setIconType(name)}\n >\n <IconType />\n </div>\n );\n })}\n </div>\n </>\n );\n};\n\nexport default StarRating;\n","import { t } from \"i18next\";\nimport { findBy, isPresent, slugify } from \"neetocist\";\nimport { assoc, equals, last, pipe, split } from \"ramda\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\n\nimport Add from \"./Add\";\nimport Edit from \"./Edit\";\n\nimport { QUESTION_ACTIONS } from \"../constants\";\nimport Captcha from \"../Questions/Fields/Captcha\";\nimport Email from \"../Questions/Fields/Email\";\nimport FileUpload from \"../Questions/Fields/FileUpload\";\nimport Options from \"../Questions/Fields/Options\";\nimport Rating from \"../Questions/Fields/Rating\";\nimport StarRating from \"../Questions/Fields/StarRating\";\n\nconst {\n CHECKBOX,\n RADIO,\n DROPDOWN,\n STAR_RATING,\n RATING,\n FILE_UPLOAD,\n CAPTCHA,\n EMAIL,\n} = QUESTION_TYPES;\n\nconst transformValueForOption = ({ label, type }) =>\n `${slugify(label)}-${type}`;\n\nexport const renderAdditionalData = ({\n kind,\n questionProps,\n enableDomainWhitelisting,\n enableDomainBlacklisting,\n}) => {\n switch (kind) {\n case CHECKBOX:\n case RADIO:\n case DROPDOWN:\n return <Options {...{ questionProps }} />;\n case RATING:\n return <Rating />;\n case STAR_RATING:\n return <StarRating />;\n case FILE_UPLOAD:\n return <FileUpload />;\n case CAPTCHA:\n return <Captcha />;\n case EMAIL:\n return enableDomainWhitelisting || enableDomainBlacklisting ? (\n <Email {...{ enableDomainBlacklisting, enableDomainWhitelisting }} />\n ) : null;\n default:\n return null;\n }\n};\n\nexport const resolveActionComponent = action =>\n equals(action, QUESTION_ACTIONS.ADD) ? Add : Edit;\n\nexport const getQuestionKind = (questionKinds, pattern) => {\n const questionKind = findBy(pattern, questionKinds);\n\n return questionKind ? assoc(\"kind\", questionKind.type, questionKind) : null;\n};\n\nexport const buildKindOptions = kinds =>\n kinds.map(({ label, type }) => ({\n label,\n value: transformValueForOption({ label, type }),\n }));\n\nexport const extractKindFromOption = pipe(split(\"-\"), last);\n\nexport const buildDefaultValueForKind = questionKind =>\n isPresent(questionKind)\n ? { value: transformValueForOption(questionKind) }\n : undefined;\n\nexport const hideSwitchLabelProps = helpUrl =>\n helpUrl\n ? {\n helpIconProps: {\n popoverProps: {\n description: t(\n \"neetoForm.questions.common.questionFields.field.hideQuestionHelpDescription\"\n ),\n helpLinkProps: {\n href: helpUrl,\n label: t(\"neetoForm.common.viewHelpArticle\"),\n },\n },\n },\n }\n : undefined;\n\nexport const responseVisibleOnlyToHostSwitchLabelProps = helpUrl => ({\n helpIconProps: {\n popoverProps: {\n description: t(\n \"neetoForm.questions.common.questionFields.field.responseVisibleOnlyToHostHelpDescription\"\n ),\n helpLinkProps: {\n href: helpUrl,\n label: t(\"neetoForm.common.viewHelpArticle\"),\n },\n },\n },\n});\n\nexport const readOnlySwitchLabelProps = helpUrl => ({\n helpIconProps: {\n popoverProps: {\n description: t(\n \"neetoForm.questions.common.questionFields.field.readOnlyHelpDescription\"\n ),\n helpLinkProps: helpUrl\n ? {\n href: helpUrl,\n label: t(\"neetoForm.common.viewHelpArticle\"),\n }\n : undefined,\n },\n },\n});\n","import { useRef } from \"react\";\n\nimport { Pane } from \"neetoui\";\n\nimport { resolveActionComponent } from \"./utils\";\n\nconst ManageQuestionPane = ({\n isOpen,\n onClose,\n action,\n question,\n availableQuestionKinds,\n ...props\n}) => {\n const initialFocusRef = useRef(null);\n\n const Component = resolveActionComponent(action);\n\n return (\n <Pane {...{ initialFocusRef, isOpen, onClose }}>\n <Component\n {...{\n availableQuestionKinds,\n initialFocusRef,\n isOpen,\n onClose,\n question,\n ...props,\n }}\n />\n </Pane>\n );\n};\n\nexport default ManageQuestionPane;\n","import { Button, Tooltip } from \"neetoui\";\n\nimport {\n buildAddQuestionButtonProps,\n buildDisabledAddButtonTooltipProps,\n} from \"../utils\";\n\nconst AddQuestion = ({ onAdd, disabledAddButtonTooltipProps, isDisabled }) => {\n const tooltipProps = buildDisabledAddButtonTooltipProps(\n isDisabled,\n disabledAddButtonTooltipProps\n );\n\n return (\n <Tooltip {...tooltipProps}>\n <span>\n <Button {...buildAddQuestionButtonProps(onAdd, isDisabled)} />\n </span>\n </Tooltip>\n );\n};\nexport default AddQuestion;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport { DragDropContext } from \"@hello-pangea/dnd\";\nimport { Form as FormikForm, useFormikContext } from \"formik\";\nimport { filterBy, findBy, isPresent } from \"neetocist\";\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { ActionBlock } from \"neetoui/formik\";\nimport { __, includes, isEmpty, mergeLeft, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\nimport { useCreateQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport DeleteAlert from \"./DeleteAlert\";\nimport DeleteSmsReminderModal from \"./DeleteSmsReminderModal\";\nimport Overview from \"./Overview\";\nimport Questions from \"./Questions\";\nimport {\n handleFieldDragEnd,\n getAvailableQuestionKinds,\n duplicateFieldData,\n formatQuestionAttributesForClone,\n} from \"./utils\";\n\nimport AddFirstQuestion from \"../AddFirstQuestion\";\nimport { QUESTION_ACTIONS, RICH_TEXT_QUESTIONS } from \"../constants\";\nimport ManageQuestionPane from \"../ManageQuestionPane\";\nimport AddQuestion from \"../Questions/AddQuestion\";\n\nconst Form = ({\n questionKinds,\n onValueChange,\n formId,\n isDeletable,\n isRequiredField,\n submitButtonProps,\n cancelButtonProps,\n isKindAlreadyActive,\n getActiveKindDetails,\n isDisabledFieldLabel,\n disabledAddButtonTooltipProps,\n enableFieldCode,\n isFormEnabled,\n savedTitle,\n formTitle,\n formDescription,\n selectedLanguage,\n availableLanguages,\n onLanguageChange,\n additionalActionOptions,\n isReordering,\n additionalQuestionKindPattern,\n showActionBlock,\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n buildRequestArgs,\n enableDomainBlacklisting,\n enableDomainWhitelisting,\n helpDocUrls,\n hostSpecificData,\n questionsHelpProps,\n isUsingDefaultQuestionKinds,\n usesCustomSubmissionComponent,\n ...formDomProps\n}) => {\n const containerRef = useRef();\n\n const { t } = useTranslation();\n const formikContext = useFormikContext();\n const [selectedQuestion, setSelectedQuestion] = useState(null);\n const [selectedAction, setSelectedAction] = useState(\"\");\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isDeleteSmsReminderModalOpen, setIsDeleteSmsReminderModalOpen] =\n useState(false);\n\n const [isManageQuestionPaneOpen, setIsManageQuestionPaneOpen] =\n useState(false);\n\n const {\n values,\n setFieldValue,\n dirty,\n isSubmitting,\n isValid,\n errors,\n submitForm,\n resetForm,\n } = formikContext;\n\n const setFormData = useBuildFormStore(prop(\"setFormData\"));\n\n const { mutate: createQuestion } = useCreateQuestion(\n formId,\n selectedLanguage,\n { onSuccess: showThumbsUpToastr }\n );\n\n useEffect(() => {\n setFormData({\n formId,\n enabled: isFormEnabled,\n title: savedTitle,\n values,\n dirty,\n isSubmitting,\n isValid,\n errors,\n submitForm,\n resetForm,\n selectedLanguage,\n helpDocUrls,\n enableDomainBlacklisting,\n enableDomainWhitelisting,\n isUsingDefaultQuestionKinds,\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n usesCustomSubmissionComponent,\n });\n }, [\n formId,\n isFormEnabled,\n savedTitle,\n setFormData,\n values,\n dirty,\n isSubmitting,\n isValid,\n errors,\n submitForm,\n resetForm,\n selectedLanguage,\n helpDocUrls,\n enableDomainBlacklisting,\n enableDomainWhitelisting,\n isUsingDefaultQuestionKinds,\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n usesCustomSubmissionComponent,\n ]);\n\n const { questions } = values;\n\n const handleSelect = question => {\n setSelectedQuestion(question);\n };\n\n const handleAdd = () => {\n setSelectedAction(QUESTION_ACTIONS.ADD);\n setIsManageQuestionPaneOpen(true);\n };\n\n const handleEdit = () => {\n setSelectedAction(QUESTION_ACTIONS.EDIT);\n setIsManageQuestionPaneOpen(true);\n };\n\n const handleClone = () => {\n const values = duplicateFieldData({\n item: selectedQuestion,\n questionKinds: availableQuestionKinds,\n questions,\n });\n const displayOrder = selectedQuestion.displayOrder + 1;\n const attributes = mergeLeft({ displayOrder }, values);\n\n const payload = {\n language: selectedLanguage,\n neetoFormQuestion: formatQuestionAttributesForClone(attributes),\n ...buildRequestArgs,\n };\n\n createQuestion(payload, {\n onSuccess: ({ questions }) => {\n const newQuestion = findBy({ displayOrder }, questions);\n handleSelect(newQuestion);\n },\n });\n };\n\n const handleDelete = question => {\n if (question.kind === QUESTION_TYPES.SMS_REMINDER) {\n setIsDeleteSmsReminderModalOpen(true);\n } else {\n setIsDeleteAlertOpen(true);\n }\n };\n\n useOnClickOutside(containerRef, () => handleSelect(null), {\n enabled: !(isDeleteAlertOpen || isManageQuestionPaneOpen),\n });\n\n useEffect(() => {\n onValueChange?.(questions);\n }, [questions]);\n\n const availableQuestionKinds = getAvailableQuestionKinds({\n allQuestionKinds: questionKinds,\n activeQuestions: questions,\n isKindAlreadyActive,\n });\n\n const hasActiveQuestions =\n questions &&\n questions.length &&\n questions.some(question => question._destroy !== true);\n\n const handleLanguageChange = code => {\n resetForm();\n onLanguageChange(code);\n };\n\n const richTextQuestions = filterBy(\n { kind: includes(__, RICH_TEXT_QUESTIONS) },\n questions\n );\n\n const resetFormData = () => {\n resetForm();\n setFormData({\n richTextFieldsToReset: pluck(\"fieldCode\", richTextQuestions),\n });\n };\n\n return (\n <>\n <DeleteAlert\n {...{ handleSelect, selectedQuestion }}\n isOpen={isDeleteAlertOpen}\n languagesCount={availableLanguages.length}\n onClose={() => setIsDeleteAlertOpen(false)}\n />\n <DeleteSmsReminderModal\n {...{ hostSpecificData }}\n isOpen={isDeleteSmsReminderModalOpen}\n onClose={() => setIsDeleteSmsReminderModalOpen(false)}\n />\n <FormikForm\n className=\"neeto-form-nano-form-wrapper flex h-full flex-col\"\n {...formDomProps}\n noValidate\n >\n {formTitle && (\n <Overview\n {...{\n additionalActionOptions,\n availableLanguages,\n selectedLanguage,\n }}\n description={formDescription}\n title={formTitle}\n onLanguageChange={handleLanguageChange}\n />\n )}\n <div className=\"neeto-form-nano-form-wrapper__body min-h-0 w-full flex-grow space-y-6 overflow-y-auto pb-6\">\n {hasActiveQuestions ? (\n <div className=\"space-y-6\" ref={containerRef}>\n <DragDropContext\n onDragEnd={({ source, destination }) =>\n handleFieldDragEnd({\n source,\n destination,\n items: questions,\n setValue: setFieldValue,\n })\n }\n >\n <Questions\n {...{\n getActiveKindDetails,\n isDeletable,\n questions,\n selectedQuestion,\n }}\n allQuestionKinds={questionKinds}\n onClone={handleClone}\n onDelete={handleDelete}\n onEdit={handleEdit}\n onSelect={handleSelect}\n />\n </DragDropContext>\n <div className=\"mb-8 flex w-full items-center gap-x-1\">\n <AddQuestion\n {...{ disabledAddButtonTooltipProps }}\n isDisabled={isEmpty(availableQuestionKinds)}\n onAdd={handleAdd}\n />\n {isPresent(questionsHelpProps) && (\n <span>\n <HelpPopover {...questionsHelpProps} />\n </span>\n )}\n </div>\n </div>\n ) : (\n <AddFirstQuestion\n {...{ disabledAddButtonTooltipProps }}\n isDisabled={isEmpty(availableQuestionKinds)}\n onAdd={handleAdd}\n />\n )}\n </div>\n {(showActionBlock || dirty) && (\n <div className=\"neeto-ui-border-gray-300 neeto-form-nano-form-wrapper__footer neeto-ui-bg-white sticky bottom-0 flex flex-shrink-0 justify-end border-t px-6 py-4\">\n <ActionBlock\n {...{ submitButtonProps }}\n isSubmitting={isReordering}\n cancelButtonProps={{\n label: t(\"neetoForm.common.reset\"),\n onClick: resetFormData,\n ...cancelButtonProps,\n }}\n />\n </div>\n )}\n <ManageQuestionPane\n {...{\n additionalQuestionKindPattern,\n availableQuestionKinds,\n buildRequestArgs,\n enableFieldCode,\n getActiveKindDetails,\n handleSelect,\n isDisabledFieldLabel,\n isRequiredField,\n questions,\n }}\n action={selectedAction}\n allQuestionKinds={questionKinds}\n isOpen={isManageQuestionPaneOpen}\n question={selectedQuestion}\n onClose={() => setIsManageQuestionPaneOpen(false)}\n />\n </FormikForm>\n </>\n );\n};\n\nexport default Form;\n","import { useEffect } from \"react\";\n\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport classNames from \"classnames\";\nimport { Formik } from \"formik\";\nimport { noop, removeBy } from \"neetocist\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport { assoc, concat, F, isEmpty, isNil } from \"ramda\";\n\nimport { QUERY_KEYS } from \"common/constants\";\nimport { QUESTION_KIND } from \"components/ExternalForm/constants\";\nimport { useForm, useReorderQuestions } from \"hooks/useFormApi\";\n\nimport {\n DEFAULT_AVAILABLE_LANGUAGES,\n MANDATORY_KINDS,\n QUESTIONS_INITIAL_VALUE,\n} from \"./constants\";\nimport Form from \"./Form\";\nimport { isQuestionKindAlreadyActive } from \"./Form/utils\";\nimport { QUESTION_KINDS } from \"./Questions/constants\";\nimport { getActiveQuestionKindDetails } from \"./Questions/utils\";\nimport { buildReorderPayload, isImmutableField } from \"./utils\";\n\nconst BuildForm = ({\n id,\n onUpdate,\n buildRequestArgs,\n nonRemovableFields = [],\n requiredFields = [],\n formDomProps,\n showActionBlock = false,\n submitButtonProps,\n cancelButtonProps,\n questionKinds,\n isKindAlreadyActive = isQuestionKindAlreadyActive,\n getActiveKindDetails = getActiveQuestionKindDetails,\n isQuestionDeletable,\n isFieldRequired,\n isFieldLabelDisabled,\n showLoader = false,\n kindUniqueOn = [\"type\"],\n allowAdditionalGuests = false,\n disabledAddButtonTooltipProps,\n enableFieldCode = false,\n availableLanguages = DEFAULT_AVAILABLE_LANGUAGES,\n formDescription,\n formTitle = \"\",\n selectedLanguage = \"en\",\n onLanguageChange = noop,\n additionalActionOptions = [],\n additionalQuestionKindPattern,\n enableDomainBlacklisting = true,\n enableDomainWhitelisting = true,\n helpDocUrls,\n className,\n questionsHelpProps = {},\n hostSpecificData = {},\n showReadOnlySwitch = false,\n showResponseVisibleOnlyToHostSwitch = false,\n usesCustomSubmissionComponent = false,\n}) => {\n const queryClient = useQueryClient();\n\n const { mutate: reorderQuestions, isPending: isReordering } =\n useReorderQuestions(id, { onSuccess: showThumbsUpToastr });\n\n const {\n data,\n isLoading,\n isPending: isQuestionsPending,\n } = useForm({ formId: id, language: selectedLanguage });\n\n const {\n enabled: isFormEnabled,\n title: savedTitle,\n questions,\n isQuestionsLoading,\n } = data || QUESTIONS_INITIAL_VALUE;\n\n useEffect(() => {\n if (data) {\n onUpdate?.(data);\n }\n }, [data]);\n\n if (isLoading || (showLoader && isQuestionsLoading && !isQuestionsPending)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center py-6\">\n <PageLoader />\n </div>\n );\n }\n\n const handleSubmit = ({ questions }, { setSubmitting }) => {\n const payload = {\n neetoFormQuestions: {\n questions: buildReorderPayload(questions),\n },\n };\n\n reorderQuestions(payload, {\n onSettled: () => setSubmitting(false),\n });\n };\n\n const onValueChange = questions => {\n const { dataUpdateCount } = queryClient.getQueryState([\n QUERY_KEYS.QUESTIONS,\n id,\n selectedLanguage,\n ]);\n\n if (dataUpdateCount > 0) {\n queryClient.setQueryData(\n [QUERY_KEYS.QUESTIONS, `preview/${id}`, selectedLanguage],\n assoc(\"questions\", questions)\n );\n }\n };\n\n const isDeletable =\n isQuestionDeletable ??\n (question => !nonRemovableFields.includes(question.kind));\n\n const isRequiredField =\n isFieldRequired ??\n (({ kind }) => concat(MANDATORY_KINDS, requiredFields).includes(kind));\n\n const isDisabledFieldLabel = field =>\n isImmutableField(field) || (isFieldLabelDisabled ?? F)(field);\n\n const defaultQuestionKinds = allowAdditionalGuests\n ? QUESTION_KINDS\n : removeBy({ type: QUESTION_KIND.ADDITIONAL_GUESTS.value }, QUESTION_KINDS);\n\n const isUsingDefaultQuestionKinds = isNil(questionKinds);\n\n return (\n <div\n className={classNames(\n \"neeto-form-nano-form-outer-wrapper relative\",\n className\n )}\n >\n <Formik\n enableReinitialize\n initialValues={{ questions }}\n onSubmit={handleSubmit}\n >\n {({ errors, setFieldError }) => (\n <Form\n {...{\n ...formDomProps,\n additionalActionOptions,\n additionalQuestionKindPattern,\n availableLanguages,\n buildRequestArgs,\n cancelButtonProps,\n disabledAddButtonTooltipProps,\n enableDomainBlacklisting,\n enableDomainWhitelisting,\n enableFieldCode,\n formDescription,\n formTitle,\n getActiveKindDetails,\n helpDocUrls,\n hostSpecificData,\n isDeletable,\n isDisabledFieldLabel,\n isFormEnabled,\n isKindAlreadyActive,\n isReordering,\n isRequiredField,\n isUsingDefaultQuestionKinds,\n kindUniqueOn,\n onLanguageChange,\n onValueChange,\n questionsHelpProps,\n savedTitle,\n selectedLanguage,\n showActionBlock,\n showReadOnlySwitch,\n showResponseVisibleOnlyToHostSwitch,\n submitButtonProps,\n usesCustomSubmissionComponent,\n }}\n formId={id}\n questionKinds={\n isUsingDefaultQuestionKinds ? defaultQuestionKinds : questionKinds\n }\n onChange={event => {\n if (isEmpty(errors)) return;\n setFieldError(event.target.name);\n }}\n />\n )}\n </Formik>\n {isQuestionsLoading && !isQuestionsPending && (\n <div className=\"neeto-ui-bg-white absolute inset-0 flex items-center justify-center\">\n <PageLoader />\n </div>\n )}\n </div>\n );\n};\n\nexport default BuildForm;\n"],"names":["DeleteAlert","_ref","selectedQuestion","isOpen","onClose","languagesCount","handleSelect","_useTranslation","useTranslation","t","_useBuildFormStore","useBuildFormStore","store","_store$formState","selectedLanguage","shallow","renderQuestionLabel","questionKind","kind","independentLabel","INDEPENDENT_LABELS_MAP","isPresent","questionLabel","buildDisplayLabel","truncate","_useDeleteQuestion","useDeleteQuestion","formId","onSuccess","showThumbsUpToastr","deleteQuestion","mutate","isDeleting","isPending","selectNextQuestion","questions","selectedQuestionIndex","displayOrder","wasLastQuestion","equals","length","newDisplayOrder","newQuestion","findBy","handleSubmit","id","_ref2","_jsx","Alert","isSubmitting","submitButtonLabel","title","message","Trans","i18nKey","values","count","label","onSubmit","DeleteSmsReminderModal","_ref$hostSpecificData","hostSpecificData","_jsxs","Modal","children","Header","Typography","style","weight","path","Body","ChangeLanguageDropdown","_findBy","currentLanguage","languages","onChange","_useState","useState","_useState2","_slicedToArray","isUnsavedChangesAlertOpen","setIsUnsavedChangesAlertOpen","_useState3","_useState4","setSelectedLanguage","_useFormikContext","useFormikContext","dirty","languageChangeHandler","code","selectedLanguageName","name","_Fragment","Tooltip","content","Dropdown","buttonStyle","Menu","map","MenuItem","Button","isActive","onClick","Overview","description","availableLanguages","onLanguageChange","additionalActionOptions","className","lineHeight","MoreDropdown","dropdownButtonProps","isRounded","dropdownProps","strategy","position","menuItems","Card","_ref$question","question","allQuestionKinds","getActiveKindDetails","onSelect","onEdit","onClone","onDelete","isTooltipEnabled","setIsTooltipEnabled","questionLabelRef","useRef","_getActiveKindDetails","item","isSingular","useEffect","element","current","isNotPresent","isElementOverflowing","concat","slugify","classNames","Drag","disabled","ref","key","isVisible","isFunction","Questions","isDeletable","Droppable","droppableId","droppableProps","placeholder","innerRef","_objectSpread","index","_question$id","_question$id2","_createElement","Draggable","draggableId","nodeId","_ref3","draggableProps","dragHandleProps","moveItem","arr","sourceIndex","destinationIndex","Array","undefined","removedItem","splice","arrayHelpers","isChoiceQuestion","includes","SELECTABLE_KINDS","underscoredWithoutSpecialCharacters","string","toLowerCase","replace","addSuffixForReservedFieldCode","fieldCode","RESERVED_FIELD_CODES","getUniqueNumbersFromExistingFieldCodes","prefix","filter","startsWith","parseInt","generateFieldCodePrefix","isNameQuestion","NON_BASIC_LATIN_CHARACTERS_REGEX","test","isEmpty","sanitizedLabel","slice","renameKey","curry","oldKey","newKey","obj","assoc","prop","dissoc","modifyDefaultValues","isUsingDefaultQuestionKinds","LABEL_FIELDS","DEFAULT","FULL_NAME","isDefaultLanguage","evolve","optionsAttributes","generateUniqueFieldCode","_ref2$label","_ref2$kind","uniqueNumber","Math","max","apply","_toConsumableArray","candidateFieldCode","isQuestionKindAlreadyActive","activeQuestions","some","activeQuestion","type","_destroy","handleFieldDragEnd","_ref4","items","setValue","source","destination","nextItems","orderedItems","createFieldData","_ref5","_ref5$kind","defaults","metadata","_ref5$isRequired","isRequired","modifiedDefaultValues","uuid","duplicateFieldData","_ref6","questionKinds","fieldWithFallback","defaultAttributeNames","keys","defaultAttributes","pick","newQuestionLabel","isRichTextQuestion","omit","getAvailableQuestionKinds","_ref7","_ref7$activeQuestions","isKindAlreadyActive","reject","isSingularKind","isAutoGeneratedQuestion","formatQuestionAttributesForClone","when","AddFirstQuestion","onAdd","isDisabled","disabledAddButtonTooltipProps","tooltipProps","buildDisabledAddButtonTooltipProps","NoData","showTooltipWhenButtonDisabled","primaryButtonProps","buildAddQuestionButtonProps","NAME","QUESTION_TYPES","PHONE","EMAIL","ADDITIONAL_GUESTS","TEXT","TEXTAREA","RICH_TEXT","INTEGER","DECIMAL","STAR_RATING","RATING","DATE","FILE_UPLOAD","CAPTCHA","SMS_REMINDER","QUESTIONS_WITH_ADDITIONAL_DATA","QUESTIONS_WITH_PLACEHOLDERS","DEFAULT_PLACEHOLDERS","CHECKBOX","what","RADIO","DROPDOWN","INITIAL_VALUES","isSplitMode","VALID_FIELD_CODE_REGEX","FormikAdaptiveInput","otherProps","_objectWithoutProperties","_excluded","isValid","submitForm","handleKeyDown","event","shiftKey","preventDefault","isMetaKeyPressed","handleFocus","end","value","setSelectionRange","Textarea","resize","size","onFocus","target","onKeyDown","LabelWithPlaceholder","isLabelDisabled","handleLabelChange","_ref$labelProps","labelProps","_ref$placeholderProps","placeholderProps","shouldShowPlaceholder","required","withEventTargetValue","Name","_useFormikContext$val","usesCustomSubmissionComponent","commonProps","Switch","FIRST_NAME","LAST_NAME","Properties","questionProps","_store$formState2","enableDomainWhitelisting","enableDomainBlacklisting","hasAdditionalData","renderAdditionalData","Block","dataCy","useUpdateEditorContent","editorRef","fieldName","initialValue","initialStateRef","language","setFormData","_useBuildFormStore2","shouldReset","formState","richTextFieldsToReset","setEditorContent","_editorRef$current$ed","editor","commands","setContent","modify","without","_useForm","useForm","data","pathArray","split","part","parsedPart","isNaN","Editor","_useField","useField","validate","validateEditorContent","_useField2","_useField2$","touched","error","_useField2$2","setTouched","NeetoEditor","onBlur","RequiredSwitch","withT","InputWithMaxLength","maxLength","props","substring","shouldShowMaxLength","Input","FieldCode","helpDocUrl","rejectCharsRegex","FIELD_CODES_REJECT_CHARS_REGEX","helpText","components","Link","href","Form","initialFocusRef","isRequiredField","isDisabledFieldLabel","enableFieldCode","availableQuestionKinds","additionalQuestionKindPattern","_ref$isEdit","isEdit","setValues","setErrors","setFieldValue","hideQuestionHelpDoc","readOnlyHelpDoc","responseVisibleOnlyToHostHelpDoc","_store$formState3","_store$formState4","showReadOnlySwitch","showResponseVisibleOnlyToHostSwitch","questionKindUniquenessPattern","mergeLeft","_useStateWithDependen","useStateWithDependency","getQuestionKind","_useStateWithDependen2","_ref2$questionProps","isImmutable","isImmutableField","shouldShowFieldCode","QUESTIONS_WITHOUT_FIELD_CODE","shouldShowHideSwitch","NON_HIDEABLE_FIELDS","shouldShowResponseVisibleOnlyToHostSwitch","shouldShowReadOnlySwitch","NON_READ_ONLY_FIELDS","isSettingsBlockVisible","handleKindChange","option","buildQuestionData","updateFormState","isNil","extractKindFromOption","arguments","uniqueFieldCode","Pane","Select","isClearable","isSearchable","defaultValue","buildDefaultValueForKind","options","buildKindOptions","hideSwitchLabelProps","responseVisibleOnlyToHostSwitchLabelProps","Accordion","Item","readOnlySwitchLabelProps","requiredLabelValidation","schema","field","trim","fieldCodeValidation","matches","richTextFieldMissingErrorMessage","PARAGRAPH","buildLabelValidationSchema","notRequired","RICH_TEXT_QUESTIONS","isEditorEmpty","buildNameLabelValidationSchema","isFullName","stringSchema","yup","formValidationSchema","object","shape","fullNameLabel","firstNameLabel","lastNameLabel","notOneOf","array","of","is","otherwise","highestRatingLabel","nullable","averageRatingLabel","lowestRatingLabel","Add","buildRequestArgs","_useCreateQuestion","useCreateQuestion","createQuestion","isCreating","neetoFormQuestion","formikProps","initialValues","validationSchema","QuestionForm","Footer","ActionBlock","cancelButtonProps","Edit","_useUpdateQuestion","useUpdateQuestion","updateQuestion","isUpdating","setSubmitting","payload","questionId","onSettled","Captcha","Radio","CAPTCHA_TYPES","RECAPTCHA_V2","MATH_CAPTCHA","SwitchBlock","_ref$className","Label","classnames","hyphenate","component","TitleWithHelpPopover","helpLink","HelpPopover","popoverProps","helpLinkProps","DOMAIN_RESTRICTION_TRANSLATIONS","whitelistedDomains","popoverDescription","blacklistedDomains","STYLES","border","color","MultiValueRemove","innerProps","_defineProperty","hyphenize","Close","ValueContainer","getValue","_props$selectProps","selectProps","isFocused","visibleDomainsCount","_children","_toArray","firstChild","rest","shouldCollapse","Tag","ClearIndicator","ERROR_MESSAGE_DELIMITER","DELIMITER_KEYS","DOMAIN_SEPARATION_REGEX","FLEXIBLE_DOMAIN_REGEX","VALID_DOMAIN_REGEX","DOMAIN_VALIDATION_SCHEMA","domain","CUSTOM_STYLES","input","multiValue","styles","valid","CUSTOM_COMPONENTS","DropdownIndicator","removeDuplicateErrorMessages","pipe","isNotNil","uniq","join","formatDomainInputOptions","validateSync","_unused","pruneDuplicates","pluck","getValidDomains","domains","getValidDomainsCount","formatErrorMessage","MultiDomainInput","_ref$label","_ref$value","_ref$onChange","noop","_ref$error","_ref$onBlur","inputValue","setInputValue","setIsFocused","handleFilterDomains","handleDomainChange","inputValues","match","domainMatches","stopPropagation","onCreateOption","handleBlur","isFilterDomainsLinkVisible","CreatableSelect","isMulti","classNamePrefix","menuIsOpen","control","maxHeight","overflowY","onInputChange","validateDomains","ensure","compact","min","entity","Promise","_asyncToGenerator","_regeneratorRuntime","mark","_callee","resolve","wrap","_callee$","_context","prev","next","t0","stop","_x","EmailDomains","_useField2$0$value","meta","formattedDomains","nullSafe","RestrictDomainsBlock","switchName","domainName","isDomainRestrictionEnabled","_DOMAIN_RESTRICTION_T","Email","_useFormikContext$val2","isDomainWhitelistingEnabled","_useFormikContext$val3","isDomainBlacklistingEnabled","FileGroup","checked","handleAllowedFileTypesChange","Checkbox","buildFileTypesList","fileTypes","getAllowedFileTypes","isChecked","allowedFileTypes","fileTypesSet","Set","FILE_TYPES_MAP","from","newFileTypes","difference","isFileTypeEnabled","FileUpload","_ref$target","fileType","FILE_GROUPS","Options","_","__","setOptionsAttributes","_ref2$optionLabelProp","optionLabelProps","_ref2$freezeOptions","freezeOptions","_ref2$disableAddOptio","disableAddOption","_ref2$disableRemoveOp","disableRemoveOption","isManageOptionDisabled","isAddOptionDisabled","isRemoveOptionDisabled","OptionFields","shouldDestroy","destroyFlagName","draggable","isAddOptionEnabled","isDeleteOptionEnabled","isNewItemsPrefilled","minOptions","MINIMUM_OPTIONS","shouldResetEmptyOptionOnBlur","RatingItem","Rating","RATING_OPTIONS","Icon","icon","StarRating","iconType","setIconType","STAR_RATING_MIN_VALUE_OPTIONS","STAR_RATING_MAX_VALUE_OPTIONS","Object","entries","STAR_RATING_ICONS_MAP","IconType","transformValueForOption","resolveActionComponent","action","QUESTION_ACTIONS","ADD","pattern","kinds","last","helpUrl","helpIconProps","ManageQuestionPane","Component","AddQuestion","onValueChange","submitButtonProps","isFormEnabled","savedTitle","formTitle","formDescription","isReordering","showActionBlock","helpDocUrls","questionsHelpProps","formDomProps","containerRef","formikContext","setSelectedQuestion","selectedAction","setSelectedAction","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isDeleteSmsReminderModalOpen","setIsDeleteSmsReminderModalOpen","_useState9","_useState10","isManageQuestionPaneOpen","setIsManageQuestionPaneOpen","errors","resetForm","enabled","handleAdd","handleEdit","EDIT","handleClone","attributes","handleDelete","useOnClickOutside","hasActiveQuestions","handleLanguageChange","richTextQuestions","filterBy","resetFormData","FormikForm","noValidate","DragDropContext","onDragEnd","BuildForm","onUpdate","_ref$nonRemovableFiel","nonRemovableFields","_ref$requiredFields","requiredFields","_ref$showActionBlock","_ref$isKindAlreadyAct","_ref$getActiveKindDet","getActiveQuestionKindDetails","isQuestionDeletable","isFieldRequired","isFieldLabelDisabled","_ref$showLoader","showLoader","_ref$kindUniqueOn","kindUniqueOn","_ref$allowAdditionalG","allowAdditionalGuests","_ref$enableFieldCode","_ref$availableLanguag","DEFAULT_AVAILABLE_LANGUAGES","_ref$formTitle","_ref$selectedLanguage","_ref$onLanguageChange","_ref$additionalAction","_ref$enableDomainBlac","_ref$enableDomainWhit","_ref$questionsHelpPro","_ref$showReadOnlySwit","_ref$showResponseVisi","_ref$usesCustomSubmis","queryClient","useQueryClient","_useReorderQuestions","useReorderQuestions","reorderQuestions","isLoading","isQuestionsPending","QUESTIONS_INITIAL_VALUE","isQuestionsLoading","PageLoader","neetoFormQuestions","buildReorderPayload","_queryClient$getQuery","getQueryState","QUERY_KEYS","QUESTIONS","dataUpdateCount","setQueryData","MANDATORY_KINDS","F","defaultQuestionKinds","QUESTION_KINDS","removeBy","QUESTION_KIND","Formik","enableReinitialize","setFieldError"],"mappings":"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"}