@bigbinary/neeto-form-frontend 3.8.1 → 3.8.2

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.
@@ -1 +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 { Plus } from \"neetoicons\";\nimport { assoc, includes, reduce, __ } from \"ramda\";\n\nimport {\n AUTO_GENERATED_KINDS,\n IMMUTABLE_KINDS,\n RICH_TEXT_QUESTIONS,\n} 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);\nexport const isAutoGeneratedQuestion = includes(__, AUTO_GENERATED_KINDS);\nexport const isImmutableField = field => IMMUTABLE_KINDS.includes(field.kind);\n\nexport const buildAddQuestionButtonProps = (\n onAdd,\n isDisabled,\n tooltipProps\n) => ({\n \"data-cy\": \"neeto-form-engine-add-question-button\",\n disabled: isDisabled,\n label: t(\"neetoForm.questions.common.primaryPanel.addQuestion\"),\n icon: Plus,\n iconPosition: \"left\",\n style: \"link\",\n onClick: onAdd,\n ...(isDisabled && { tooltipProps }),\n});\n\nexport const buildDisabledAddButtonTooltipProps = (\n isDisabled,\n disabledAddButtonTooltipProps = {}\n) => ({\n disabled: !isDisabled,\n position: \"top\",\n content: t(\"neetoForm.questions.common.primaryPanel.noQuestionLeft\"),\n ...disabledAddButtonTooltipProps,\n});\n","import { useEffect, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isNotPresent, slugify } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\nimport useBuildFormStore from \"src/stores/buildForm\";\nimport { fieldWithFallback, isFunction } from \"utils\";\n\nimport { htmlToPlainText, isElementOverflowing } 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 [isTooltipEnabled, setIsTooltipEnabled] = useState(false);\n\n const questionLabelRef = useRef(null);\n\n const { t } = useTranslation();\n\n const smsReminderHelpDocUrl = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"smsReminder\"])\n );\n\n const { kind, isSingular } = getActiveKindDetails({\n allQuestionKinds,\n item: question,\n });\n\n const isSmsReminderQuestion = kind === QUESTION_TYPES.SMS_REMINDER;\n\n const label = fieldWithFallback(question, \"label\");\n\n const questionLabel = isRichTextQuestion(kind)\n ? htmlToPlainText(label)\n : label;\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 lineHeight=\"snug\"\n ref={questionLabelRef}\n style=\"body2\"\n weight=\"medium\"\n >\n {questionLabel}\n </Typography>\n </Tooltip>\n </div>\n <div className=\"flex items-center gap-1\">\n {isSmsReminderQuestion && (\n <HelpPopover\n description={t(\"neetoForm.smsReminder.popoverDescription\")}\n popoverProps={{ position: \"top\" }}\n {...(smsReminderHelpDocUrl && {\n helpLinkProps: { href: smsReminderHelpDocUrl },\n })}\n />\n )}\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 </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 { isAutoGeneratedQuestion, 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 (\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 = { kind: \"\", label: \"\", fieldCode: \"\" };\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 { 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, Accordion } 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\nconst FieldCode = () => {\n const helpDocUrl = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"fieldCode\"])\n );\n\n const { t } = useTranslation();\n\n return (\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};\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 {\n NON_HIDEABLE_FIELDS,\n QUESTIONS_WITHOUT_FIELD_CODE,\n} from \"../constants\";\nimport { createFieldData } 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 enableDomainRestriction,\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 isImmutable = questionKind && isImmutableField(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, NON_HIDEABLE_FIELDS);\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 });\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 enableDomainRestriction,\n })}\n </div>\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 name=\"isHidden\"\n />\n )}\n </Block>\n )}\n {shouldShowFieldCode && <FieldCode />}\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 ...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 {...{ ...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 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)}-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 { path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SwitchBlock from \"components/BuildForm/commons/SwitchBlock\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport RestrictedDomains from \"./RestrictedDomains\";\n\nconst Email = () => {\n const {\n values: { isDomainRestrictionEnabled = false },\n } = useFormikContext();\n\n const helpDocUrl = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"domainRestriction\"])\n );\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 {...(helpDocUrl && { helpLinkProps: { href: helpDocUrl } })}\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 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 ? <Email /> : 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 ...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 } 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 enableDomainRestriction,\n helpDocUrls,\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 helpDocUrls,\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 ]);\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 {...{ 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 enableDomainRestriction,\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 IMMUTABLE_KINDS,\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 enableDomainRestriction = true,\n helpDocUrls,\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 =>\n !concat(IMMUTABLE_KINDS, 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 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 enableDomainRestriction,\n enableFieldCode,\n formDescription,\n formTitle,\n getActiveKindDetails,\n helpDocUrls,\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","isAutoGeneratedQuestion","AUTO_GENERATED_KINDS","isImmutableField","field","IMMUTABLE_KINDS","buildAddQuestionButtonProps","onAdd","isDisabled","tooltipProps","_objectSpread","disabled","icon","Plus","iconPosition","buildDisabledAddButtonTooltipProps","disabledAddButtonTooltipProps","arguments","undefined","Card","_ref$question","question","allQuestionKinds","getActiveKindDetails","onSelect","onEdit","onClone","onDelete","isTooltipEnabled","setIsTooltipEnabled","questionLabelRef","useRef","smsReminderHelpDocUrl","path","_getActiveKindDetails","item","isSingular","isSmsReminderQuestion","QUESTION_TYPES","SMS_REMINDER","htmlToPlainText","useEffect","element","isNotPresent","isElementOverflowing","concat","slugify","classNames","Drag","ref","HelpPopover","popoverProps","helpLinkProps","href","key","isVisible","isFunction","Questions","isDeletable","Droppable","droppableId","droppableProps","placeholder","innerRef","index","_question$id","_question$id2","_createElement","Draggable","draggableId","nodeId","_ref3","draggableProps","dragHandleProps","moveItem","arr","sourceIndex","destinationIndex","Array","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","NoData","showTooltipWhenButtonDisabled","primaryButtonProps","NAME","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","end","value","setSelectionRange","Textarea","resize","size","onFocus","target","onKeyDown","Block","dataCy","useUpdateEditorContent","fieldName","initialValue","initialStateRef","language","setFormData","_useBuildFormStore2","_store$formState2","shouldReset","formState","richTextFieldsToReset","setEditorContent","_editorRef$current$ed","commands","setContent","modify","without","_useFetchQuestions","useFetchQuestions","data","pathArray","split","part","parsedPart","parseInt","isNaN","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","Form","initialFocusRef","isRequiredField","isDisabledFieldLabel","enableFieldCode","availableQuestionKinds","additionalQuestionKindPattern","enableDomainRestriction","_ref$isEdit","isEdit","setValues","setErrors","questionKindUniquenessPattern","mergeLeft","_useStateWithDependen","useStateWithDependency","getQuestionKind","_useStateWithDependen2","_ref2$questionProps","questionProps","isLabelDisabled","isImmutable","shouldShowPlaceholder","hasAdditionalData","shouldShowFieldCode","QUESTIONS_WITHOUT_FIELD_CODE","shouldShowHideSwitch","NON_HIDEABLE_FIELDS","isSettingsBlockVisible","handleKindChange","option","buildQuestionData","updateFormState","isNil","extractKindFromOption","Pane","Body","Select","isClearable","isSearchable","defaultValue","buildDefaultValueForKind","options","buildKindOptions","renderAdditionalData","requiredLabelValidation","schema","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","RestrictedDomains","_useField2$0$value","meta","formattedDomains","nullSafe","Email","_useFormikContext$val","isDomainRestrictionEnabled","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","Delete","invisible","MINIMUM_OPTIONS","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","onValueChange","submitButtonProps","isFormEnabled","savedTitle","formTitle","formDescription","isReordering","showActionBlock","helpDocUrls","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","F","defaultQuestionKinds","QUESTION_KINDS","removeBy","QUESTION_KIND","Formik","enableReinitialize","_ref6","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/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 { Plus } from \"neetoicons\";\nimport { assoc, includes, reduce, __ } from \"ramda\";\n\nimport {\n AUTO_GENERATED_KINDS,\n IMMUTABLE_KINDS,\n RICH_TEXT_QUESTIONS,\n} 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);\nexport const isAutoGeneratedQuestion = includes(__, AUTO_GENERATED_KINDS);\nexport const isImmutableField = field => IMMUTABLE_KINDS.includes(field.kind);\n\nexport const buildAddQuestionButtonProps = (\n onAdd,\n isDisabled,\n tooltipProps\n) => ({\n \"data-cy\": \"neeto-form-engine-add-question-button\",\n disabled: isDisabled,\n label: t(\"neetoForm.questions.common.primaryPanel.addQuestion\"),\n icon: Plus,\n iconPosition: \"left\",\n style: \"link\",\n onClick: onAdd,\n ...(isDisabled && { tooltipProps }),\n});\n\nexport const buildDisabledAddButtonTooltipProps = (\n isDisabled,\n disabledAddButtonTooltipProps = {}\n) => ({\n disabled: !isDisabled,\n position: \"top\",\n content: t(\"neetoForm.questions.common.primaryPanel.noQuestionLeft\"),\n ...disabledAddButtonTooltipProps,\n});\n","import { useEffect, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { isNotPresent, slugify } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { QUESTION_TYPES } from \"components/constants\";\nimport useBuildFormStore from \"src/stores/buildForm\";\nimport { fieldWithFallback, isFunction } from \"utils\";\n\nimport { htmlToPlainText, isElementOverflowing } 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 [isTooltipEnabled, setIsTooltipEnabled] = useState(false);\n\n const questionLabelRef = useRef(null);\n\n const { t } = useTranslation();\n\n const smsReminderHelpDocUrl = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"smsReminder\"])\n );\n\n const { kind, isSingular } = getActiveKindDetails({\n allQuestionKinds,\n item: question,\n });\n\n const isSmsReminderQuestion = kind === QUESTION_TYPES.SMS_REMINDER;\n\n const label = fieldWithFallback(question, \"label\");\n\n const questionLabel = isRichTextQuestion(kind)\n ? htmlToPlainText(label)\n : label;\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 lineHeight=\"snug\"\n ref={questionLabelRef}\n style=\"body2\"\n weight=\"medium\"\n >\n {questionLabel}\n </Typography>\n </Tooltip>\n </div>\n <div className=\"flex items-center gap-1\">\n {isSmsReminderQuestion && (\n <HelpPopover\n description={t(\"neetoForm.smsReminder.popoverDescription\")}\n popoverProps={{ position: \"top\" }}\n {...(smsReminderHelpDocUrl && {\n helpLinkProps: { href: smsReminderHelpDocUrl },\n })}\n />\n )}\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 </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 { isAutoGeneratedQuestion, 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 (\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 = { kind: \"\", label: \"\", fieldCode: \"\" };\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 { 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, Accordion } 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\nconst FieldCode = () => {\n const helpDocUrl = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"fieldCode\"])\n );\n\n const { t } = useTranslation();\n\n return (\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};\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, path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport FormikAdaptiveInput from \"components/Common/FormikAdaptiveInput\";\nimport useBuildFormStore from \"src/stores/buildForm\";\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 hideSwitchLabelProps,\n renderAdditionalData,\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 QUESTIONS_WITHOUT_FIELD_CODE,\n} from \"../constants\";\nimport { createFieldData } 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 enableDomainRestriction,\n isEdit = false,\n}) => {\n const { t } = useTranslation();\n\n const { values, setValues, setErrors, setTouched } = useFormikContext();\n\n const hideQuestionHelpDoc = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"hideQuestion\"])\n );\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 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, NON_HIDEABLE_FIELDS);\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 });\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 enableDomainRestriction,\n })}\n </div>\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 </Block>\n )}\n {shouldShowFieldCode && <FieldCode />}\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 ...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 {...{ ...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 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)}-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 { path } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SwitchBlock from \"components/BuildForm/commons/SwitchBlock\";\nimport useBuildFormStore from \"src/stores/buildForm\";\n\nimport RestrictedDomains from \"./RestrictedDomains\";\n\nconst Email = () => {\n const {\n values: { isDomainRestrictionEnabled = false },\n } = useFormikContext();\n\n const helpDocUrl = useBuildFormStore(\n path([\"formState\", \"helpDocUrls\", \"domainRestriction\"])\n );\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 {...(helpDocUrl && { helpLinkProps: { href: helpDocUrl } })}\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 { 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 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 ? <Email /> : 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","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 } 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 enableDomainRestriction,\n helpDocUrls,\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 helpDocUrls,\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 ]);\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 {...{ 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 enableDomainRestriction,\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 IMMUTABLE_KINDS,\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 enableDomainRestriction = true,\n helpDocUrls,\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 =>\n !concat(IMMUTABLE_KINDS, 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 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 enableDomainRestriction,\n enableFieldCode,\n formDescription,\n formTitle,\n getActiveKindDetails,\n helpDocUrls,\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","isAutoGeneratedQuestion","AUTO_GENERATED_KINDS","isImmutableField","field","IMMUTABLE_KINDS","buildAddQuestionButtonProps","onAdd","isDisabled","tooltipProps","_objectSpread","disabled","icon","Plus","iconPosition","buildDisabledAddButtonTooltipProps","disabledAddButtonTooltipProps","arguments","undefined","Card","_ref$question","question","allQuestionKinds","getActiveKindDetails","onSelect","onEdit","onClone","onDelete","isTooltipEnabled","setIsTooltipEnabled","questionLabelRef","useRef","smsReminderHelpDocUrl","path","_getActiveKindDetails","item","isSingular","isSmsReminderQuestion","QUESTION_TYPES","SMS_REMINDER","htmlToPlainText","useEffect","element","isNotPresent","isElementOverflowing","concat","slugify","classNames","Drag","ref","HelpPopover","popoverProps","helpLinkProps","href","key","isVisible","isFunction","Questions","isDeletable","Droppable","droppableId","droppableProps","placeholder","innerRef","index","_question$id","_question$id2","_createElement","Draggable","draggableId","nodeId","_ref3","draggableProps","dragHandleProps","moveItem","arr","sourceIndex","destinationIndex","Array","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","NoData","showTooltipWhenButtonDisabled","primaryButtonProps","NAME","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","end","value","setSelectionRange","Textarea","resize","size","onFocus","target","onKeyDown","Block","dataCy","useUpdateEditorContent","fieldName","initialValue","initialStateRef","language","setFormData","_useBuildFormStore2","_store$formState2","shouldReset","formState","richTextFieldsToReset","setEditorContent","_editorRef$current$ed","commands","setContent","modify","without","_useFetchQuestions","useFetchQuestions","data","pathArray","split","part","parsedPart","parseInt","isNaN","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","Form","initialFocusRef","isRequiredField","isDisabledFieldLabel","enableFieldCode","availableQuestionKinds","additionalQuestionKindPattern","enableDomainRestriction","_ref$isEdit","isEdit","setValues","setErrors","hideQuestionHelpDoc","questionKindUniquenessPattern","mergeLeft","_useStateWithDependen","useStateWithDependency","getQuestionKind","_useStateWithDependen2","_ref2$questionProps","questionProps","isLabelDisabled","isImmutable","shouldShowPlaceholder","hasAdditionalData","shouldShowFieldCode","QUESTIONS_WITHOUT_FIELD_CODE","shouldShowHideSwitch","NON_HIDEABLE_FIELDS","isSettingsBlockVisible","handleKindChange","option","buildQuestionData","updateFormState","isNil","extractKindFromOption","Pane","Body","Select","isClearable","isSearchable","defaultValue","buildDefaultValueForKind","options","buildKindOptions","renderAdditionalData","labelProps","hideSwitchLabelProps","requiredLabelValidation","schema","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","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","RestrictedDomains","_useField2$0$value","meta","formattedDomains","nullSafe","Email","_useFormikContext$val","isDomainRestrictionEnabled","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","Delete","invisible","MINIMUM_OPTIONS","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","helpUrl","helpIconProps","ManageQuestionPane","Component","AddQuestion","onValueChange","submitButtonProps","isFormEnabled","savedTitle","formTitle","formDescription","isReordering","showActionBlock","helpDocUrls","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","F","defaultQuestionKinds","QUESTION_KINDS","removeBy","QUESTION_KIND","Formik","enableReinitialize","_ref6","setFieldError"],"mappings":"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"}