@bigbinary/neeto-form-frontend 3.3.2 → 3.4.0

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 (62) hide show
  1. package/app/javascript/src/translations/en.json +3 -3
  2. package/dist/BuildForm.js +2358 -0
  3. package/dist/BuildForm.js.map +1 -0
  4. package/dist/ExternalForm.js +657 -0
  5. package/dist/ExternalForm.js.map +1 -0
  6. package/dist/NeetoFormProvider.js +11 -0
  7. package/dist/NeetoFormProvider.js.map +1 -0
  8. package/dist/Submission.js +2700 -0
  9. package/dist/Submission.js.map +1 -0
  10. package/dist/UrlBuilder.js +297 -0
  11. package/dist/UrlBuilder.js.map +1 -0
  12. package/dist/buildForm-4a5a5251.js +35 -0
  13. package/dist/buildForm-4a5a5251.js.map +1 -0
  14. package/dist/buildForm-77b32f08.js +42 -0
  15. package/dist/buildForm-77b32f08.js.map +1 -0
  16. package/dist/cjs/BuildForm.js +2416 -0
  17. package/dist/cjs/BuildForm.js.map +1 -0
  18. package/dist/cjs/ExternalForm.js +697 -0
  19. package/dist/cjs/ExternalForm.js.map +1 -0
  20. package/dist/cjs/NeetoFormProvider.js +13 -0
  21. package/dist/cjs/NeetoFormProvider.js.map +1 -0
  22. package/dist/cjs/Submission.js +2711 -0
  23. package/dist/cjs/Submission.js.map +1 -0
  24. package/dist/cjs/UrlBuilder.js +308 -0
  25. package/dist/cjs/UrlBuilder.js.map +1 -0
  26. package/dist/cjs/hooks.js +34 -0
  27. package/dist/cjs/hooks.js.map +1 -0
  28. package/dist/cjs/index.js +115 -0
  29. package/dist/cjs/index.js.map +1 -0
  30. package/dist/constants-9310a7c2.js +342 -0
  31. package/dist/constants-9310a7c2.js.map +1 -0
  32. package/dist/constants-f0f38e6f.js +378 -0
  33. package/dist/constants-f0f38e6f.js.map +1 -0
  34. package/dist/hooks.js +20 -0
  35. package/dist/hooks.js.map +1 -0
  36. package/dist/index-2664c3e7.js +39 -0
  37. package/dist/index-2664c3e7.js.map +1 -0
  38. package/dist/index-b6bb805c.js +46 -0
  39. package/dist/index-b6bb805c.js.map +1 -0
  40. package/dist/index.js +94 -9325
  41. package/dist/index.js.map +1 -1
  42. package/dist/main.css +12 -1
  43. package/dist/main.css.map +1 -1
  44. package/dist/no-questions-832318c3.js +487 -0
  45. package/dist/no-questions-832318c3.js.map +1 -0
  46. package/dist/no-questions-995fd77e.js +538 -0
  47. package/dist/no-questions-995fd77e.js.map +1 -0
  48. package/dist/useFormApi-ca36173e.js +492 -0
  49. package/dist/useFormApi-ca36173e.js.map +1 -0
  50. package/dist/useFormApi-d733cb8d.js +467 -0
  51. package/dist/useFormApi-d733cb8d.js.map +1 -0
  52. package/dist/useFormSubmission-866195bb.js +24 -0
  53. package/dist/useFormSubmission-866195bb.js.map +1 -0
  54. package/dist/useFormSubmission-f8866b84.js +22 -0
  55. package/dist/useFormSubmission-f8866b84.js.map +1 -0
  56. package/dist/utils-7000103c.js +2157 -0
  57. package/dist/utils-7000103c.js.map +1 -0
  58. package/dist/utils-a487b8ff.js +2221 -0
  59. package/dist/utils-a487b8ff.js.map +1 -0
  60. package/package.json +19 -7
  61. package/dist/index.cjs.js +0 -9424
  62. package/dist/index.cjs.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BuildForm.js","sources":["../../app/javascript/src/components/BuildForm/Form/DeleteAlert.jsx","../../app/javascript/src/components/BuildForm/Form/ChangeLanguageDropdown.jsx","../../app/javascript/src/components/BuildForm/Form/Overview.jsx","../../app/javascript/src/components/BuildForm/utils.js","../../app/javascript/src/components/BuildForm/Questions/Card.jsx","../../app/javascript/src/components/BuildForm/Form/Questions.jsx","../../node_modules/uuid/dist/esm-browser/rng.js","../../node_modules/uuid/dist/esm-browser/stringify.js","../../node_modules/uuid/dist/esm-browser/native.js","../../node_modules/uuid/dist/esm-browser/v4.js","../../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/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/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/RestrictedDomains.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/common/helpers/form.js","../../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\";\nimport { fieldWithFallback } from \"utils\";\n\nimport { INDEPENDENT_LABELS_MAP } from \"../Questions/constants\";\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 = fieldWithFallback(selectedQuestion, \"label\");\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 { 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 px-6 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 { t } from \"i18next\";\nimport { assoc, includes, reduce, __ } from \"ramda\";\n\nimport { RICH_TEXT_QUESTIONS } from \"./constants\";\n\nexport const validateEditorContent = editorRef => () =>\n editorRef.current?.editor?.isEmpty\n ? t(\"neetoForm.common.thisFieldIsRequired\")\n : \"\";\n\nexport const buildReorderPayload = questions =>\n reduce(\n (acc, { id, displayOrder }) => assoc(id, displayOrder, acc),\n {},\n questions\n );\n\nexport const isRichTextQuestion = includes(__, RICH_TEXT_QUESTIONS);\n","import classNames from \"classnames\";\nimport { slugify } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { fieldWithFallback, isFunction } from \"utils\";\n\nimport { htmlToPlainText } from \"./utils\";\n\nimport { Drag } from \"../Icons\";\nimport { isRichTextQuestion } from \"../utils\";\n\nconst Card = ({\n question = {},\n allQuestionKinds,\n getActiveKindDetails,\n isActive,\n onSelect,\n onEdit,\n onClone,\n onDelete,\n}) => {\n const { t } = useTranslation();\n\n const { kind, isSingular } = getActiveKindDetails({\n allQuestionKinds,\n item: question,\n });\n\n const label = fieldWithFallback(question, \"label\");\n\n const questionLabel = isRichTextQuestion(kind)\n ? htmlToPlainText(label)\n : label;\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 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 <Typography\n className=\"line-clamp-2 min-w-0 flex-grow truncate break-words\"\n lineHeight=\"snug\"\n style=\"body2\"\n weight=\"medium\"\n >\n {questionLabel}\n </Typography>\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,\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","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","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 { filterBy, findBy } from \"neetocist\";\nimport {\n isEmpty,\n reject,\n omit,\n pluck,\n keys,\n pick,\n when,\n assoc,\n includes,\n} from \"ramda\";\nimport { v4 as uuid } from \"uuid\";\n\nimport arrayHelpers from \"common/helpers/array\";\nimport { fieldWithFallback } from \"utils\";\n\nimport { RESERVED_FIELD_CODES, SELECTABLE_KINDS } from \"../constants\";\nimport { isRichTextQuestion } from \"../utils\";\n\nconst isChoiceQuestion = question => includes(question?.kind, SELECTABLE_KINDS);\n\nconst generateUniqueFieldCode = (type, questions) => {\n const fieldCodes = pluck(\"fieldCode\", filterBy({ kind: type }, questions));\n\n let uniqueNumber = fieldCodes.length;\n\n let candidateFieldCode = \"\";\n\n const prefix = RESERVED_FIELD_CODES.includes(type) ? `${type}_field` : type;\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 || \"\"}`;\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}) => ({\n ...defaults,\n metadata,\n isRequired,\n kind: type,\n nodeId: uuid(),\n fieldCode: generateUniqueFieldCode(type, questions),\n});\n\nexport const duplicateFieldData = ({ item, questionKinds, questions }) => {\n const questionKind = findBy({ type: item.kind }, questionKinds);\n const { isRequired, kind, optionsAttributes } = item;\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(item.kind, questions),\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 isSingularKind && isKindAlreadyActive({ activeQuestions, kind });\n }, allQuestionKinds);\n};\n\nexport const formatQuestionAttributesForClone = when(\n isChoiceQuestion,\n assoc(\"isCloning\", true)\n);\n","import NoQuestions from \"images/noData/no-questions\";\n\nconst AddFirstQuestion = ({ children }) => (\n <div className=\"flex h-full flex-col items-center justify-center py-8\">\n <div className=\"mb-6\">\n <NoQuestions />\n </div>\n {children}\n </div>\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} = 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];\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 = { kind: \"\", label: \"\", fieldCode: \"\" };\n","import { useFormikContext } from \"formik\";\nimport { isMetaKeyPressed } from \"neetocommons/react-utils\";\nimport { Textarea } from \"neetoui/formik\";\n\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/components/adaptive_input.scss\";\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 { 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 { withT } from \"neetocommons/react-utils\";\nimport { Button, Accordion } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport Input from \"components/Common/InputWithMaxLength\";\n\nconst FieldCode = withT(({ helpDocUrl, t }) => (\n <Accordion\n className=\"neeto-form-nano-advanced-properties-accordion\"\n data-cy=\"advanced-properties-card\"\n >\n <Accordion.Item title={t(\"neetoForm.common.advancedProperties\")}>\n <Input\n required\n label={t(\"neetoForm.questions.common.questionFields.field.fieldCode\")}\n name=\"fieldCode\"\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 </Accordion.Item>\n </Accordion>\n));\n\nexport default FieldCode;\n","import { useFormikContext } from \"formik\";\nimport { useStateWithDependency } from \"neetocommons/react-utils\";\nimport { Pane } from \"neetoui\";\nimport { Select, Switch } from \"neetoui/formik\";\nimport { includes, isNil, mergeLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport FormikAdaptiveInput from \"components/Common/FormikAdaptiveInput\";\n\nimport {\n DEFAULT_PLACEHOLDERS,\n INITIAL_VALUES,\n QUESTIONS_WITH_ADDITIONAL_DATA,\n QUESTIONS_WITH_PLACEHOLDERS,\n} from \"./constants\";\nimport {\n buildDefaultValueForKind,\n buildKindOptions,\n extractKindFromOption,\n getQuestionKind,\n renderAdditionalData,\n} from \"./utils\";\n\nimport Block from \"../commons/Block\";\nimport Editor from \"../commons/Editor\";\nimport RequiredSwitch from \"../commons/RequiredSwitch\";\nimport { QUESTIONS_WITHOUT_FIELD_CODE } from \"../constants\";\nimport { createFieldData } from \"../Form/utils\";\nimport FieldCode from \"../Questions/FieldCode\";\nimport { 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 fieldCodeHelpDocUrl,\n enableDomainRestriction,\n domainRestrictionHelpDocUrl,\n isEdit = false,\n}) => {\n const { t } = useTranslation();\n\n const { values, setValues, setErrors, setTouched } = useFormikContext();\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 shouldShowPlaceholder = includes(kind, QUESTIONS_WITH_PLACEHOLDERS);\n const hasAdditionalData = includes(kind, QUESTIONS_WITH_ADDITIONAL_DATA);\n const shouldShowFieldCode =\n enableFieldCode && !includes(kind, QUESTIONS_WITHOUT_FIELD_CODE);\n\n const shouldShowHideSwitch = !includes(kind, QUESTIONS_WITHOUT_FIELD_CODE);\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 });\n };\n\n const updateFormState = data => {\n setValues(data);\n setErrors({});\n setTouched({});\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 <div className=\"space-y-4\">\n <FormikAdaptiveInput\n required\n disabled={isLabelDisabled}\n name=\"label\"\n placeholder={DEFAULT_PLACEHOLDERS[kind]}\n label={t(\n \"neetoForm.questions.common.questionFields.field.question\"\n )}\n />\n {shouldShowPlaceholder && (\n <FormikAdaptiveInput\n name=\"placeholder\"\n label={t(\n \"neetoForm.questions.common.questionFields.field.placeholder\"\n )}\n />\n )}\n {hasAdditionalData &&\n renderAdditionalData({\n kind,\n questionProps,\n domainRestrictionHelpDocUrl,\n enableDomainRestriction,\n })}\n </div>\n {!isRequired && (\n <Block\n dataCy=\"settings-card\"\n title={t(\"neetoForm.common.settings\")}\n >\n <RequiredSwitch />\n {shouldShowHideSwitch && (\n <Switch\n label={t(\"neetoForm.common.hideQuestion\")}\n name=\"isHidden\"\n />\n )}\n </Block>\n )}\n {shouldShowFieldCode && (\n <FieldCode helpDocUrl={fieldCodeHelpDocUrl} />\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\";\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 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\nexport const formValidationSchema = 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\n .string()\n .when(\"kind\", (kind, schema) =>\n 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 fieldCode: yup\n .string()\n .trim()\n .notOneOf(RESERVED_FIELD_CODES, t(\"neetoForm.error.invalidFieldCode\"))\n .when(\"kind\", (kind, schema) =>\n includes(kind, QUESTIONS_WITHOUT_FIELD_CODE)\n ? schema.notRequired()\n : requiredLabelValidation(\n schema,\n t(\"neetoForm.questions.common.questionFields.field.fieldCode\")\n )\n ),\n optionsAttributes: yup.array().when(\"_destroy\", {\n is: true,\n otherwise: schema =>\n schema.when(\"kind\", (kind, schema) =>\n includes(kind, SELECTABLE_KINDS)\n ? schema.of(\n yup.object().shape({\n label: requiredLabelValidation(\n yup.string(),\n t(\"neetoForm.questions.common.questionFields.field.option\")\n ),\n })\n )\n : schema.notRequired()\n ),\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 fieldCodeHelpDocUrl,\n domainRestrictionHelpDocUrl,\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 onSubmit: handleSubmit,\n }}\n >\n <>\n <QuestionForm\n {...{\n ...props,\n domainRestrictionHelpDocUrl,\n fieldCodeHelpDocUrl,\n question,\n questions,\n }}\n />\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 = ({\n question,\n isOpen,\n onClose,\n fieldCodeHelpDocUrl,\n domainRestrictionHelpDocUrl,\n ...props\n}) => {\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 onSubmit: handleSubmit,\n }}\n >\n <>\n <QuestionForm\n {...{\n domainRestrictionHelpDocUrl,\n fieldCodeHelpDocUrl,\n question,\n ...props,\n }}\n isEdit\n />\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)}-toggle-label`}\n >\n <Switch\n {...{ ...otherProps, name }}\n data-cy={`neeto-form-engine-${hyphenate(title)}-switch`}\n />\n <Typography component=\"span\" style=\"body1\">\n {title}\n </Typography>\n </Label>\n);\n\nexport default SwitchBlock;\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 RestrictedDomains = () => {\n const [{ value: domains = [] }, meta, { setValue, setTouched }] = useField({\n name: \"restrictedDomains\",\n validate: validateDomains,\n });\n const { t } = useTranslation();\n\n const formattedDomains = map(formatDomainInputOptions, domains);\n\n return (\n <div className=\"mb-4\">\n <MultiDomainInput\n error={meta.touched ? meta.error : \"\"}\n label={t(\"neetoForm.domainRestriction.description\")}\n name=\"restrictedDomains\"\n value={formattedDomains}\n onBlur={() => setTouched(true)}\n onChange={value => setValue(nullSafe(pluck)(\"value\", value))}\n />\n </div>\n );\n};\n\nexport default RestrictedDomains;\n","import { useFormikContext } from \"formik\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SwitchBlock from \"components/BuildForm/commons/SwitchBlock\";\n\nimport RestrictedDomains from \"./RestrictedDomains\";\n\nconst Email = ({ domainRestrictionHelpDocUrl = \"\" }) => {\n const {\n values: { isDomainRestrictionEnabled = false },\n } = useFormikContext();\n\n const { t } = useTranslation();\n\n return (\n <div className=\"flex flex-col space-y-4\">\n <SwitchBlock\n className=\"mt-4\"\n name=\"isDomainRestrictionEnabled\"\n title={\n <div className=\"flex gap-2\">\n {t(\"neetoForm.domainRestriction.label\")}\n <HelpPopover\n description={t(\"neetoForm.domainRestriction.popoverDescription\")}\n popoverProps={{ position: \"top\" }}\n {...(domainRestrictionHelpDocUrl && {\n helpLinkProps: { href: domainRestrictionHelpDocUrl },\n })}\n />\n </div>\n }\n />\n {isDomainRestrictionEnabled && <RestrictedDomains />}\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","const defaultConfig = {\n strict: true,\n matchKey: \"value\",\n};\n\nconst findOptionByValue = (value, options = [], config = {}) => {\n const configObject = { ...defaultConfig, ...config };\n const { matchKey, strict } = configObject;\n\n return options.find(option =>\n // eslint-disable-next-line eqeqeq\n strict ? option[matchKey] === value : option[matchKey] == value\n );\n};\n\nconst filterOptionsByValues = (values = [], options = [], config = {}) => {\n const configObject = { ...defaultConfig, ...config };\n const { matchKey, strict } = configObject;\n\n return options.filter(option =>\n values.some(value =>\n // eslint-disable-next-line eqeqeq\n strict ? option[matchKey] === value : option[matchKey] == value\n )\n );\n};\n\nconst destroyFromList = (items, index) => {\n const itemToRemove = items[index];\n\n if (itemToRemove) {\n const nextItems = [...items];\n nextItems.splice(index, 1);\n if (itemToRemove.id) {\n nextItems.push({ ...itemToRemove, _destroy: true });\n }\n\n return nextItems;\n }\n\n return items;\n};\n\nconst insertToList = (items, item, index) => {\n const nextItems = [...(items ?? [])];\n nextItems.splice(index, 0, item);\n\n return nextItems;\n};\n\nconst pushToList = (items, item) => {\n const nextItems = [...(items ?? [])];\n nextItems.push(item);\n\n return nextItems;\n};\n\nconst formHelpers = {\n findOptionByValue,\n filterOptionsByValues,\n destroyFromList,\n insertToList,\n pushToList,\n};\n\nexport default formHelpers;\n","import classNames from \"classnames\";\nimport { FieldArray, useField } from \"formik\";\nimport { Delete, Plus } from \"neetoicons\";\nimport { Button, Label } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport formHelpers from \"common/helpers/form\";\nimport Input from \"components/Common/InputWithMaxLength\";\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 [{ value: optionsAttributes }, _, { setValue: setOptionsAttributes }] =\n useField(\"optionsAttributes\");\n\n const {\n optionLabelProps = {},\n freezeOptions = false,\n disableAddOption = false,\n disableRemoveOption = false,\n } = questionProps || {};\n\n const handleRemoveOption = index => {\n const nextOptions = formHelpers.destroyFromList(optionsAttributes, index);\n setOptionsAttributes(nextOptions);\n };\n\n const isManageOptionDisabled = isFunction(freezeOptions)\n ? freezeOptions(selectedLanguage)\n : freezeOptions;\n\n const isAddOptionDisabled = disableAddOption || isManageOptionDisabled;\n\n const isRemoveOptionDisabled = disableRemoveOption || isManageOptionDisabled;\n\n return (\n <div className=\"w-full\">\n <FieldArray name=\"optionsAttributes\">\n {({ handlePush }) => (\n <>\n <Label className=\"mb-1 block\" {...optionLabelProps}>\n {t(\"neetoForm.questions.common.questionFields.field.options\")}\n </Label>\n <div className=\"flex w-2/3 flex-col space-y-2\">\n {optionsAttributes?.map(\n (option, index) =>\n !option._destroy && (\n <div\n className=\"flex items-start gap-1\"\n data-cy={`neeto-form-engine-option-${index}`}\n key={`question-option-${option.id ?? index}`}\n >\n <Input\n required\n disabled={isManageOptionDisabled}\n name={`optionsAttributes.${index}.label`}\n placeholder={t(\n \"neetoForm.questions.common.questionFields.field.numberedOption\",\n { number: index + 1 }\n )}\n />\n {!isRemoveOptionDisabled && (\n <Button\n data-cy=\"neeto-form-engine-delete-option-button\"\n icon={Delete}\n size=\"small\"\n style=\"text\"\n className={classNames({\n invisible: index < MINIMUM_OPTIONS,\n })}\n tooltipProps={{\n position: \"top\",\n content: t(\"neetoForm.common.delete\"),\n }}\n onClick={() => handleRemoveOption(index)}\n />\n )}\n </div>\n )\n )}\n </div>\n {!isAddOptionDisabled && (\n <div className=\"mt-3 w-full\">\n <Button\n data-cy=\"neeto-form-engine-add-option-button\"\n icon={Plus}\n iconPosition=\"left\"\n size=\"small\"\n style=\"text\"\n label={t(\n \"neetoForm.questions.common.questionFields.field.addOption\"\n )}\n onClick={handlePush({ label: \"\" })}\n />\n </div>\n )}\n </>\n )}\n </FieldArray>\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 { 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 domainRestrictionHelpDocUrl,\n enableDomainRestriction,\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 enableDomainRestriction ? (\n <Email {...{ domainRestrictionHelpDocUrl }} />\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","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 fieldCodeHelpDocUrl,\n domainRestrictionHelpDocUrl,\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 domainRestrictionHelpDocUrl,\n fieldCodeHelpDocUrl,\n initialFocusRef,\n isOpen,\n onClose,\n question,\n ...props,\n }}\n />\n </Pane>\n );\n};\n\nexport default ManageQuestionPane;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Plus } from \"neetoicons\";\nimport { Button, Tooltip } from \"neetoui\";\n\nconst AddQuestion = withT(\n ({ t, onAdd, disabledAddButtonTooltipProps, isDisabled }) => (\n <Tooltip\n disabled={!isDisabled}\n position=\"top\"\n content={\n disabledAddButtonTooltipProps?.content ||\n t(\"neetoForm.questions.common.primaryPanel.noQuestionLeft\")\n }\n >\n <span>\n <Button\n data-cy=\"neeto-form-engine-add-question\"\n disabled={isDisabled}\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoForm.questions.common.primaryPanel.addQuestion\")}\n style=\"link\"\n onClick={onAdd}\n />\n </span>\n </Tooltip>\n )\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 } from \"neetocist\";\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { showThumbsUpToastr } from \"neetocommons/utils\";\nimport { ActionBlock } from \"neetoui/formik\";\nimport { __, includes, isEmpty, mergeLeft, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useCreateQuestion } from \"hooks/useFormApi\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport DeleteAlert from \"./DeleteAlert\";\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 buildRequestArgs,\n fieldCodeHelpDocUrl,\n enableDomainRestriction,\n domainRestrictionHelpDocUrl,\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 [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 });\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 ]);\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 = () => {\n setIsDeleteAlertOpen(true);\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 <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 px-6 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 w-full\">\n <AddQuestion\n {...{ disabledAddButtonTooltipProps }}\n isDisabled={isEmpty(availableQuestionKinds)}\n onAdd={handleAdd}\n />\n </div>\n </div>\n ) : (\n <AddFirstQuestion>\n <AddQuestion\n {...{ disabledAddButtonTooltipProps }}\n isDisabled={isEmpty(availableQuestionKinds)}\n onAdd={handleAdd}\n />\n </AddFirstQuestion>\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 domainRestrictionHelpDocUrl,\n enableDomainRestriction,\n enableFieldCode,\n fieldCodeHelpDocUrl,\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, 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// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/pages/form-builder.scss\";\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 } 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 fieldCodeHelpDocUrl,\n enableDomainRestriction = true,\n domainRestrictionHelpDocUrl,\n className,\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 = isFieldLabelDisabled ?? (() => false);\n\n const defaultQuestionKinds = allowAdditionalGuests\n ? QUESTION_KINDS\n : removeBy({ type: QUESTION_KIND.ADDITIONAL_GUESTS.value }, QUESTION_KINDS);\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 domainRestrictionHelpDocUrl,\n enableDomainRestriction,\n enableFieldCode,\n fieldCodeHelpDocUrl,\n formDescription,\n formTitle,\n getActiveKindDetails,\n isDeletable,\n isDisabledFieldLabel,\n isFormEnabled,\n isKindAlreadyActive,\n isReordering,\n isRequiredField,\n kindUniqueOn,\n onLanguageChange,\n onValueChange,\n savedTitle,\n selectedLanguage,\n showActionBlock,\n submitButtonProps,\n }}\n formId={id}\n questionKinds={\n isNil(questionKinds) ? 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","fieldWithFallback","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","ChangeLanguageDropdown","_findBy","currentLanguage","languages","onChange","_useState","useState","_useState2","_slicedToArray","isUnsavedChangesAlertOpen","setIsUnsavedChangesAlertOpen","_useState3","_useState4","setSelectedLanguage","_useFormikContext","useFormikContext","dirty","languageChangeHandler","code","selectedLanguageName","name","_jsxs","_Fragment","children","Tooltip","content","Dropdown","buttonStyle","Menu","map","MenuItem","Button","isActive","onClick","Overview","description","availableLanguages","onLanguageChange","additionalActionOptions","className","Typography","lineHeight","style","weight","MoreDropdown","dropdownButtonProps","isRounded","dropdownProps","strategy","position","menuItems","validateEditorContent","editorRef","_editorRef$current","current","editor","isEmpty","buildReorderPayload","reduce","acc","assoc","isRichTextQuestion","includes","__","RICH_TEXT_QUESTIONS","Card","_ref$question","question","allQuestionKinds","getActiveKindDetails","onSelect","onEdit","onClone","onDelete","_getActiveKindDetails","item","isSingular","htmlToPlainText","concat","slugify","classNames","Drag","key","isVisible","isFunction","Questions","isDeletable","Droppable","droppableId","droppableProps","placeholder","innerRef","_objectSpread","ref","index","_question$id","_question$id2","_createElement","Draggable","draggableId","nodeId","_ref3","draggableProps","dragHandleProps","moveItem","arr","sourceIndex","destinationIndex","Array","undefined","removedItem","splice","arrayHelpers","isChoiceQuestion","SELECTABLE_KINDS","generateUniqueFieldCode","type","fieldCodes","pluck","filterBy","uniqueNumber","candidateFieldCode","prefix","RESERVED_FIELD_CODES","fieldCode","isQuestionKindAlreadyActive","activeQuestions","some","activeQuestion","_destroy","handleFieldDragEnd","items","setValue","source","destination","nextItems","_toConsumableArray","orderedItems","createFieldData","_ref3$kind","defaults","metadata","_ref3$isRequired","isRequired","uuid","duplicateFieldData","_ref4","questionKinds","optionsAttributes","defaultAttributeNames","keys","defaultAttributes","pick","newQuestionLabel","omit","getAvailableQuestionKinds","_ref5","_ref5$activeQuestions","isKindAlreadyActive","reject","isSingularKind","formatQuestionAttributesForClone","when","AddFirstQuestion","NoQuestions","NAME","QUESTION_TYPES","PHONE","EMAIL","ADDITIONAL_GUESTS","TEXT","TEXTAREA","RICH_TEXT","INTEGER","DECIMAL","STAR_RATING","RATING","DATE","FILE_UPLOAD","CAPTCHA","QUESTIONS_WITH_ADDITIONAL_DATA","QUESTIONS_WITH_PLACEHOLDERS","DEFAULT_PLACEHOLDERS","CHECKBOX","what","RADIO","DROPDOWN","INITIAL_VALUES","FormikAdaptiveInput","otherProps","_objectWithoutProperties","_excluded","isValid","submitForm","handleKeyDown","event","shiftKey","preventDefault","isMetaKeyPressed","handleFocus","element","end","value","setSelectionRange","Textarea","resize","size","onFocus","target","onKeyDown","Block","dataCy","useUpdateEditorContent","fieldName","initialValue","initialStateRef","useRef","language","setFormData","_useBuildFormStore2","_store$formState2","shouldReset","formState","richTextFieldsToReset","setEditorContent","_editorRef$current$ed","commands","setContent","modify","without","_useFetchQuestions","useFetchQuestions","data","useEffect","pathArray","split","part","parsedPart","parseInt","isNaN","path","Editor","_useField","useField","validate","_useField2","_useField2$","touched","error","_useField2$2","setTouched","NeetoEditor","required","onBlur","RequiredSwitch","withT","Switch","InputWithMaxLength","maxLength","props","substring","shouldShowMaxLength","Input","FieldCode","helpDocUrl","Accordion","Item","helpText","components","Link","href","Form","initialFocusRef","isRequiredField","isDisabledFieldLabel","enableFieldCode","availableQuestionKinds","additionalQuestionKindPattern","fieldCodeHelpDocUrl","enableDomainRestriction","domainRestrictionHelpDocUrl","_ref$isEdit","isEdit","setValues","setErrors","questionKindUniquenessPattern","mergeLeft","_useStateWithDependen","useStateWithDependency","getQuestionKind","_useStateWithDependen2","_ref2$questionProps","questionProps","isLabelDisabled","shouldShowPlaceholder","hasAdditionalData","shouldShowFieldCode","QUESTIONS_WITHOUT_FIELD_CODE","shouldShowHideSwitch","handleKindChange","option","buildQuestionData","updateFormState","isNil","extractKindFromOption","Pane","Body","Select","isClearable","isSearchable","defaultValue","buildDefaultValueForKind","isDisabled","options","buildKindOptions","disabled","renderAdditionalData","requiredLabelValidation","schema","field","trim","richTextFieldMissingErrorMessage","PARAGRAPH","formValidationSchema","yup","object","shape","string","test","isEditorEmpty","notOneOf","notRequired","array","is","otherwise","of","highestRatingLabel","nullable","averageRatingLabel","lowestRatingLabel","Add","buildRequestArgs","_useCreateQuestion","useCreateQuestion","createQuestion","isCreating","neetoFormQuestion","Header","formikProps","initialValues","validationSchema","QuestionForm","Footer","ActionBlock","cancelButtonProps","Edit","_useUpdateQuestion","useUpdateQuestion","updateQuestion","isUpdating","setSubmitting","payload","questionId","onSettled","Captcha","Radio","labelProps","CAPTCHA_TYPES","RECAPTCHA_V2","MATH_CAPTCHA","SwitchBlock","_ref$className","Label","classnames","hyphenate","component","STYLES","border","color","MultiValueRemove","innerProps","_defineProperty","hyphenize","Close","ValueContainer","getValue","_props$selectProps","selectProps","isFocused","visibleDomainsCount","_children","_toArray","firstChild","rest","slice","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","filter","isNotNil","uniq","join","formatDomainInputOptions","validateSync","_unused","pruneDuplicates","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","apply","arguments","RestrictedDomains","_useField2$0$value","meta","formattedDomains","nullSafe","Email","_ref$domainRestrictio","_useFormikContext$val","isDomainRestrictionEnabled","HelpPopover","popoverProps","helpLinkProps","FileGroup","checked","handleAllowedFileTypesChange","Checkbox","buildFileTypesList","fileTypes","getAllowedFileTypes","isChecked","allowedFileTypes","fileTypesSet","Set","FILE_TYPES_MAP","from","newFileTypes","difference","isFileTypeEnabled","FileUpload","setFieldValue","prop","_ref$target","fileType","FILE_GROUPS","defaultConfig","strict","matchKey","findOptionByValue","config","configObject","find","filterOptionsByValues","destroyFromList","itemToRemove","push","insertToList","pushToList","formHelpers","Options","_","setOptionsAttributes","_ref2$optionLabelProp","optionLabelProps","_ref2$freezeOptions","freezeOptions","_ref2$disableAddOptio","disableAddOption","_ref2$disableRemoveOp","disableRemoveOption","handleRemoveOption","nextOptions","isManageOptionDisabled","isAddOptionDisabled","isRemoveOptionDisabled","FieldArray","handlePush","_option$id","number","icon","Delete","invisible","MINIMUM_OPTIONS","tooltipProps","Plus","iconPosition","RatingItem","Rating","RATING_OPTIONS","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","ManageQuestionPane","Component","AddQuestion","onAdd","disabledAddButtonTooltipProps","onValueChange","submitButtonProps","isFormEnabled","savedTitle","formTitle","formDescription","isReordering","showActionBlock","formDomProps","containerRef","formikContext","setSelectedQuestion","selectedAction","setSelectedAction","_useState5","_useState6","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState7","_useState8","isManageQuestionPaneOpen","setIsManageQuestionPaneOpen","errors","resetForm","enabled","handleAdd","handleEdit","EDIT","handleClone","attributes","handleDelete","useOnClickOutside","hasActiveQuestions","handleLanguageChange","richTextQuestions","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$enableDomainRest","queryClient","useQueryClient","_useReorderQuestions","useReorderQuestions","reorderQuestions","isLoading","isQuestionsPending","QUESTIONS_INITIAL_VALUE","isQuestionsLoading","PageLoader","neetoFormQuestions","_queryClient$getQuery","getQueryState","QUERY_KEYS","QUESTIONS","dataUpdateCount","setQueryData","MANDATORY_KINDS","defaultQuestionKinds","QUESTION_KINDS","removeBy","QUESTION_KIND","Formik","enableReinitialize","_ref6","setFieldError"],"mappings":"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"}