{"version":3,"file":"main.js","mappings":"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","sources":["webpack://@voxco/survey-engine-js/./lib/mobiscroll/js/mobiscroll.javascript.min.js","webpack://@voxco/survey-engine-js/./lib/mobiscroll/css/mobiscroll.javascript.min.css","webpack://@voxco/survey-engine-js/./src/assets/main.less","webpack://@voxco/survey-engine-js/./src/i18n/en.yml","webpack://@voxco/survey-engine-js/./src/i18n/fr.yml","webpack://@voxco/survey-engine-js/./src/grammar/expressions.ne","webpack://@voxco/survey-engine-js/./lib/mobiscroll/css/mobiscroll.javascript.min.css?e959","webpack://@voxco/survey-engine-js/./src/polyfills.ts","webpack://@voxco/survey-engine-js/./src/containers/App.tsx","webpack://@voxco/survey-engine-js/./src/i18n/index.ts","webpack://@voxco/survey-engine-js/./src/utils/getUrlParameters.ts","webpack://@voxco/survey-engine-js/./src/app.tsx","webpack://@voxco/survey-engine-js/./src/components/SurveyEngine.styles.ts","webpack://@voxco/survey-engine-js/./src/components/SurveyEngine.tsx","webpack://@voxco/survey-engine-js/./src/components/choices/BaseChoice.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/CheckBoxRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/CheckBoxRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/choices/CheckBox.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ImageChoiceRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ImageChoiceRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/choices/ImageSelect.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/RadioRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/RadioRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/choices/Radio.tsx","webpack://@voxco/survey-engine-js/./src/components/select/AutoComplete.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/AutoCompleteControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/BaseControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/CardSortControl.styles.ts","webpack://@voxco/survey-engine-js/./src/components/controls/CardSortControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/CarrouselControl.styles.ts","webpack://@voxco/survey-engine-js/./src/components/controls/CarrouselControl.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceListRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/ChoiceListControl.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/ExecutableHtml.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/CustomHtmlControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/DateTimeControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/DragDropControl.styles.ts","webpack://@voxco/survey-engine-js/./src/components/controls/DragDropControl.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/DrillDownRenderer.styles.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/DrillDownRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/DrillDownControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/DropDownControl.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/FileUploadRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/FileUploadRenderer.tsx","webpack://@voxco/survey-engine-js/./src/utils/AxiosCancellationTokenSource.ts","webpack://@voxco/survey-engine-js/./src/redux/thunks/file.ts","webpack://@voxco/survey-engine-js/./src/components/controls/FileUploadControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/GridControl.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/HeatMapRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/HeatMapRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/HeatMapSelectionRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/HeatMapSelectionRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/HeatMapControl.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ImageAreaSelectionRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ImageAreaSelectionRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ImageAreaRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ImageAreaRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/ImageAreaControl.tsx","webpack://@voxco/survey-engine-js/./src/components/table/PaginatedTable.styles.ts","webpack://@voxco/survey-engine-js/./src/components/table/TableFooter.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/ButtonGroup.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/ButtonGroup.tsx","webpack://@voxco/survey-engine-js/./src/components/table/TablePagination.styles.ts","webpack://@voxco/survey-engine-js/./src/components/table/TablePagination.tsx","webpack://@voxco/survey-engine-js/./src/components/select/TinySelect.styles.ts","webpack://@voxco/survey-engine-js/./src/components/select/TinySelect.tsx","webpack://@voxco/survey-engine-js/./src/components/table/TableFooter.tsx","webpack://@voxco/survey-engine-js/./src/components/table/PaginatedTable.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/LookupTableControl.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/NetPromoterItemRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/NetPromoterItemRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/NetPromoterRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/NetPromoterRenderer.tsx","webpack://@voxco/survey-engine-js/./src/models/enums/NpsFeedbackQuestionSettings.ts","webpack://@voxco/survey-engine-js/./src/components/controls/NetPromoterControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/NullControl.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/NumericRankingRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/NumericRankingRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/NumericRankingControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/RunningTotalControl.tsx","webpack://@voxco/survey-engine-js/./src/models/enums/VariableDataType.ts","webpack://@voxco/survey-engine-js/./src/components/controls/SignatureControl.styles.ts","webpack://@voxco/survey-engine-js/./src/components/controls/SignatureControl.tsx","webpack://@voxco/survey-engine-js/./src/models/enums/CursorPosition.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/SliderRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/SliderRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/SliderControl.tsx","webpack://@voxco/survey-engine-js/./src/models/enums/CaseMode.ts","webpack://@voxco/survey-engine-js/./src/consts.ts","webpack://@voxco/survey-engine-js/./src/components/controls/TextBoxControl.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/TextHighlighterRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceListItemTextHighlighterRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/ButtonChoiceTextHighlighter.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/ButtonChoiceTextHighlighter.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceListItemTextHighlighterRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceListTextHighlighterRenderer.tsx","webpack://@voxco/survey-engine-js/./src/models/VariableToChoiceModel.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/TextHighlighterRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/TextHighlighterControl.tsx","webpack://@voxco/survey-engine-js/./src/models/enums/TimerLocation.ts","webpack://@voxco/survey-engine-js/./src/models/enums/TimerType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/TimerAction.ts","webpack://@voxco/survey-engine-js/./src/components/controls/TimerControl.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/UndefinedControl.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/shared/LoadingEllipsis.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/shared/LoadingEllipsis.tsx","webpack://@voxco/survey-engine-js/./src/simulator/simulatePages.ts","webpack://@voxco/survey-engine-js/./src/hooks/useSimulatedPages.ts","webpack://@voxco/survey-engine-js/./src/hooks/useScrollToActive.ts","webpack://@voxco/survey-engine-js/./src/components/debug/panels/FlowPanel.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/shared/QuestionTypeIcon.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/shared/ActionTypeAction.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/panels/FlowQuestion.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/panels/FlowPage.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/panels/WidgetPanel.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/panels/WidgetPanel.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/panels/FlowPanel.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/panels/VariablesPanel.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/panels/VariablesPanel.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/panels/GoToQuestionPanel.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/panels/GoToQuestionPanel.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/panels/SettingsPanel.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/shared/Button.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/shared/Button.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/shared/ToggleButton.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/shared/Radio.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/shared/Radio.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/shared/DockLeftIcon.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/shared/DockRightIcon.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/shared/FloatingIcon.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/panels/SettingsPanel.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/DockedDebugPanel.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/DockedDebugPanel.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/FloatingDebugPanel.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/FloatingDebugPanel.tsx","webpack://@voxco/survey-engine-js/./src/hooks/useWindowDimensions.ts","webpack://@voxco/survey-engine-js/./src/components/debug/panels/AccessibilityPanel.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/panels/AccessibilityPanel.tsx","webpack://@voxco/survey-engine-js/./src/components/debug/DebugPanel.tsx","webpack://@voxco/survey-engine-js/./src/hooks/useLocalStorage.ts","webpack://@voxco/survey-engine-js/./src/components/page/Question.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/BaseRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceLabelRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceLabelRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceListItemRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceListItemRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceListRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ChoiceOpenEndRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/GridCellRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/GridCellRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/StarRatingRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/StarRatingRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/controls/StarRatingControl.tsx","webpack://@voxco/survey-engine-js/./src/models/factories/gridControlFactory.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/GridRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/GridRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/OpenEndRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/OpenEndRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/ValidationError.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/ValidationError.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/QuestionRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/debug/DebugInfo.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/QuestionRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/TextAnswerRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/TextAnswerRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/select/Select.styles.ts","webpack://@voxco/survey-engine-js/./src/components/select/Select.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/Button.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/Button.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/ButtonChoice.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/ButtonChoice.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/CheckBoxIcon.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/CheckBoxIcon.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/Collapsible.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/ErrorLog.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/ErrorRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/FontAwesome.ts","webpack://@voxco/survey-engine-js/./src/components/shared/InputBox.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/InputBox.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/InputWrapper.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/InputWrapper.tsx","webpack://@voxco/survey-engine-js/./src/assets/images/iphone-x.png","webpack://@voxco/survey-engine-js/./src/components/shared/MobilePreview.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/MobilePreview.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/RadioIcon.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/RadioIcon.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/ScrollableContainer.tsx","webpack://@voxco/survey-engine-js/./src/components/shared/ScrollableContainer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/shared/SignalListener.ts","webpack://@voxco/survey-engine-js/./src/containers/ErrorLogContainer.tsx","webpack://@voxco/survey-engine-js/./src/containers/controls/ChoiceContainer.tsx","webpack://@voxco/survey-engine-js/./src/containers/controls/ControlContainer.tsx","webpack://@voxco/survey-engine-js/./src/models/enums/QuitButtonAction.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/InputFocusRenderer.tsx","webpack://@voxco/survey-engine-js/./src/containers/page/QuestionListContainer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/NavigationBarRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/NavigationBarRenderer.tsx","webpack://@voxco/survey-engine-js/./src/hooks/useBlock.ts","webpack://@voxco/survey-engine-js/./src/components/page/Navigation.tsx","webpack://@voxco/survey-engine-js/./src/containers/page/NavigationContainer.tsx","webpack://@voxco/survey-engine-js/./src/components/page/Progress.styles.ts","webpack://@voxco/survey-engine-js/./src/components/page/Progress.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ValidationSummaryRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/ValidationSummaryRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/PageRenderer.styles.ts","webpack://@voxco/survey-engine-js/./src/components/page/TopNavigation.styles.ts","webpack://@voxco/survey-engine-js/./src/utils/lang.ts","webpack://@voxco/survey-engine-js/./src/components/page/TopNavigation.tsx","webpack://@voxco/survey-engine-js/./src/components/renderers/v2/PageRenderer.tsx","webpack://@voxco/survey-engine-js/./src/components/page/Page.tsx","webpack://@voxco/survey-engine-js/./src/containers/page/PageContainer.tsx","webpack://@voxco/survey-engine-js/./src/containers/shared/RecalledText.tsx","webpack://@voxco/survey-engine-js/./src/elimination/Elimination.ts","webpack://@voxco/survey-engine-js/./src/expressions/EvaluationResult.ts","webpack://@voxco/survey-engine-js/./src/expressions/parser.ts","webpack://@voxco/survey-engine-js/./src/grammar/utils/consts.ts","webpack://@voxco/survey-engine-js/./src/grammar/utils/functions.ts","webpack://@voxco/survey-engine-js/./src/grammar/utils/lexer.ts","webpack://@voxco/survey-engine-js/./src/grammar/utils/symbols.ts","webpack://@voxco/survey-engine-js/./src/hooks/useDimensionContext.ts","webpack://@voxco/survey-engine-js/./src/hooks/useElementDimensions.ts","webpack://@voxco/survey-engine-js/./src/hooks/useLanguage.ts","webpack://@voxco/survey-engine-js/./src/hooks/useMentions.ts","webpack://@voxco/survey-engine-js/./src/hooks/usePrevious.ts","webpack://@voxco/survey-engine-js/./src/hooks/useQuestion.ts","webpack://@voxco/survey-engine-js/./src/hooks/useRecall.ts","webpack://@voxco/survey-engine-js/./src/hooks/useReservedBounds.tsx","webpack://@voxco/survey-engine-js/./src/hooks/useTranslatable.ts","webpack://@voxco/survey-engine-js/./src/hooks/useQuestionnaire.ts","webpack://@voxco/survey-engine-js/./src/hooks/useValidation.ts","webpack://@voxco/survey-engine-js/./src/models/SystemVariableModel.ts","webpack://@voxco/survey-engine-js/./src/models/builders/MentionBuilder.ts","webpack://@voxco/survey-engine-js/./src/models/builders/ValidationBuilder.ts","webpack://@voxco/survey-engine-js/./src/models/enums/AxisType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/ChoiceListDisplayType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/ColumnType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/DispositionCode.ts","webpack://@voxco/survey-engine-js/./src/models/enums/LabelPosition.ts","webpack://@voxco/survey-engine-js/./src/models/enums/LogicType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/NavigationType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/PropertyType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/QuestionActionType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/QuestionType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/QuotaStatus.ts","webpack://@voxco/survey-engine-js/./src/models/enums/RandomizationPattern.ts","webpack://@voxco/survey-engine-js/./src/models/enums/RowType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/ShortcutExitToType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/SoftPromptChoiceType.ts","webpack://@voxco/survey-engine-js/./src/models/enums/SurveyMode.ts","webpack://@voxco/survey-engine-js/./src/models/enums/TerminationAction.ts","webpack://@voxco/survey-engine-js/./src/models/enums/VariableType.ts","webpack://@voxco/survey-engine-js/./src/models/factories/elementFactory.ts","webpack://@voxco/survey-engine-js/./src/models/factories/logicFactory.ts","webpack://@voxco/survey-engine-js/./src/models/enums/OperatorType.ts","webpack://@voxco/survey-engine-js/./src/models/factories/lookupTableFilterFactory.ts","webpack://@voxco/survey-engine-js/./src/models/factories/questionFactory.ts","webpack://@voxco/survey-engine-js/./src/models/factories/questionnaireFactory.ts","webpack://@voxco/survey-engine-js/./src/models/factories/randomizationFactory.ts","webpack://@voxco/survey-engine-js/./src/models/factories/respondentFactory.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/actionUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/blockUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/choiceUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/gridUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/propertyUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/questionUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/enums/AutoAdvanceMode.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/questionnaireUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/respondentUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/settingUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/translationUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/validationUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/variableUtilities.ts","webpack://@voxco/survey-engine-js/./src/piping/RecallType.ts","webpack://@voxco/survey-engine-js/./src/piping/RecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/ChoiceRecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/AnswerRecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/SystemRecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/DateRecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/TimeRecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/TimeSpanRecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/DateTimeRecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/DayRecalledValue.ts","webpack://@voxco/survey-engine-js/./src/piping/index.ts","webpack://@voxco/survey-engine-js/./src/public/index.ts","webpack://@voxco/survey-engine-js/./src/randomization/Randomization.ts","webpack://@voxco/survey-engine-js/./src/randomization/Randomizer.ts","webpack://@voxco/survey-engine-js/./src/redux/actions/index.ts","webpack://@voxco/survey-engine-js/./src/models/factories/quotaFactory.ts","webpack://@voxco/survey-engine-js/./src/models/enums/QuotaMetOrCloseAction.ts","webpack://@voxco/survey-engine-js/./src/utils/Raygun.ts","webpack://@voxco/survey-engine-js/./src/redux/middleware/apiConnector.ts","webpack://@voxco/survey-engine-js/./src/models/enums/ValueType.ts","webpack://@voxco/survey-engine-js/./src/redux/middleware/flowController.ts","webpack://@voxco/survey-engine-js/./src/logic/questionLogic.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/connectionReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/variablesSliceReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/carrouselReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/navigationReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/questionFieldStatusReducer.ts","webpack://@voxco/survey-engine-js/./src/models/enums/RecallMode.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/interviewReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/questionnaireSliceReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/respondentSliceReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/deviceSliceReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/validationSliceReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/languageSliceReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/themeSliceReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/applicationReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/errorsReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/lookupTableReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/recallModeReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/mobilePreviewReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/filesReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/index.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/navigationUtilities.ts","webpack://@voxco/survey-engine-js/./src/models/utilities/pageUtilities.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/quotasReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/interview/variablesUtilities.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/utilities.ts","webpack://@voxco/survey-engine-js/./src/redux/reducers/recallReducer.ts","webpack://@voxco/survey-engine-js/./src/redux/selectors/mentions.ts","webpack://@voxco/survey-engine-js/./src/redux/middleware/debugLogger.ts","webpack://@voxco/survey-engine-js/./src/redux/store.ts","webpack://@voxco/survey-engine-js/./src/redux/middleware/publicConnector.ts","webpack://@voxco/survey-engine-js/./src/redux/middleware/flowLogger.ts","webpack://@voxco/survey-engine-js/./src/redux/thunks/evaluator.ts","webpack://@voxco/survey-engine-js/./src/redux/thunks/index.ts","webpack://@voxco/survey-engine-js/./src/redux/thunks/validation.ts","webpack://@voxco/survey-engine-js/./src/signals/index.ts","webpack://@voxco/survey-engine-js/./src/theme/DefaultTheme.ts","webpack://@voxco/survey-engine-js/./src/theme/Mixins.ts","webpack://@voxco/survey-engine-js/./src/utils/Number.ts","webpack://@voxco/survey-engine-js/./src/utils/index.tsx","webpack://@voxco/survey-engine-js/./src/utils/lodash.ts","webpack://@voxco/survey-engine-js/./src/utils/logging.ts","webpack://@voxco/survey-engine-js/./src/utils/tz.ts","webpack://@voxco/survey-engine-js/./src/utils/time.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/softPrompt.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/answerRequired.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/maxMentions.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/openEndRequired.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/openEndMinimumLength.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/openEndMaximumLength.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/validNumber.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/numberOfDecimals.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/minValue.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/maxValue.ts","webpack://@voxco/survey-engine-js/./src/validation/rules/bounds.ts","webpack://@voxco/survey-engine-js/./src/validation/validators.ts"],"sourcesContent":["/* eslint-disable */\r\n!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=e||self).mobiscroll=t()}(this,function(){\"use strict\";var e,t,a,n,y=y||{},s={},ie={},i=[],r=\"undefined\"!=typeof window,g=r&&window.matchMedia&&window.matchMedia(\"(prefers-color-scheme:dark)\").matches,o=r?navigator.userAgent:\"\",l=r?navigator.platform:\"\",c=r?navigator.maxTouchPoints:0,d=/Safari/.test(o),u=o.match(/Android|iPhone|iPad|iPod|Windows Phone|Windows|MSIE/i),me=r&&window.requestAnimationFrame||function(e){return setTimeout(e,20)},he=r&&window.cancelAnimationFrame||function(e){clearTimeout(e)};function m(e){var t;for(t in e)if(void 0!==x[e[t]])return!0;return!1}function Te(e,t){if(\"touchstart\"==e.type)t.__mbscTouched=1;else if(t.__mbscTouched)return delete t.__mbscTouched,!1;return!0}function xe(e,t){for(var a,n,s=[\"t\",\"webkitT\",\"MozT\",\"OT\",\"msT\"],i=getComputedStyle(e[0]),r=0;!a&&r\")){var l=\"div\";for(0===i.indexOf(\":~]/)?(a instanceof O&&(a=a[0]),(a||document).querySelectorAll(t)):[document.getElementById(t.split(\"#\")[1])],o=0;os||Math.abs(Se(e,\"Y\")-o)>s)&&(c=!0)}function T(e){l&&(i&&new Date-d<100||!c?function(e,t){if(!t.mbscClick){var a=(e.originalEvent||e).changedTouches[0],n=document.createEvent(\"MouseEvents\");n.initMouseEvent(\"click\",!0,!0,window,1,a.screenX,a.screenY,a.clientX,a.clientY,!1,!1,!1,!1,0,null),n.isMbscTap=!0,n.isIonicTap=!0,V=!0,t.mbscChange=!0,t.mbscClick=!0,t.dispatchEvent(n),V=!1,ot(),setTimeout(function(){delete t.mbscClick})}}(e,e.target):ot(),l=!1)}function x(e){n&&e.preventDefault(),t.call(this,e,a)}function f(){l=!1}s=s||9,u.each(function(e,t){a.settings.tap&&(it(t,\"touchstart\",m,{passive:!0}),it(t,\"touchcancel\",f),it(t,\"touchmove\",h,{passive:!0}),it(t,\"touchend\",T)),it(t,\"click\",x),t.__mbscOff=function(){fe(t,\"touchstart\",m,{passive:!0}),fe(t,\"touchcancel\",f),fe(t,\"touchmove\",h,{passive:!0}),fe(t,\"touchend\",T),fe(t,\"click\",x),delete t.__mbscOff}})}function ne(e){e&&e[0]&&e[0].__mbscOff&&e[0].__mbscOff()}function I(e){if(z&&!V&&!e.isMbscTap&&(\"TEXTAREA\"!=e.target.nodeName||\"mousedown\"!=e.type))return e.stopPropagation(),e.preventDefault(),!1}function lt(e){return e[0].innerWidth||e.innerWidth()}r&&([\"mouseover\",\"mousedown\",\"mouseup\",\"click\"].forEach(function(e){document.addEventListener(e,I,!0)}),\"android\"==e&&a<5&&document.addEventListener(\"change\",function(e){z&&\"checkbox\"==e.target.type&&!e.target.mbscChange&&(e.stopPropagation(),e.preventDefault()),delete e.target.mbscChange},!0)),y.uid=\"03c2a902\";var J,ct=y.$,W=+new Date,R={},$={},B={},K={xsmall:0,small:576,medium:768,large:992,xlarge:1200},dt=ct.extend;dt(s,{getCoord:Se,preventClick:ot,vibrate:function(e){\"vibrate\"in navigator&&navigator.vibrate(e||50)}}),J=dt(y,{$:ct,version:\"4.10.9\",autoTheme:\"mobiscroll\",themes:{form:{},page:{},frame:{},scroller:{},listview:{},navigation:{},progress:{},card:{}},platform:{name:e,majorVersion:a,minorVersion:n},i18n:{},instances:R,classes:$,util:s,settings:{},setDefaults:function(e){dt(this.settings,e)},customTheme:function(e,t){var a,n=y.themes,s=[\"frame\",\"scroller\",\"listview\",\"navigation\",\"form\",\"page\",\"progress\",\"card\"];for(a=0;a=(t.breakpoint||K[e])&&(n=t)})),n}v.settings={},v.element=o,v._init=rt,v._destroy=rt,v._processSettings=rt,v._checkResp=function(e){if(v&&v._responsive){var t=b(e);if(m!==t)return m=t,v.init({}),!0}},v._getRespCont=function(){return ct(\"body\"==h.context?window:h.context)},v.init=function(e,t){var a,n,s,i,r;for(a in e&&v.getVal&&(n=v.getVal()),v.settings)delete v.settings[a];h=v.settings,dt(l,e),v._hasDef&&(p=J.settings),dt(h,v._defaults,p,l),c=v._getRespCont(),v._responsive&&(m=m||b(),dt(h,m)),v._hasTheme&&(i=(s=h).theme,r=s.themeVariant,\"auto\"!=i&&i||(i=J.autoTheme),\"default\"==i&&(i=\"mobiscroll\"),(\"dark\"===r||g&&\"auto\"===r)&&J.themes.form[i+\"-dark\"]?i+=\"-dark\":\"light\"===r&&/.+-dark$/.test(i)&&(i=i.replace(/-dark$/,\"\")),x=i,l.theme=x,T=J.themes[v._class]?J.themes[v._class][x]:{}),v._hasLang&&(d=J.i18n[h.lang]),dt(h,T,d,p,l,m),v._processSettings(m||{}),v._presets&&(u=v._presets[h.preset])&&(u=u.call(o,v,l,m),dt(h,u,l,m)),v._init(e),e&&v.setVal&&v.setVal(void 0===t?n:t,!0),f(\"onInit\")},v.destroy=function(){v&&(v._destroy(),f(\"onDestroy\"),delete R[o.id],v=null)},v.tap=function(e,t,a,n,s){Y(v,e,t,a,n,s)},v.trigger=function(e,t){var a,n,s,i=[p,T,u,l];for(n=0;n<4;n++)(s=i[n])&&s[e]&&(a=s[e].call(o,t||{},v));return a},v.option=function(e,t,a){var n={},s=[\"data\",\"invalid\",\"valid\",\"readonly\"];/calendar|eventcalendar|range/.test(h.preset)&&s.push(\"marked\",\"labels\",\"colors\"),\"object\"==typeof e?n=e:n[e]=t,s.forEach(function(e){l[e]=h[e]}),v.init(n,a)},v.getInst=function(){return v},l=l||{},f=v.trigger,v.__ready||(ct(o).addClass(\"mbsc-comp\"),o.id?R[o.id]&&R[o.id].destroy():o.id=\"mobiscroll\"+ ++W,(R[o.id]=v).__ready=!0)}function ut(e,t,a,n,s,i,r){var o=new Date(e,t,a,n||0,s||0,i||0,r||0);return 23==o.getHours()&&0===(n||0)&&o.setHours(o.getHours()+2),o}function oe(a,e,t){if(!e)return null;function s(e){for(var t=0;r+1
',De=0;function ke(e){e.preventDefault()}function X(a,n,e){var D,d,u,k,w,_,N,C,E,A,s,H,F,P,O,L,m,V,z,Y,I,h,j,J,W,t,T,R,$,B,K,G,U,Z=this,q=ct(a),i=[],r=new Date;function X(e){R.stopProp&&e.stopPropagation();var t=function(e,t,a){for(;t;){if(S(t,a))return t;t=t!==e?t.parentNode:null}return null}(this,e.target,\".mbsc-fr-btn-e\");t&&(s&&s.removeClass(\"mbsc-active\"),(s=ct(t)).hasClass(\"mbsc-disabled\")||s.hasClass(\"mbsc-fr-btn-nhl\")||s.addClass(\"mbsc-active\"),\"mousedown\"===e.type&&ct(document).on(\"mouseup\",Q))}function Q(e){s&&(s.removeClass(\"mbsc-active\"),s=null),\"mouseup\"===e.type&&ct(document).off(\"mouseup\",Q)}function x(e){$&&V.contains(e.target)&&e.preventDefault()}function f(e){y.activeInstance==Z&&(13!=e.keyCode||ct(e.target).is('textarea,button,input[type=\"button\"],input[type=\"submit\"]')&&!e.shiftKey?27==e.keyCode&&Z.cancel():Z.select())}function ee(e){e||Ee||!Z._activeElm||(r=new Date,Z._activeElm.focus())}function o(e){var t=_e,a=R.focusOnClose;Z._markupRemove(),k.remove(),O&&(H.mbscModals--,R.scrollLock&&H.mbscLock--,H.mbscLock||u.removeClass(\"mbsc-fr-lock\"),h&&(H.mbscIOSLock--,H.mbscIOSLock||(u.removeClass(\"mbsc-fr-lock-ios\"),D.css({top:\"\",left:\"\"}),C.scrollLeft(H.mbscScrollLeft),C.scrollTop(H.mbscScrollTop))),H.mbscModals||u.removeClass(\"mbsc-fr-lock-ctx\"),H.mbscModals&&!T||e||(t=t||q,setTimeout(function(){void 0===a||!0===a?(Ne=!0,t[0].focus()):a&&ct(a)[0].focus()},200))),T=void 0,L=!1,K(\"onHide\")}function te(){clearTimeout(t),t=setTimeout(function(){Z.position(!0)&&(W.style.visibility=\"hidden\",W.offsetHeight,W.style.visibility=\"\")},200)}function p(e){y.activeInstance==Z&&e.target.nodeType&&!J.contains(e.target)&&100=t.length)break;s=t[n++]}else{if((n=t.next()).done)break;s=n.value}s.target.__mbscResize()}}),De++,c.__mbscResize=d,se.observe(c)):((T=document.createElement(\"div\")).innerHTML=we,T.dir=\"ltr\",p=T.childNodes[1],m=T.childNodes[0],h=m.childNodes[0],c.appendChild(T),m.addEventListener(\"scroll\",S),p.addEventListener(\"scroll\",S),u?u.runOutsideAngular(function(){me(y)}):me(y)),j={detach:function(){se?(De--,se.unobserve(c),De||(se=null)):(c.removeChild(T),v=!0)}}),O&&(k.removeClass(\"mbsc-fr-pos\"),F&&!e?k.addClass(\"mbsc-anim-in mbsc-anim-trans mbsc-anim-trans-\"+F).on(ae,function e(){k.off(ae,e).removeClass(\"mbsc-anim-in mbsc-anim-trans mbsc-anim-trans-\"+F).find(\".mbsc-fr-popup\").removeClass(\"mbsc-anim-\"+F),ee(t)}).find(\".mbsc-fr-popup\").addClass(\"mbsc-anim-\"+F):ee(t)),K(\"onShow\",{target:V,valueText:Z._tempValue})}function g(){h.style.width=\"100000px\",h.style.height=\"100000px\",m.scrollLeft=1e5,m.scrollTop=1e5,p.scrollLeft=1e5,p.scrollTop=1e5}function y(){var e=new Date;x=0,v||(200'+(O?'
'+(R.showOverlay?'
':\"\")+'
':\"\")+'
'+(\"bubble\"===R.display?'
':\"\")+(O?'
':\"\")+'
'+(R.headerText?'
'+(ge(R.headerText)?R.headerText:\"\")+\"
\":\"\")+'
',n+=Z._generateContent(),n+=\"
\",a){var r,o,l,c=A.length;for(n+='
',o=0;o
'+(r.text||\"\")+\"
\";n+=\"
\"}k=ct(n+=\"
\"+(O?\"\":\"\")),_=ct(\".mbsc-fr-persp\",k),w=ct(\".mbsc-fr-scroll\",k),E=ct(\".mbsc-fr-w\",k),N=ct(\".mbsc-fr-popup\",k),d=ct(\".mbsc-fr-hdr\",k),V=k[0],J=w[0],W=N[0],Z._activeElm=ct(\".mbsc-fr-focus\",k)[0],Z._markup=k,Z._isVisible=!0,Z.markup=V,Z._markupReady(k),K(\"onMarkupReady\",{target:V}),O&&(ct(window).on(\"keydown\",f),R.scrollLock&&(it(document,\"touchmove\",x,{passive:!1}),it(document,\"mousewheel\",x,{passive:!1}),it(document,\"wheel\",x,{passive:!1})),R.focusTrap&&C.on(\"focusin\",p)),O?setTimeout(function(){v(e,t)},h?100:0):v(e,t)}},Z.hide=function(t,e,a,n){if(!Z._isVisible||!a&&!Z._isValid&&\"set\"==e||!a&&!1===K(\"onBeforeClose\",{valueText:Z._tempValue,button:e}))return!1;Z._isVisible=!1,j&&(j.detach(),j=null),O&&(ct(document.activeElement).is(\"input,textarea\")&&W.contains(document.activeElement)&&document.activeElement.blur(),y.activeInstance==Z&&(y.activeInstance=T),ct(window).off(\"keydown\",f),C.off(\"focusin\",p),fe(document,\"touchmove\",x,{passive:!1}),fe(document,\"mousewheel\",x,{passive:!1}),fe(document,\"wheel\",x,{passive:!1})),k&&(O&&L&&F&&!t?k.addClass(\"mbsc-anim-out mbsc-anim-trans mbsc-anim-trans-\"+F).on(ae,function e(){k.off(ae,e),o(t)}).find(\".mbsc-fr-popup\").addClass(\"mbsc-anim-\"+F):o(t),Z._detachEvents(k)),n&&n(),q.trigger(\"blur\"),K(\"onClose\",{valueText:Z._value})},Z.isVisible=function(){return Z._isVisible},Z.setVal=rt,Z.getVal=rt,Z._generateContent=rt,Z._attachEvents=rt,Z._detachEvents=rt,Z._readValue=rt,Z._clearValue=rt,Z._fillValue=rt,Z._markupReady=rt,Z._markupInserted=rt,Z._markupRemove=rt,Z._position=rt,Z.__processSettings=rt,Z.__init=rt,Z.__destroy=rt,Z._destroy=function(){Z.hide(!0,!1,!0),q.off(\".mbsc\"),ne(q),ct.each(i,function(e,t){t.el.off(\".mbsc\").prop(\"readonly\",t.readOnly),ne(t.el),t.lbl&&(t.lbl.off(\".mbsc\"),ne(t.lbl))}),Z.__destroy()},Z._updateHeader=function(){var e=R.headerText,t=e?\"function\"==typeof e?e.call(a,Z._tempValue):e.replace(/\\{value\\}/i,Z._tempValue):\"\";d.html(t||\" \")},Z._getRespCont=function(){return P=\"body\"!=R.context,C=ct(P?R.context:window),\"inline\"==R.display?q.is(\"div\")?q:q.parent():C},Z._processSettings=function(e){var t,a;for(Z.__processSettings(e),(m=!R.touchUi)&&(R.display=e.display||n.display||\"bubble\",R.buttons=e.buttons||n.buttons||[],R.showOverlay=e.showOverlay||n.showOverlay||!1),R.buttons=R.buttons||(\"inline\"!==R.display?[\"cancel\",\"set\"]:[]),R.headerText=void 0===R.headerText?\"inline\"!==R.display&&\"{value}\":R.headerText,A=R.buttons||[],O=\"inline\"!==R.display,D=ct(R.context),u=P?D:ct(\"body,html\"),H=D[0],Z.live=!0,a=0;aq.thresholdY||Math.abs(o)>q.thresholdX)&&(clearTimeout(r),n.removeClass(\"mbsc-active\"),p=!1),(G.scrolled||!w&&Math.abs(d)>R)&&(A||$(\"onGestureStart\",f),G.scrolled=A=!0,k||(k=!0,D=me(te))),B||q.scrollLock?e.preventDefault():G.scrolled?e.preventDefault():7=L[t].breakpoint){Z=2,n=L[U=t].snap2;break}}else if(0<=e)for(t=0;t=e.min&&t<=e.max)return e._array?e.circular?ct(a).get(t%e._length):a[t]:ct.isFunction(a)?a(t,N):\"\"}function A(e){return ct.isPlainObject(e)?void 0!==e.value?e.value:e.display:e}function H(e,t){return A(E(e,t))}function F(e,t,a){var n=D[e];Y(n,e,n._index+t,S.delay+100,1==t?1:2,!1,!1,\"keydown\"==a.type)}function P(e){return ct.isArray(S.readonly)?S.readonly[e]:S.readonly}function O(e,t,a){var n=dt(D[t]||{},e),s=n._index-n._batch;return n.data=n.data||[],n.key=void 0!==n.key?n.key:t,n.label=void 0!==n.label?n.label:t,n._map={},n._array=ct.isArray(n.data),n._array&&(n._length=n.data.length,ct.each(n.data,function(e,t){n._map[A(t)]=e})),n.circular=void 0===S.circular?void 0===n.circular?n._array&&n._length>S.rows:n.circular:ct.isArray(S.circular)?S.circular[t]:S.circular,n.min=n._array?n.circular?-1/0:0:void 0===n.min?-1/0:n.min,n.max=n._array?n.circular?1/0:n._length-1:void 0===n.max?1/0:n.max,n._nr=t,n._index=C(n,g[t]),n._disabled={},n._batch=0,n._current=n._index,n._first=n._index-k,n._last=n._index+k,n._offset=n._first,a?(n._offset-=n._margin/y+(n._index-s),n._margin+=(n._index-s)*y):n._margin=0,n._refresh=function(e){dt(n._scroller.settings,{minScroll:c(n),maxScroll:T(n)}),n._scroller.refresh(e)},r[n.key]=n}function L(e,t,a,n,s){var i,r,o,l,c,d,u,m,h,T,x=\"\",f=N._tempSelected[t],p=e._disabled||{};for(i=a;i<=n;i++)o=E(e,i),h=o,c=void 0===(T=ct.isPlainObject(h)?h.display:h)?\"\":T,l=A(o),r=o&&void 0!==o.cssClass?o.cssClass:\"\",d=o&&void 0!==o.label?o.label:\"\",u=o&&o.invalid,m=void 0!==l&&l==g[t]&&!e.multiple,x+='
'+(1':\"\")+c+(1\":\"\")+\"
\";return x}function V(e,t,a,n){var s,i=D[e],r=n||i._disabled,o=C(i,t),l=H(i,o),c=l,d=l,u=0,m=0;if(!0===r[l]){for(s=0;o-u>=i.min&&r[c]&&s<100;)s++,c=H(i,o-++u);for(s=0;o+m2*k+1&&(d=l+(2*k+1)*(0',c=0;return ct.each(S.wheels,function(e,t){r+='
'+l+'
\",ct.each(t,function(e,t){N._tempSelected[c]=dt({},N._selected[c]);var a=O(t,c),n=!h||S.rows%2?u/2:0;D[c]=a,i+=S.maxWidth?S.maxWidth[c]||S.maxWidth:S.width?S.width[c]||S.width:0,s=void 0!==a.label?a.label:e,r+='
'+(h?'
':\"\")+'
'+l+'
'+(d?'
':\"\")+'
'+s+'
',r+=L(a,c,a._first,a._last)+\"
\",f&&(r+='
',r+=L(a,c,a._first+k-m+1,a._last-k+m,!0),r+=\"
\"),r+=\"
\",c++}),r+=\"
\"}),i&&(S.maxPopupWidth=i),r},N._attachEvents=function(e){s=bt(ct(\".mbsc-sc-btn\",e),F,S.delay,P,!0),ct(\".mbsc-sc-whl\",e).on(\"keydown\",n).on(\"keyup\",i)},N._detachEvents=function(){s&&s.stop();for(var e=0;e'+P.monthNames[s]+\"\"):o.replace(/M/,''+P.monthNamesShort[s]+\"\")});d.push({cssClass:\"mbsc-dt-whl-m\",label:P.monthText,data:r})}else if(/d/i.test(a)&&void 0===D.d){for(D.d=l,r=[],l++,s=1;s<32;s++)r.push({value:s,display:(/dd/i.test(E)?re(s):s)+(P.daySuffix||\"\")});d.push({cssClass:\"mbsc-dt-whl-d\",label:P.dayText,data:r})}c.push(d)}if(/time/i.test(k)){for(t=C.split(/\\|/.test(C)?\"|\":\"\"),n=0;n'+P.dayNames[n]+\"\"):a.replace(/D/,''+P.dayNamesShort[n]+\"\")});v._tempWheelArray[D.d]=d[D.d],v.changeWheel(m)}return{disabled:u,valid:d}}}}var ze={separator:\" \",dateFormat:\"mm/dd/yy\",dateDisplay:\"MMddyy\",timeFormat:\"h:ii A\",dayText:\"Day\",monthText:\"Month\",yearText:\"Year\",hourText:\"Hours\",minuteText:\"Minutes\",ampmText:\" \",secText:\"Seconds\",nowText:\"Now\",todayText:\"Today\"},Ye=0;s.getJson=function(e,t,a){var n,s,i,r,o,l,c;\"jsonp\"==a?(r=e,o=t,l=document.createElement(\"script\"),c=\"mbscjsonp\"+ ++Ye,window[c]=function(e){l.parentNode.removeChild(l),delete window[c],e&&o(e)},l.src=r+(0<=r.indexOf(\"?\")?\"&\":\"?\")+\"callback=\"+c,document.body.appendChild(l)):(n=e,s=t,(i=new XMLHttpRequest).open(\"GET\",n,!0),i.onload=function(){200<=this.status&&this.status<400&&s(JSON.parse(this.response))},i.onerror=function(){},i.send())};function Ie(N){var x,f,p,s,i,v,c,r,l,e,C,b,g,o,y,S,a,E,d,M,w,A,D,k,H,_,F,u,P,O,L,V,m,h,z,T,Y,I,j,J,W,R,$,B,K,G,U,Z,q,X,Q,ee,te,ae,ne,se,ie,re,oe,le,ce,de,ue,me,he,Te,xe,fe,pe,ve,be,ge,ye,Se,t,n,Me,we=1,De=this;function ke(e){e.hasClass(\"mbsc-cal-h\")||e.addClass(\"mbsc-cal-h\")}function _e(e){var t;e.hasClass(\"mbsc-cal-h\")?(t=e).hasClass(\"mbsc-cal-h\")&&t.removeClass(\"mbsc-cal-h\"):ke(e)}function Ne(e,t,a){e[t]=e[t]||[],e[t].push(a)}function Ce(e,o,l){var c,d,u,m,h,T,x,f=de.getDate,p=de.getYear,v=de.getMonth,b=de.getDay,g=de.getMaxDayOfMonth,y=p(o),S=v(o),M={};return e&&ct.each(e,function(e,t){if(c=t.d||t.start||t,d=c+\"\",t.start&&t.end)for(x=ht(xt(t.start,k,de)),T=ht(xt(t.end,k,de));x<=T;)Ne(M,x,t),x=f(p(x),v(x),b(x)+1);else if(vt.test(d))for(x=Ze(o,!1,+d.replace(\"w\",\"\"));x<=l;)Ne(M,x,t),x=f(p(x),v(x),b(x)+7);else if(pt.test(d)){var a=!!(d=d.split(\"/\"))[1],n=a?1:0,s=a?0:1,i=a?d[0]-1:S,r=a?+d[1]:+d[0];for(h=g(y,i),x=f(y,i,Math.min(r,h));x<=l;)u=p(x),m=v(x),b(x)===r&&Ne(M,x,t),h=g(u+n,m+s),x=f(u+n,m+s,Math.min(r,h))}else Ne(M,ht(xt(c,k,de)),t)}),M}function Ee(e){var t,a,n,s,i=!!W[e]&&W[e],r=!!R[e]&&R[e],o=r&&r[0].background?r[0].background:i&&i[0].background,l=\"\";if(r)for(t=0;t\";n+=\"\"}return s={marked:i,background:o,cssClass:l,markup:w[e]?w[e].join(\"\"):u?n:\"\"},dt(s,N._getDayProps(e,s))}function Ae(e){return' style=\"'+(j?\"transform: translateY(\"+100*e+\"%)\":\"left:\"+100*e*ce+\"%\")+'\"'}function He(e){return qe(e,re-1)>$&&(e=qe($,1-re)),e\"+r+\"\").text()+'\"'+(s?' style=\"background:'+s+(a&&i?\";color:\"+i:\"\")+';\"':\"\")+\">\"+(a?r:\"\")+\"\"}function Pe(e){var t=Ze(qe(e,-oe-ie),!1),a=Ze(qe(e,-oe+re+ie-1),!1);a=de.getDate(de.getYear(a),de.getMonth(a),de.getDay(a)+7*C),N._onGenMonth(t,a),V=Ce(de.invalid,t,a),Te=Ce(de.valid,t,a),W=Ce(de.labels||de.events||de.marked,t,a),R=Ce(de.colors,t,a),J=N._labels||W||R,(F=de.labels||N._labels)&&function(){w={};for(var v={},b=t,e=function(){b.getDay()==H&&(v={});for(var e=K,t=(J[b]||[]).slice(0).sort(de.eventOrder),a=t.length,n=[],s=void 0,i=void 0,r=0,o=0,l=0,c=void 0;r'+u+\"\"),s&&(v[r]=null,s._days.forEach(function(e){w[e][r]='
'+de.moreEventsText.replace(/{count}/,1)+\"
\"})),o++,r++}else if(s)i==l&&l++,ft(b,xt(s.end))&&(v[r]=null),n.push(Fe(s,i)),r++,o++,s._days.push(b);else if(l'+Fe(m,l,!0)+\"\"+Fe(m,l):Fe(m,l,!0)),r++,o++),l++}else n.push('
'),r++;w[b]=n,b=de.getDate(de.getYear(b),de.getMonth(b),de.getDay(b)+1)};b
';for(a=0;a<12;a++)a&&a%3==0&&(s+='
'),s+='
'+n+Se+\"
\",n++;return s+=\"
\"}function Ye(e,t){var a,n,s,i,r,o,l,c,d,u,m,h,T,x,f,p,v,b,g=1,y=de.getYear(e),S=de.getMonth(e),M=de.getDay(e),w=null!==de.defaultValue||N._hasValue?N.getDate(!0):null,D=de.getDate(y,S,M).getDay(),k=0
';for(v=0;v<7*C;v++)p=v+H-k,i=(n=de.getDate(y,S,p-D+M)).getFullYear(),r=n.getMonth(),o=n.getDate(),l=de.getMonth(n),c=de.getDay(n),f=de.getMaxDayOfMonth(i,r),d=i+\"-\"+(r+1)+\"-\"+o,a=\"none\"!==(u=dt({valid:!((b=n)
'),pe&&v%7==0&&(\"month\"==pe&&x&&1'+g+\"
\",g++),_+='
\"+c+\"
\"+(u.markup?'
'+u.markup+\"
\":\"\")+\"
\";return _+=\"
\"}function Ie(e,t,a){var n,s=de.getYear(e),i=de.getMonth(e),r=D?D.pos:0,o=\"\";if(A={},C)for(t||(he(\"onMonthLoading\",{year:s,month:i}),he(\"onPageLoading\",{firstDay:e})),Pe(e),n=0;n=qe(M,re-oe))&&(s=T?de.getMonth(i)-de.getMonth(M)+12*(de.getYear(i)-de.getYear(M)):Math.floor(mt(M,i)/(7*C)))&&(D.queue=[],D.focus=n&&a,Qe(D,s,a)),s&&a||je(e,n),t||(r=e,o=D&&D.$scroller,de.highlight&&D&&(ct(\".mbsc-selected\",o).removeClass(E).removeAttr(\"aria-selected\"),null===de.defaultValue&&!N._hasValue||ct('.mbsc-cal-day[data-full=\"'+Tt(r)+'\"]',o).addClass(E).attr(\"aria-selected\",\"true\"))),T||s||Re(M,!0),l=e,ne=!0),N._onSetDate(e,s),N._isSetDate=!1))}function Re(e,t){var a,n,s,i,r=de.getYear(e),o=de.getMonth(e),l=r+Se;if(O){if(Je(o,ae.$scroller),Je(r,ye.$scroller),Qe(ye,Math.floor(r/12)-Math.floor(de.getYear(ye.first)/12),!0),ct(\".mbsc-cal-cell\",ae.$scroller).removeClass(\"mbsc-disabled\"),r===Q)for(a=0;a$),$e(ct(\".mbsc-cal-prev-y\",f),de.getDate(r-1,o+1,1)<=Z),$e(ct(\".mbsc-cal-next-y\",f),de.getDate(r+1,o,1)>$)),c.attr(\"aria-label\",r).html(l),a=0;ad;s.callback&&(s.load(),s.callback(!0));s.first=x(h,i);s.pos+=f*ce;s.changing=!0;s.load=function(){if(v){for(o=0;oe.max;)s--;for(;n&&e.getFirst(i,1-n-e.offset)<=e.min;)n--}a=Math.round(b/e.pages),z&&a&&e.size!=a&&e.$scroller[j?\"height\":\"width\"](a),dt(e.scroller.settings,{snap:a,minScroll:(-e.pos*ce-s)*a,maxScroll:(-e.pos*ce+n)*a}),e.size=a,e.scroller.refresh()}}function at(e){N._onRefresh(e),N._isVisible&&_&&C&&(D&&D.changing?se=e:(Ie(M,e,!0),je(l)))}function nt(e){fe=\"touchstart\"===e.type}return y={},S=[],w={},he=N.trigger,Me=dt({},N.settings),t=(de=dt(N.settings,St,Me)).controls.join(\",\"),H=de.firstDay,I=de.rtl,ie=de.pageBuffer,pe=de.weekCounter,C=de.weeks,T=6==C,j=\"vertical\"==de.calendarScroll,o=N._getRespCont(),ve=\"full\"==de.weekDays?\"\":\"min\"==de.weekDays?\"Min\":\"Short\",n=de.layout||(\"inline\"==de.display||/top|bottom/.test(de.display)&&de.touchUi?\"liquid\":\"\"),g=(z=\"liquid\"==n)?null:de.calendarWidth,ce=I&&!j?-1:1,a=\"mbsc-disabled \"+(de.disabledClass||\"\"),d=\"mbsc-selected \"+(de.selectedTabClass||\"\"),E=\"mbsc-selected \"+(de.selectedClass||\"\"),K=Math.max(1,Math.floor(((de.calendarHeight||0)/C-45)/18)),t.match(/calendar/)&&(y.calendar=1,_=!0),t.match(/date/)&&!_&&(y.date=1),t.match(/time/)&&(y.time=1),de.controls.forEach(function(e){y[e]&&S.push(e)}),O=de.quickNav&&_&&T,be=de.yearChange&&T,z&&_&&\"center\"==de.display&&(N._isFullScreen=!0),de.layout=n,de.preset=(y.date||_?\"date\":\"\")+(y.time?\"time\":\"\"),e=yt.call(this,N),te=be?de.monthNamesShort:de.monthNames,Se=de.yearSuffix||\"\",ee=(de.dateWheels||de.dateFormat).search(/m/i),ge=(de.dateWheels||de.dateFormat).search(/y/i),k=N._format,de.min&&(Z=ht(xt(de.min,k,de)),Q=de.getYear(Z),X=de.getMonth(Z),q=de.getDate(12*Math.floor(Q/12),0,1)),de.max&&($=ht(xt(de.max,k,de)),U=de.getYear($),G=de.getMonth($),B=de.getDate(12*Math.floor(U/12),0,1)),N._minDate=Z,N._maxDate=$,N.refresh=function(){at(!1)},N.redraw=function(){at(!0)},N.navigate=function(e,t){We(xt(e,k,de),!0,t)},N.changeTab=function(e){N._isVisible&&y[e]&&xe!=e&&(xe=e,ct(\".mbsc-cal-tab\",f).removeClass(d).removeAttr(\"aria-selected\"),ct('.mbsc-cal-tab[data-control=\"'+e+'\"]',f).addClass(d).attr(\"aria-selected\",\"true\"),P&&(v.addClass(\"mbsc-cal-h\"),y[xe].removeClass(\"mbsc-cal-h\")),\"calendar\"==xe&&We(N.getDate(!0),!1,!0),N._showDayPicker(),N.trigger(\"onTabChange\",{tab:xe}))},N._checkSize=!0,N._onGenMonth=rt,N._onSetDate=rt,N._onRefresh=rt,N._getDayProps=rt,N._prepareObj=Ce,N._showDayPicker=function(){O&&(ke(r),ke(s))},N._selectDay=N.__selectDay=function(e,t,a){var n=N.live;ne=de.outerMonthChange,h=!0,N.setDate(a,n,1e3,!n,!0),n&&he(\"onSet\",{valueText:N._value})},N._checkBtn=$e,dt(e,{labels:null,compClass:\"mbsc-calendar mbsc-dt mbsc-sc\",eventOrder:function(e,t){var a=e.start?xt(e.start):null,n=t.start?xt(t.start):null,s=(e.end&&xt(e.end),t.end&&xt(t.end),vt.test(e.d)||pt.test(e.d)),i=vt.test(t.d)||pt.test(t.d),r=e.d?s?e.d:xt(e.d):a,o=t.d?i?t.d:xt(t.d):n,l=r.getTime?e.allDay?1:r.getTime():0,c=o.getTime?t.allDay?1:o.getTime():0;return l==c?e.text>t.text?1:-1:l-c},onMarkupReady:function(e){var a,n,t=0;f=ct(e.target),i=ct(\".mbsc-fr-c\",f),l=N.getDate(!0),b=0,_&&(u=!(!de.marked&&!de.data||de.labels||de.multiLabel||de.showEventCount),ne=!0,xe=\"calendar\",re=\"auto\"==de.months?Math.max(1,Math.min(3,Math.floor((g||lt(o))/280))):+de.months,le=re+2*ie,j=j&&re<2,me=void(oe=0)===de.showOuterDays?re<2&&!j||!T:de.showOuterDays,M=Ze(He(l),T),i.append(function(){var e,t,a,n,s,i,r=\"\",o=I?de.btnCalNextClass:de.btnCalPrevClass,l=I?de.btnCalPrevClass:de.btnCalNextClass;for(s='
',t=0;t<(C?re:1);t++)s+='
';if(s+='
',be&&(r='
'),C&&(i=Ie(M)),e='
'+(ge\",C){for(e+='
',a=0;a',t=0;t<7;t++)e+='
'+de[\"dayNames\"+ve][n]+\"
\";e+=\"
\"}e+='
'+i+\"
\"}if(e+=\"
\",O){for(e+='
',t=0;t<3;t++){for(e+='
',a=0;a<12;a++)a&&a%3==0&&(e+='
'),e+='
'+(1==t?de.monthNamesShort[a]:\" \")+\"
\";e+=\"
\"}for(e+=\"
\",e+='
',t=-1;t<2;t++)e+=ze(Xe(M,t),t);e+=\"
\"}return e+=\"
\"}()),p=ct(\".mbsc-cal-month\",f),c=ct(\".mbsc-cal-year\",f),x=ct(\".mbsc-cal-day-scroll-c\",f)),O&&(r=ct(\".mbsc-cal-year-picker\",f),s=ct(\".mbsc-cal-month-picker\",f)),v=ct(\".mbsc-w-p\",f),1
',S.forEach(function(e,t){n=de[(\"calendar\"==e?\"date\":e)+\"Text\"],a+='
'+n+\"\":' tabindex=\"0\">'+n)+\"
\"}),a+=\"
\")),[\"date\",\"time\",\"calendar\"].forEach(function(e){y[e]?(y[e]=v.eq(t),t++):\"date\"==e&&!y.date&&_&&(v.eq(t).remove(),t++)}),S.forEach(function(e){i.append(y[e])}),!_&&y.date&&y.date.css(\"position\",\"relative\"),N._scrollers=[],function(){if(_&&C){var e=ct(\".mbsc-cal-scroll-c\",f);D=et(e[0],Z,$,ie,oe,re,le,M,Ke,Oe,Le,Ye,qe),O&&(ae=et(e[1],null,null,1,0,1,3,M,Ge),ye=et(e[2],q,B,1,0,1,3,M,Ue,rt,rt,ze,Xe),N.tap(p,function(){_e(s),ke(r)}),N.tap(c,function(){_e(r),ke(s)})),bt(ct(\".mbsc-cal-btn\",f),function(e,t,a,n){Qe(D,t,!0,n)}),Le(M),null===de.defaultValue&&!N._hasValue||N._multiple||(N._activeElm=D.$active[0]),it(x[0],\"touchstart\",nt,{passive:!0}),it(x[0],\"mousedown\",nt),x.on(\"keydown\",function(e){var t,a=de.getYear(l),n=de.getMonth(l),s=de.getDay(l);switch(e.keyCode){case 32:Ke(D.$active,e);break;case 37:t=de.getDate(a,n,s-1*ce);break;case 39:t=de.getDate(a,n,s+1*ce);break;case 38:t=de.getDate(a,n,s-7);break;case 40:t=de.getDate(a,n,s+7);break;case 36:t=de.getDate(a,n,1);break;case 35:t=de.getDate(a,n+1,0);break;case 33:t=e.altKey?de.getDate(a-1,n,s):T?de.getDate(a,n-1,s):de.getDate(a,n,s-7*C);break;case 34:t=e.altKey?de.getDate(a+1,n,s):T?de.getDate(a,n+1,s):de.getDate(a,n,s+7*C)}t&&(e.preventDefault(),We(t,!0,!1,!0))})}N.tap(ct(\".mbsc-cal-tab\",f),function(){N.changeTab(ct(this).attr(\"data-control\"))})}()},onShow:function(){_&&C&&Re(M)},onHide:function(){clearTimeout(L),N._scrollers.forEach(function(e){e.destroy()}),xe=ye=ae=D=A=null},onValidated:function(e){var t,a,n=e.index,s=N._order;a=N.getDate(!0),ue=a,h?t=\"calendar\":void 0!==n&&(t=s.dd==n||s.d==n||s.m==n||s.y==n?\"date\":\"time\"),he(\"onSetDate\",{date:a,control:t}),\"time\"!==t&&We(a,!1,!!e.time,h&&!N._multiple),h=!1},onPosition:function(e){var t,a,n,s,i,r,o,l=e.oldHeight,c=e.windowHeight;if(P=(e.hasTabs||!0===de.tabs||!1!==de.tabs&&z)&&1=de.breakPointMd?ct(e.target).addClass(\"mbsc-fr-md\"):ct(e.target).removeClass(\"mbsc-fr-md\")),P?(f.addClass(\"mbsc-cal-tabbed\"),xe=ct(\".mbsc-cal-tab.mbsc-selected\",f).attr(\"data-control\"),v.addClass(\"mbsc-cal-h\"),y[xe].removeClass(\"mbsc-cal-h\")):(f.removeClass(\"mbsc-cal-tabbed\"),v.removeClass(\"mbsc-cal-h\")),N._isFullScreen&&(x.height(\"\"),o=c-(i=e.popup.offsetHeight)+x[0].offsetHeight,i<=c&&x.height(o)),F&&C&&c!=l){var d=o||x[0].offsetHeight,u=x.find(\".mbsc-cal-txt,.mbsc-cal-txt-ph\")[0],m=u.offsetTop,h=u.offsetHeight,T=Math.max(1,Math.floor((d/C-m)/(h+2)));K!=T&&(K=T,N.redraw())}if(_&&C){if(s=(r=z||j||P?x[0][j?\"offsetHeight\":\"offsetWidth\"]:g||280*re)!=b,b=r,z&&s&&be)for(te=de.maxMonthWidth>p[0].offsetWidth?de.monthNamesShort:de.monthNames,a=de.getYear(M),n=de.getMonth(M),t=0;t=Be[n];++n)l-=Be[n];return[d,n+1,l+1]}function Ge(e){return e<-1e-7?Math.ceil(e-1e-7):Math.floor(e+1e-7)}function Ue(e,t,a){e=parseInt(e),t=parseInt(t),a=parseInt(a);var n,s,i,r,o=new Array(0,0,0);return n=1582Be[n-1]+(12==n&&(a-979)%33%4==0)));)i--;return i}},y.i18n.fa={setText:\"تاييد\",cancelText:\"انصراف\",clearText:\"واضح \",selectedText:\"{count} منتخب\",calendarSystem:\"jalali\",dateFormat:\"yy/mm/dd\",dayNames:[\"يکشنبه\",\"دوشنبه\",\"سه‌شنبه\",\"چهارشنبه\",\"پنج‌شنبه\",\"جمعه\",\"شنبه\"],dayNamesShort:[\"ی\",\"د\",\"س\",\"چ\",\"پ\",\"ج\",\"ش\"],dayNamesMin:[\"ی\",\"د\",\"س\",\"چ\",\"پ\",\"ج\",\"ش\"],dayText:\"روز\",hourText:\"ساعت\",minuteText:\"دقيقه\",monthNames:[\"فروردين\",\"ارديبهشت\",\"خرداد\",\"تير\",\"مرداد\",\"شهريور\",\"مهر\",\"آبان\",\"آذر\",\"دی\",\"بهمن\",\"اسفند\"],monthNamesShort:[\"فروردين\",\"ارديبهشت\",\"خرداد\",\"تير\",\"مرداد\",\"شهريور\",\"مهر\",\"آبان\",\"آذر\",\"دی\",\"بهمن\",\"اسفند\"],monthText:\"ماه\",secText:\"ثانيه\",timeFormat:\"HH:ii\",timeWheels:\"iiHH\",yearText:\"سال\",nowText:\"اکنون\",amText:\"ب\",pmText:\"ص\",todayText:\"امروز\",firstDay:6,rtl:!0,dateText:\"تاریخ \",timeText:\"زمان \",closeText:\"نزدیک\",allDayText:\"تمام روز\",noEventsText:\"هیچ رویداد\",eventText:\"رویداد\",eventsText:\"رویدادها\",moreEventsText:\"{count} مورد دیگر\",fromText:\"شروع \",toText:\"پایان\",wholeText:\"تمام\",fractionText:\"کسر\",unitText:\"واحد\",labels:[\"سال\",\"ماه\",\"روز\",\"ساعت\",\"دقیقه\",\"ثانیه\",\"\"],labelsShort:[\"سال\",\"ماه\",\"روز\",\"ساعت\",\"دقیقه\",\"ثانیه\",\"\"],startText:\"شروع\",stopText:\"پايان\",resetText:\"تنظیم مجدد\",lapText:\"Lap\",hideText:\"پنهان کردن\",backText:\"پشت\",undoText:\"واچیدن\"},y.i18n[\"ru-RU\"]=y.i18n.ru={setText:\"Установить\",cancelText:\"Отмена\",clearText:\"Очистить\",selectedText:\"{count} Выбрать\",dateFormat:\"dd.mm.yy\",dayNames:[\"воскресенье\",\"понедельник\",\"вторник\",\"среда\",\"четверг\",\"пятница\",\"суббота\"],dayNamesShort:[\"вс\",\"пн\",\"вт\",\"ср\",\"чт\",\"пт\",\"сб\"],dayNamesMin:[\"в\",\"п\",\"в\",\"с\",\"ч\",\"п\",\"с\"],dayText:\"День\",delimiter:\".\",hourText:\"Час\",minuteText:\"Минут\",monthNames:[\"Январь\",\"Февраль\",\"Март\",\"Апрель\",\"Май\",\"Июнь\",\"Июль\",\"Август\",\"Сентябрь\",\"Октябрь\",\"Ноябрь\",\"Декабрь\"],monthNamesShort:[\"Янв\",\"Фев\",\"Мар\",\"Апр\",\"Май\",\"Июн\",\"Июл\",\"Авг\",\"Сен\",\"Окт\",\"Ноя\",\"Дек\"],monthText:\"Месяц\",secText:\"Секунд\",timeFormat:\"HH:ii\",yearText:\"Год\",nowText:\"Сейчас\",amText:\"am\",pmText:\"pm\",todayText:\"Cегодня\",firstDay:1,dateText:\"Дата\",timeText:\"Время\",closeText:\"Закрыть\",allDayText:\"Весь день\",noEventsText:\"Нет событий\",eventText:\"Мероприятия\",eventsText:\"Мероприятия\",moreEventsText:\"Ещё {count}\",fromText:\"Начало\",toText:\"Конец\",wholeText:\"Целое\",fractionText:\"Дробное\",unitText:\"Единица\",labels:[\"Лет\",\"Месяцев\",\"Дней\",\"Часов\",\"Минут\",\"Секунд\",\"\"],labelsShort:[\"Лет\",\"Мес\",\"Дн\",\"Час\",\"Мин\",\"Сек\",\"\"],startText:\"Старт\",stopText:\"Стоп\",resetText:\"Сбросить\",lapText:\"Круг\",hideText:\"Скрыть\",backText:\"назад\",undoText:\"ОтменитЬ\",offText:\"O\",onText:\"I\",decimalSeparator:\",\",thousandsSeparator:\" \"},y.i18n.lt={setText:\"OK\",cancelText:\"Atšaukti\",clearText:\"Išvalyti\",selectedText:\"Pasirinktas {count}\",selectedPluralText:\"Pasirinkti {count}\",dateFormat:\"yy-mm-dd\",dayNames:[\"Sekmadienis\",\"Pirmadienis\",\"Antradienis\",\"Trečiadienis\",\"Ketvirtadienis\",\"Penktadienis\",\"Šeštadienis\"],dayNamesShort:[\"S\",\"Pr\",\"A\",\"T\",\"K\",\"Pn\",\"Š\"],dayNamesMin:[\"S\",\"Pr\",\"A\",\"T\",\"K\",\"Pn\",\"Š\"],dayText:\"Diena\",hourText:\"Valanda\",minuteText:\"Minutes\",monthNames:[\"Sausis\",\"Vasaris\",\"Kovas\",\"Balandis\",\"Gegužė\",\"Birželis\",\"Liepa\",\"Rugpjūtis\",\"Rugsėjis\",\"Spalis\",\"Lapkritis\",\"Gruodis\"],monthNamesShort:[\"Sau\",\"Vas\",\"Kov\",\"Bal\",\"Geg\",\"Bir\",\"Lie\",\"Rugp\",\"Rugs\",\"Spa\",\"Lap\",\"Gruo\"],monthText:\"Mėnuo\",secText:\"Sekundes\",amText:\"am\",pmText:\"pm\",timeFormat:\"HH:ii\",yearText:\"Metai\",nowText:\"Dabar\",todayText:\"Šiandien\",firstDay:1,dateText:\"Data\",timeText:\"Laikas\",closeText:\"Uždaryti\",allDayText:\"Visą dieną\",noEventsText:\"Nėra įvykių\",eventText:\"Įvykių\",eventsText:\"Įvykiai\",moreEventsText:\"Dar {count}\",fromText:\"Nuo\",toText:\"Iki\",wholeText:\"Visas\",fractionText:\"Frakcija\",unitText:\"Vienetas\",labels:[\"Metai\",\"Mėnesiai\",\"Dienos\",\"Valandos\",\"Minutes\",\"Sekundes\",\"\"],labelsShort:[\"m\",\"mėn.\",\"d\",\"h\",\"min\",\"s\",\"\"],startText:\"Pradėti\",stopText:\"Sustabdyti\",resetText:\"Išnaujo\",lapText:\"Ratas\",hideText:\"Slėpti\",backText:\"Atgal\",undoText:\"Anuliuoti\",offText:\"Išj.\",onText:\"Įj.\",decimalSeparator:\",\",thousandsSeparator:\" \"},y.i18n.ca={setText:\"Acceptar\",cancelText:\"Cancel·lar\",clearText:\"Esborrar\",selectedText:\"{count} seleccionat\",selectedPluralText:\"{count} seleccionats\",dateFormat:\"dd/mm/yy\",dayNames:[\"Diumenge\",\"Dilluns\",\"Dimarts\",\"Dimecres\",\"Dijous\",\"Divendres\",\"Dissabte\"],dayNamesShort:[\"Dg\",\"Dl\",\"Dt\",\"Dc\",\"Dj\",\"Dv\",\"Ds\"],dayNamesMin:[\"Dg\",\"Dl\",\"Dt\",\"Dc\",\"Dj\",\"Dv\",\"Ds\"],dayText:\"Dia\",hourText:\"Hores\",minuteText:\"Minuts\",monthNames:[\"Gener\",\"Febrer\",\"Març\",\"Abril\",\"Maig\",\"Juny\",\"Juliol\",\"Agost\",\"Setembre\",\"Octubre\",\"Novembre\",\"Desembre\"],monthNamesShort:[\"Gen\",\"Feb\",\"Mar\",\"Abr\",\"Mai\",\"Jun\",\"Jul\",\"Ago\",\"Set\",\"Oct\",\"Nov\",\"Des\"],monthText:\"Mes\",secText:\"Segons\",timeFormat:\"HH:ii\",yearText:\"Any\",nowText:\"Ara\",pmText:\"pm\",amText:\"am\",todayText:\"Avui\",firstDay:1,dateText:\"Data\",timeText:\"Temps\",closeText:\"Tancar\",allDayText:\"Tot el dia\",noEventsText:\"Cap esdeveniment\",eventText:\"Esdeveniments\",eventsText:\"Esdeveniments\",moreEventsText:\"{count} més\",fromText:\"Iniciar\",toText:\"Final\",wholeText:\"Sencer\",fractionText:\"Fracció\",unitText:\"Unitat\",labels:[\"Anys\",\"Mesos\",\"Dies\",\"Hores\",\"Minuts\",\"Segons\",\"\"],labelsShort:[\"Anys\",\"Mesos\",\"Dies\",\"Hrs\",\"Mins\",\"Secs\",\"\"],startText:\"Iniciar\",stopText:\"Aturar\",resetText:\"Reiniciar\",lapText:\"Volta\",hideText:\"Amagar\",backText:\"Enrere\",undoText:\"Desfés\",offText:\"No\",onText:\"Si\"},y.i18n.da={setText:\"Sæt\",cancelText:\"Annuller\",clearText:\"Ryd\",selectedText:\"{count} valgt\",selectedPluralText:\"{count} valgt\",dateFormat:\"dd/mm/yy\",dayNames:[\"Søndag\",\"Mandag\",\"Tirsdag\",\"Onsdag\",\"Torsdag\",\"Fredag\",\"Lørdag\"],dayNamesShort:[\"Søn\",\"Man\",\"Tir\",\"Ons\",\"Tor\",\"Fre\",\"Lør\"],dayNamesMin:[\"S\",\"M\",\"T\",\"O\",\"T\",\"F\",\"L\"],dayText:\"Dag\",hourText:\"Timer\",minuteText:\"Minutter\",monthNames:[\"Januar\",\"Februar\",\"Marts\",\"April\",\"Maj\",\"Juni\",\"Juli\",\"August\",\"September\",\"Oktober\",\"November\",\"December\"],monthNamesShort:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"Maj\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Okt\",\"Nov\",\"Dec\"],monthText:\"Måned\",secText:\"Sekunder\",amText:\"am\",pmText:\"pm\",timeFormat:\"HH.ii\",yearText:\"År\",nowText:\"Nu\",todayText:\"I dag\",firstDay:1,dateText:\"Dato\",timeText:\"Tid\",closeText:\"Luk\",allDayText:\"Hele dagen\",noEventsText:\"Ingen begivenheder\",eventText:\"Begivenheder\",eventsText:\"Begivenheder\",moreEventsText:\"{count} mere\",fromText:\"Start\",toText:\"Slut\",wholeText:\"Hele\",fractionText:\"Dele\",unitText:\"Enhed\",labels:[\"År\",\"Måneder\",\"Dage\",\"Timer\",\"Minutter\",\"Sekunder\",\"\"],labelsShort:[\"År\",\"Mdr\",\"Dg\",\"Timer\",\"Min\",\"Sek\",\"\"],startText:\"Start\",stopText:\"Stop\",resetText:\"Nulstil\",lapText:\"Omgang\",hideText:\"Skjul\",offText:\"Fra\",onText:\"Til\",backText:\"Tilbage\",undoText:\"Fortryd\"},y.i18n.he={rtl:!0,setText:\"שמירה\",cancelText:\"ביטול\",clearText:\"נקה\",selectedText:\"{count} נבחר\",selectedPluralText:\"{count} נבחרו\",dateFormat:\"dd/mm/yy\",dayNames:[\"ראשון\",\"שני\",\"שלישי\",\"רביעי\",\"חמישי\",\"שישי\",\"שבת\"],dayNamesShort:[\"א'\",\"ב'\",\"ג'\",\"ד'\",\"ה'\",\"ו'\",\"ש'\"],dayNamesMin:[\"א\",\"ב\",\"ג\",\"ד\",\"ה\",\"ו\",\"ש\"],dayText:\"יום\",hourText:\"שעות\",minuteText:\"דקות\",monthNames:[\"ינואר\",\"פברואר\",\"מרץ\",\"אפריל\",\"מאי\",\"יוני\",\"יולי\",\"אוגוסט\",\"ספטמבר\",\"אוקטובר\",\"נובמבר\",\"דצמבר\"],monthNamesShort:[\"ינו\",\"פבר\",\"מרץ\",\"אפר\",\"מאי\",\"יונ\",\"יול\",\"אוג\",\"ספט\",\"אוק\",\"נוב\",\"דצמ\"],monthText:\"חודש\",secText:\"שניות\",amText:\"am\",pmText:\"pm\",timeFormat:\"HH:ii\",timeWheels:\"iiHH\",yearText:\"שנה\",nowText:\"עכשיו\",firstDay:0,dateText:\"תאריך\",timeText:\"זמן\",closeText:\"סגירה\",todayText:\"היום\",allDayText:\"כל היום\",noEventsText:\"אין אירועים\",eventText:\"מִקרֶה\",eventsText:\"מִקרֶה\",moreEventsText:\"אירוע אחד נוסף\",moreEventsPluralText:\"{count} אירועים נוספים\",fromText:\"התחלה\",toText:\"סיום\",wholeText:\"כֹּל\",fractionText:\"שבריר\",unitText:\"יחידה\",labels:[\"שנים\",\"חודשים\",\"ימים\",\"שעות\",\"דקות\",\"שניים\",\"\"],labelsShort:[\"שנים\",\"חודשים\",\"ימים\",\"שעות\",\"דקות\",\"שניים\",\"\"],startText:\"התחל\",stopText:\"עצור\",resetText:\"אתחול\",lapText:\"הקפה\",hideText:\"הסתר\",offText:\"כיבוי\",onText:\"הפעלה\",backText:\"חזור\",undoText:\"ביטול פעולה\"},ie.hijri={getYear:function(e){return Ue(e.getFullYear(),e.getMonth()+1,e.getDate())[0]},getMonth:function(e){return--Ue(e.getFullYear(),e.getMonth()+1,e.getDate())[1]},getDay:function(e){return Ue(e.getFullYear(),e.getMonth()+1,e.getDate())[2]},getDate:function(e,t,a,n,s,i,r){t<0&&(e+=Math.floor(t/12),t=t%12?12+t%12:0),11.mbsc-fr,.mbsc-fr-lock-ctx .mbsc-fr-persp,.mbsc-fr-lock-ctx .mbsc-fr-overlay{position:absolute}.mbsc-fr-persp{pointer-events:auto;overflow:hidden}.mbsc-fr-overlay{z-index:1;background:rgba(0,0,0,0.7)}.mbsc-fr-liq .mbsc-fr-popup{max-width:100%}.mbsc-fr-top .mbsc-fr-popup,.mbsc-fr-bottom .mbsc-fr-popup{width:100%;max-width:100%}.mbsc-fr-top .mbsc-fr-w,.mbsc-fr-bottom .mbsc-fr-w{padding-left:constant(safe-area-inset-left);padding-left:env(safe-area-inset-left);padding-right:constant(safe-area-inset-right);padding-right:env(safe-area-inset-right)}.mbsc-fr-bottom .mbsc-fr-w{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.mbsc-fr-top .mbsc-fr-popup{padding-top:constant(safe-area-inset-top);padding-top:env(safe-area-inset-top)}.mbsc-fr-inline{position:relative;pointer-events:auto;z-index:0}.mbsc-fr-inline .mbsc-fr-popup{position:static;max-width:100%}.mbsc-fr-bubble,.mbsc-fr-bubble .mbsc-fr-persp{position:absolute}.mbsc-fr-bubble .mbsc-fr-arr-w{position:absolute;z-index:1;left:0;width:100%;overflow:hidden}.mbsc-fr-bubble-top .mbsc-fr-arr-w{top:100%}.mbsc-fr-bubble-bottom .mbsc-fr-arr-w{bottom:100%}.mbsc-fr-bubble .mbsc-fr-arr-i{margin:0 1.75em;position:relative;direction:ltr}.mbsc-fr-bubble .mbsc-fr-arr{display:block}.mbsc-fr-arr{display:none;position:relative;left:0;width:2em;height:2em;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);margin-left:-1em}.mbsc-fr-bubble-bottom .mbsc-fr-arr{top:1.333334em}.mbsc-fr-bubble-top .mbsc-fr-arr{top:-1.333334em}.mbsc-fr-hdn{width:0;height:0;margin:0;padding:0;border:0;overflow:hidden}.mbsc-fr-hdr{overflow:hidden;text-overflow:ellipsis;text-align:center}.mbsc-fr-btn{overflow:hidden;display:block;text-decoration:none;white-space:nowrap;text-overflow:ellipsis;vertical-align:top}.mbsc-fr-btn-e{cursor:pointer}.mbsc-fr-btn.mbsc-disabled{cursor:not-allowed}.mbsc-fr-btn-cont{display:table;width:100%;text-align:center;white-space:normal}.mbsc-fr-btn-cont .mbsc-disabled{opacity:.3}.mbsc-fr-btn-w{vertical-align:top;display:table-cell;position:relative;z-index:5}.mbsc-fr-btn-w .mbsc-fr-btn:before{padding:.375em}.mbsc-fr-pointer.mbsc-fr .mbsc-fr-w .mbsc-fr-inline .mbsc-fr-w{box-shadow:none;border-radius:0}.mbsc-fr-pointer .mbsc-ltr .mbsc-fr-w,.mbsc-fr-pointer .mbsc-ltr .mbsc-sc-whl .mbsc-sel-gr{text-align:left}.mbsc-fr-pointer .mbsc-rtl .mbsc-fr-w,.mbsc-fr-pointer .mbsc-rtl .mbsc-sc-whl .mbsc-sel-gr{text-align:right}.mbsc-fr-pointer.mbsc-fr-top .mbsc-fr-w,.mbsc-fr-pointer.mbsc-fr-bottom .mbsc-fr-w{pointer-events:auto;display:inline-block;margin-top:3em;margin-bottom:3em;max-width:98%}.mbsc-fr-pointer.mbsc-fr-top .mbsc-fr-popup,.mbsc-fr-pointer.mbsc-fr-bottom .mbsc-fr-popup{text-align:center;pointer-events:none}.mbsc-fr-pointer.mbsc-fr-bubble .mbsc-fr-arr-w{display:none}.mbsc-fr-pointer .mbsc-sel-empty{text-align:center}.mbsc-mobiscroll .mbsc-fr-w{min-width:16em;font-size:16px}.mbsc-mobiscroll .mbsc-fr-hdr{padding:0 .6666em;padding-top:.6666em;font-size:.75em;text-transform:uppercase;min-height:2em;line-height:2em}.mbsc-mobiscroll .mbsc-fr-btn-cont{display:block;overflow:hidden;text-align:right;padding:0 .5em .5em .5em}.mbsc-mobiscroll .mbsc-ltr .mbsc-fr-btn-cont{text-align:right}.mbsc-mobiscroll .mbsc-rtl .mbsc-fr-btn-cont{text-align:left}.mbsc-mobiscroll .mbsc-fr-btn-w{display:inline-block}.mbsc-mobiscroll .mbsc-fr-btn{height:2.5em;line-height:2.5em;padding:0 1em;text-transform:uppercase}.mbsc-mobiscroll.mbsc-fr-center .mbsc-fr-w,.mbsc-mobiscroll.mbsc-fr-bubble .mbsc-fr-w{border-radius:.25em}.mbsc-mobiscroll.mbsc-fr-no-overlay .mbsc-fr-arr{box-shadow:0 0 1em rgba(0,0,0,0.2)}.mbsc-mobiscroll.mbsc-fr-no-overlay .mbsc-fr-w{box-shadow:0 0.125em 1em rgba(0,0,0,0.3)}.mbsc-mobiscroll.mbsc-fr-no-overlay.mbsc-fr-bubble .mbsc-fr-w{border-radius:.25em}.mbsc-mobiscroll .mbsc-fr-overlay{background:rgba(0,0,0,0.7)}.mbsc-mobiscroll .mbsc-fr-w{background:#f7f7f7;color:#454545}.mbsc-mobiscroll .mbsc-fr-hdr,.mbsc-mobiscroll .mbsc-fr-btn{color:#4eccc4}.mbsc-mobiscroll .mbsc-fr-btn.mbsc-active,.mbsc-mobiscroll.mbsc-no-touch .mbsc-fr-btn-e:not(.mbsc-disabled):hover{background:rgba(78,204,196,0.3)}.mbsc-mobiscroll .mbsc-fr-arr{background:#f7f7f7}.mbsc-sc-whl-o,.mbsc-sc-btn{-webkit-transform:translateZ(0)}.mbsc-sc .mbsc-sc-whl-c,.mbsc-sc .mbsc-sc-whl-l,.mbsc-sc .mbsc-sc-whl{box-sizing:content-box}.mbsc-sc-whl-gr-c,.mbsc-sc-itm{box-sizing:border-box}.mbsc-sc-whl-gr-c{position:relative;max-width:100%;vertical-align:middle;display:inline-block;overflow:hidden}.mbsc-fr-bottom .mbsc-sc-whl-gr-c:first-child:last-child,.mbsc-fr-top .mbsc-sc-whl-gr-c:first-child:last-child,.mbsc-fr-inline .mbsc-sc-whl-gr-c:first-child:last-child,.mbsc-fr-liq .mbsc-sc-whl-gr-c{display:block}.mbsc-sc-whl-gr{margin:0 auto;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.mbsc-sc-whl-w{max-width:100%;position:relative;-ms-touch-action:none;touch-action:none}.mbsc-fr-pointer .mbsc-sc-whl-w,.mbsc-fr-liq .mbsc-sc-whl-w{-webkit-box-flex:1;-webkit-flex:1 auto;-ms-flex:1 auto;flex:1 auto}.mbsc-sc-whl-o{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none;display:none}.mbsc-sc-whl-l{display:none;position:absolute;top:50%;left:0;right:0;pointer-events:none}.mbsc-sc-whl-w .mbsc-sc-whl-l{display:block}.mbsc-sc-whl{overflow:hidden;border-top:1px solid transparent;border-bottom:1px solid transparent;margin:-1px 0}.mbsc-sc-whl-c{position:relative;z-index:1;top:50%;border-top:1px solid transparent;border-bottom:1px solid transparent}.mbsc-sc-whl-sc{position:relative}.mbsc-sc-itm{position:relative;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mbsc-sc-itm-inv,.mbsc-sc-itm-inv-h{opacity:.3}.mbsc-sc-lbl{position:absolute;left:0;right:0;bottom:100%;display:none}.mbsc-sc-lbl-v .mbsc-sc-lbl{display:block}.mbsc-sc-btn{position:absolute;z-index:2;left:0;right:0;cursor:pointer;opacity:1;text-align:center;transition:opacity .2s linear}.mbsc-sc-btn:before{position:absolute;top:0;right:0;left:0}.mbsc-sc-whl-a .mbsc-sc-btn{opacity:0}.mbsc-sc-btn-plus{bottom:0}.mbsc-sc-btn-minus{top:0}.mbsc-sc-whl-gr-3d{-webkit-perspective:1200px;perspective:1200px}.mbsc-sc-whl-gr-3d .mbsc-sc-whl{overflow:visible}.mbsc-sc-whl-gr-3d .mbsc-sc-whl-c{overflow:hidden}.mbsc-sc-whl-gr-3d .mbsc-sc-whl-w,.mbsc-sc-whl-gr-3d .mbsc-sc-whl{transform-style:preserve-3d}.mbsc-sc-whl-3d{position:absolute;top:50%;left:0;right:0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.mbsc-sc-itm-3d{position:absolute;width:100%;top:0;left:0;cursor:pointer;-webkit-backface-visibility:hidden;backface-visibility:hidden}.mbsc-sc-itm-del{display:none}.mbsc-sc-itm-ml{width:100%;height:auto;display:inline-block;vertical-align:middle;white-space:normal}.mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{position:absolute;top:0;left:0;width:1em;text-align:center}.mbsc-fr-pointer .mbsc-fr-w .mbsc-sc-whl-gr-c,.mbsc-fr-pointer .mbsc-fr-w .mbsc-sc-whl-gr{padding:0}.mbsc-fr-pointer .mbsc-sc-whl-gr-c:first-child:last-child{display:block}.mbsc-sc-bar-c{position:absolute;z-index:4;top:0;bottom:0;right:0;width:10px;opacity:0;background:rgba(0,0,0,0.05);transform:translateZ(0);transition:opacity .2s}.mbsc-sc-bar{position:absolute;right:0;top:0;width:10px;height:100%}.mbsc-sc-bar:after{content:'';position:absolute;top:2px;right:2px;bottom:2px;left:2px;background:rgba(0,0,0,0.5);border-radius:3px}.mbsc-sc-whl-w:hover .mbsc-sc-bar-c,.mbsc-sc-whl-anim .mbsc-sc-bar-c{opacity:1}.mbsc-mobiscroll .mbsc-sc-whl-gr{padding:.5em .25em}.mbsc-mobiscroll .mbsc-sc-whl-w{margin:0 .25em}.mbsc-mobiscroll .mbsc-sc-lbl-v .mbsc-sc-whl-w{margin-top:1.875em}.mbsc-mobiscroll .mbsc-sc-lbl{font-size:.75em;line-height:2.5em;text-transform:uppercase}.mbsc-mobiscroll .mbsc-sc-cp .mbsc-sc-whl-w{padding:2em 0}.mbsc-mobiscroll .mbsc-sc-btn{height:2em;line-height:2em}.mbsc-mobiscroll .mbsc-sc-btn:before{font-size:1.5em}.mbsc-mobiscroll .mbsc-sc-itm{padding:0 .25em;font-size:1.375em}.mbsc-mobiscroll.mbsc-no-touch .mbsc-sc-itm.mbsc-btn-e:hover,.mbsc-mobiscroll .mbsc-sc-itm:focus{outline:0}.mbsc-mobiscroll .mbsc-sc-whl-multi .mbsc-sc-itm{padding:0 1.818181em}.mbsc-mobiscroll .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{font-size:1.818181em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-lbl{padding-left:1.666667em;padding-right:1.666667em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-whl-w{margin-left:0;margin-right:0}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-itm{font-size:1em;padding:0 1.25em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-whl-multi .mbsc-sc-itm{padding:0 2.5em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{font-size:2em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-ltr .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{left:.125em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-rtl .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{right:.125em}.mbsc-mobiscroll .mbsc-sc-lbl{color:#4eccc4}.mbsc-mobiscroll .mbsc-sc-whl-l{border-top:1px solid #4eccc4;border-bottom:1px solid #4eccc4}.mbsc-mobiscroll .mbsc-sc-btn{color:#4eccc4;background:#f7f7f7}.mbsc-mobiscroll.mbsc-no-touch .mbsc-sc-itm.mbsc-btn-e:hover,.mbsc-mobiscroll .mbsc-sc-itm:focus{background:rgba(69,69,69,0.1)}.mbsc-mobiscroll.mbsc-no-touch .mbsc-sc-btn:hover:before,.mbsc-mobiscroll.mbsc-sc .mbsc-sc-whl .mbsc-sc-itm.mbsc-active,.mbsc-mobiscroll .mbsc-sc-btn.mbsc-active:before{background:rgba(78,204,196,0.3)}.mbsc-mobiscroll .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{color:#4eccc4}.mbsc-cal-slide,.mbsc-cal-day,.mbsc-cal-day-i{box-sizing:border-box}.mbsc-cal .mbsc-cal-day-date{text-align:center;box-sizing:content-box}.mbsc-cal-hdr,.mbsc-cal-btn-w,.mbsc-cal-days-c,.mbsc-cal-days,.mbsc-cal-tabbed .mbsc-fr-c .mbsc-sc-whl-gr-c{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.mbsc-cal-btn-w,.mbsc-cal-month,.mbsc-cal-year,.mbsc-cal-days,.mbsc-cal-days>div{-webkit-box-flex:1;-webkit-flex:1 auto;-ms-flex:1 auto;flex:1 auto}.mbsc-cal-c{position:relative;display:inline-block;vertical-align:middle;text-align:center}.mbsc-cal-btn-w{width:50%}.mbsc-cal-month,.mbsc-cal-year{width:1%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.mbsc-cal-btn.mbsc-disabled{opacity:.3;cursor:not-allowed}.mbsc-cal-days{line-height:1.875em;text-align:center}.mbsc-cal-days>div{width:14.285715%}.mbsc-cal-body{position:relative}.mbsc-cal-scroll-c{overflow:hidden;height:100%}.mbsc-cal-scroll{width:100%;height:100%}.mbsc-cal-slide{position:absolute;z-index:0;top:0;left:0;width:100%;height:100%}.mbsc-cal-slide:first-child{position:relative}.mbsc-cal-table{display:table;width:100%;height:100%;table-layout:fixed;-webkit-transform:translateZ(0)}.mbsc-cal-row{display:table-row}.mbsc-cal-cell{display:table-cell;vertical-align:middle}.mbsc-cal-cell:focus{outline:0}.mbsc-cal-picker{position:absolute;top:0;right:0;bottom:0;left:0;padding:.9375em 0;transition:all .2s ease-in-out;will-change:opacity}.mbsc-cal-picker .mbsc-cal-cell{width:33.333333%;height:25%;cursor:pointer}.mbsc-cal-h{visibility:hidden;opacity:0}.mbsc-cal-day{max-width:14.285715%;height:16.666667%;position:relative;text-align:center;cursor:pointer}.mbsc-cal-day-i{position:relative;height:100%}.mbsc-cal-day-markup{overflow:hidden}.mbsc-cal-day-diff .mbsc-cal-day-date{opacity:.5}.mbsc-cal-week-view .mbsc-cal-day-date,.mbsc-cal-day-diff.mbsc-selected .mbsc-cal-day-date{opacity:1}.mbsc-cal-cell.mbsc-disabled{cursor:not-allowed}.mbsc-cal-cell.mbsc-disabled .mbsc-cal-cell-txt{opacity:.2}.mbsc-cal-hide-diff .mbsc-cal-day-diff{cursor:default}.mbsc-cal-hide-diff .mbsc-cal-day-diff .mbsc-cal-day-i{visibility:hidden}.mbsc-ltr .mbsc-cal-weeks .mbsc-cal-days{margin-left:1.625em}.mbsc-rtl .mbsc-cal-weeks .mbsc-cal-days{margin-right:1.625em}.mbsc-cal-week-nr{width:1.625em;text-align:center}.mbsc-cal-multi .mbsc-cal-hdr{display:block}.mbsc-cal-multi .mbsc-cal-btn-w{width:auto}.mbsc-cal-multi .mbsc-cal-days,.mbsc-cal-multi .mbsc-cal-slide{padding:0 .5em}.mbsc-fr-liq .mbsc-cal-c{display:block}.mbsc-calendar.mbsc-fr-liq.mbsc-fr-center .mbsc-fr-overlay{display:none}.mbsc-calendar.mbsc-fr-liq.mbsc-fr-center .mbsc-fr-w{border-radius:0;padding-left:constant(safe-area-inset-left);padding-left:env(safe-area-inset-left);padding-right:constant(safe-area-inset-right);padding-right:env(safe-area-inset-right);padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.mbsc-cal-tabs-c{display:none}.mbsc-cal-tabs{display:table;width:100%;margin:0;padding:0;list-style:none}.mbsc-cal-tab{position:relative;width:33.33%;display:table-cell;overflow:hidden;cursor:pointer;text-align:center}.mbsc-cal-tabbed .mbsc-fr-c{position:relative}.mbsc-cal-tabbed .mbsc-w-p{transition:opacity .2s ease-in-out}.mbsc-cal-tabbed .mbsc-sc-whl-gr-c{position:absolute;z-index:1;top:0;left:0;right:0;max-width:none;height:100%;-webkit-box-align:center;-webkit-align-items:center;-ms-box-align:center;align-items:center}.mbsc-cal-tabbed .mbsc-cal-c,.mbsc-cal-tabbed .mbsc-cal-tabs-c{display:block}.mbsc-cal-tabbed .mbsc-fr-pos .mbsc-sc-whl-gr-c{width:auto}.mbsc-cal-has-marks .mbsc-cal-day{padding-bottom:.25em}.mbsc-cal-marks{position:absolute;left:0;right:0;height:.375em;margin-top:-.125em;overflow:hidden;white-space:nowrap}.mbsc-cal-mark{display:inline-block;vertical-align:top;width:.25em;height:.25em;margin:.0625em;border-radius:.25em}.mbsc-cal-txt-w{position:absolute;z-index:2;pointer-events:none}.mbsc-ltr .mbsc-cal-txt{text-align:left}.mbsc-rtl .mbsc-cal-txt{text-align:right}.mbsc-cal-txt,.mbsc-cal-txt-ph,.mbsc-cal-txt-more{position:relative;height:1.6em;line-height:1.6em;overflow:hidden;padding:0 .3em;font-size:.625em;white-space:nowrap;text-overflow:ellipsis;margin:0 .1em .2em .1em}.mbsc-cal-day .mbsc-cal-txt.mbsc-cal-txt-only{color:inherit;text-align:center}.mbsc-no-touch .mbsc-cal-txt:before{content:'';position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;transition:background-color .2s}.mbsc-no-touch .mbsc-cal-txt-only:before{display:none}.mbsc-no-touch .mbsc-cal-txt.mbsc-hover:before{background-color:rgba(0,0,0,0.2)}.mbsc-no-touch .mbsc-cal-txt-more:hover{background-color:rgba(0,0,0,0.1)}.mbsc-cal-txt-more{text-align:left;transition:background-color .2s}.mbsc-cal .mbsc-cal-btn{position:relative;z-index:1}.mbsc-mobiscroll .mbsc-cal-c{padding:.5em}.mbsc-mobiscroll .mbsc-cal-btn-w{font-size:1.125em;line-height:2.222223em}.mbsc-mobiscroll .mbsc-cal .mbsc-cal-btn{width:2.666667em;height:2.666667em;line-height:2.666667em;padding:0;border-radius:2em;margin:-.222222em}.mbsc-mobiscroll .mbsc-cal-picker{border-top:1px solid transparent}.mbsc-mobiscroll .mbsc-cal-picker .mbsc-cal-cell-i{display:inline-block;height:2em;padding:0 1em;line-height:2em;border-radius:2em;white-space:nowrap}.mbsc-mobiscroll .mbsc-cal-days>div{font-size:.6875em}.mbsc-mobiscroll .mbsc-cal-day-date{display:inline-block;width:2.153847em;height:2.153847em;margin:.307692em 0;line-height:2.153847em;font-size:.8125em;border:2px solid transparent;border-radius:2em}.mbsc-mobiscroll .mbsc-cal-week-nr{width:2.363637em;font-size:.6875em}.mbsc-mobiscroll .mbsc-cal-tabs-c{line-height:1.875em;padding:.5em .5em 0 .5em;text-transform:uppercase}.mbsc-mobiscroll .mbsc-cal-tab{font-size:.7em;padding:0 1.2em}.mbsc-mobiscroll .mbsc-cal-picker{background:#f7f7f7}.mbsc-mobiscroll .mbsc-cal-days>div{border-bottom:1px solid #4eccc4;color:#4eccc4}.mbsc-mobiscroll .mbsc-cal-today{color:#4eccc4}.mbsc-mobiscroll.mbsc-no-touch:not(.mbsc-ev-cal) .mbsc-cal-cell:not(.mbsc-disabled):hover .mbsc-cal-cell-txt,.mbsc-mobiscroll.mbsc-no-touch .mbsc-cal-day:not(.mbsc-disabled) .mbsc-cal-day-date:hover,.mbsc-mobiscroll .mbsc-cal-cell:focus .mbsc-cal-cell-txt{background:rgba(78,204,196,0.3)}.mbsc-mobiscroll .mbsc-cal-c .mbsc-cal .mbsc-cal-body .mbsc-cal-row .mbsc-selected .mbsc-cal-cell-txt{background:#4eccc4;color:#f7f7f7}.mbsc-mobiscroll .mbsc-cal-day-colored.mbsc-selected .mbsc-cal-day-date{border-color:#4eccc4}.mbsc-mobiscroll .mbsc-cal-week-nr{color:#4eccc4}.mbsc-mobiscroll .mbsc-cal-tab{border:1px solid #4eccc4;color:#454545}.mbsc-mobiscroll .mbsc-fr-w .mbsc-cal-tabs-c .mbsc-cal-tabs .mbsc-cal-tab.mbsc-selected{background:#4eccc4;color:#f7f7f7}.mbsc-mobiscroll .mbsc-cal-mark{background:#454545}.mbsc-mobiscroll .mbsc-cal-txt{color:#f7f7f7;background:#454545}.mbsc-mobiscroll .mbsc-cal-icons{color:#454545}.mbsc-mobiscroll-dark .mbsc-fr-overlay{background:rgba(0,0,0,0.7)}.mbsc-mobiscroll-dark .mbsc-fr-w{background:#263238;color:#f7f7f7}.mbsc-mobiscroll-dark .mbsc-fr-hdr,.mbsc-mobiscroll-dark .mbsc-fr-btn{color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-fr-btn.mbsc-active,.mbsc-mobiscroll-dark.mbsc-no-touch .mbsc-fr-btn-e:not(.mbsc-disabled):hover{background:rgba(79,204,196,0.3)}.mbsc-mobiscroll-dark .mbsc-fr-arr{background:#263238}.mbsc-mobiscroll-dark .mbsc-sc-lbl{color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-sc-whl-l{border-top:1px solid #4fccc4;border-bottom:1px solid #4fccc4}.mbsc-mobiscroll-dark .mbsc-sc-btn{color:#4fccc4;background:#263238}.mbsc-mobiscroll-dark.mbsc-no-touch .mbsc-sc-itm.mbsc-btn-e:hover,.mbsc-mobiscroll-dark .mbsc-sc-itm:focus{background:rgba(247,247,247,0.1)}.mbsc-mobiscroll-dark.mbsc-no-touch .mbsc-sc-btn:hover:before,.mbsc-mobiscroll-dark.mbsc-sc .mbsc-sc-whl .mbsc-sc-itm.mbsc-active,.mbsc-mobiscroll-dark .mbsc-sc-btn.mbsc-active:before{background:rgba(79,204,196,0.3)}.mbsc-mobiscroll-dark .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-cal-picker{background:#263238}.mbsc-mobiscroll-dark .mbsc-cal-days>div{border-bottom:1px solid #4fccc4;color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-cal-today{color:#4fccc4}.mbsc-mobiscroll-dark.mbsc-no-touch:not(.mbsc-ev-cal) .mbsc-cal-cell:not(.mbsc-disabled):hover .mbsc-cal-cell-txt,.mbsc-mobiscroll-dark.mbsc-no-touch .mbsc-cal-day:not(.mbsc-disabled) .mbsc-cal-day-date:hover,.mbsc-mobiscroll-dark .mbsc-cal-cell:focus .mbsc-cal-cell-txt{background:rgba(79,204,196,0.3)}.mbsc-mobiscroll-dark .mbsc-cal-c .mbsc-cal .mbsc-cal-body .mbsc-cal-row .mbsc-selected .mbsc-cal-cell-txt{background:#4fccc4;color:#263238}.mbsc-mobiscroll-dark .mbsc-cal-day-colored.mbsc-selected .mbsc-cal-day-date{border-color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-cal-week-nr{color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-cal-tab{border:1px solid #4fccc4;color:#f7f7f7}.mbsc-mobiscroll-dark .mbsc-fr-w .mbsc-cal-tabs-c .mbsc-cal-tabs .mbsc-cal-tab.mbsc-selected{background:#4fccc4;color:#263238}.mbsc-mobiscroll-dark .mbsc-cal-mark{background:#f7f7f7}.mbsc-mobiscroll-dark .mbsc-cal-txt{color:#263238;background:#f7f7f7}.mbsc-mobiscroll-dark .mbsc-cal-icons{color:#f7f7f7}.mbsc-voxco .mbsc-fr-overlay{background:rgba(0,0,0,0.7)}.mbsc-voxco .mbsc-fr-w{background:#F7F7F7;color:#454545}.mbsc-voxco .mbsc-fr-hdr,.mbsc-voxco .mbsc-fr-btn{color:#0D77BD}.mbsc-voxco .mbsc-fr-btn.mbsc-active,.mbsc-voxco.mbsc-no-touch .mbsc-fr-btn-e:not(.mbsc-disabled):hover{background:rgba(13,119,189,0.3)}.mbsc-voxco .mbsc-fr-arr{background:#F7F7F7}.mbsc-voxco .mbsc-sc-lbl{color:#0D77BD}.mbsc-voxco .mbsc-sc-whl-l{border-top:1px solid #0D77BD;border-bottom:1px solid #0D77BD}.mbsc-voxco .mbsc-sc-btn{color:#0D77BD;background:#F7F7F7}.mbsc-voxco.mbsc-no-touch .mbsc-sc-itm.mbsc-btn-e:hover,.mbsc-voxco .mbsc-sc-itm:focus{background:rgba(69,69,69,0.1)}.mbsc-voxco.mbsc-no-touch .mbsc-sc-btn:hover:before,.mbsc-voxco.mbsc-sc .mbsc-sc-whl .mbsc-sc-itm.mbsc-active,.mbsc-voxco .mbsc-sc-btn.mbsc-active:before{background:rgba(13,119,189,0.3)}.mbsc-voxco .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{color:#0D77BD}.mbsc-voxco .mbsc-cal-picker{background:#F7F7F7}.mbsc-voxco .mbsc-cal-days>div{border-bottom:1px solid #0D77BD;color:#0D77BD}.mbsc-voxco .mbsc-cal-today{color:#0D77BD}.mbsc-voxco.mbsc-no-touch:not(.mbsc-ev-cal) .mbsc-cal-cell:not(.mbsc-disabled):hover .mbsc-cal-cell-txt,.mbsc-voxco.mbsc-no-touch .mbsc-cal-day:not(.mbsc-disabled) .mbsc-cal-day-date:hover,.mbsc-voxco .mbsc-cal-cell:focus .mbsc-cal-cell-txt{background:rgba(13,119,189,0.3)}.mbsc-voxco .mbsc-cal-c .mbsc-cal .mbsc-cal-body .mbsc-cal-row .mbsc-selected .mbsc-cal-cell-txt{background:#0D77BD;color:#F7F7F7}.mbsc-voxco .mbsc-cal-day-colored.mbsc-selected .mbsc-cal-day-date{border-color:#0D77BD}.mbsc-voxco .mbsc-cal-week-nr{color:#0D77BD}.mbsc-voxco .mbsc-cal-tab{border:1px solid #0D77BD;color:#454545}.mbsc-voxco .mbsc-fr-w .mbsc-cal-tabs-c .mbsc-cal-tabs .mbsc-cal-tab.mbsc-selected{background:#0D77BD;color:#F7F7F7}.mbsc-voxco .mbsc-cal-mark{background:#454545}.mbsc-voxco .mbsc-cal-txt{color:#F7F7F7;background:#454545}.mbsc-voxco .mbsc-cal-icons{color:#454545}\\r\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./lib/mobiscroll/css/mobiscroll.javascript.min.css\"],\"names\":[],\"mappings\":\"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\",\"sourcesContent\":[\".mbsc-cloak{visibility:hidden !important}.mbsc-empty{text-align:center;margin:3em;color:inherit}.mbsc-empty h3{margin:.666666em 0;padding:0;color:inherit;font-size:1.5em;font-weight:normal;font-family:inherit}.mbsc-empty p{margin:1em 0;padding:0;font-size:1em;line-height:1.5}.mbsc-anim-trans .mbsc-fr-scroll{overflow:hidden}.mbsc-anim-trans-flip .mbsc-fr-persp,.mbsc-anim-trans-swing .mbsc-fr-persp{-webkit-perspective:1000px;perspective:1000px}.mbsc-anim-trans .mbsc-fr-popup,.mbsc-anim-trans .mbsc-fr-overlay{-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards}.mbsc-anim-in .mbsc-fr-popup,.mbsc-anim-in .mbsc-fr-overlay{-webkit-animation-timing-function:ease-out;-webkit-animation-duration:225ms;animation-timing-function:ease-out;animation-duration:225ms}.mbsc-anim-out .mbsc-fr-popup,.mbsc-anim-out .mbsc-fr-overlay{-webkit-animation-timing-function:ease-in;-webkit-animation-duration:195ms;animation-timing-function:ease-in;animation-duration:195ms}.mbsc-anim-in .mbsc-fr-overlay{-webkit-animation-name:mbsc-anim-f-in;animation-name:mbsc-anim-f-in}.mbsc-anim-out .mbsc-fr-overlay{-webkit-animation-name:mbsc-anim-f-out;animation-name:mbsc-anim-f-out}.mbsc-anim-flip,.mbsc-anim-swing,.mbsc-anim-slidehorizontal,.mbsc-anim-slidevertical,.mbsc-anim-slidedown,.mbsc-anim-slideup,.mbsc-anim-fade{-webkit-backface-visibility:hidden;-webkit-transform:translateX(0);backface-visibility:hidden;transform:translateX(0)}.mbsc-anim-swing,.mbsc-anim-slidehorizontal,.mbsc-anim-slidevertical,.mbsc-anim-slidedown,.mbsc-anim-slideup,.mbsc-anim-fade{-webkit-transform-origin:0 0;transform-origin:0 0}.mbsc-anim-flip,.mbsc-anim-pop{-webkit-transform-origin:50% 50%;transform-origin:50% 50%}.mbsc-anim-in .mbsc-anim-pop{opacity:1;-webkit-animation-name:mbsc-anim-p-in;-webkit-animation-duration:100ms;-webkit-transform:scale(1);animation-name:mbsc-anim-p-in;animation-duration:100ms;transform:scale(1)}.mbsc-anim-out .mbsc-anim-pop{opacity:0;-webkit-animation-name:mbsc-anim-p-out;-webkit-animation-duration:150ms;animation-name:mbsc-anim-p-out;animation-duration:150ms}.mbsc-anim-trans-pop .mbsc-fr-overlay{-webkit-animation-duration:150ms;animation-duration:150ms}.mbsc-anim-in .mbsc-anim-flip{opacity:1;-webkit-animation-name:mbsc-anim-fl-in;-webkit-transform:scale(1);animation-name:mbsc-anim-fl-in;transform:scale(1)}.mbsc-anim-out .mbsc-anim-flip{opacity:0;-webkit-animation-name:mbsc-anim-fl-out;animation-name:mbsc-anim-fl-out}.mbsc-anim-in .mbsc-anim-swing{opacity:1;-webkit-animation-name:mbsc-anim-sw-in;-webkit-transform:scale(1);transform:scale(1);animation-name:mbsc-anim-sw-in}.mbsc-anim-out .mbsc-anim-swing{opacity:0;-webkit-animation-name:mbsc-anim-sw-out;animation-name:mbsc-anim-sw-out}.mbsc-anim-in .mbsc-anim-slidehorizontal{opacity:1;-webkit-animation-name:mbsc-anim-sh-in;-webkit-transform:scale(1);transform:scale(1);animation-name:mbsc-anim-sh-in}.mbsc-anim-out .mbsc-anim-slidehorizontal{opacity:0;-webkit-animation-name:mbsc-anim-sh-out;animation-name:mbsc-anim-sh-out}.mbsc-anim-in .mbsc-anim-slidevertical{opacity:1;-webkit-animation-name:mbsc-anim-sv-in;-webkit-transform:scale(1);animation-name:mbsc-anim-sv-in;transform:scale(1)}.mbsc-anim-out .mbsc-anim-slidevertical{opacity:0;-webkit-animation-name:mbsc-anim-sv-out;animation-name:mbsc-anim-sv-out}.mbsc-anim-in .mbsc-anim-slidedown{-webkit-animation-name:mbsc-anim-sd-in;-webkit-transform:scale(1);animation-name:mbsc-anim-sd-in;transform:scale(1)}.mbsc-anim-out .mbsc-anim-slidedown{-webkit-animation-name:mbsc-anim-sd-out;-webkit-transform:translateY(-100%);animation-name:mbsc-anim-sd-out}.mbsc-anim-in .mbsc-anim-slideup{-webkit-animation-name:mbsc-anim-su-in;-webkit-transform:scale(1);transform:scale(1);animation-name:mbsc-anim-su-in}.mbsc-anim-out .mbsc-anim-slideup{-webkit-animation-name:mbsc-anim-su-out;-webkit-transform:translateY(100%);animation-name:mbsc-anim-su-out}.mbsc-anim-in .mbsc-anim-fade{opacity:1;-webkit-animation-name:mbsc-anim-f-in;animation-name:mbsc-anim-f-in}.mbsc-anim-out .mbsc-anim-fade{opacity:0;-webkit-animation-name:mbsc-anim-f-out;animation-name:mbsc-anim-f-out}.mbsc-fr-pointer.mbsc-anim-in .mbsc-anim-slidedown{-webkit-animation-name:mbsc-anim-sd-in, mbsc-anim-f-in;animation-name:mbsc-anim-sd-in, mbsc-anim-f-in}.mbsc-fr-pointer.mbsc-anim-out .mbsc-anim-slidedown{-webkit-animation-name:mbsc-anim-sd-out, mbsc-anim-f-out;animation-name:mbsc-anim-sd-out, mbsc-anim-f-out}.mbsc-fr-pointer.mbsc-anim-in .mbsc-anim-slideup{-webkit-animation-name:mbsc-anim-su-in, mbsc-anim-f-in;animation-name:mbsc-anim-su-in, mbsc-anim-f-in}.mbsc-fr-pointer.mbsc-anim-out .mbsc-anim-slideup{-webkit-animation-name:mbsc-anim-su-out, mbsc-anim-f-out;animation-name:mbsc-anim-su-out, mbsc-anim-f-out}@keyframes mbsc-anim-f-in{from{opacity:0}to{opacity:1}}@-webkit-keyframes mbsc-anim-f-in{from{opacity:0}to{opacity:1}}@keyframes mbsc-anim-f-out{from{visibility:visible;opacity:1}to{opacity:0}}@-webkit-keyframes mbsc-anim-f-out{from{visibility:visible;opacity:1}to{opacity:0}}@keyframes mbsc-anim-p-in{from{opacity:0;transform:scale(0.8)}to{opacity:1;transform:scale(1)}}@-webkit-keyframes mbsc-anim-p-in{from{opacity:0;-webkit-transform:scale(0.8)}to{opacity:1;-webkit-transform:scale(1)}}@keyframes mbsc-anim-p-out{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0.8)}}@-webkit-keyframes mbsc-anim-p-out{from{opacity:1;-webkit-transform:scale(1)}to{opacity:0;-webkit-transform:scale(0.8)}}@keyframes mbsc-anim-fl-in{from{opacity:0;transform:rotateY(90deg)}to{opacity:1;transform:rotateY(0)}}@-webkit-keyframes mbsc-anim-fl-in{from{opacity:0;-webkit-transform:rotateY(90deg)}to{opacity:1;-webkit-transform:rotateY(0)}}@keyframes mbsc-anim-fl-out{from{opacity:1;transform:rotateY(0deg)}to{opacity:0;transform:rotateY(-90deg)}}@-webkit-keyframes mbsc-anim-fl-out{from{opacity:1;-webkit-transform:rotateY(0deg)}to{opacity:0;-webkit-transform:rotateY(-90deg)}}@keyframes mbsc-anim-sw-in{from{opacity:0;transform:rotateY(-90deg)}to{opacity:1;transform:rotateY(0deg)}}@-webkit-keyframes mbsc-anim-sw-in{from{opacity:0;-webkit-transform:rotateY(-90deg)}to{opacity:1;-webkit-transform:rotateY(0deg)}}@keyframes mbsc-anim-sw-out{from{opacity:1;transform:rotateY(0deg)}to{opacity:0;transform:rotateY(-90deg)}}@-webkit-keyframes mbsc-anim-sw-out{from{opacity:1;-webkit-transform:rotateY(0deg)}to{opacity:0;-webkit-transform:rotateY(-90deg)}}@keyframes mbsc-anim-sh-in{from{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}@-webkit-keyframes mbsc-anim-sh-in{from{opacity:0;-webkit-transform:translateX(-100%)}to{opacity:1;-webkit-transform:translateX(0)}}@keyframes mbsc-anim-sh-out{from{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@-webkit-keyframes mbsc-anim-sh-out{from{opacity:1;-webkit-transform:translateX(0)}to{opacity:0;-webkit-transform:translateX(100%)}}@keyframes mbsc-anim-sv-in{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@-webkit-keyframes mbsc-anim-sv-in{from{opacity:0;-webkit-transform:translateY(-100%)}to{opacity:1;-webkit-transform:translateY(0)}}@keyframes mbsc-anim-sv-out{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@-webkit-keyframes mbsc-anim-sv-out{from{opacity:1;-webkit-transform:translateY(0)}to{opacity:0;-webkit-transform:translateY(100%)}}@keyframes mbsc-anim-sd-in{from{transform:translateY(-100%)}to{transform:translateY(0)}}@-webkit-keyframes mbsc-anim-sd-in{from{opacity:1;-webkit-transform:translateY(-100%)}to{opacity:1;-webkit-transform:translateY(0)}}@keyframes mbsc-anim-sd-out{from{transform:translateY(0)}to{transform:translateY(-100%)}}@-webkit-keyframes mbsc-anim-sd-out{from{opacity:1;-webkit-transform:translateY(0)}to{opacity:1;-webkit-transform:translateY(-100%)}}@keyframes mbsc-anim-su-in{from{transform:translateY(100%)}to{transform:translateY(0)}}@-webkit-keyframes mbsc-anim-su-in{from{opacity:1;-webkit-transform:translateY(100%)}to{opacity:1;-webkit-transform:translateY(0)}}@keyframes mbsc-anim-su-out{from{transform:translateY(0)}to{transform:translateY(100%)}}@-webkit-keyframes mbsc-anim-su-out{from{opacity:1;-webkit-transform:translateY(0)}to{opacity:1;-webkit-transform:translateY(100%)}}@font-face{font-family:'icons_mobiscroll';src:url(\\\"icons_mobiscroll.woff?gniomg\\\") format(\\\"woff\\\"),url(\\\"icons_mobiscroll.woff\\\") format(\\\"woff\\\"),url(\\\"icons_mobiscroll.ttf?gniomg\\\") format(\\\"truetype\\\");font-weight:normal;font-style:normal}.mbsc-ic:before{font-family:'icons_mobiscroll';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.mbsc-ic-aid::before{content:\\\"\\\\ea01\\\"}.mbsc-ic-airplane::before{content:\\\"\\\\ea02\\\"}.mbsc-ic-alarm2::before{content:\\\"\\\\ea03\\\"}.mbsc-ic-arrow-down5::before{content:\\\"\\\\ea04\\\"}.mbsc-ic-arrow-left5::before{content:\\\"\\\\ea05\\\"}.mbsc-ic-arrow-left6::before{content:\\\"\\\\ea06\\\"}.mbsc-ic-arrow-right5::before{content:\\\"\\\\ea07\\\"}.mbsc-ic-arrow-right6::before{content:\\\"\\\\ea08\\\"}.mbsc-ic-arrow-up5::before{content:\\\"\\\\ea09\\\"}.mbsc-ic-attachment::before{content:\\\"\\\\ea0a\\\"}.mbsc-ic-bars::before{content:\\\"\\\\ea0b\\\"}.mbsc-ic-book::before{content:\\\"\\\\ea0c\\\"}.mbsc-ic-bubble::before{content:\\\"\\\\ea0d\\\"}.mbsc-ic-bubbles::before{content:\\\"\\\\ea0e\\\"}.mbsc-ic-bullhorn::before{content:\\\"\\\\ea0f\\\"}.mbsc-ic-calendar::before{content:\\\"\\\\ea10\\\"}.mbsc-ic-camera::before{content:\\\"\\\\ea11\\\"}.mbsc-ic-cart::before{content:\\\"\\\\ea12\\\"}.mbsc-ic-checkmark::before{content:\\\"\\\\ea13\\\"}.mbsc-ic-clock::before{content:\\\"\\\\ea14\\\"}.mbsc-ic-close::before{content:\\\"\\\\ea15\\\"}.mbsc-ic-cloud-download::before{content:\\\"\\\\ea16\\\"}.mbsc-ic-cloud-upload::before{content:\\\"\\\\ea17\\\"}.mbsc-ic-cogs::before{content:\\\"\\\\ea18\\\"}.mbsc-ic-connection::before{content:\\\"\\\\ea19\\\"}.mbsc-ic-copy2::before{content:\\\"\\\\ea1a\\\"}.mbsc-ic-copy3::before{content:\\\"\\\\ea1b\\\"}.mbsc-ic-credit::before{content:\\\"\\\\ea1c\\\"}.mbsc-ic-disk::before{content:\\\"\\\\ea1d\\\"}.mbsc-ic-download::before{content:\\\"\\\\ea1e\\\"}.mbsc-ic-drawer::before{content:\\\"\\\\ea1f\\\"}.mbsc-ic-droplet::before{content:\\\"\\\\ea20\\\"}.mbsc-ic-earth::before{content:\\\"\\\\ea21\\\"}.mbsc-ic-eye-blocked::before{content:\\\"\\\\ea22\\\"}.mbsc-ic-eye::before{content:\\\"\\\\ea23\\\"}.mbsc-ic-fa-globe::before{content:\\\"\\\\ea24\\\"}.mbsc-ic-fa-leaf::before{content:\\\"\\\\ea25\\\"}.mbsc-ic-fa-mail-reply::before{content:\\\"\\\\ea26\\\"}.mbsc-ic-fa-retweet::before{content:\\\"\\\\ea27\\\"}.mbsc-ic-fa-rotate-left::before{content:\\\"\\\\ea28\\\"}.mbsc-ic-file4::before{content:\\\"\\\\ea29\\\"}.mbsc-ic-film::before{content:\\\"\\\\ea2a\\\"}.mbsc-ic-flag::before{content:\\\"\\\\ea2b\\\"}.mbsc-ic-folder::before{content:\\\"\\\\ea2c\\\"}.mbsc-ic-forward::before{content:\\\"\\\\ea2d\\\"}.mbsc-ic-foundation-mail::before{content:\\\"\\\\ea2e\\\"}.mbsc-ic-foundation-minus-circle::before{content:\\\"\\\\ea2f\\\"}.mbsc-ic-globe::before{content:\\\"\\\\ea30\\\"}.mbsc-ic-heart::before{content:\\\"\\\\ea31\\\"}.mbsc-ic-history::before{content:\\\"\\\\ea32\\\"}.mbsc-ic-home::before{content:\\\"\\\\ea33\\\"}.mbsc-ic-image2::before{content:\\\"\\\\ea34\\\"}.mbsc-ic-ion-android-system-windows::before{content:\\\"\\\\ea35\\\"}.mbsc-ic-ion-bluetooth::before{content:\\\"\\\\ea36\\\"}.mbsc-ic-ion-navigate::before{content:\\\"\\\\ea37\\\"}.mbsc-ic-key2::before{content:\\\"\\\\ea38\\\"}.mbsc-ic-library::before{content:\\\"\\\\ea39\\\"}.mbsc-ic-line-settings::before{content:\\\"\\\\ea3a\\\"}.mbsc-ic-link::before{content:\\\"\\\\ea3b\\\"}.mbsc-ic-location::before{content:\\\"\\\\ea3c\\\"}.mbsc-ic-lock2::before{content:\\\"\\\\ea3d\\\"}.mbsc-ic-loop2::before{content:\\\"\\\\ea3e\\\"}.mbsc-ic-map::before{content:\\\"\\\\ea3f\\\"}.mbsc-ic-material-arrow-back::before{content:\\\"\\\\ea40\\\"}.mbsc-ic-material-brightness-medium::before{content:\\\"\\\\ea41\\\"}.mbsc-ic-material-check::before{content:\\\"\\\\ea42\\\"}.mbsc-ic-material-crop::before{content:\\\"\\\\ea43\\\"}.mbsc-ic-material-equalizer::before{content:\\\"\\\\ea44\\\"}.mbsc-ic-material-filter::before{content:\\\"\\\\ea45\\\"}.mbsc-ic-material-iso::before{content:\\\"\\\\ea46\\\"}.mbsc-ic-material-palette::before{content:\\\"\\\\ea47\\\"}.mbsc-ic-material-pause::before{content:\\\"\\\\ea48\\\"}.mbsc-ic-material-people::before{content:\\\"\\\\ea49\\\"}.mbsc-ic-material-photo-size-select-large::before{content:\\\"\\\\ea4a\\\"}.mbsc-ic-material-play-arrow::before{content:\\\"\\\\ea4b\\\"}.mbsc-ic-material-repeat::before{content:\\\"\\\\ea4c\\\"}.mbsc-ic-material-rotate-right::before{content:\\\"\\\\ea4d\\\"}.mbsc-ic-material-shuffle::before{content:\\\"\\\\ea4e\\\"}.mbsc-ic-material-skip-next::before{content:\\\"\\\\ea4f\\\"}.mbsc-ic-material-skip-previous::before{content:\\\"\\\\ea50\\\"}.mbsc-ic-material-stop::before{content:\\\"\\\\ea51\\\"}.mbsc-ic-material-texture::before{content:\\\"\\\\ea52\\\"}.mbsc-ic-material-wb-auto::before{content:\\\"\\\\ea53\\\"}.mbsc-ic-meteo-cloud2::before{content:\\\"\\\\ea54\\\"}.mbsc-ic-meteo-cloud3::before{content:\\\"\\\\ea55\\\"}.mbsc-ic-meteo-cloudy::before{content:\\\"\\\\ea56\\\"}.mbsc-ic-meteo-sun::before{content:\\\"\\\\ea57\\\"}.mbsc-ic-minus::before{content:\\\"\\\\ea58\\\"}.mbsc-ic-mobile::before{content:\\\"\\\\ea59\\\"}.mbsc-ic-music::before{content:\\\"\\\\ea5a\\\"}.mbsc-ic-neutral::before{content:\\\"\\\\ea5b\\\"}.mbsc-ic-newspaper::before{content:\\\"\\\\ea5c\\\"}.mbsc-ic-office::before{content:\\\"\\\\ea5d\\\"}.mbsc-ic-pencil::before{content:\\\"\\\\ea5e\\\"}.mbsc-ic-phone::before{content:\\\"\\\\ea5f\\\"}.mbsc-ic-play::before{content:\\\"\\\\ea60\\\"}.mbsc-ic-plus::before{content:\\\"\\\\ea61\\\"}.mbsc-ic-redo2::before{content:\\\"\\\\ea62\\\"}.mbsc-ic-remove::before{content:\\\"\\\\ea63\\\"}.mbsc-ic-reply::before{content:\\\"\\\\ea64\\\"}.mbsc-ic-sad::before{content:\\\"\\\\ea65\\\"}.mbsc-ic-sad2::before{content:\\\"\\\\ea66\\\"}.mbsc-ic-share::before{content:\\\"\\\\ea67\\\"}.mbsc-ic-smiley::before{content:\\\"\\\\ea68\\\"}.mbsc-ic-smiley2::before{content:\\\"\\\\ea69\\\"}.mbsc-ic-stack::before{content:\\\"\\\\ea6a\\\"}.mbsc-ic-star3::before{content:\\\"\\\\ea6b\\\"}.mbsc-ic-stopwatch::before{content:\\\"\\\\ea6c\\\"}.mbsc-ic-support::before{content:\\\"\\\\ea6d\\\"}.mbsc-ic-tag::before{content:\\\"\\\\ea6e\\\"}.mbsc-ic-thumbs-up::before{content:\\\"\\\\ea6f\\\"}.mbsc-ic-thumbs-up2::before{content:\\\"\\\\ea70\\\"}.mbsc-ic-undo2::before{content:\\\"\\\\ea71\\\"}.mbsc-ic-unlocked::before{content:\\\"\\\\ea72\\\"}.mbsc-ic-upload::before{content:\\\"\\\\ea73\\\"}.mbsc-ic-user4::before{content:\\\"\\\\ea74\\\"}.mbsc-ic-volume-high::before{content:\\\"\\\\ea75\\\"}.mbsc-ic-volume-medium::before{content:\\\"\\\\ea76\\\"}.mbsc-ic-volume-mute2::before{content:\\\"\\\\ea77\\\"}.mbsc-fr-w,.mbsc-fr-overlay{-webkit-transform:translateZ(0)}.mbsc-fr{pointer-events:none;z-index:99998;font-weight:normal;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-text-size-adjust:100%}.mbsc-fr-focus{outline:0}.mbsc-fr-lock-ctx{position:relative}.mbsc-fr-lock.mbsc-fr-lock-ios{overflow:hidden;position:absolute;top:0;bottom:0;left:0;right:0;height:auto}.mbsc-fr-pos{visibility:hidden}.mbsc-fr-scroll{position:relative;z-index:2;width:100%;height:100%;-ms-touch-action:pan-y;touch-action:pan-y;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.mbsc-fr-popup{max-width:98%;position:absolute;z-index:2;top:0;left:0;font-size:12px;text-shadow:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-touch-action:pan-y;touch-action:pan-y}.mbsc-rtl{direction:rtl}.mbsc-fr-popup,.mbsc-fr-btn-cont,.mbsc-fr-arr{box-sizing:border-box}.mbsc-fr .mbsc-fr-w{box-sizing:content-box}.mbsc-fr-w{min-width:256px;max-width:100%;overflow:hidden;text-align:center;font-family:arial, verdana, sans-serif}.mbsc-fr,.mbsc-fr-persp,.mbsc-fr-overlay{position:fixed;top:0;bottom:0;left:0;right:0}.mbsc-fr-lock .mbsc-fr-persp{-ms-touch-action:none;touch-action:none}.mbsc-fr-lock-ctx>.mbsc-fr,.mbsc-fr-lock-ctx .mbsc-fr-persp,.mbsc-fr-lock-ctx .mbsc-fr-overlay{position:absolute}.mbsc-fr-persp{pointer-events:auto;overflow:hidden}.mbsc-fr-overlay{z-index:1;background:rgba(0,0,0,0.7)}.mbsc-fr-liq .mbsc-fr-popup{max-width:100%}.mbsc-fr-top .mbsc-fr-popup,.mbsc-fr-bottom .mbsc-fr-popup{width:100%;max-width:100%}.mbsc-fr-top .mbsc-fr-w,.mbsc-fr-bottom .mbsc-fr-w{padding-left:constant(safe-area-inset-left);padding-left:env(safe-area-inset-left);padding-right:constant(safe-area-inset-right);padding-right:env(safe-area-inset-right)}.mbsc-fr-bottom .mbsc-fr-w{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.mbsc-fr-top .mbsc-fr-popup{padding-top:constant(safe-area-inset-top);padding-top:env(safe-area-inset-top)}.mbsc-fr-inline{position:relative;pointer-events:auto;z-index:0}.mbsc-fr-inline .mbsc-fr-popup{position:static;max-width:100%}.mbsc-fr-bubble,.mbsc-fr-bubble .mbsc-fr-persp{position:absolute}.mbsc-fr-bubble .mbsc-fr-arr-w{position:absolute;z-index:1;left:0;width:100%;overflow:hidden}.mbsc-fr-bubble-top .mbsc-fr-arr-w{top:100%}.mbsc-fr-bubble-bottom .mbsc-fr-arr-w{bottom:100%}.mbsc-fr-bubble .mbsc-fr-arr-i{margin:0 1.75em;position:relative;direction:ltr}.mbsc-fr-bubble .mbsc-fr-arr{display:block}.mbsc-fr-arr{display:none;position:relative;left:0;width:2em;height:2em;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);margin-left:-1em}.mbsc-fr-bubble-bottom .mbsc-fr-arr{top:1.333334em}.mbsc-fr-bubble-top .mbsc-fr-arr{top:-1.333334em}.mbsc-fr-hdn{width:0;height:0;margin:0;padding:0;border:0;overflow:hidden}.mbsc-fr-hdr{overflow:hidden;text-overflow:ellipsis;text-align:center}.mbsc-fr-btn{overflow:hidden;display:block;text-decoration:none;white-space:nowrap;text-overflow:ellipsis;vertical-align:top}.mbsc-fr-btn-e{cursor:pointer}.mbsc-fr-btn.mbsc-disabled{cursor:not-allowed}.mbsc-fr-btn-cont{display:table;width:100%;text-align:center;white-space:normal}.mbsc-fr-btn-cont .mbsc-disabled{opacity:.3}.mbsc-fr-btn-w{vertical-align:top;display:table-cell;position:relative;z-index:5}.mbsc-fr-btn-w .mbsc-fr-btn:before{padding:.375em}.mbsc-fr-pointer.mbsc-fr .mbsc-fr-w .mbsc-fr-inline .mbsc-fr-w{box-shadow:none;border-radius:0}.mbsc-fr-pointer .mbsc-ltr .mbsc-fr-w,.mbsc-fr-pointer .mbsc-ltr .mbsc-sc-whl .mbsc-sel-gr{text-align:left}.mbsc-fr-pointer .mbsc-rtl .mbsc-fr-w,.mbsc-fr-pointer .mbsc-rtl .mbsc-sc-whl .mbsc-sel-gr{text-align:right}.mbsc-fr-pointer.mbsc-fr-top .mbsc-fr-w,.mbsc-fr-pointer.mbsc-fr-bottom .mbsc-fr-w{pointer-events:auto;display:inline-block;margin-top:3em;margin-bottom:3em;max-width:98%}.mbsc-fr-pointer.mbsc-fr-top .mbsc-fr-popup,.mbsc-fr-pointer.mbsc-fr-bottom .mbsc-fr-popup{text-align:center;pointer-events:none}.mbsc-fr-pointer.mbsc-fr-bubble .mbsc-fr-arr-w{display:none}.mbsc-fr-pointer .mbsc-sel-empty{text-align:center}.mbsc-mobiscroll .mbsc-fr-w{min-width:16em;font-size:16px}.mbsc-mobiscroll .mbsc-fr-hdr{padding:0 .6666em;padding-top:.6666em;font-size:.75em;text-transform:uppercase;min-height:2em;line-height:2em}.mbsc-mobiscroll .mbsc-fr-btn-cont{display:block;overflow:hidden;text-align:right;padding:0 .5em .5em .5em}.mbsc-mobiscroll .mbsc-ltr .mbsc-fr-btn-cont{text-align:right}.mbsc-mobiscroll .mbsc-rtl .mbsc-fr-btn-cont{text-align:left}.mbsc-mobiscroll .mbsc-fr-btn-w{display:inline-block}.mbsc-mobiscroll .mbsc-fr-btn{height:2.5em;line-height:2.5em;padding:0 1em;text-transform:uppercase}.mbsc-mobiscroll.mbsc-fr-center .mbsc-fr-w,.mbsc-mobiscroll.mbsc-fr-bubble .mbsc-fr-w{border-radius:.25em}.mbsc-mobiscroll.mbsc-fr-no-overlay .mbsc-fr-arr{box-shadow:0 0 1em rgba(0,0,0,0.2)}.mbsc-mobiscroll.mbsc-fr-no-overlay .mbsc-fr-w{box-shadow:0 0.125em 1em rgba(0,0,0,0.3)}.mbsc-mobiscroll.mbsc-fr-no-overlay.mbsc-fr-bubble .mbsc-fr-w{border-radius:.25em}.mbsc-mobiscroll .mbsc-fr-overlay{background:rgba(0,0,0,0.7)}.mbsc-mobiscroll .mbsc-fr-w{background:#f7f7f7;color:#454545}.mbsc-mobiscroll .mbsc-fr-hdr,.mbsc-mobiscroll .mbsc-fr-btn{color:#4eccc4}.mbsc-mobiscroll .mbsc-fr-btn.mbsc-active,.mbsc-mobiscroll.mbsc-no-touch .mbsc-fr-btn-e:not(.mbsc-disabled):hover{background:rgba(78,204,196,0.3)}.mbsc-mobiscroll .mbsc-fr-arr{background:#f7f7f7}.mbsc-sc-whl-o,.mbsc-sc-btn{-webkit-transform:translateZ(0)}.mbsc-sc .mbsc-sc-whl-c,.mbsc-sc .mbsc-sc-whl-l,.mbsc-sc .mbsc-sc-whl{box-sizing:content-box}.mbsc-sc-whl-gr-c,.mbsc-sc-itm{box-sizing:border-box}.mbsc-sc-whl-gr-c{position:relative;max-width:100%;vertical-align:middle;display:inline-block;overflow:hidden}.mbsc-fr-bottom .mbsc-sc-whl-gr-c:first-child:last-child,.mbsc-fr-top .mbsc-sc-whl-gr-c:first-child:last-child,.mbsc-fr-inline .mbsc-sc-whl-gr-c:first-child:last-child,.mbsc-fr-liq .mbsc-sc-whl-gr-c{display:block}.mbsc-sc-whl-gr{margin:0 auto;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center}.mbsc-sc-whl-w{max-width:100%;position:relative;-ms-touch-action:none;touch-action:none}.mbsc-fr-pointer .mbsc-sc-whl-w,.mbsc-fr-liq .mbsc-sc-whl-w{-webkit-box-flex:1;-webkit-flex:1 auto;-ms-flex:1 auto;flex:1 auto}.mbsc-sc-whl-o{position:absolute;z-index:2;top:0;right:0;bottom:0;left:0;pointer-events:none;display:none}.mbsc-sc-whl-l{display:none;position:absolute;top:50%;left:0;right:0;pointer-events:none}.mbsc-sc-whl-w .mbsc-sc-whl-l{display:block}.mbsc-sc-whl{overflow:hidden;border-top:1px solid transparent;border-bottom:1px solid transparent;margin:-1px 0}.mbsc-sc-whl-c{position:relative;z-index:1;top:50%;border-top:1px solid transparent;border-bottom:1px solid transparent}.mbsc-sc-whl-sc{position:relative}.mbsc-sc-itm{position:relative;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mbsc-sc-itm-inv,.mbsc-sc-itm-inv-h{opacity:.3}.mbsc-sc-lbl{position:absolute;left:0;right:0;bottom:100%;display:none}.mbsc-sc-lbl-v .mbsc-sc-lbl{display:block}.mbsc-sc-btn{position:absolute;z-index:2;left:0;right:0;cursor:pointer;opacity:1;text-align:center;transition:opacity .2s linear}.mbsc-sc-btn:before{position:absolute;top:0;right:0;left:0}.mbsc-sc-whl-a .mbsc-sc-btn{opacity:0}.mbsc-sc-btn-plus{bottom:0}.mbsc-sc-btn-minus{top:0}.mbsc-sc-whl-gr-3d{-webkit-perspective:1200px;perspective:1200px}.mbsc-sc-whl-gr-3d .mbsc-sc-whl{overflow:visible}.mbsc-sc-whl-gr-3d .mbsc-sc-whl-c{overflow:hidden}.mbsc-sc-whl-gr-3d .mbsc-sc-whl-w,.mbsc-sc-whl-gr-3d .mbsc-sc-whl{transform-style:preserve-3d}.mbsc-sc-whl-3d{position:absolute;top:50%;left:0;right:0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.mbsc-sc-itm-3d{position:absolute;width:100%;top:0;left:0;cursor:pointer;-webkit-backface-visibility:hidden;backface-visibility:hidden}.mbsc-sc-itm-del{display:none}.mbsc-sc-itm-ml{width:100%;height:auto;display:inline-block;vertical-align:middle;white-space:normal}.mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{position:absolute;top:0;left:0;width:1em;text-align:center}.mbsc-fr-pointer .mbsc-fr-w .mbsc-sc-whl-gr-c,.mbsc-fr-pointer .mbsc-fr-w .mbsc-sc-whl-gr{padding:0}.mbsc-fr-pointer .mbsc-sc-whl-gr-c:first-child:last-child{display:block}.mbsc-sc-bar-c{position:absolute;z-index:4;top:0;bottom:0;right:0;width:10px;opacity:0;background:rgba(0,0,0,0.05);transform:translateZ(0);transition:opacity .2s}.mbsc-sc-bar{position:absolute;right:0;top:0;width:10px;height:100%}.mbsc-sc-bar:after{content:'';position:absolute;top:2px;right:2px;bottom:2px;left:2px;background:rgba(0,0,0,0.5);border-radius:3px}.mbsc-sc-whl-w:hover .mbsc-sc-bar-c,.mbsc-sc-whl-anim .mbsc-sc-bar-c{opacity:1}.mbsc-mobiscroll .mbsc-sc-whl-gr{padding:.5em .25em}.mbsc-mobiscroll .mbsc-sc-whl-w{margin:0 .25em}.mbsc-mobiscroll .mbsc-sc-lbl-v .mbsc-sc-whl-w{margin-top:1.875em}.mbsc-mobiscroll .mbsc-sc-lbl{font-size:.75em;line-height:2.5em;text-transform:uppercase}.mbsc-mobiscroll .mbsc-sc-cp .mbsc-sc-whl-w{padding:2em 0}.mbsc-mobiscroll .mbsc-sc-btn{height:2em;line-height:2em}.mbsc-mobiscroll .mbsc-sc-btn:before{font-size:1.5em}.mbsc-mobiscroll .mbsc-sc-itm{padding:0 .25em;font-size:1.375em}.mbsc-mobiscroll.mbsc-no-touch .mbsc-sc-itm.mbsc-btn-e:hover,.mbsc-mobiscroll .mbsc-sc-itm:focus{outline:0}.mbsc-mobiscroll .mbsc-sc-whl-multi .mbsc-sc-itm{padding:0 1.818181em}.mbsc-mobiscroll .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{font-size:1.818181em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-lbl{padding-left:1.666667em;padding-right:1.666667em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-whl-w{margin-left:0;margin-right:0}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-itm{font-size:1em;padding:0 1.25em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-whl-multi .mbsc-sc-itm{padding:0 2.5em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{font-size:2em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-ltr .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{left:.125em}.mbsc-mobiscroll.mbsc-fr-pointer .mbsc-rtl .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{right:.125em}.mbsc-mobiscroll .mbsc-sc-lbl{color:#4eccc4}.mbsc-mobiscroll .mbsc-sc-whl-l{border-top:1px solid #4eccc4;border-bottom:1px solid #4eccc4}.mbsc-mobiscroll .mbsc-sc-btn{color:#4eccc4;background:#f7f7f7}.mbsc-mobiscroll.mbsc-no-touch .mbsc-sc-itm.mbsc-btn-e:hover,.mbsc-mobiscroll .mbsc-sc-itm:focus{background:rgba(69,69,69,0.1)}.mbsc-mobiscroll.mbsc-no-touch .mbsc-sc-btn:hover:before,.mbsc-mobiscroll.mbsc-sc .mbsc-sc-whl .mbsc-sc-itm.mbsc-active,.mbsc-mobiscroll .mbsc-sc-btn.mbsc-active:before{background:rgba(78,204,196,0.3)}.mbsc-mobiscroll .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{color:#4eccc4}.mbsc-cal-slide,.mbsc-cal-day,.mbsc-cal-day-i{box-sizing:border-box}.mbsc-cal .mbsc-cal-day-date{text-align:center;box-sizing:content-box}.mbsc-cal-hdr,.mbsc-cal-btn-w,.mbsc-cal-days-c,.mbsc-cal-days,.mbsc-cal-tabbed .mbsc-fr-c .mbsc-sc-whl-gr-c{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.mbsc-cal-btn-w,.mbsc-cal-month,.mbsc-cal-year,.mbsc-cal-days,.mbsc-cal-days>div{-webkit-box-flex:1;-webkit-flex:1 auto;-ms-flex:1 auto;flex:1 auto}.mbsc-cal-c{position:relative;display:inline-block;vertical-align:middle;text-align:center}.mbsc-cal-btn-w{width:50%}.mbsc-cal-month,.mbsc-cal-year{width:1%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.mbsc-cal-btn.mbsc-disabled{opacity:.3;cursor:not-allowed}.mbsc-cal-days{line-height:1.875em;text-align:center}.mbsc-cal-days>div{width:14.285715%}.mbsc-cal-body{position:relative}.mbsc-cal-scroll-c{overflow:hidden;height:100%}.mbsc-cal-scroll{width:100%;height:100%}.mbsc-cal-slide{position:absolute;z-index:0;top:0;left:0;width:100%;height:100%}.mbsc-cal-slide:first-child{position:relative}.mbsc-cal-table{display:table;width:100%;height:100%;table-layout:fixed;-webkit-transform:translateZ(0)}.mbsc-cal-row{display:table-row}.mbsc-cal-cell{display:table-cell;vertical-align:middle}.mbsc-cal-cell:focus{outline:0}.mbsc-cal-picker{position:absolute;top:0;right:0;bottom:0;left:0;padding:.9375em 0;transition:all .2s ease-in-out;will-change:opacity}.mbsc-cal-picker .mbsc-cal-cell{width:33.333333%;height:25%;cursor:pointer}.mbsc-cal-h{visibility:hidden;opacity:0}.mbsc-cal-day{max-width:14.285715%;height:16.666667%;position:relative;text-align:center;cursor:pointer}.mbsc-cal-day-i{position:relative;height:100%}.mbsc-cal-day-markup{overflow:hidden}.mbsc-cal-day-diff .mbsc-cal-day-date{opacity:.5}.mbsc-cal-week-view .mbsc-cal-day-date,.mbsc-cal-day-diff.mbsc-selected .mbsc-cal-day-date{opacity:1}.mbsc-cal-cell.mbsc-disabled{cursor:not-allowed}.mbsc-cal-cell.mbsc-disabled .mbsc-cal-cell-txt{opacity:.2}.mbsc-cal-hide-diff .mbsc-cal-day-diff{cursor:default}.mbsc-cal-hide-diff .mbsc-cal-day-diff .mbsc-cal-day-i{visibility:hidden}.mbsc-ltr .mbsc-cal-weeks .mbsc-cal-days{margin-left:1.625em}.mbsc-rtl .mbsc-cal-weeks .mbsc-cal-days{margin-right:1.625em}.mbsc-cal-week-nr{width:1.625em;text-align:center}.mbsc-cal-multi .mbsc-cal-hdr{display:block}.mbsc-cal-multi .mbsc-cal-btn-w{width:auto}.mbsc-cal-multi .mbsc-cal-days,.mbsc-cal-multi .mbsc-cal-slide{padding:0 .5em}.mbsc-fr-liq .mbsc-cal-c{display:block}.mbsc-calendar.mbsc-fr-liq.mbsc-fr-center .mbsc-fr-overlay{display:none}.mbsc-calendar.mbsc-fr-liq.mbsc-fr-center .mbsc-fr-w{border-radius:0;padding-left:constant(safe-area-inset-left);padding-left:env(safe-area-inset-left);padding-right:constant(safe-area-inset-right);padding-right:env(safe-area-inset-right);padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.mbsc-cal-tabs-c{display:none}.mbsc-cal-tabs{display:table;width:100%;margin:0;padding:0;list-style:none}.mbsc-cal-tab{position:relative;width:33.33%;display:table-cell;overflow:hidden;cursor:pointer;text-align:center}.mbsc-cal-tabbed .mbsc-fr-c{position:relative}.mbsc-cal-tabbed .mbsc-w-p{transition:opacity .2s ease-in-out}.mbsc-cal-tabbed .mbsc-sc-whl-gr-c{position:absolute;z-index:1;top:0;left:0;right:0;max-width:none;height:100%;-webkit-box-align:center;-webkit-align-items:center;-ms-box-align:center;align-items:center}.mbsc-cal-tabbed .mbsc-cal-c,.mbsc-cal-tabbed .mbsc-cal-tabs-c{display:block}.mbsc-cal-tabbed .mbsc-fr-pos .mbsc-sc-whl-gr-c{width:auto}.mbsc-cal-has-marks .mbsc-cal-day{padding-bottom:.25em}.mbsc-cal-marks{position:absolute;left:0;right:0;height:.375em;margin-top:-.125em;overflow:hidden;white-space:nowrap}.mbsc-cal-mark{display:inline-block;vertical-align:top;width:.25em;height:.25em;margin:.0625em;border-radius:.25em}.mbsc-cal-txt-w{position:absolute;z-index:2;pointer-events:none}.mbsc-ltr .mbsc-cal-txt{text-align:left}.mbsc-rtl .mbsc-cal-txt{text-align:right}.mbsc-cal-txt,.mbsc-cal-txt-ph,.mbsc-cal-txt-more{position:relative;height:1.6em;line-height:1.6em;overflow:hidden;padding:0 .3em;font-size:.625em;white-space:nowrap;text-overflow:ellipsis;margin:0 .1em .2em .1em}.mbsc-cal-day .mbsc-cal-txt.mbsc-cal-txt-only{color:inherit;text-align:center}.mbsc-no-touch .mbsc-cal-txt:before{content:'';position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;transition:background-color .2s}.mbsc-no-touch .mbsc-cal-txt-only:before{display:none}.mbsc-no-touch .mbsc-cal-txt.mbsc-hover:before{background-color:rgba(0,0,0,0.2)}.mbsc-no-touch .mbsc-cal-txt-more:hover{background-color:rgba(0,0,0,0.1)}.mbsc-cal-txt-more{text-align:left;transition:background-color .2s}.mbsc-cal .mbsc-cal-btn{position:relative;z-index:1}.mbsc-mobiscroll .mbsc-cal-c{padding:.5em}.mbsc-mobiscroll .mbsc-cal-btn-w{font-size:1.125em;line-height:2.222223em}.mbsc-mobiscroll .mbsc-cal .mbsc-cal-btn{width:2.666667em;height:2.666667em;line-height:2.666667em;padding:0;border-radius:2em;margin:-.222222em}.mbsc-mobiscroll .mbsc-cal-picker{border-top:1px solid transparent}.mbsc-mobiscroll .mbsc-cal-picker .mbsc-cal-cell-i{display:inline-block;height:2em;padding:0 1em;line-height:2em;border-radius:2em;white-space:nowrap}.mbsc-mobiscroll .mbsc-cal-days>div{font-size:.6875em}.mbsc-mobiscroll .mbsc-cal-day-date{display:inline-block;width:2.153847em;height:2.153847em;margin:.307692em 0;line-height:2.153847em;font-size:.8125em;border:2px solid transparent;border-radius:2em}.mbsc-mobiscroll .mbsc-cal-week-nr{width:2.363637em;font-size:.6875em}.mbsc-mobiscroll .mbsc-cal-tabs-c{line-height:1.875em;padding:.5em .5em 0 .5em;text-transform:uppercase}.mbsc-mobiscroll .mbsc-cal-tab{font-size:.7em;padding:0 1.2em}.mbsc-mobiscroll .mbsc-cal-picker{background:#f7f7f7}.mbsc-mobiscroll .mbsc-cal-days>div{border-bottom:1px solid #4eccc4;color:#4eccc4}.mbsc-mobiscroll .mbsc-cal-today{color:#4eccc4}.mbsc-mobiscroll.mbsc-no-touch:not(.mbsc-ev-cal) .mbsc-cal-cell:not(.mbsc-disabled):hover .mbsc-cal-cell-txt,.mbsc-mobiscroll.mbsc-no-touch .mbsc-cal-day:not(.mbsc-disabled) .mbsc-cal-day-date:hover,.mbsc-mobiscroll .mbsc-cal-cell:focus .mbsc-cal-cell-txt{background:rgba(78,204,196,0.3)}.mbsc-mobiscroll .mbsc-cal-c .mbsc-cal .mbsc-cal-body .mbsc-cal-row .mbsc-selected .mbsc-cal-cell-txt{background:#4eccc4;color:#f7f7f7}.mbsc-mobiscroll .mbsc-cal-day-colored.mbsc-selected .mbsc-cal-day-date{border-color:#4eccc4}.mbsc-mobiscroll .mbsc-cal-week-nr{color:#4eccc4}.mbsc-mobiscroll .mbsc-cal-tab{border:1px solid #4eccc4;color:#454545}.mbsc-mobiscroll .mbsc-fr-w .mbsc-cal-tabs-c .mbsc-cal-tabs .mbsc-cal-tab.mbsc-selected{background:#4eccc4;color:#f7f7f7}.mbsc-mobiscroll .mbsc-cal-mark{background:#454545}.mbsc-mobiscroll .mbsc-cal-txt{color:#f7f7f7;background:#454545}.mbsc-mobiscroll .mbsc-cal-icons{color:#454545}.mbsc-mobiscroll-dark .mbsc-fr-overlay{background:rgba(0,0,0,0.7)}.mbsc-mobiscroll-dark .mbsc-fr-w{background:#263238;color:#f7f7f7}.mbsc-mobiscroll-dark .mbsc-fr-hdr,.mbsc-mobiscroll-dark .mbsc-fr-btn{color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-fr-btn.mbsc-active,.mbsc-mobiscroll-dark.mbsc-no-touch .mbsc-fr-btn-e:not(.mbsc-disabled):hover{background:rgba(79,204,196,0.3)}.mbsc-mobiscroll-dark .mbsc-fr-arr{background:#263238}.mbsc-mobiscroll-dark .mbsc-sc-lbl{color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-sc-whl-l{border-top:1px solid #4fccc4;border-bottom:1px solid #4fccc4}.mbsc-mobiscroll-dark .mbsc-sc-btn{color:#4fccc4;background:#263238}.mbsc-mobiscroll-dark.mbsc-no-touch .mbsc-sc-itm.mbsc-btn-e:hover,.mbsc-mobiscroll-dark .mbsc-sc-itm:focus{background:rgba(247,247,247,0.1)}.mbsc-mobiscroll-dark.mbsc-no-touch .mbsc-sc-btn:hover:before,.mbsc-mobiscroll-dark.mbsc-sc .mbsc-sc-whl .mbsc-sc-itm.mbsc-active,.mbsc-mobiscroll-dark .mbsc-sc-btn.mbsc-active:before{background:rgba(79,204,196,0.3)}.mbsc-mobiscroll-dark .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-cal-picker{background:#263238}.mbsc-mobiscroll-dark .mbsc-cal-days>div{border-bottom:1px solid #4fccc4;color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-cal-today{color:#4fccc4}.mbsc-mobiscroll-dark.mbsc-no-touch:not(.mbsc-ev-cal) .mbsc-cal-cell:not(.mbsc-disabled):hover .mbsc-cal-cell-txt,.mbsc-mobiscroll-dark.mbsc-no-touch .mbsc-cal-day:not(.mbsc-disabled) .mbsc-cal-day-date:hover,.mbsc-mobiscroll-dark .mbsc-cal-cell:focus .mbsc-cal-cell-txt{background:rgba(79,204,196,0.3)}.mbsc-mobiscroll-dark .mbsc-cal-c .mbsc-cal .mbsc-cal-body .mbsc-cal-row .mbsc-selected .mbsc-cal-cell-txt{background:#4fccc4;color:#263238}.mbsc-mobiscroll-dark .mbsc-cal-day-colored.mbsc-selected .mbsc-cal-day-date{border-color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-cal-week-nr{color:#4fccc4}.mbsc-mobiscroll-dark .mbsc-cal-tab{border:1px solid #4fccc4;color:#f7f7f7}.mbsc-mobiscroll-dark .mbsc-fr-w .mbsc-cal-tabs-c .mbsc-cal-tabs .mbsc-cal-tab.mbsc-selected{background:#4fccc4;color:#263238}.mbsc-mobiscroll-dark .mbsc-cal-mark{background:#f7f7f7}.mbsc-mobiscroll-dark .mbsc-cal-txt{color:#263238;background:#f7f7f7}.mbsc-mobiscroll-dark .mbsc-cal-icons{color:#f7f7f7}.mbsc-voxco .mbsc-fr-overlay{background:rgba(0,0,0,0.7)}.mbsc-voxco .mbsc-fr-w{background:#F7F7F7;color:#454545}.mbsc-voxco .mbsc-fr-hdr,.mbsc-voxco .mbsc-fr-btn{color:#0D77BD}.mbsc-voxco .mbsc-fr-btn.mbsc-active,.mbsc-voxco.mbsc-no-touch .mbsc-fr-btn-e:not(.mbsc-disabled):hover{background:rgba(13,119,189,0.3)}.mbsc-voxco .mbsc-fr-arr{background:#F7F7F7}.mbsc-voxco .mbsc-sc-lbl{color:#0D77BD}.mbsc-voxco .mbsc-sc-whl-l{border-top:1px solid #0D77BD;border-bottom:1px solid #0D77BD}.mbsc-voxco .mbsc-sc-btn{color:#0D77BD;background:#F7F7F7}.mbsc-voxco.mbsc-no-touch .mbsc-sc-itm.mbsc-btn-e:hover,.mbsc-voxco .mbsc-sc-itm:focus{background:rgba(69,69,69,0.1)}.mbsc-voxco.mbsc-no-touch .mbsc-sc-btn:hover:before,.mbsc-voxco.mbsc-sc .mbsc-sc-whl .mbsc-sc-itm.mbsc-active,.mbsc-voxco .mbsc-sc-btn.mbsc-active:before{background:rgba(13,119,189,0.3)}.mbsc-voxco .mbsc-sc-whl-multi .mbsc-sc-itm-sel:before{color:#0D77BD}.mbsc-voxco .mbsc-cal-picker{background:#F7F7F7}.mbsc-voxco .mbsc-cal-days>div{border-bottom:1px solid #0D77BD;color:#0D77BD}.mbsc-voxco .mbsc-cal-today{color:#0D77BD}.mbsc-voxco.mbsc-no-touch:not(.mbsc-ev-cal) .mbsc-cal-cell:not(.mbsc-disabled):hover .mbsc-cal-cell-txt,.mbsc-voxco.mbsc-no-touch .mbsc-cal-day:not(.mbsc-disabled) .mbsc-cal-day-date:hover,.mbsc-voxco .mbsc-cal-cell:focus .mbsc-cal-cell-txt{background:rgba(13,119,189,0.3)}.mbsc-voxco .mbsc-cal-c .mbsc-cal .mbsc-cal-body .mbsc-cal-row .mbsc-selected .mbsc-cal-cell-txt{background:#0D77BD;color:#F7F7F7}.mbsc-voxco .mbsc-cal-day-colored.mbsc-selected .mbsc-cal-day-date{border-color:#0D77BD}.mbsc-voxco .mbsc-cal-week-nr{color:#0D77BD}.mbsc-voxco .mbsc-cal-tab{border:1px solid #0D77BD;color:#454545}.mbsc-voxco .mbsc-fr-w .mbsc-cal-tabs-c .mbsc-cal-tabs .mbsc-cal-tab.mbsc-selected{background:#0D77BD;color:#F7F7F7}.mbsc-voxco .mbsc-cal-mark{background:#454545}.mbsc-voxco .mbsc-cal-txt{color:#F7F7F7;background:#454545}.mbsc-voxco .mbsc-cal-icons{color:#454545}\\r\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/cssWithMappingToString.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"/**\\n * Material design colors from https://material.google.com/style/color.html#color-color-palette\\n */\\nhtml {\\n touch-action: manipulation;\\n}\\nhtml,\\nbody {\\n height: auto !important;\\n}\\n* {\\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\\n}\\nul.errors {\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n}\\n.connection-progress {\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n height: 3px;\\n background: transparentize(#18D9B4, 0.7);\\n z-index: 9999;\\n}\\n.connection-progress__fill {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n background: #18D9B4;\\n transition: width 200ms;\\n}\\n.progressBarBar {\\n transition: width 500ms;\\n}\\n.survey-engine .preview {\\n height: 100%;\\n display: flex;\\n}\\n.survey-engine .debug-flag {\\n display: none;\\n color: #9E9E9E;\\n}\\n.survey-engine .table-inverted {\\n display: flex;\\n overflow: hidden;\\n background: none;\\n}\\n.survey-engine .table-inverted thead {\\n display: flex;\\n flex-shrink: 0;\\n min-width: min-content;\\n}\\n.survey-engine .table-inverted tbody {\\n display: flex;\\n position: relative;\\n overflow-x: auto;\\n overflow-y: hidden;\\n}\\n.survey-engine .table-inverted tr {\\n display: flex;\\n flex-direction: column;\\n min-width: min-content;\\n flex-shrink: 0;\\n}\\n.survey-engine .table-inverted td,\\n.survey-engine .table-inverted th {\\n display: block;\\n}\\n.survey-engine__error {\\n font-family: 'Roboto Mono', monospace;\\n font-weight: 500;\\n line-height: 1.5em;\\n padding: 1em;\\n font-size: 12px;\\n color: #F41134;\\n background: white;\\n}\\n.survey-engine__error h1 {\\n font-family: 'Roboto Mono', monospace;\\n font-weight: 300;\\n font-size: 20px;\\n line-height: 29px;\\n margin: 0;\\n padding: 12px 0;\\n color: #F41134;\\n}\\n.survey-engine__error pre {\\n font-family: 'Roboto Mono', monospace;\\n white-space: pre-wrap;\\n margin: 0;\\n}\\n.survey-engine__error pre span:before {\\n color: #e3a6a6;\\n}\\n.survey-engine--debug .survey-engine__error {\\n display: block;\\n}\\n.survey-engine--debug .debug-flag {\\n display: inherit;\\n}\\n@media (max-width: 1024px) {\\n .survey-engine .preview__mobile {\\n display: none;\\n }\\n}\\n@keyframes loader-scale {\\n 0% {\\n transform: scale(0);\\n opacity: 0;\\n }\\n 50% {\\n opacity: 1;\\n }\\n 100% {\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/assets/main.less\"],\"names\":[],\"mappings\":\"AAAA;;EAEE;AACF;EACI,0BAAA;AACJ;AAEA;;EACI,uBAAA;AACJ;AAEA;EACI,6CAAA;AAAJ;AAGA;EACI,gBAAA;EACA,SAAA;EACA,UAAA;AADJ;AAIA;EACI,kBAAA;EACA,MAAA;EACA,OAAA;EACA,QAAA;EACA,WAAA;EACA,wCAAA;EACA,aAAA;AAFJ;AAII;EACI,kBAAA;EACA,OAAA;EACA,MAAA;EACA,SAAA;EACA,mBAAA;EACA,uBAAA;AAFR;AAMA;EACI,uBAAA;AAJJ;AAOA;EAGQ,YAAA;EACA,aAAA;AAPR;AAGA;EAQQ,aAAA;EACA,cAAA;AARR;AADA;EAaQ,aAAA;EACA,gBAAA;EACA,gBAAA;AATR;AANA;EAkBY,aAAA;EACA,cAAA;EACA,sBAAA;AATZ;AAXA;EAwBY,aAAA;EACA,kBAAA;EACA,gBAAA;EACA,kBAAA;AAVZ;AAjBA;EA+BY,aAAA;EACA,sBAAA;EACA,sBAAA;EACA,cAAA;AAXZ;AAvBA;;EAsCY,cAAA;AAXZ;AAeI;EAEI,qCAAA;EACA,gBAAA;EACA,kBAAA;EACA,YAAA;EACA,eAAA;EACA,cAAA;EACA,iBAAA;AAdR;AAMI;EAWQ,qCAAA;EACA,gBAAA;EACA,eAAA;EACA,iBAAA;EACA,SAAA;EACA,eAAA;EACA,cAAA;AAdZ;AAHI;EAqBQ,qCAAA;EACA,qBAAA;EACA,SAAA;AAfZ;AARI;EA0BY,cAAA;AAfhB;AAoBI;EAGQ,cAAA;AApBZ;AAiBI;EAOQ,gBAAA;AArBZ;AAyBI;EAAA;IAEQ,aAAA;EAvBV;AACF;AA2BA;EACI;IACI,mBAAA;IACA,UAAA;EAzBN;EA4BE;IACI,UAAA;EA1BN;EA6BE;IACI,mBAAA;IACA,UAAA;EA3BN;AACF\",\"sourcesContent\":[\"@import 'palette.less';\\n@import 'variables.less';\\n\\nhtml {\\n touch-action: manipulation;\\n}\\n\\nhtml, body {\\n height: auto !important;\\n}\\n\\n* {\\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\\n}\\n\\nul.errors {\\n list-style: none;\\n margin: 0;\\n padding: 0;\\n}\\n\\n.connection-progress {\\n position: absolute;\\n top: 0;\\n left: 0;\\n right: 0;\\n height: 3px;\\n background: transparentize(@primary, 0.7);\\n z-index: 9999;\\n\\n &__fill {\\n position: absolute;\\n left: 0;\\n top: 0;\\n bottom: 0;\\n background: @primary;\\n transition: width 200ms;\\n }\\n}\\n\\n.progressBarBar {\\n transition: width 500ms;\\n}\\n\\n.survey-engine {\\n\\n .preview {\\n height: 100%;\\n display: flex;\\n }\\n \\n .debug-flag {\\n display: none;\\n color: @grey;\\n }\\n\\n .table-inverted {\\n display: flex;\\n overflow: hidden;\\n background: none;\\n\\n thead {\\n display: flex;\\n flex-shrink: 0;\\n min-width: min-content;\\n }\\n\\n tbody {\\n display: flex;\\n position: relative;\\n overflow-x: auto;\\n overflow-y: hidden;\\n }\\n\\n tr {\\n display: flex;\\n flex-direction: column;\\n min-width: min-content;\\n flex-shrink: 0;\\n }\\n\\n td, th {\\n display: block;\\n }\\n }\\n\\n &__error {\\n //display: none;\\n font-family: 'Roboto Mono', monospace;\\n font-weight: 500;\\n line-height: 1.5em;\\n padding: 1em;\\n font-size: 12px;\\n color: @error;\\n background: white;\\n\\n h1 {\\n font-family: 'Roboto Mono', monospace;\\n font-weight: 300;\\n font-size: 20px;\\n line-height: @baseline;\\n margin: 0;\\n padding: 12px 0;\\n color: @error;\\n }\\n\\n pre {\\n font-family: 'Roboto Mono', monospace;\\n white-space: pre-wrap;\\n margin: 0;\\n \\n span:before {\\n color: desaturate(@red-200, 20%)\\n }\\n }\\n }\\n\\n &--debug {\\n \\n .survey-engine__error {\\n display: block;\\n }\\n \\n .debug-flag {\\n display: inherit;\\n }\\n }\\n\\n @media (max-width: 1024px) {\\n .preview__mobile {\\n display: none;\\n }\\n }\\n}\\n\\n@keyframes loader-scale {\\n 0% {\\n transform: scale(0);\\n opacity: 0;\\n }\\n\\n 50% {\\n opacity: 1;\\n }\\n\\n 100% {\\n transform: scale(1);\\n opacity: 0;\\n }\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","const doc = [({\"common\":({\"loading\":\"Loading\", \"nextPage\":\"Next page\", \"previousPage\":\"Previous page\", \"yes\":\"Yes\", \"no\":\"No\"}), \"debug\":({\"title\":\"Debug Panel\", \"testMode\":\"Test Mode\", \"previewMode\":\"Preview Mode\", \"toggleMobilePreview\":\"Show/hide mobile preview\", \"panels\":({\"goToQuestion\":({\"title\":\"Go To Question\", \"search\":\"Search questions...\"}), \"flow\":({\"title\":\"Survey Flow\", \"audioRecording\":\"audio recording\", \"audioRecording_start\":\"Start audio recording\", \"audioRecording_stop\":\"Stop audio recording\", \"branchTo\":\"Branch to {{destination}}\", \"branchTo_autoclean\":\"Branch to {{destination}} [autoclean]\", \"branchToExitUrl\":\"Exit url {{url}} with disposition code {{code}}\", \"completed\":\"Completed\", \"computeVariable\":\"Compute {{variable}}={{value}}\", \"conditionNotMet\":\"condition is not met\", \"exit\":\"Exit {{code}}\", \"selection\":\"Selection\", \"sendEmail\":\"Send email\", \"setPanelistData\":\"Set panelist data\", \"setRow\":\"Set {{block}} row to {{value}}\", \"setVariable\":\"Set {{variable}}={{value}}\", \"setVariable_row\":\"Set {{variable}}={{value}} with row {{matrix}}\", \"simulating\":\"Simulating\", \"toggleLogic\":\"Show/hide logic\"}), \"variables\":({\"title\":\"Variables\", \"openEnd\":\"Open-end\", \"search\":\"Search variables...\", \"text\":\"Text\"}), \"accessibility\":({\"title\":\"Accessibility\", \"label\":({\"error\":\"Error\", \"warning\":\"Warning\", \"elements\":\"Elements\"})}), \"settings\":({\"title\":\"Settings\", \"enableDebugInfo\":\"Enable debug info\", \"display\":({\"title\":\"Display\", \"dockLeft\":\"Dock to left\", \"dockRight\":\"Dock to right\", \"undock\":\"Undock\"})})})}), \"textHighligher\":({\"selectCategory\":\"Select Category\", \"comments\":\"Comments\", \"cancel\":\"Cancel\", \"save\":\"Save\", \"delete\":\"Delete\"})})];\nmodule.exports = doc.length <= 1 ? doc[0] : doc;","const doc = [({\"common\":({\"loading\":\"Chargement\", \"nextPage\":\"Page suivante\", \"previousPage\":\"Page précédente\", \"yes\":\"Oui\", \"no\":\"Non\"}), \"debug\":({\"title\":\"Panneau de déboguage\", \"testMode\":\"Mode Test\", \"previewMode\":\"Mode prévisualisation\", \"toggleMobilePreview\":\"Prévisualisation mobile\", \"panels\":({\"goToQuestion\":({\"title\":\"Navigateur de questions\", \"search\":\"Rechercher des questions...\"}), \"flow\":({\"title\":\"Flux\", \"audioRecording\":\"enregistrement audio\", \"audioRecording_start\":\"Démarrer l'enregistrement audio\", \"audioRecording_stop\":\"Arrêter l'enregistrement audio\", \"branchTo\":\"Brancher vers {{destination}}\", \"branchTo_autoclean\":\"Brancher vers {{destination}} [autoclean]\", \"branchToExitUrl\":\"Quitter puis naviguer vers {{url}} avec le code {{code}}\", \"completed\":\"Complété\", \"computeVariable\":\"Calculer {{variable}}={{value}}\", \"conditionNotMet\":\"condition n'est pas remplie\", \"exit\":\"Quitter {{code}}\", \"selection\":\"Sélectionner\", \"sendEmail\":\"Envoyer un courriel\", \"setPanelistData\":\"Assigner des champs de panéliste\", \"setRow\":\"Déplacer {{block}} à la rangée {{value}}\", \"setVariable\":\"Assigner {{variable}}={{value}}\", \"setVariable_row\":\"Assigner {{variable}}={{value}} pour la rangée {{matrix}}\", \"simulating\":\"Simulation\", \"toggleLogic\":\"Afficher/cacher la logique\"}), \"variables\":({\"title\":\"Variables\", \"openEnd\":\"Réponse ouverte\", \"search\":\"Rechercher des variables...\", \"text\":\"Texte\"}), \"accessibility\":({\"title\":\"Accessibilité\", \"label\":({\"error\":\"Erreur\", \"warning\":\"Avertissement\", \"elements\":\"Éléments\"})}), \"settings\":({\"title\":\"Paramètres\", \"enableDebugInfo\":\"Informations de déboguage\", \"display\":({\"title\":\"Affichage\", \"dockLeft\":\"Ancré à gauche\", \"dockRight\":\"Ancré à droite\", \"undock\":\"Flottant\"})})})}), \"textHighligher\":({\"selectCategory\":\"Sélectionnez une catégorie\", \"comments\":\"Commentaires\", \"cancel\":\"Annuler\", \"save\":\"Sauvegarder\", \"delete\":\"Supprimer\"})})];\nmodule.exports = doc.length <= 1 ? doc[0] : doc;","// Generated automatically by nearley, version unknown\n// http://github.com/Hardmath123/nearley\n(function () {\nfunction id(x) { return x[0]; }\n\r\n/**\r\n * Returns the nth member of the data.\r\n **/\r\nfunction nth(n) {\r\n return function(d) {\r\n return d[n];\r\n };\r\n}\r\n\r\n/**\r\n * Returns the token value of the first data item.\r\n **/\r\nfunction val(d) {\r\n return d[0] && d[0].value;\r\n}\r\n\r\n/**\r\n * Returns null.\r\n **/\r\nfunction nul(d) {\r\n return null;\r\n}\r\n\r\n/**\r\n * Concatenates the first element with the second array.\r\n **/\r\nfunction cat(d) {\r\n return [].concat.apply([d[0]], d[1]);\r\n}\r\n\r\n/**\r\n * Concatenates a string.\r\n **/\r\nfunction join(d) {\r\n return d.join(\"\");\r\n}\r\n\n\r\nconst lexer = require(\"./utils/lexer\").lexer;\r\nconst as = require(\"./utils/symbols\");\r\nconst fn = require(\"./utils/functions\");\r\nvar grammar = {\n Lexer: lexer,\n ParserRules: [\n {\"name\": \"adv_expression\", \"symbols\": [\"adv_boolean\"], \"postprocess\": id},\n {\"name\": \"basic_expression\", \"symbols\": [\"basic_boolean\"], \"postprocess\": id},\n {\"name\": \"adv_boolean$subexpression$1\", \"symbols\": [\"__\", \"or\", \"__\"]},\n {\"name\": \"adv_boolean\", \"symbols\": [\"adv_boolean\", \"adv_boolean$subexpression$1\", \"adv_boolean_not\"], \"postprocess\": ([a, or, b]) => s => as.bool(s, a) || as.bool(s, b)},\n {\"name\": \"adv_boolean$subexpression$2\", \"symbols\": [\"__\", \"and\", \"__\"]},\n {\"name\": \"adv_boolean\", \"symbols\": [\"adv_boolean\", \"adv_boolean$subexpression$2\", \"adv_boolean_not\"], \"postprocess\": ([a, and, b]) => s => as.bool(s, a) && as.bool(s, b)},\n {\"name\": \"adv_boolean\", \"symbols\": [\"adv_boolean_not\"], \"postprocess\": id},\n {\"name\": \"adv_boolean_not\", \"symbols\": [\"not\", \"__\", \"adv_comparison\"], \"postprocess\": ([not, , v]) => s => !as.bool(s, v)},\n {\"name\": \"adv_boolean_not\", \"symbols\": [\"not\", \"_bo_\", \"adv_boolean\", \"_bc_\"], \"postprocess\": ([not, , v]) => s => !as.bool(s, v)},\n {\"name\": \"adv_boolean_not\", \"symbols\": [\"adv_comparison\"], \"postprocess\": id},\n {\"name\": \"basic_boolean$subexpression$1\", \"symbols\": [\"__\", \"or\", \"__\"]},\n {\"name\": \"basic_boolean\", \"symbols\": [\"basic_boolean\", \"basic_boolean$subexpression$1\", \"basic_comparison\"], \"postprocess\": ([a, or, b]) => s => as.bool(s, a) || as.bool(s, b)},\n {\"name\": \"basic_boolean$subexpression$2\", \"symbols\": [\"__\", \"and\", \"__\"]},\n {\"name\": \"basic_boolean\", \"symbols\": [\"basic_boolean\", \"basic_boolean$subexpression$2\", \"basic_comparison\"], \"postprocess\": ([a, and, b]) => s => as.bool(s, a) && as.bool(s, b)},\n {\"name\": \"basic_boolean\", \"symbols\": [\"basic_comparison\"], \"postprocess\": id},\n {\"name\": \"adv_comparison\", \"symbols\": [\"discrete_comparison\"], \"postprocess\": id},\n {\"name\": \"adv_comparison\", \"symbols\": [\"algebraic_comparison\"], \"postprocess\": id},\n {\"name\": \"adv_comparison\", \"symbols\": [\"addition\"], \"postprocess\": id},\n {\"name\": \"discrete_comparison$subexpression$1\", \"symbols\": [\"_\", \"eq\", \"_\"]},\n {\"name\": \"discrete_comparison\", \"symbols\": [\"variable\", \"discrete_comparison$subexpression$1\", \"choice_list\"], \"postprocess\": ([a, eq, b]) => s => fn.eq(s, a, b)},\n {\"name\": \"discrete_comparison$subexpression$2\", \"symbols\": [\"_\", \"eq\", \"_\"]},\n {\"name\": \"discrete_comparison\", \"symbols\": [\"variable_selector\", \"discrete_comparison$subexpression$2\", \"choice_list\"], \"postprocess\": ([a, eq, b]) => s => fn.eq(s, a, b)},\n {\"name\": \"discrete_comparison$subexpression$3\", \"symbols\": [\"_\", \"not_eq\", \"_\"]},\n {\"name\": \"discrete_comparison\", \"symbols\": [\"variable_selector\", \"discrete_comparison$subexpression$3\", \"choice_list\"], \"postprocess\": ([a, neq, b]) => s => !fn.eq(s, a, b)},\n {\"name\": \"algebraic_comparison$subexpression$1\", \"symbols\": [\"_\", \"eq_algebraic\", \"_\"]},\n {\"name\": \"algebraic_comparison\", \"symbols\": [\"adv_comparison\", \"algebraic_comparison$subexpression$1\", \"addition\"], \"postprocess\": ([a, eq, b]) => s => fn.eq_algebraic(s, a, b)},\n {\"name\": \"algebraic_comparison$subexpression$2\", \"symbols\": [\"_\", \"not_eq\", \"_\"]},\n {\"name\": \"algebraic_comparison\", \"symbols\": [\"adv_comparison\", \"algebraic_comparison$subexpression$2\", \"addition\"], \"postprocess\": ([a, neq, b]) => s => !fn.eq_algebraic(s, a, b)},\n {\"name\": \"algebraic_comparison$subexpression$3\", \"symbols\": [\"_\", \"gte\", \"_\"]},\n {\"name\": \"algebraic_comparison\", \"symbols\": [\"adv_comparison\", \"algebraic_comparison$subexpression$3\", \"addition\"], \"postprocess\": ([a, gte, b]) => s => fn.gt(s, a, b) || fn.eq_algebraic(s, a, b)},\n {\"name\": \"algebraic_comparison$subexpression$4\", \"symbols\": [\"_\", \"gt\", \"_\"]},\n {\"name\": \"algebraic_comparison\", \"symbols\": [\"adv_comparison\", \"algebraic_comparison$subexpression$4\", \"addition\"], \"postprocess\": ([a, gt, b]) => s => fn.gt(s, a, b)},\n {\"name\": \"algebraic_comparison$subexpression$5\", \"symbols\": [\"_\", \"lte\", \"_\"]},\n {\"name\": \"algebraic_comparison\", \"symbols\": [\"adv_comparison\", \"algebraic_comparison$subexpression$5\", \"addition\"], \"postprocess\": ([a, lte, b]) => s => fn.lt(s, a, b) || fn.eq_algebraic(s, a, b)},\n {\"name\": \"algebraic_comparison$subexpression$6\", \"symbols\": [\"_\", \"lt\", \"_\"]},\n {\"name\": \"algebraic_comparison\", \"symbols\": [\"adv_comparison\", \"algebraic_comparison$subexpression$6\", \"addition\"], \"postprocess\": ([a, lt, b]) => s => fn.lt(s, a, b)},\n {\"name\": \"basic_comparison$subexpression$1\", \"symbols\": [\"_\", \"eq\", \"_\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$1\", \"value\"], \"postprocess\": ([a, eq, b]) => s => fn.eq(s, a, b)},\n {\"name\": \"basic_comparison$subexpression$2\", \"symbols\": [\"_\", \"not_eq\", \"_\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$2\", \"value\"], \"postprocess\": ([a, neq, b]) => s => !fn.eq(s, a, b)},\n {\"name\": \"basic_comparison$subexpression$3\", \"symbols\": [\"_\", \"gte\", \"_\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$3\", \"numeric_value\"], \"postprocess\": ([a, gte, b]) => s => fn.compare(s, a, b).some(c => c >= 0)},\n {\"name\": \"basic_comparison$subexpression$4\", \"symbols\": [\"_\", \"gt\", \"_\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$4\", \"numeric_value\"], \"postprocess\": ([a, gt, b]) => s => fn.compare(s, a, b).some(c => c > 0)},\n {\"name\": \"basic_comparison$subexpression$5\", \"symbols\": [\"_\", \"lte\", \"_\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$5\", \"numeric_value\"], \"postprocess\": ([a, lte, b]) => s => fn.compare(s, a, b).some(c => c <= 0)},\n {\"name\": \"basic_comparison$subexpression$6\", \"symbols\": [\"_\", \"lt\", \"_\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$6\", \"numeric_value\"], \"postprocess\": ([a, lt, b]) => s => fn.compare(s, a, b).some(c => c < 0)},\n {\"name\": \"basic_comparison$subexpression$7\", \"symbols\": [\"__\", \"contains\", \"__\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$7\", \"value\"], \"postprocess\": ([a, contains, b]) => s => fn.strfind(s, a, b)},\n {\"name\": \"basic_comparison$subexpression$8\", \"symbols\": [\"__\", \"does_not_contain\", \"__\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$8\", \"value\"], \"postprocess\": ([a, dncontain, b]) => s => !fn.strfind(s, a, b)},\n {\"name\": \"basic_comparison$subexpression$9\", \"symbols\": [\"__\", \"is_empty\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$9\"], \"postprocess\": ([v]) => s => fn.empty(s, v)},\n {\"name\": \"basic_comparison$subexpression$10\", \"symbols\": [\"__\", \"is_not_empty\"]},\n {\"name\": \"basic_comparison\", \"symbols\": [\"variable\", \"basic_comparison$subexpression$10\"], \"postprocess\": ([v]) => s => !fn.empty(s, v)},\n {\"name\": \"basic_comparison\", \"symbols\": [\"basic_group\"], \"postprocess\": id},\n {\"name\": \"addition$subexpression$1\", \"symbols\": [\"_\", \"add\", \"_\"]},\n {\"name\": \"addition\", \"symbols\": [\"addition\", \"addition$subexpression$1\", \"multiplication\"], \"postprocess\": ([a, plus, b]) => s => fn.add(s, a, b)},\n {\"name\": \"addition$subexpression$2\", \"symbols\": [\"_\", \"sub\", \"_\"]},\n {\"name\": \"addition\", \"symbols\": [\"addition\", \"addition$subexpression$2\", \"multiplication\"], \"postprocess\": ([a, minus, b]) => s => fn.sub(s, a, b)},\n {\"name\": \"addition\", \"symbols\": [\"multiplication\"], \"postprocess\": id},\n {\"name\": \"multiplication$subexpression$1\", \"symbols\": [\"_\", \"mul\", \"_\"]},\n {\"name\": \"multiplication\", \"symbols\": [\"multiplication\", \"multiplication$subexpression$1\", \"exponentiation\"], \"postprocess\": ([a, mul, b]) => s => fn.mul(s, a, b)},\n {\"name\": \"multiplication$subexpression$2\", \"symbols\": [\"_\", \"div\", \"_\"]},\n {\"name\": \"multiplication\", \"symbols\": [\"multiplication\", \"multiplication$subexpression$2\", \"exponentiation\"], \"postprocess\": ([a, div, b]) => s => fn.div(s, a, b)},\n {\"name\": \"multiplication\", \"symbols\": [\"exponentiation\"], \"postprocess\": id},\n {\"name\": \"exponentiation$subexpression$1\", \"symbols\": [\"_\", \"exp\", \"_\"]},\n {\"name\": \"exponentiation\", \"symbols\": [\"adv_group\", \"exponentiation$subexpression$1\", \"exponentiation\"], \"postprocess\": ([a, exp, b]) => s => fn.pow(s, a, b)},\n {\"name\": \"exponentiation\", \"symbols\": [\"adv_group\"], \"postprocess\": id},\n {\"name\": \"adv_group\", \"symbols\": [\"_bo_\", \"adv_boolean\", \"_bc_\"], \"postprocess\": nth(1)},\n {\"name\": \"adv_group\", \"symbols\": [\"function\"], \"postprocess\": id},\n {\"name\": \"adv_group\", \"symbols\": [\"numeric_value\"], \"postprocess\": id},\n {\"name\": \"basic_group\", \"symbols\": [\"_bo_\", \"basic_boolean\", \"_bc_\"], \"postprocess\": nth(1)},\n {\"name\": \"basic_group\", \"symbols\": [\"numeric_value\"], \"postprocess\": id},\n {\"name\": \"function\", \"symbols\": [\"fn_min\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([min, , vn]) => s => fn.min(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_max\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vn]) => s => fn.max(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_sum\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([sum, , vn]) => s => fn.sum(s, vn)},\n {\"name\": \"function\", \"symbols\": [\"fn_smr\", \"_bo_\", \"arg_val\", \"_ls_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([smr, ,v, ,vn]) => s => fn.smr(s, v, vn)},\n {\"name\": \"function\", \"symbols\": [\"fn_sm2\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([sm2, , vn]) => s => fn.sm2(s, vn)},\n {\"name\": \"function\", \"symbols\": [\"fn_ind\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([ind, , vn]) => s => fn.ind(s, vn)},\n {\"name\": \"function\", \"symbols\": [\"fn_prj\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([prj, , vn]) => s => fn.prj(s, vn)},\n {\"name\": \"function\", \"symbols\": [\"fn_if\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([_if, , vn]) => s => fn.bool(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_v01\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([v01, , v]) => s => fn.bool(s, v, 1, 0)},\n {\"name\": \"function\", \"symbols\": [\"fn_nbr\", \"_bo_\", \"args_nvar\", \"_bc_\"], \"postprocess\": ([nbr, , vn]) => s => fn.nbr(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_sgn\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([sgn, , v]) => s => fn.sgn(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_cmp\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([cmp, , vn]) => s => fn.cmp(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_cmr\", \"_bo_\", \"args_nvar\", \"_bc_\"], \"postprocess\": ([cmr, , vn]) => s => fn.cmr(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_meq\", \"_bo_\", \"arg_var\", \"_ls_\", \"arg_val\", \"_ls_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([meq, , a, , b, , c]) => s => fn.meq(s, a, b, c)},\n {\"name\": \"function\", \"symbols\": [\"fn_mnb\", \"_bo_\", \"arg_var\", \"_ls_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([mnb, , a, , b]) => s => fn.mnb(s, a, b)},\n {\"name\": \"function\", \"symbols\": [\"fn_rng\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([rng, , vn]) => s => fn.rng(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_rnk\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([rnk, , vn]) => s => fn.rnk(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_sqr\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([sqr, , v]) => s => fn.sqr(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_ln\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([ln, , v]) => s => fn.ln(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_log\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([log, , v]) => s => fn.log(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_abs\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([abs, , v]) => s => fn.abs(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_trc\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([trc, , v]) => s => fn.trc(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_ran\", \"_bo_\", \"arg_val\", \"_ls_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([ran, , a, , b]) => s => fn.ran(s, a, b)},\n {\"name\": \"function\", \"symbols\": [\"fn_mod\", \"_bo_\", \"arg_val\", \"_ls_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([mod, , a, , b]) => s => fn.mod(s, a, b)},\n {\"name\": \"function\", \"symbols\": [\"fn_exp\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([exp, , v]) => s => fn.exp(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_jul\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([jul, , vn]) => s => fn.jul(s, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_yea\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([yea, , v]) => s => fn.yea(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_mon\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([mon, , v]) => s => fn.mon(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_day\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([day, , v]) => s => fn.day(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_wkd\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([wkd, , v]) => s => fn.wkd(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_nbc\", \"_bo_\", \"arg_var\", \"_bc_\"], \"postprocess\": ([nbc, , v]) => s => fn.nbc(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_qta\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([qta, , v]) => s => fn.qta(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_qtf\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([qtf, , v]) => s => fn.qtf(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_qtc\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([qtc, , v]) => s => fn.qtc(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_qtisavail\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vals]) => s => fn.qtisavail(s, ...vals(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_qtareavail\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vals]) => s => fn.qtareavail(s, ...vals(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_getavailqt\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vals]) => s => fn.getavailqt(s, ...vals(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_selrandqt\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vals]) => s => fn.selrandqt(s, ...vals(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_qtisavailresp\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vals]) => s => fn.qtisavailresp(s, ...vals(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_qtareavailresp\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vals]) => s => fn.qtareavailresp(s, ...vals(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_getavailqtresp\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vals]) => s => fn.getavailqtresp(s, ...vals(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_selrandqtresp\", \"_bo_\", \"args_nval\", \"_bc_\"], \"postprocess\": ([max, , vals]) => s => fn.selrandqtresp(s, ...vals(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_rnb\", \"_bo_\", \"arg_val\", \"_ls_\", \"args_nvar\", \"_bc_\"], \"postprocess\": ([rnb, , loop, , vn]) => s => fn.rnb(s, loop, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_rxy\", \"_bo_\", \"arg_val\", \"_ls_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([rxy, , a, , b]) => s => fn.rxy(s, a, b)},\n {\"name\": \"function\", \"symbols\": [\"fn_fsr\", \"_bo_\", \"arg_var\", \"_ls_\", \"arg_var\", \"_bc_\"], \"postprocess\": ([fsr, , src, , dst]) => s => fn.fsr(s, src, dst)},\n {\"name\": \"function\", \"symbols\": [\"fn_nbl\", \"_bo_\", \"arg_var\", \"_bc_\"], \"postprocess\": ([nbl, , v]) => s => fn.nbl(s, v)},\n {\"name\": \"function\", \"symbols\": [\"fn_csm\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([csm, , v]) => s => fn.loop(s, v).map(v => as.number(s, v)).reduce((a, b) => a + b)},\n {\"name\": \"function\", \"symbols\": [\"fn_cmx\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([cmx, , v]) => s => fn.loop(s, v).map(v => as.number(s, v)).reduce((a, b) => Math.max(a, b))},\n {\"name\": \"function\", \"symbols\": [\"fn_cmn\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([cmn, , v]) => s => fn.loop(s, v).map(v => as.number(s, v)).reduce((a, b) => Math.min(a, b))},\n {\"name\": \"function\", \"symbols\": [\"fn_cor\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([cor, , v]) => s => fn.loop(s, v).map(v => as.bool(s, v)).some(a => a) ? 1 : 0},\n {\"name\": \"function\", \"symbols\": [\"fn_can\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([can, , v]) => s => fn.loop(s, v).reduce((a, b) => a === b ? a : null) ? 1 : 0},\n {\"name\": \"function\", \"symbols\": [\"fn_cin\", \"_bo_\", \"arg_val\", \"_bc_\"], \"postprocess\": ([cin, , v]) => s => fn.loop(s, v).findIndex(v => as.bool(s, v)) + 1},\n {\"name\": \"function\", \"symbols\": [\"fn_mov\", \"_bo_\", \"arg_val\", \"_ls_\", \"args_nvar\", \"_bc_\"], \"postprocess\": ([mov, , v1, , vn]) => s => fn.mov(s, v1, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_mst\", \"_bo_\", \"arg_val\", \"_ls_\", \"args_nvar\", \"_bc_\"], \"postprocess\": ([mst, , v1, , vn]) => s => fn.mst(s, v1, ...vn(s))},\n {\"name\": \"function\", \"symbols\": [\"fn_mvc\", \"_bo_\", \"arg_val\", \"_ls_\", \"args_nvar\", \"_bc_\"], \"postprocess\": ([mvc, , v1, , vn]) => s => fn.mov(s, v1, ...vn(s))},\n {\"name\": \"args_nval\", \"symbols\": [\"args_nval\", \"_ls_\", \"args_nval_term\"], \"postprocess\": ([a, , b]) => s => [...a(s), ...b(s)]},\n {\"name\": \"args_nval\", \"symbols\": [\"args_nval_term\"], \"postprocess\": id},\n {\"name\": \"args_nval_term\", \"symbols\": [\"variable_list\"], \"postprocess\": ([vn]) => s => vn(s).map(v => as.number(s, v))},\n {\"name\": \"args_nval_term\", \"symbols\": [\"arg_val\"], \"postprocess\": ([v]) => s => [as.number(s, v)]},\n {\"name\": \"args_nvar\", \"symbols\": [\"args_nvar\", \"_ls_\", \"args_nvar_term\"], \"postprocess\": ([a, , b]) => s => [...a(s), ...b(s)]},\n {\"name\": \"args_nvar\", \"symbols\": [\"args_nvar_term\"], \"postprocess\": id},\n {\"name\": \"args_nvar_term\", \"symbols\": [\"variable_list\"], \"postprocess\": ([vn]) => s => vn(s)},\n {\"name\": \"args_nvar_term\", \"symbols\": [\"arg_var\"], \"postprocess\": ([v]) => s => [v(s)]},\n {\"name\": \"arg_val\", \"symbols\": [\"adv_boolean\"], \"postprocess\": id},\n {\"name\": \"arg_var\", \"symbols\": [\"identifier\"], \"postprocess\": ([id]) => s => as.variable(s, id)},\n {\"name\": \"numeric_value\", \"symbols\": [\"float\"], \"postprocess\": id},\n {\"name\": \"numeric_value\", \"symbols\": [\"variable\"], \"postprocess\": ([v]) => s => as.number(s, v)},\n {\"name\": \"variable_selector\", \"symbols\": [\"range_operator\", \"_\", \"variable_list\"], \"postprocess\": ([range, , vn]) => s => as.variableSelect(s, range, vn)},\n {\"name\": \"variable_list$subexpression$1\", \"symbols\": [{\"literal\":\"[\"}, \"_\"]},\n {\"name\": \"variable_list$ebnf$1\", \"symbols\": [\"list_skip\"], \"postprocess\": id},\n {\"name\": \"variable_list$ebnf$1\", \"symbols\": [], \"postprocess\": function(d) {return null;}},\n {\"name\": \"variable_list$ebnf$2\", \"symbols\": []},\n {\"name\": \"variable_list$ebnf$2$subexpression$1\", \"symbols\": [\"_ls_\", \"variable_list_item\"], \"postprocess\": nth(1)},\n {\"name\": \"variable_list$ebnf$2\", \"symbols\": [\"variable_list$ebnf$2\", \"variable_list$ebnf$2$subexpression$1\"], \"postprocess\": function arrpush(d) {return d[0].concat([d[1]]);}},\n {\"name\": \"variable_list$subexpression$2\", \"symbols\": [\"_\", {\"literal\":\"]\"}]},\n {\"name\": \"variable_list\", \"symbols\": [\"variable_list$subexpression$1\", \"variable_list$ebnf$1\", \"_\", \"variable_list_item\", \"variable_list$ebnf$2\", \"variable_list$subexpression$2\"], \"postprocess\": ([, skip, , v1, vn]) => s => as.variableList(s, skip, [v1, ...vn])},\n {\"name\": \"list_skip\", \"symbols\": [{\"literal\":\"@\"}, \"uint\"], \"postprocess\": nth(1)},\n {\"name\": \"variable_list_item\", \"symbols\": [\"variable\"], \"postprocess\": id},\n {\"name\": \"variable_list_item\", \"symbols\": [\"variable_range\"], \"postprocess\": id},\n {\"name\": \"variable_range\", \"symbols\": [\"variable\", \"_\", \"sub\", \"_\", \"variable\"], \"postprocess\": ([a, , to, , b]) => s => as.variableRange(s, a, b)},\n {\"name\": \"range_operator\", \"symbols\": [\"and\"], \"postprocess\": () => \"and\"},\n {\"name\": \"range_operator\", \"symbols\": [\"or\"], \"postprocess\": () => \"or\"},\n {\"name\": \"variable\", \"symbols\": [\"identifier\"], \"postprocess\": ([id]) => s => as.variable(s, id)},\n {\"name\": \"variable$subexpression$1\", \"symbols\": [{\"literal\":\"[\"}, \"_\"]},\n {\"name\": \"variable$subexpression$2\", \"symbols\": [\"_\", {\"literal\":\"]\"}]},\n {\"name\": \"variable\", \"symbols\": [\"variable$subexpression$1\", \"identifier\", \"variable$subexpression$2\"], \"postprocess\": ([, id]) => s => as.variable(s, id)},\n {\"name\": \"choice_list$ebnf$1\", \"symbols\": []},\n {\"name\": \"choice_list$ebnf$1$subexpression$1\", \"symbols\": [\"_ls_\", \"choice_list_item\"], \"postprocess\": nth(1)},\n {\"name\": \"choice_list$ebnf$1\", \"symbols\": [\"choice_list$ebnf$1\", \"choice_list$ebnf$1$subexpression$1\"], \"postprocess\": function arrpush(d) {return d[0].concat([d[1]]);}},\n {\"name\": \"choice_list\", \"symbols\": [\"choice_list_item\", \"choice_list$ebnf$1\"], \"postprocess\": cat},\n {\"name\": \"choice_list_item\", \"symbols\": [\"choice_range\"], \"postprocess\": id},\n {\"name\": \"choice_list_item\", \"symbols\": [\"choice_index\"], \"postprocess\": id},\n {\"name\": \"choice_list_item\", \"symbols\": [\"value\"], \"postprocess\": id},\n {\"name\": \"choice_range\", \"symbols\": [\"choice\", \"sub\", \"choice\"], \"postprocess\": ([a, to, b]) => s => as.choiceRange(s, a, b)},\n {\"name\": \"choice\", \"symbols\": [\"value\"], \"postprocess\": ([v]) => s => as.choice(s, v)},\n {\"name\": \"choice\", \"symbols\": [\"choice_index\"], \"postprocess\": id},\n {\"name\": \"choice_index\", \"symbols\": [{\"literal\":\"#\"}, \"uint\"], \"postprocess\": ([, int]) => s => as.choice(s, int)},\n {\"name\": \"_ls_\", \"symbols\": [\"__\"], \"postprocess\": nul},\n {\"name\": \"_ls_\", \"symbols\": [\"_\", {\"literal\":\",\"}, \"_\"], \"postprocess\": nul},\n {\"name\": \"_bo_\", \"symbols\": [{\"literal\":\"(\"}, \"_\"], \"postprocess\": nul},\n {\"name\": \"_bc_\", \"symbols\": [\"_\", {\"literal\":\")\"}], \"postprocess\": nul},\n {\"name\": \"value\", \"symbols\": [\"float\"], \"postprocess\": id},\n {\"name\": \"value\", \"symbols\": [\"bool\"], \"postprocess\": id},\n {\"name\": \"value\", \"symbols\": [\"word\"], \"postprocess\": id},\n {\"name\": \"value\", \"symbols\": [\"identifier\"], \"postprocess\": id},\n {\"name\": \"float$ebnf$1\", \"symbols\": [\"sub\"], \"postprocess\": id},\n {\"name\": \"float$ebnf$1\", \"symbols\": [], \"postprocess\": function(d) {return null;}},\n {\"name\": \"float\", \"symbols\": [\"float$ebnf$1\", (lexer.has(\"float\") ? {type: \"float\"} : float)], \"postprocess\": ([sub, float]) => (sub ? -1 : 1) * parseFloat(float.value)},\n {\"name\": \"float\", \"symbols\": [\"int\"], \"postprocess\": id},\n {\"name\": \"int$ebnf$1\", \"symbols\": [\"sub\"], \"postprocess\": id},\n {\"name\": \"int$ebnf$1\", \"symbols\": [], \"postprocess\": function(d) {return null;}},\n {\"name\": \"int\", \"symbols\": [\"int$ebnf$1\", \"uint\"], \"postprocess\": ([sub, int]) => (sub ? -1 : 1) * int},\n {\"name\": \"uint\", \"symbols\": [(lexer.has(\"uint\") ? {type: \"uint\"} : uint)], \"postprocess\": ([int]) => parseInt(int.value)},\n {\"name\": \"bool\", \"symbols\": [\"true\"], \"postprocess\": id},\n {\"name\": \"bool\", \"symbols\": [\"false\"], \"postprocess\": id},\n {\"name\": \"word\", \"symbols\": [(lexer.has(\"word\") ? {type: \"word\"} : word)], \"postprocess\": val},\n {\"name\": \"add\", \"symbols\": [(lexer.has(\"add\") ? {type: \"add\"} : add)], \"postprocess\": nul},\n {\"name\": \"sub\", \"symbols\": [(lexer.has(\"sub\") ? {type: \"sub\"} : sub)], \"postprocess\": () => true},\n {\"name\": \"div\", \"symbols\": [(lexer.has(\"div\") ? {type: \"div\"} : div)], \"postprocess\": nul},\n {\"name\": \"exp\", \"symbols\": [\"mul\", \"mul\"], \"postprocess\": nul},\n {\"name\": \"mul\", \"symbols\": [(lexer.has(\"mul\") ? {type: \"mul\"} : mul)], \"postprocess\": nul},\n {\"name\": \"eq\", \"symbols\": [(lexer.has(\"eq\") ? {type: \"eq\"} : eq)], \"postprocess\": nul},\n {\"name\": \"not_eq\", \"symbols\": [(lexer.has(\"not_eq\") ? {type: \"not_eq\"} : not_eq)], \"postprocess\": nul},\n {\"name\": \"eq_algebraic\", \"symbols\": [(lexer.has(\"eq_algebraic\") ? {type: \"eq_algebraic\"} : eq_algebraic)], \"postprocess\": nul},\n {\"name\": \"lt\", \"symbols\": [(lexer.has(\"lt\") ? {type: \"lt\"} : lt)], \"postprocess\": nul},\n {\"name\": \"gt\", \"symbols\": [(lexer.has(\"gt\") ? {type: \"gt\"} : gt)], \"postprocess\": nul},\n {\"name\": \"lte\", \"symbols\": [(lexer.has(\"lte\") ? {type: \"lte\"} : lte)], \"postprocess\": nul},\n {\"name\": \"gte\", \"symbols\": [(lexer.has(\"gte\") ? {type: \"gte\"} : gte)], \"postprocess\": nul},\n {\"name\": \"and\", \"symbols\": [(lexer.has(\"and\") ? {type: \"and\"} : and)], \"postprocess\": nul},\n {\"name\": \"and\", \"symbols\": [(lexer.has(\"et\") ? {type: \"et\"} : et)], \"postprocess\": nul},\n {\"name\": \"and\", \"symbols\": [{\"literal\":\"&\"}], \"postprocess\": nul},\n {\"name\": \"or\", \"symbols\": [(lexer.has(\"or\") ? {type: \"or\"} : or)], \"postprocess\": nul},\n {\"name\": \"or\", \"symbols\": [(lexer.has(\"ou\") ? {type: \"ou\"} : ou)], \"postprocess\": nul},\n {\"name\": \"or\", \"symbols\": [{\"literal\":\"|\"}], \"postprocess\": nul},\n {\"name\": \"is_empty\", \"symbols\": [(lexer.has(\"is_empty\") ? {type: \"is_empty\"} : is_empty)], \"postprocess\": nul},\n {\"name\": \"is_not_empty\", \"symbols\": [(lexer.has(\"is_not_empty\") ? {type: \"is_not_empty\"} : is_not_empty)], \"postprocess\": nul},\n {\"name\": \"contains\", \"symbols\": [(lexer.has(\"contains\") ? {type: \"contains\"} : contains)], \"postprocess\": nul},\n {\"name\": \"does_not_contain\", \"symbols\": [(lexer.has(\"does_not_contain\") ? {type: \"does_not_contain\"} : does_not_contain)], \"postprocess\": nul},\n {\"name\": \"not\", \"symbols\": [(lexer.has(\"not\") ? {type: \"not\"} : not)], \"postprocess\": nul},\n {\"name\": \"not\", \"symbols\": [(lexer.has(\"non\") ? {type: \"non\"} : non)], \"postprocess\": nul},\n {\"name\": \"not\", \"symbols\": [{\"literal\":\"^\"}], \"postprocess\": nul},\n {\"name\": \"true\", \"symbols\": [(lexer.has(\"true\") ? {type: \"true\"} : true)], \"postprocess\": () => true},\n {\"name\": \"false\", \"symbols\": [(lexer.has(\"false\") ? {type: \"false\"} : false)], \"postprocess\": () => false},\n {\"name\": \"fn_min\", \"symbols\": [(lexer.has(\"fn_min\") ? {type: \"fn_min\"} : fn_min), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_max\", \"symbols\": [(lexer.has(\"fn_max\") ? {type: \"fn_max\"} : fn_max), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_sum\", \"symbols\": [(lexer.has(\"fn_som\") ? {type: \"fn_som\"} : fn_som), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_sum\", \"symbols\": [(lexer.has(\"fn_sum\") ? {type: \"fn_sum\"} : fn_sum), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_smr\", \"symbols\": [(lexer.has(\"fn_smr\") ? {type: \"fn_smr\"} : fn_smr), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_sm2\", \"symbols\": [(lexer.has(\"fn_sm2\") ? {type: \"fn_sm2\"} : fn_sm2), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_ind\", \"symbols\": [(lexer.has(\"fn_ind\") ? {type: \"fn_ind\"} : fn_ind), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_prj\", \"symbols\": [(lexer.has(\"fn_prj\") ? {type: \"fn_prj\"} : fn_prj), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_if\", \"symbols\": [(lexer.has(\"fn_if\") ? {type: \"fn_if\"} : fn_if), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_if\", \"symbols\": [(lexer.has(\"fn_si\") ? {type: \"fn_si\"} : fn_si), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_v01\", \"symbols\": [(lexer.has(\"fn_v01\") ? {type: \"fn_v01\"} : fn_v01), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_nbr\", \"symbols\": [(lexer.has(\"fn_nbr\") ? {type: \"fn_nbr\"} : fn_nbr), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_sgn\", \"symbols\": [(lexer.has(\"fn_sgn\") ? {type: \"fn_sgn\"} : fn_sgn), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_cmp\", \"symbols\": [(lexer.has(\"fn_cmp\") ? {type: \"fn_cmp\"} : fn_cmp), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_cmr\", \"symbols\": [(lexer.has(\"fn_cmr\") ? {type: \"fn_cmr\"} : fn_cmr), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_meq\", \"symbols\": [(lexer.has(\"fn_meq\") ? {type: \"fn_meq\"} : fn_meq), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_mnb\", \"symbols\": [(lexer.has(\"fn_mnb\") ? {type: \"fn_mnb\"} : fn_mnb), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_rng\", \"symbols\": [(lexer.has(\"fn_rng\") ? {type: \"fn_rng\"} : fn_rng), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_rnk\", \"symbols\": [(lexer.has(\"fn_rnk\") ? {type: \"fn_rnk\"} : fn_rnk), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_sqr\", \"symbols\": [(lexer.has(\"fn_sqr\") ? {type: \"fn_sqr\"} : fn_sqr), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_ln\", \"symbols\": [(lexer.has(\"fn_ln\") ? {type: \"fn_ln\"} : fn_ln), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_log\", \"symbols\": [(lexer.has(\"fn_log\") ? {type: \"fn_log\"} : fn_log), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_abs\", \"symbols\": [(lexer.has(\"fn_abs\") ? {type: \"fn_abs\"} : fn_abs), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_trc\", \"symbols\": [(lexer.has(\"fn_trc\") ? {type: \"fn_trc\"} : fn_trc), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_ran\", \"symbols\": [(lexer.has(\"fn_ran\") ? {type: \"fn_ran\"} : fn_ran), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_mod\", \"symbols\": [(lexer.has(\"fn_mod\") ? {type: \"fn_mod\"} : fn_mod), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_exp\", \"symbols\": [(lexer.has(\"fn_exp\") ? {type: \"fn_exp\"} : fn_exp), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_jul\", \"symbols\": [(lexer.has(\"fn_jul\") ? {type: \"fn_jul\"} : fn_jul), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_yea\", \"symbols\": [(lexer.has(\"fn_yea\") ? {type: \"fn_yea\"} : fn_yea), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_mon\", \"symbols\": [(lexer.has(\"fn_mon\") ? {type: \"fn_mon\"} : fn_mon), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_day\", \"symbols\": [(lexer.has(\"fn_day\") ? {type: \"fn_day\"} : fn_day), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_wkd\", \"symbols\": [(lexer.has(\"fn_wkd\") ? {type: \"fn_wkd\"} : fn_wkd), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_qta\", \"symbols\": [(lexer.has(\"fn_qta\") ? {type: \"fn_qta\"} : fn_qta), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_qtf\", \"symbols\": [(lexer.has(\"fn_qtf\") ? {type: \"fn_qtf\"} : fn_qtf), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_qtc\", \"symbols\": [(lexer.has(\"fn_qtc\") ? {type: \"fn_qtc\"} : fn_qtc), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_str\", \"symbols\": [(lexer.has(\"fn_str\") ? {type: \"fn_str\"} : fn_str), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_nbc\", \"symbols\": [(lexer.has(\"fn_nbc\") ? {type: \"fn_nbc\"} : fn_nbc), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_rnb\", \"symbols\": [(lexer.has(\"fn_rnb\") ? {type: \"fn_rnb\"} : fn_rnb), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_rxy\", \"symbols\": [(lexer.has(\"fn_rxy\") ? {type: \"fn_rxy\"} : fn_rxy), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_nbl\", \"symbols\": [(lexer.has(\"fn_nbl\") ? {type: \"fn_nbl\"} : fn_nbl), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_csm\", \"symbols\": [(lexer.has(\"fn_csm\") ? {type: \"fn_csm\"} : fn_csm), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_cmx\", \"symbols\": [(lexer.has(\"fn_cmx\") ? {type: \"fn_cmx\"} : fn_cmx), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_cmn\", \"symbols\": [(lexer.has(\"fn_cmn\") ? {type: \"fn_cmn\"} : fn_cmn), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_cor\", \"symbols\": [(lexer.has(\"fn_cor\") ? {type: \"fn_cor\"} : fn_cor), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_can\", \"symbols\": [(lexer.has(\"fn_can\") ? {type: \"fn_can\"} : fn_can), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_cin\", \"symbols\": [(lexer.has(\"fn_cin\") ? {type: \"fn_cin\"} : fn_cin), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_mov\", \"symbols\": [(lexer.has(\"fn_mov\") ? {type: \"fn_mov\"} : fn_mov), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_mst\", \"symbols\": [(lexer.has(\"fn_mst\") ? {type: \"fn_mst\"} : fn_mst), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_mvc\", \"symbols\": [(lexer.has(\"fn_mvc\") ? {type: \"fn_mvc\"} : fn_mvc), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_fsr\", \"symbols\": [(lexer.has(\"fn_fsr\") ? {type: \"fn_fsr\"} : fn_fsr), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_qtisavail\", \"symbols\": [(lexer.has(\"fn_qtisavail\") ? {type: \"fn_qtisavail\"} : fn_qtisavail), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_qtareavail\", \"symbols\": [(lexer.has(\"fn_qtareavail\") ? {type: \"fn_qtareavail\"} : fn_qtareavail), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_getavailqt\", \"symbols\": [(lexer.has(\"fn_getavailqt\") ? {type: \"fn_getavailqt\"} : fn_getavailqt), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_selrandqt\", \"symbols\": [(lexer.has(\"fn_selrandqt\") ? {type: \"fn_selrandqt\"} : fn_selrandqt), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_qtisavailresp\", \"symbols\": [(lexer.has(\"fn_qtisavailresp\") ? {type: \"fn_qtisavailresp\"} : fn_qtisavailresp), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_qtareavailresp\", \"symbols\": [(lexer.has(\"fn_qtareavailresp\") ? {type: \"fn_qtareavailresp\"} : fn_qtareavailresp), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_getavailqtresp\", \"symbols\": [(lexer.has(\"fn_getavailqtresp\") ? {type: \"fn_getavailqtresp\"} : fn_getavailqtresp), \"_\"], \"postprocess\": nul},\n {\"name\": \"fn_selrandqtresp\", \"symbols\": [(lexer.has(\"fn_selrandqtresp\") ? {type: \"fn_selrandqtresp\"} : fn_selrandqtresp), \"_\"], \"postprocess\": nul},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"identifier\") ? {type: \"identifier\"} : identifier)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_min\") ? {type: \"fn_min\"} : fn_min)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_max\") ? {type: \"fn_max\"} : fn_max)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_sum\") ? {type: \"fn_sum\"} : fn_sum)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_smr\") ? {type: \"fn_smr\"} : fn_smr)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_sm2\") ? {type: \"fn_sm2\"} : fn_sm2)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_ind\") ? {type: \"fn_ind\"} : fn_ind)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_prj\") ? {type: \"fn_prj\"} : fn_prj)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_if\") ? {type: \"fn_if\"} : fn_if)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_v01\") ? {type: \"fn_v01\"} : fn_v01)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_nbr\") ? {type: \"fn_nbr\"} : fn_nbr)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_sgn\") ? {type: \"fn_sgn\"} : fn_sgn)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_cmp\") ? {type: \"fn_cmp\"} : fn_cmp)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_cmr\") ? {type: \"fn_cmr\"} : fn_cmr)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_meq\") ? {type: \"fn_meq\"} : fn_meq)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_mnb\") ? {type: \"fn_mnb\"} : fn_mnb)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_rng\") ? {type: \"fn_rng\"} : fn_rng)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_rnk\") ? {type: \"fn_rnk\"} : fn_rnk)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_sqr\") ? {type: \"fn_sqr\"} : fn_sqr)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_ln\") ? {type: \"fn_ln\"} : fn_ln)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_log\") ? {type: \"fn_log\"} : fn_log)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_abs\") ? {type: \"fn_abs\"} : fn_abs)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_trc\") ? {type: \"fn_trc\"} : fn_trc)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_ran\") ? {type: \"fn_ran\"} : fn_ran)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_mod\") ? {type: \"fn_mod\"} : fn_mod)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_exp\") ? {type: \"fn_exp\"} : fn_exp)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_jul\") ? {type: \"fn_jul\"} : fn_jul)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_yea\") ? {type: \"fn_yea\"} : fn_yea)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_mon\") ? {type: \"fn_mon\"} : fn_mon)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_day\") ? {type: \"fn_day\"} : fn_day)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_wkd\") ? {type: \"fn_wkd\"} : fn_wkd)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_qta\") ? {type: \"fn_qta\"} : fn_qta)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_qtf\") ? {type: \"fn_qtf\"} : fn_qtf)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_qtc\") ? {type: \"fn_qtc\"} : fn_qtc)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_str\") ? {type: \"fn_str\"} : fn_str)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_nbc\") ? {type: \"fn_nbc\"} : fn_nbc)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_rnb\") ? {type: \"fn_rnb\"} : fn_rnb)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_rxy\") ? {type: \"fn_rxy\"} : fn_rxy)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_nbl\") ? {type: \"fn_nbl\"} : fn_nbl)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_csm\") ? {type: \"fn_csm\"} : fn_csm)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_cmx\") ? {type: \"fn_cmx\"} : fn_cmx)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_cmn\") ? {type: \"fn_cmn\"} : fn_cmn)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_cor\") ? {type: \"fn_cor\"} : fn_cor)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_can\") ? {type: \"fn_can\"} : fn_can)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_cin\") ? {type: \"fn_cin\"} : fn_cin)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_mov\") ? {type: \"fn_mov\"} : fn_mov)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_mst\") ? {type: \"fn_mst\"} : fn_mst)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_mvc\") ? {type: \"fn_mvc\"} : fn_mvc)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"not\") ? {type: \"not\"} : not)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_si\") ? {type: \"fn_si\"} : fn_si)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_qtisavail\") ? {type: \"fn_qtisavail\"} : fn_qtisavail)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_qtareavail\") ? {type: \"fn_qtareavail\"} : fn_qtareavail)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_getavailqt\") ? {type: \"fn_getavailqt\"} : fn_getavailqt)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_selrandqt\") ? {type: \"fn_selrandqt\"} : fn_selrandqt)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_qtisavailresp\") ? {type: \"fn_qtisavailresp\"} : fn_qtisavailresp)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_qtareavailresp\") ? {type: \"fn_qtareavailresp\"} : fn_qtareavailresp)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_getavailqtresp\") ? {type: \"fn_getavailqtresp\"} : fn_getavailqtresp)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"fn_selrandqtresp\") ? {type: \"fn_selrandqtresp\"} : fn_selrandqtresp)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"et\") ? {type: \"et\"} : et)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"ou\") ? {type: \"ou\"} : ou)], \"postprocess\": val},\n {\"name\": \"identifier\", \"symbols\": [(lexer.has(\"non\") ? {type: \"non\"} : non)], \"postprocess\": val},\n {\"name\": \"_$ebnf$1\", \"symbols\": []},\n {\"name\": \"_$ebnf$1\", \"symbols\": [\"_$ebnf$1\", (lexer.has(\"ws\") ? {type: \"ws\"} : ws)], \"postprocess\": function arrpush(d) {return d[0].concat([d[1]]);}},\n {\"name\": \"_\", \"symbols\": [\"_$ebnf$1\"], \"postprocess\": nul},\n {\"name\": \"__$ebnf$1\", \"symbols\": [(lexer.has(\"ws\") ? {type: \"ws\"} : ws)]},\n {\"name\": \"__$ebnf$1\", \"symbols\": [\"__$ebnf$1\", (lexer.has(\"ws\") ? {type: \"ws\"} : ws)], \"postprocess\": function arrpush(d) {return d[0].concat([d[1]]);}},\n {\"name\": \"__\", \"symbols\": [\"__$ebnf$1\"], \"postprocess\": nul}\n]\n , ParserStart: \"adv_expression\"\n}\nif (typeof module !== 'undefined'&& typeof module.exports !== 'undefined') {\n module.exports = grammar;\n} else {\n window.grammar = grammar;\n}\n})();\n","\n import API from \"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../node_modules/css-loader/dist/cjs.js!./mobiscroll.javascript.min.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../node_modules/css-loader/dist/cjs.js!./mobiscroll.javascript.min.css\";\n export default content && content.locals ? content.locals : undefined;\n","import \"core-js\";\r\nimport smoothscroll from \"smoothscroll-polyfill\";\r\n\r\nsmoothscroll.polyfill();\r\n\r\n// IE9+ Element.closest polyfill: https://developer.mozilla.org/en-US/docs/Web/API/Element/closest\r\nif (!Element.prototype.matches) {\r\n Element.prototype.matches =\r\n (Element.prototype as any).msMatchesSelector || Element.prototype.webkitMatchesSelector;\r\n}\r\nif (!Element.prototype.closest) {\r\n Element.prototype.closest = function closest(s) {\r\n let el = this;\r\n do {\r\n if (el.matches(s)) return el;\r\n el = el.parentElement || el.parentNode;\r\n } while (el !== null && el.nodeType === 1);\r\n return null;\r\n };\r\n}\r\n","import React from \"react\";\r\nimport { connect, DispatchProp } from \"react-redux\";\r\nimport { StoreState } from \"../models/states/StoreState\";\r\nimport { ThemedSurveyEngine } from \"../components/SurveyEngine\";\r\nimport { SurveyMode } from \"../models/enums/SurveyMode\";\r\nimport { ErrorLog } from \"../components/shared/ErrorLog\";\r\n\r\ninterface StateProps {\r\n ready: boolean;\r\n debug: boolean;\r\n mode: SurveyMode;\r\n progress: number;\r\n}\r\n\r\ninterface State {\r\n error?: Error;\r\n}\r\n\r\nclass AppImpl extends React.PureComponent {\r\n constructor(props: StateProps & DispatchProp) {\r\n super(props);\r\n this.state = {};\r\n }\r\n\r\n componentDidCatch(error: Error, info: React.ErrorInfo) {\r\n // Display fallback UI\r\n this.setState({ error });\r\n console.log(error);\r\n }\r\n\r\n render() {\r\n const { error } = this.state;\r\n if (error) return ;\r\n const { progress } = this.props;\r\n return (\r\n <>\r\n {progress && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = (state: StoreState): StateProps => ({\r\n ready:\r\n state.interview &&\r\n state.interview.navigation.currentPage &&\r\n state.interview.navigation.currentPage.isReady,\r\n debug: state.application.debug,\r\n mode: state.application.mode,\r\n progress: state.connection.progress,\r\n});\r\n\r\nexport const App = connect(mapStateToProps)(AppImpl);\r\n","import i18n from \"i18next\";\r\nimport { initReactI18next } from \"react-i18next\";\r\nimport en from \"./en.yml\";\r\nimport fr from \"./fr.yml\";\r\nimport getUrlParameters from \"../utils/getUrlParameters\";\r\n\r\nconst supportedLanguages = [\"en\", \"fr\"];\r\n\r\ni18n.use(initReactI18next).init({\r\n resources: {\r\n en: { translation: en },\r\n fr: { translation: fr },\r\n },\r\n lng: document.documentElement.lang,\r\n interpolation: {\r\n escapeValue: false, // react already safes from xss\r\n },\r\n fallbackLng: \"en\",\r\n});\r\n\r\nconst debugLanguage = getUrlParameters().dlang || document.documentElement.lang;\r\nif (supportedLanguages.includes(debugLanguage)) {\r\n i18n.changeLanguage(debugLanguage);\r\n}\r\n\r\nexport default i18n;\r\n","export default function getUrlParameters(): any {\r\n const vars = {};\r\n window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, (m, key, value) => {\r\n vars[key] = value;\r\n return \"\";\r\n });\r\n return vars;\r\n}\r\n","import \"./polyfills\";\r\nimport React from \"react\";\r\nimport ReactDOM from \"react-dom\";\r\nimport { Provider } from \"react-redux\";\r\nimport { App } from \"./containers/App\";\r\nimport { __getStore__ } from \"./redux/store\";\r\nimport { Voxco } from \"./public\";\r\nimport \"./i18n\";\r\n\r\nconsole.log(\r\n \"%c%s\",\r\n \"font-size: 10px; color: #1b9aff\",\r\n `\r\n .((((((((((((((\r\n ((((((((((((()\r\n ((((((((((((+ /\r\n (((((((((((+ ((\r\n ... ((((+++(((/ ((( ... ....\r\n)(() .(() +(((++(((+ ((((+ (/ (((( .(((((((()< .((()++(((+\r\n -((( /((+ /((/ .((( ((((() .((((( (((( )<. /((/ (((.\r\n (((. /((/ (() ((( \\\\+++++....+++++. )((( (() (((\r\n )((((((( ((( ((( /(((( )((( ((( .(((\r\n \\\\((((- -((). /((+ (((-(((. \\\\((). .+()- -((). <((+\r\n )(+- )+((((((+. (((- (((. )+(((((+<. )+((((()+.\r\n (((-\r\n .(()\r\n )((+\r\nhttps://www.voxco.com/\r\n`,\r\n);\r\nconsole.log(`🚀 SurveyEngineJS v${Voxco.version} © Voxco ${new Date().getFullYear()}`);\r\n\r\n// This is the entry point for development environments.\r\n// We can add development-specific dependencies here.\r\n\r\nrequire(\"../lib/mobiscroll/css/mobiscroll.javascript.min.css\");\r\n\r\n(window as any).Voxco = Voxco;\r\n\r\nrequire(\"./assets/main.less\");\r\n\r\nReactDOM.render(\r\n \r\n \r\n ,\r\n document.getElementById(\"root\"),\r\n);\r\n\r\nfunction onDisconnectedModeInit() {\r\n if (this.readyState === this.DONE) {\r\n const survey = JSON.parse(this.responseText);\r\n Voxco.init({\r\n debug: true,\r\n mode: \"preview\",\r\n messages: true,\r\n mobileMode: false,\r\n survey,\r\n containerHost: \"http://localhost:4444\",\r\n displayInThemeEditor: false,\r\n hideAccessibilityPanel: true,\r\n });\r\n }\r\n}\r\n\r\nfunction onIntegratedServerInit() {\r\n if (this.readyState === this.DONE) {\r\n Voxco.init({\r\n debug: true,\r\n mode: \"preview\",\r\n messages: true,\r\n mobileMode: false,\r\n apiUrl: \"/s2\",\r\n containerHost: \"http://localhost:4444\",\r\n displayInThemeEditor: false,\r\n hideAccessibilityPanel: false,\r\n });\r\n }\r\n}\r\n\r\nif (process.env.NODE_ENV === \"development\") {\r\n const DEBUG_TOKEN = \"kN5wYQ3jD8zLhE7fZJ1rXq6mP4sTcB9oVx0aRnG2uWl8vIpOgFyMAbEtUkSj\";\r\n\r\n const inputElement = document.createElement(\"input\");\r\n inputElement.type = \"hidden\";\r\n inputElement.name = \"__RequestVerificationToken\";\r\n inputElement.value = DEBUG_TOKEN;\r\n\r\n document.body.appendChild(inputElement);\r\n\r\n if (process.env.FULL_INTEGRATED_MODE === \"true\") {\r\n const xhr = new XMLHttpRequest();\r\n xhr.withCredentials = true;\r\n xhr.addEventListener(\"readystatechange\", onIntegratedServerInit);\r\n xhr.open(\r\n \"GET\",\r\n `/s2/sl?debug=1&cid=${process.env.CLIENT_ID}&sid=${\r\n process.env.SURVEY_ID\r\n }&nocookie=1&m=1&tui=${new Date().getTime()}`,\r\n );\r\n xhr.send();\r\n } else {\r\n const xhr = new XMLHttpRequest();\r\n xhr.withCredentials = true;\r\n xhr.addEventListener(\"readystatechange\", onDisconnectedModeInit);\r\n xhr.open(\"GET\", `/api/offline/survey/export/json/${process.env.SURVEY_ID}`);\r\n xhr.setRequestHeader(\r\n \"Authorization\",\r\n `Client ${decodeURIComponent(process.env.API_TOKEN)}`,\r\n );\r\n xhr.setRequestHeader(\"Content-Type\", \"application/json\");\r\n xhr.send();\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport * as Mixins from \"../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n simulatedBanner: {\r\n background: \"#EB6725\",\r\n borderBottom: [[3, \"solid\", \"#FF9300\"]],\r\n boxSizing: \"border-box\",\r\n color: \"#FFFFFF\",\r\n composes: \"simulated-banner\",\r\n height: 38,\r\n left: ({ bounds }) => bounds.left,\r\n lineHeight: \"38px\",\r\n padding: [[0, 35]],\r\n position: \"absolute\",\r\n right: ({ bounds }) => bounds.right,\r\n top: 0,\r\n zIndex: 1,\r\n },\r\n simulatedBannerMessage: {\r\n composes: \"simulated-banner__message\",\r\n fontFamily: ({ theme }) => `\"${theme.TextFont}\", sans-serif`,\r\n fontSize: 14,\r\n padding: [[0, 15]],\r\n },\r\n surveyEngine: {\r\n \"& .pageContainer\": {\r\n height: \"100%\",\r\n },\r\n \"& .bg-primary\": ({ theme }) => ({ background: theme.PrimaryColor }),\r\n \"& .bg-secondary\": ({ theme }) => ({ background: theme.SecondaryColor }),\r\n \"& .fill-primary\": ({ theme }) => ({ fill: theme.PrimaryColor }),\r\n \"& .fill-secondary\": ({ theme }) => ({ fill: theme.SecondaryColor }),\r\n \"& .text-primary\": ({ theme }) => ({ color: theme.PrimaryColor }),\r\n \"& .text-secondary\": ({ theme }) => ({ color: theme.SecondaryColor }),\r\n \"& .flex\": { flex: 1 },\r\n \"& .clear\": { display: \"block\", clear: \"both\" },\r\n \"& label\": {\r\n cursor: \"inherit\",\r\n },\r\n \"& h1, h2, h3, h4, h5, h6\": {\r\n margin: 0,\r\n padding: 0,\r\n fontFamily: ({ theme }) => `\"${theme.TitleFont}\", sans-serif`,\r\n fontWeight: ({ theme }) => Mixins.getFontWeight(theme.TitleFontVariant, 400),\r\n fontStyle: ({ theme }) =>\r\n theme.TitleFontVariant ? Mixins.getFontStyle(theme.TitleFontVariant) : \"normal\",\r\n textAlign: ({ theme }) => Mixins.getTextAlign(theme.TitleTextAlign),\r\n },\r\n \"& h1\": {\r\n fontSize: ({ theme }) =>\r\n Mixins.getFontSize(\r\n theme.TitleFontSize * theme.HeaderSizes.H1,\r\n `${theme.HeaderSizes.H1 * theme.TextFontSize}px`,\r\n ),\r\n lineHeight: ({ theme }) =>\r\n Mixins.getLineHeight(\r\n theme.TitleFontSize * theme.HeaderSizes.H1,\r\n 32,\r\n theme.BaseFontSize,\r\n ),\r\n marginBottom: \"1.5em\",\r\n },\r\n \"& h2\": {\r\n fontSize: ({ theme }) =>\r\n Mixins.getFontSize(\r\n theme.TitleFontSize * theme.HeaderSizes.H2,\r\n `${theme.HeaderSizes.H2 * theme.TextFontSize}px`,\r\n ),\r\n lineHeight: ({ theme }) =>\r\n Mixins.getLineHeight(\r\n theme.TitleFontSize * theme.HeaderSizes.H2,\r\n 32,\r\n theme.BaseFontSize,\r\n ),\r\n marginBottom: \"0.5em\",\r\n },\r\n \"& h3\": {\r\n fontSize: ({ theme }) =>\r\n Mixins.getFontSize(\r\n theme.TitleFontSize * theme.HeaderSizes.H3,\r\n `${theme.HeaderSizes.H3 * theme.TextFontSize}px`,\r\n ),\r\n lineHeight: ({ theme }) =>\r\n Mixins.getLineHeight(\r\n theme.TitleFontSize * theme.HeaderSizes.H3,\r\n 32,\r\n theme.BaseFontSize,\r\n ),\r\n },\r\n \"& h4\": {\r\n fontSize: ({ theme }) =>\r\n Mixins.getFontSize(\r\n theme.TitleFontSize * theme.HeaderSizes.H4,\r\n `${theme.HeaderSizes.H4 * theme.TextFontSize}px`,\r\n ),\r\n lineHeight: ({ theme }) =>\r\n Mixins.getLineHeight(\r\n theme.TitleFontSize * theme.HeaderSizes.H4,\r\n 32,\r\n theme.BaseFontSize,\r\n ),\r\n },\r\n background: ({ theme }) => theme.PageBackground,\r\n composes: \"survey-engine\",\r\n display: \"block\",\r\n fontFamily: ({ theme }) => `\"${theme.TextFont}\", sans-serif`,\r\n fontSize: ({ theme }) => Mixins.getFontSize(theme.TextFontSize),\r\n fontStyle: ({ theme }) => Mixins.getFontStyle(theme.TextFontVariant),\r\n fontWeight: ({ theme }) => Mixins.getFontWeight(theme.TextFontVariant, 400),\r\n lineHeight: ({ theme }) =>\r\n Mixins.getLineHeight(theme.TextFontSize, theme.LineHeight, theme.BaseFontSize),\r\n overflow: ({ mobilePreview }) => mobilePreview && \"hidden\",\r\n overflowY: \"scroll\",\r\n position: \"absolute\",\r\n bottom: ({ bounds }) => bounds.bottom,\r\n left: ({ bounds }) => bounds.left,\r\n right: ({ bounds }) => bounds.right,\r\n top: ({ bounds }) => bounds.top,\r\n textSizeAdjust: \"100%\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { ThemeProvider, useTheme, JssProvider } from \"react-jss\";\r\nimport { PageContainer } from \"../containers/page/PageContainer\";\r\nimport { getContainerDiv } from \"../utils\";\r\nimport { MobilePreview } from \"./shared/MobilePreview\";\r\nimport useStyles from \"./SurveyEngine.styles\";\r\nimport useTranslatable from \"../hooks/useTranslatable\";\r\nimport DefaultTheme from \"../theme/DefaultTheme\";\r\nimport { StoreState } from \"../models/states/StoreState\";\r\nimport { ErrorLogContainer } from \"../containers/ErrorLogContainer\";\r\nimport { Voxco } from \"../public\";\r\nimport { FontAwesomeIcon } from \"./shared/FontAwesome\";\r\nimport { SurveyMode } from \"../models/enums/SurveyMode\";\r\nimport useReservedBounds, {\r\n ReservedBoundsContextProvider,\r\n ReservedBounds,\r\n} from \"../hooks/useReservedBounds\";\r\nimport { DebugPanel } from \"./debug/DebugPanel\";\r\n\r\ninterface Props {\r\n bounds: ReservedBounds;\r\n}\r\n\r\nfunction SimulatedBanner({ bounds, previewModeMessage }) {\r\n const theme = useTheme();\r\n const classes = useStyles({\r\n bounds,\r\n theme,\r\n });\r\n useReservedBounds({ top: 38 }, []);\r\n\r\n return (\r\n
\r\n \r\n \r\n {previewModeMessage}\r\n \r\n
\r\n );\r\n}\r\n\r\nfunction SurveyEngine({ bounds }: Props) {\r\n const questionnaire = useSelector((state: StoreState) => state.interview.questionnaire);\r\n const simulated = useSelector(\r\n (state: StoreState) =>\r\n process.env.NODE_ENV !== \"development\" && // Do not show simulated warning if we are in dev.\r\n state.interview.respondent &&\r\n state.interview.respondent.simulated,\r\n );\r\n\r\n const debugPanelVisible =\r\n useSelector(\r\n (state: StoreState) =>\r\n state.application.mode === SurveyMode.Preview ||\r\n state.application.mode === SurveyMode.Test,\r\n ) && process.env.NODE_ENV !== \"test\";\r\n const mobilePreview = useSelector((state: StoreState) => state.mobilePreview);\r\n const simulatedBannerVisible =\r\n useSelector((state: StoreState) => state.application.mode !== SurveyMode.Normal) &&\r\n simulated;\r\n\r\n const theme = useTheme();\r\n const classes = useStyles({\r\n bounds,\r\n theme,\r\n mobilePreview,\r\n simulatedBannerVisible,\r\n });\r\n\r\n const previewModeMessage = useTranslatable(questionnaire, \"previewModeMessage\");\r\n\r\n const { CustomCSS, CustomJavascript } = theme as any;\r\n\r\n React.useEffect(() => {\r\n // Adjust height if debug panel is shown.\r\n const surveyEngine = getContainerDiv();\r\n const debugPanel = document.getElementsByClassName(\"debug-pane\")[0] as HTMLElement;\r\n if (debugPanel != null) {\r\n const { height } = debugPanel.getBoundingClientRect();\r\n surveyEngine.style.bottom = `${height}px`;\r\n }\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n // eslint-disable-next-line\r\n (function customJs(console) {\r\n try {\r\n // eslint-disable-next-line\r\n eval(`${CustomJavascript}\\n//# sourceURL=custom.js`);\r\n } catch (ex) {\r\n Voxco.error(ex);\r\n }\r\n }.call(Voxco, { log: Voxco.log, error: Voxco.error }));\r\n }, [CustomJavascript]);\r\n\r\n return (\r\n <>\r\n {simulatedBannerVisible && (\r\n \r\n )}\r\n
\r\n {debugPanelVisible && mobilePreview ? (\r\n } />\r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n {debugPanelVisible && }\r\n \r\n );\r\n}\r\n\r\nexport function ThemedSurveyEngine() {\r\n const hasQuestionnaire = useSelector(({ interview }: StoreState) =>\r\n Boolean(interview.questionnaire),\r\n );\r\n\r\n const settings = useSelector(\r\n ({ interview }: StoreState) => interview.theme && interview.theme.settings,\r\n );\r\n\r\n const themeSettings = React.useMemo(\r\n () => ({\r\n // Setup default settings for theme.\r\n ...DefaultTheme,\r\n // Override with theme settings.\r\n ...settings,\r\n }),\r\n [settings],\r\n );\r\n\r\n return (\r\n
\r\n {hasQuestionnaire ? (\r\n \r\n \r\n \r\n {(bounds) => }\r\n \r\n \r\n \r\n ) : (\r\n \r\n )}\r\n
\r\n );\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { isEmpty } from \"lodash\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { MentionModel } from \"../../models/MentionModel\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { MentionBuilderDelegate } from \"../../models/builders/MentionBuilder\";\r\nimport { QuestionnaireModel } from \"../../models/QuestionnaireModel\";\r\nimport { ThemeModel } from \"../../models/ThemeModel\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport {\r\n setMultipleVariablesMentions,\r\n setQuestionFieldStatus,\r\n setVariableMentions,\r\n} from \"../../redux/actions\";\r\nimport { __getStore__ } from \"../../redux/store\";\r\nimport { getSettingString } from \"../../models/utilities/settingUtilities\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport { isNullOrEmpty } from \"../../utils\";\r\n\r\nexport interface ChoiceHandler {\r\n select(): void;\r\n}\r\n\r\nexport type ChoiceRef = React.MutableRefObject;\r\n\r\nexport interface ChoiceProps {\r\n // Store state\r\n question: QuestionModel;\r\n questionnaire: QuestionnaireModel;\r\n mentions: MentionModel[];\r\n theme: ThemeModel;\r\n language: string;\r\n matrix: number;\r\n // Props\r\n choice: ChoiceModel;\r\n choiceRef: ChoiceRef;\r\n variable: VariableModel;\r\n gridRendering?: boolean;\r\n openEnd?: string;\r\n isFirst?: boolean;\r\n isLast?: boolean;\r\n horizontal?: boolean;\r\n label?: string;\r\n isDisabled?: boolean;\r\n isSelected?: boolean;\r\n executeUpdateForIdAfterSelection?: string;\r\n}\r\n\r\nexport abstract class BaseChoice extends React.Component

{\r\n setMentions(variableName: string, builder: MentionBuilderDelegate, matrixIndex?: number) {\r\n const { matrix, dispatch } = this.props;\r\n const index = matrixIndex || matrix;\r\n dispatch(setVariableMentions(variableName, builder, index));\r\n }\r\n\r\n getMention = (mentionIndex?: number) => {\r\n const { mentions } = this.props;\r\n return mentions[mentionIndex || 0];\r\n };\r\n\r\n getMentionValues = () => {\r\n const { mentions } = this.props;\r\n return mentions.map((m) => m.value);\r\n };\r\n\r\n getMentionValue = (mentionIndex?: number) =>\r\n this.getMention(mentionIndex) === undefined ? \"\" : this.getMention(mentionIndex).value;\r\n\r\n getMentionOpenEnd = (mentionIndex?: number) =>\r\n this.getMention(mentionIndex) === undefined ? \"\" : this.getMention(mentionIndex).openEnd;\r\n\r\n getLatestMentionsForVariableName = (variableName: string) => {\r\n return __getStore__().getState().interview.variables.mentionsByVariableName[variableName];\r\n };\r\n\r\n updateMentionsAfterDisablingFields = (variableNames: any) => {\r\n const { dispatch } = this.props;\r\n dispatch(setMultipleVariablesMentions(variableNames));\r\n };\r\n\r\n updateQuestionFieldDisabledStatus = (ids: any, disabled: boolean) => {\r\n const { dispatch } = this.props;\r\n dispatch(setQuestionFieldStatus(ids, disabled));\r\n };\r\n\r\n disableAndResetHybridQuestionMapppedCell = (currentFieldIdentifier: string) => {\r\n const { question } = this.props;\r\n\r\n if (\r\n question?.parent?.type === QuestionType.HybridGrid &&\r\n !isNullOrEmpty(currentFieldIdentifier)\r\n ) {\r\n const [questionId, currentFieldVariableName] = currentFieldIdentifier.split(\"&\");\r\n const disabledFieldKeys = [];\r\n const enableFieldKeys = [];\r\n const disableColumnsList = [];\r\n\r\n // To reset multiple mentions at once\r\n let mentionsByVariable: { [variableName: string]: MentionBuilderDelegate } = {};\r\n const addMention = (variableName: string, builder: MentionBuilderDelegate) => {\r\n mentionsByVariable = {\r\n ...mentionsByVariable,\r\n [variableName]: builder,\r\n };\r\n };\r\n\r\n const rows = question?.parent?.rows;\r\n const filteredRows = rows.filter(\r\n (x) =>\r\n x.variables &&\r\n x.variables.length > 0 &&\r\n x.variables.find((vb) => vb.name === currentFieldVariableName),\r\n );\r\n\r\n if (filteredRows && filteredRows.length > 0) {\r\n // Get columns to be disabled for entire row if there is any mention selected for it.\r\n filteredRows[0].variables.forEach((loopVariable) => {\r\n if (loopVariable.choiceList?.length > 0) {\r\n const mention = this.getLatestMentionsForVariableName(loopVariable.name);\r\n\r\n if (mention && mention.length > 0) {\r\n loopVariable.choiceList.forEach((choice) => {\r\n if (mention && mention.some((x) => x.value === choice.value)) {\r\n disableColumnsList.push(\r\n getSettingString(choice, \"DisableColumns\"),\r\n );\r\n }\r\n });\r\n }\r\n }\r\n });\r\n\r\n // Don't add filter for current variablename as index will vary\r\n filteredRows[0].variables.forEach((loopVariable, index) => {\r\n const mappedFieldIdentifier = `${questionId}&${loopVariable.name}`;\r\n\r\n // enableFieldKeys store all keys which will enable all column and disabledFieldKeys will disable based on choice selection again.\r\n if (disableColumnsList && disableColumnsList.length > 0) {\r\n enableFieldKeys.push(mappedFieldIdentifier);\r\n\r\n const isDisabled = disableColumnsList\r\n .join(\",\")\r\n .replace(/\\s/g, \"\")\r\n .split(\",\")\r\n .some((c) => c === index.toString());\r\n\r\n if (isDisabled && currentFieldIdentifier !== mappedFieldIdentifier) {\r\n disabledFieldKeys.push(mappedFieldIdentifier);\r\n\r\n // Check latest mentions and reset only if there is any\r\n const currentMentions = this.getLatestMentionsForVariableName(\r\n loopVariable.name,\r\n );\r\n\r\n if (currentMentions && currentMentions.length > 0) {\r\n addMention(loopVariable.name, (m) => m.clear());\r\n }\r\n }\r\n } else {\r\n enableFieldKeys.push(mappedFieldIdentifier);\r\n }\r\n });\r\n }\r\n\r\n // First enable all column then disable as per selection and questionairre settings\r\n if (!isEmpty(enableFieldKeys)) {\r\n this.updateQuestionFieldDisabledStatus(enableFieldKeys, false);\r\n }\r\n\r\n if (!isEmpty(disabledFieldKeys)) {\r\n this.updateQuestionFieldDisabledStatus(disabledFieldKeys, true);\r\n }\r\n\r\n if (!isEmpty(mentionsByVariable)) {\r\n this.updateMentionsAfterDisablingFields(mentionsByVariable);\r\n }\r\n }\r\n };\r\n\r\n abstract renderChoice(choice: ChoiceModel);\r\n\r\n render() {\r\n const { choice } = this.props;\r\n return this.renderChoice(choice);\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles((theme: any) => ({\r\n checkBox: {\r\n display: \"inline-block\",\r\n userSelect: \"none\",\r\n background: \"transparent\",\r\n },\r\n checkBoxGridCell: {\r\n composes: \"check-box__grid-cell\",\r\n display: \"flex\",\r\n height: theme.GridCellMinHeight,\r\n margin: -theme.GridCellPadding,\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n\r\n \"&:hover, &:focus\": {\r\n color: theme.PrimaryColor,\r\n },\r\n },\r\n checkBoxGridCellChecked: {\r\n composes: \"check-box__grid-cell--checked\",\r\n color: theme.PrimaryColor,\r\n },\r\n checkBoxInput: {\r\n composes: \"check-box__input\",\r\n display: \"none\",\r\n },\r\n}));\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport useStyles from \"./CheckBoxRenderer.styles\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceHandler } from \"../../choices/BaseChoice\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { CheckBoxIcon } from \"../../shared/CheckBoxIcon\";\r\nimport { translate } from \"../../../models/utilities/translationUtilities\";\r\nimport { removeHtmlTags } from \"../../../utils\";\r\n\r\ninterface Props extends RendererProps {\r\n choice: ChoiceModel;\r\n id?: string;\r\n name?: string;\r\n value?: string;\r\n onSelect?(): void;\r\n checked?: boolean;\r\n isDisabled?: boolean;\r\n}\r\n\r\nfunction CheckBoxRendererImpl(props: Props, ref: React.MutableRefObject) {\r\n const { choice, checked, gridRendering, onSelect, isDisabled, language } = props;\r\n\r\n const [hover, setHover] = React.useState(false);\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n\r\n React.useImperativeHandle(ref, () => ({\r\n select() {\r\n onSelect();\r\n },\r\n }));\r\n\r\n if (!gridRendering) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n const choiceText = removeHtmlTags(translate(choice, \"TEXT\", language));\r\n\r\n return (\r\n {\r\n if (event.key === \" \") {\r\n onSelect();\r\n event.preventDefault();\r\n }\r\n }}\r\n onFocus={() => setHover(true)}\r\n onBlur={() => setHover(false)}\r\n onClick={() => onSelect()}\r\n onMouseOver={() => setHover(true)}\r\n onMouseOut={() => setHover(false)}\r\n className={classnames(\r\n classes.checkBox,\r\n gridRendering && classes.checkBoxGridCell,\r\n gridRendering && checked && classes.checkBoxGridCellChecked,\r\n )}\r\n >\r\n \r\n \r\n );\r\n}\r\n\r\nconst CheckBoxRenderer = React.forwardRef(CheckBoxRendererImpl);\r\n\r\nexport default CheckBoxRenderer;\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { BaseChoice, ChoiceProps } from \"./BaseChoice\";\r\nimport { getSettingBoolean } from \"../../models/utilities/settingUtilities\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport CheckBoxRenderer from \"../renderers/v2/CheckBoxRenderer\";\r\nimport ChoiceLabelRenderer from \"../renderers/v2/ChoiceLabelRenderer\";\r\n\r\ninterface State {\r\n checked: boolean;\r\n}\r\n\r\nexport class CheckBox extends BaseChoice<{}, State> {\r\n constructor(props: ChoiceProps & DispatchProp) {\r\n super(props);\r\n this.state = {\r\n checked: props.isSelected,\r\n };\r\n }\r\n\r\n UNSAFE_componentWillReceiveProps(nextProps: {} & ChoiceProps) {\r\n if (this.state.checked !== nextProps.isSelected) {\r\n this.setState({ checked: nextProps.isSelected });\r\n }\r\n }\r\n\r\n onSelect = () => {\r\n this.updateValue();\r\n\r\n this.disableAndResetHybridQuestionMapppedCell(this.props.executeUpdateForIdAfterSelection);\r\n };\r\n\r\n updateValue() {\r\n if (this.props.isDisabled) {\r\n return;\r\n }\r\n this.setState((s) => {\r\n const newState = { ...s };\r\n newState.checked = !s.checked;\r\n return newState;\r\n });\r\n this.setMentions(this.props.variable.name, (mentions) => {\r\n const isSelectedExclusive = getSettingBoolean(this.props.choice, \"Exclusive\");\r\n if (this.props.variable.choiceList !== undefined) {\r\n this.props.variable.choiceList\r\n .filter((choice) => this.props.choice.index !== choice.index)\r\n .forEach((choice) => {\r\n if (isSelectedExclusive || getSettingBoolean(choice, \"Exclusive\")) {\r\n mentions = mentions.removeValue(choice.value);\r\n }\r\n });\r\n }\r\n return mentions.toggle(this.props.choice.value, this.props.openEnd);\r\n });\r\n }\r\n\r\n renderChoice(choice: ChoiceModel) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport * as Mixins from \"../../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n imageChoice: {\r\n composes: \"image-choice\",\r\n margin: ({ theme }) => [[theme.ChoiceSpacing, theme.ChoiceSpacing / 4]],\r\n textAlign: \"center\",\r\n userSelect: \"none\",\r\n },\r\n imageChoiceCollapsed: {\r\n composes: \"image-choice-collapsed\",\r\n flexDirection: \"row\",\r\n justifyContent: \"start\",\r\n margin: ({ theme }) => [[0, 0, theme.ChoiceSpacing, 0]],\r\n },\r\n imageChoiceTarget: {\r\n background: ({ theme }) => theme.ControlBackground,\r\n border: ({ theme }) => [[theme.BorderWidth, \"solid\", theme.ControlBorderColor]],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n composes: \"image-choice__target\",\r\n fontSize: 0,\r\n lineHeight: 0,\r\n cursor: \"pointer\",\r\n outline: \"none\",\r\n overflow: \"hidden\",\r\n position: \"relative\",\r\n verticalAlign: \"middle\",\r\n },\r\n imageChoiceOverlay: {\r\n bottom: 0,\r\n composes: \"image-choice__overlay\",\r\n left: 0,\r\n position: \"absolute\",\r\n right: 0,\r\n top: 0,\r\n transition: \"background 200ms\",\r\n },\r\n imageChoiceOverlaySelected: {\r\n background: ({ theme }) => Mixins.alpha(theme.PrimaryColor, 0.3),\r\n composes: \"image-choice__overlay--selected\",\r\n },\r\n imageChoiceOverlayActive: {\r\n background: ({ theme, selected }) =>\r\n selected ? Mixins.alpha(theme.PrimaryColor, 0.5) : Mixins.alpha(\"#999\", 0.5),\r\n composes: \"image-choice__overlay--active\",\r\n },\r\n imageChoiceImage: {\r\n height: \"100%\",\r\n width: \"100%\",\r\n },\r\n imageChoiceText: {\r\n display: \"inline-block\",\r\n composes: \"image-choice__text\",\r\n cursor: \"pointer\",\r\n textAlign: \"left\",\r\n lineHeight: ({ theme }) => `${theme.LineHeight}px`,\r\n marginTop: 9.67,\r\n },\r\n imageChoiceCollapsedText: {\r\n composes: \"image-choice-collapsed__text\",\r\n margin: [[0, 9.67]],\r\n },\r\n imageChoiceTextSelected: {\r\n fontWeight: \"bolder\",\r\n color: ({ theme }) => theme.PrimaryColor,\r\n },\r\n imageDisabled: {\r\n opacity: 0.5,\r\n pointerEvents: \"none\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { getSettingString, getSettingEnum } from \"../../../models/utilities/settingUtilities\";\r\nimport { QuestionModel } from \"../../../models/QuestionModel\";\r\nimport useStyle from \"./ImageChoiceRenderer.styles\";\r\nimport useQuestion from \"../../../hooks/useQuestion\";\r\nimport useTranslatable from \"../../../hooks/useTranslatable\";\r\nimport { LabelPosition } from \"../../../models/enums/LabelPosition\";\r\n\r\ninterface Props extends RendererProps {\r\n onSelect?(): void;\r\n selected?: boolean;\r\n gridRendering?: boolean;\r\n choice?: ChoiceModel;\r\n disabled?: boolean;\r\n}\r\n\r\nfunction getImageDimensions(question: QuestionModel) {\r\n const parentWidth = getSettingString(question.parent, \"ImageWidth\");\r\n const width = getSettingString(question, \"ImageWidth\", parentWidth);\r\n\r\n const parentHeight = getSettingString(question.parent, \"ImageHeight\");\r\n const height = getSettingString(question, \"ImageHeight\", parentHeight);\r\n\r\n return {\r\n width,\r\n height,\r\n };\r\n}\r\n\r\nfunction displayChoiceLabels(question: QuestionModel, gridRendering: boolean) {\r\n const showChoiceText = getSettingEnum(question, LabelPosition, \"ShowChoiceText\");\r\n return showChoiceText != null && showChoiceText !== LabelPosition.No && !gridRendering;\r\n}\r\n\r\nexport default function ImageChoiceRenderer(props: Props) {\r\n const { choice, onSelect, gridRendering, selected, disabled } = props;\r\n\r\n const theme = useTheme();\r\n const classes = useStyle({ theme, selected });\r\n const divRef = React.useRef();\r\n const question = useQuestion();\r\n const choiceText = useTranslatable(choice, \"TEXT\");\r\n const imageSrc = useTranslatable(choice, \"ImageUrl\");\r\n\r\n const [active, setActive] = React.useState(false);\r\n\r\n const inputId = `${choice.elementId}_INPUT`;\r\n const labelId = `${choice.elementId}_LABEL`;\r\n const displayLabel = displayChoiceLabels(question, gridRendering);\r\n const collapsedGrid = gridRendering === false;\r\n\r\n return (\r\n \r\n {imageSrc && (\r\n event.preventDefault()}\r\n onFocus={disabled ? undefined : () => setActive(true)}\r\n onBlur={disabled ? undefined : () => setActive(false)}\r\n onMouseOver={disabled ? undefined : () => setActive(true)}\r\n onMouseOut={disabled ? undefined : () => setActive(false)}\r\n onClick={disabled ? undefined : onSelect}\r\n onKeyDown={\r\n disabled\r\n ? undefined\r\n : (event) => {\r\n if (event.target !== divRef.current) return;\r\n if (event.key === \" \") {\r\n onSelect();\r\n event.preventDefault();\r\n }\r\n }\r\n }\r\n >\r\n \r\n \r\n \r\n )}\r\n {displayLabel && (\r\n setActive(true)}\r\n onMouseOut={disabled ? undefined : () => setActive(false)}\r\n onClick={\r\n disabled\r\n ? undefined\r\n : () => {\r\n onSelect();\r\n event.preventDefault();\r\n }\r\n }\r\n onMouseDown={(event) => event.preventDefault()}\r\n dangerouslySetInnerHTML={{ __html: choiceText }}\r\n />\r\n )}\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { BaseChoice } from \"./BaseChoice\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { getSettingString, getSettingBoolean } from \"../../models/utilities/settingUtilities\";\r\nimport { blurFocusedField } from \"../../utils\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport ImageChoiceRenderer from \"../renderers/v2/ImageChoiceRenderer\";\r\n\r\nexport class ImageSelect extends BaseChoice<{}, {}> {\r\n min(question: QuestionModel) {\r\n return getSettingString(question, \"MinRequiredAnswers\");\r\n }\r\n\r\n max(question: QuestionModel) {\r\n return getSettingString(question, \"MaxAllowedAnswers\");\r\n }\r\n\r\n getChoiceLabel(choice: ChoiceModel) {\r\n return translate(choice, \"TEXT\", this.props.language);\r\n }\r\n\r\n onChoiceSelected = () => {\r\n blurFocusedField();\r\n if (this.props.isDisabled) return;\r\n this.setMentions(this.props.variable.name, (mentions) => {\r\n const isSelectedExclusive =\r\n getSettingBoolean(this.props.choice, \"Exclusive\") ||\r\n this.max(this.props.question) === \"1\";\r\n if (this.props.variable.choiceList !== undefined) {\r\n for (const c of this.props.variable.choiceList) {\r\n if (c.index === this.props.choice.index) continue;\r\n if (isSelectedExclusive || getSettingBoolean(c, \"Exclusive\"))\r\n mentions = mentions.removeValue(c.value);\r\n }\r\n }\r\n return mentions.toggle(this.props.choice.value, this.props.openEnd);\r\n });\r\n\r\n this.disableAndResetHybridQuestionMapppedCell(this.props.executeUpdateForIdAfterSelection);\r\n };\r\n\r\n renderChoice(choice: ChoiceModel) {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles((theme: any) => ({\r\n radio: {\r\n display: \"inline-block\",\r\n userSelect: \"none\",\r\n background: \"transparent\",\r\n },\r\n radioGridCell: {\r\n composes: \"radio__grid-cell\",\r\n display: \"flex\",\r\n height: theme.GridCellMinHeight,\r\n margin: -theme.GridCellPadding,\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n\r\n \"&:hover, &:focus\": {\r\n color: theme.PrimaryColor,\r\n },\r\n },\r\n radioGridCellChecked: {\r\n composes: \"radio__grid-cell--checked\",\r\n color: theme.PrimaryColor,\r\n },\r\n radioInput: {\r\n composes: \"radio__input\",\r\n display: \"none\",\r\n },\r\n}));\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport useStyles from \"./RadioRenderer.styles\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceRef } from \"../../choices/BaseChoice\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { RadioIcon } from \"../../shared/RadioIcon\";\r\nimport { translate } from \"../../../models/utilities/translationUtilities\";\r\nimport { removeHtmlTags } from \"../../../utils\";\r\n\r\ninterface Props extends RendererProps {\r\n choice: ChoiceModel;\r\n name?: string;\r\n value?: string;\r\n onSelect?(): void;\r\n checked?: boolean;\r\n disabled?: boolean;\r\n}\r\n\r\nconst RadioRenderer = React.forwardRef(function RadioRendererImpl(props: Props, ref: ChoiceRef) {\r\n const { choice, checked, gridRendering, onSelect, variable, disabled, language } = props;\r\n\r\n const [hover, setHover] = React.useState(false);\r\n const theme: any = useTheme();\r\n const classes = useStyles({ theme });\r\n\r\n React.useImperativeHandle(ref, () => ({\r\n select() {\r\n onSelect();\r\n },\r\n }));\r\n\r\n if (!gridRendering) {\r\n return ;\r\n }\r\n\r\n const choiceText = removeHtmlTags(translate(choice, \"TEXT\", language));\r\n\r\n return (\r\n {\r\n if (event.key === \" \") {\r\n onSelect();\r\n event.preventDefault();\r\n }\r\n if (event.key === \"ArrowRight\" || event.key === \"ArrowLeft\") {\r\n const choices = variable.choiceList;\r\n const index = choices.indexOf(choice) + (event.key === \"ArrowRight\" ? 1 : -1);\r\n if (choices[index]) {\r\n const siblingElement = document.getElementById(\r\n `${choices[index].elementId}.INPUT`,\r\n );\r\n if (siblingElement) {\r\n siblingElement.focus();\r\n siblingElement.click();\r\n event.preventDefault();\r\n }\r\n }\r\n }\r\n }}\r\n onFocus={() => setHover(true)}\r\n onBlur={() => setHover(false)}\r\n onClick={() => onSelect()}\r\n onMouseOver={() => setHover(true)}\r\n onMouseOut={() => setHover(false)}\r\n className={classnames(\r\n classes.radio,\r\n gridRendering && classes.radioGridCell,\r\n gridRendering && checked && classes.radioGridCellChecked,\r\n )}\r\n >\r\n \r\n \r\n );\r\n});\r\n\r\nexport default RadioRenderer;\r\n","import React from \"react\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { BaseChoice } from \"./BaseChoice\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport RadioRenderer from \"../renderers/v2/RadioRenderer\";\r\nimport ChoiceLabelRenderer from \"../renderers/v2/ChoiceLabelRenderer\";\r\nimport { changeLanguage, respondentSetTimeZone } from \"../../redux/actions\";\r\n\r\nexport class Radio extends BaseChoice<{}, {}> {\r\n onSelect = () => {\r\n this.updateValue(this.props.choice);\r\n\r\n this.disableAndResetHybridQuestionMapppedCell(this.props.executeUpdateForIdAfterSelection);\r\n };\r\n\r\n updateValue(choice: ChoiceModel) {\r\n if (this.props.isDisabled) return;\r\n if (this.props.question.type === QuestionType.RespondentLanguage)\r\n this.props.dispatch(changeLanguage(choice.value));\r\n if (this.props.question.type === QuestionType.RespondentTimeZone)\r\n this.props.dispatch(respondentSetTimeZone(choice.value));\r\n this.setMentions(this.props.variable.name, (mentions) =>\r\n mentions.set(choice.value, this.props.openEnd),\r\n );\r\n }\r\n\r\n renderChoice(choice: ChoiceModel) {\r\n const { isSelected, isDisabled, variable, gridRendering, choiceRef } = this.props;\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\";\r\nimport { isEqual, unescape } from \"../../utils/lodash\";\r\nimport useStyles from \"./Select.styles\";\r\nimport { RecalledText } from \"../../containers/shared/RecalledText\";\r\nimport { isNullOrEmpty } from \"../../utils\";\r\nimport InputWrapper from \"../shared/InputWrapper\";\r\n\r\nexport interface Option {\r\n id: string;\r\n label: string;\r\n value: string;\r\n recalledLabel: string;\r\n}\r\n\r\ninterface Props {\r\n id: string;\r\n labelId: string;\r\n openEmpty?: boolean;\r\n required?: boolean;\r\n value: string;\r\n options: Option[];\r\n minLength?: number;\r\n maxResults?: number;\r\n maxResultsMessage?: string;\r\n searchMethod?: \"Exact\" | \"StartsWith\" | \"Contains\";\r\n onChange(value: string): void;\r\n onBlur();\r\n onOptionSelected?(value: string): void;\r\n size?: string;\r\n}\r\n\r\nexport default function AutoComplete(props: Props) {\r\n const {\r\n options,\r\n minLength,\r\n maxResults,\r\n maxResultsMessage,\r\n searchMethod,\r\n required,\r\n id,\r\n labelId,\r\n value,\r\n onBlur,\r\n onChange,\r\n size,\r\n onOptionSelected,\r\n } = props;\r\n\r\n const ref = React.useRef();\r\n const [dropdownWidth, setDropdownWidth] = React.useState(0);\r\n const [focusedOption, setFocusedOption] = React.useState

  • \r\n \r\n
  • \r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingString,\r\n getSettingNumber,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { isNullOrEmpty, removeHtmlTags } from \"../../utils\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport AutoComplete from \"../select/AutoComplete\";\r\nimport { size } from \"../../models/utilities/questionUtilities\";\r\nimport { isVisible } from \"../../models/utilities/choiceUtilities\";\r\nimport { ElementWithSettings } from \"../../models/ElementWithSettings\";\r\nimport { Piping } from \"../../piping\";\r\nimport { __getStore__ } from \"../../redux/store\";\r\nimport { RecallType } from \"../../piping/RecallType\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n value: string;\r\n focus: boolean;\r\n input?: HTMLElement;\r\n}\r\n\r\nexport class AutoCompleteControl extends BaseControl {\r\n input?: HTMLElement;\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n value: \"\",\r\n focus: false,\r\n };\r\n }\r\n\r\n getChoiceText(choice: ChoiceModel, lang?: string) {\r\n return removeHtmlTags(translate(choice, \"TEXT\", lang || this.props.language));\r\n }\r\n\r\n isDefault(choice: ChoiceModel) {\r\n return choice && !isNullOrEmpty(choice.value) && getSettingBoolean(choice, \"Default\");\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props) {\r\n super.initializeQuestion(question, props);\r\n if (!this.hasMentions(props)) {\r\n this.setDefaultChoices();\r\n }\r\n this.updateState(props);\r\n }\r\n\r\n willUpdateMentions(question: QuestionModel, nextProps: Props) {\r\n super.willUpdateMentions(question, nextProps);\r\n this.updateState(nextProps);\r\n }\r\n\r\n componentDidMount() {\r\n this.setState((prevState) => ({ ...prevState, input: this.input }));\r\n }\r\n\r\n hasAnswerWithValue(props: Props, value: string) {\r\n if (isNullOrEmpty(value)) {\r\n return false;\r\n }\r\n return props.sequencedVariables[0].choiceList.some((choice) => choice.value === value);\r\n }\r\n\r\n maxValue = () => 1;\r\n\r\n setChoicesAsMentions = (element: ElementWithSettings, choices: ChoiceModel[]) => {\r\n const values = choices\r\n .slice(0, this.maxValue() || choices.length)\r\n .map((choice) => ({ value: choice.value }));\r\n if (values.length) {\r\n this.setMentions(\r\n this.props,\r\n element.name,\r\n (mentions) => mentions.clear().add(values),\r\n undefined,\r\n true,\r\n );\r\n }\r\n };\r\n\r\n setDefaultChoices = () => {\r\n const { question, sequencedVariables } = this.props;\r\n const [variable] = sequencedVariables;\r\n const { choiceList = [] } = variable;\r\n const [firstDefaultVisibleChoice] = choiceList.filter(\r\n (choice) => this.isDefault(choice) && isVisible(choice),\r\n );\r\n if (firstDefaultVisibleChoice) {\r\n this.setChoicesAsMentions(question, [firstDefaultVisibleChoice]);\r\n }\r\n };\r\n\r\n updateState(props: Props) {\r\n this.setState((prevState) => {\r\n const mention = this.getMention(props);\r\n\r\n const newState = { ...prevState };\r\n if (!mention) {\r\n newState.value = \"\";\r\n return newState;\r\n }\r\n\r\n const { value, openEnd } = mention;\r\n const [variable] = props.question.variables;\r\n const selectedChoice = variable.choiceList.find(\r\n (choice) => !isNullOrEmpty(choice.value) && choice.value === value,\r\n );\r\n\r\n if (!isNullOrEmpty(openEnd)) {\r\n newState.value = openEnd;\r\n } else if (\r\n selectedChoice &&\r\n this.shouldDisplayMentionValue(variable, selectedChoice.value)\r\n ) {\r\n newState.value = this.getChoiceText(selectedChoice, props.language);\r\n }\r\n\r\n return newState;\r\n });\r\n }\r\n\r\n onChange = (value: string) => this.setState({ value });\r\n\r\n onOptionSelected = (value: string) =>\r\n this.setState({ value }, () => {\r\n this.onBlur();\r\n });\r\n\r\n onBlur = () => {\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n const state = { ...this.state, focus: false };\r\n const { value } = state;\r\n\r\n const answer = this.getAutoCompleteAnswer(this.props, value);\r\n const invalidAsOpenEnd = getSettingBoolean(question, \"InvalidAsOpenEnd\");\r\n\r\n if (!isNullOrEmpty(value?.trim()) && answer === undefined && invalidAsOpenEnd) {\r\n const openEndAnswerCode = getSettingString(question, \"OpenEndAnswerCode\", \"0\");\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.set(openEndAnswerCode, value.trim()),\r\n );\r\n } else if (answer !== undefined) {\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.set(answer.value));\r\n } else if (answer === undefined) {\r\n state.value = \"\";\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.clear());\r\n }\r\n\r\n this.setState(state);\r\n };\r\n\r\n getAutoCompleteAnswer(props: Props, value: string) {\r\n const trimmedLowerValue = value.trim().toLowerCase();\r\n return props.sequencedVariables[0].choiceList.find(\r\n (choice) => this.getChoiceText(choice).trim().toLowerCase() === trimmedLowerValue,\r\n );\r\n }\r\n\r\n getValue() {\r\n const value = this.state.value.trim().toLowerCase();\r\n const answer = this.getAutoCompleteAnswer(this.props, value);\r\n const invalidAsOpenEnd = getSettingBoolean(this.props.question, \"InvalidAsOpenEnd\");\r\n if (value !== \"\" && answer === undefined && invalidAsOpenEnd) {\r\n return getSettingString(this.props.question, \"OpenEndAnswerCode\", \"0\");\r\n }\r\n if (answer && answer.value) {\r\n return answer.value;\r\n }\r\n return \"\";\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n getRecalledLabel(label: string): string {\r\n const { interview } = __getStore__().getState();\r\n return Piping.evaluateRecalls(interview, label, RecallType.Text);\r\n }\r\n\r\n renderQuestion(question: QuestionModel) {\r\n const { theme, language, sequencedVariables } = this.props;\r\n const { value } = this.state;\r\n const minLength = getSettingNumber(question, \"MinSearchLength\", 0);\r\n const maxResults = getSettingNumber(question, \"MaxResults\", 50);\r\n const maxResultsMessage = translate(theme, \"AutoCompleteMaxResults\", language);\r\n const searchMethod = getSettingString(question, \"SearchOption\") as\r\n | \"Exact\"\r\n | \"StartsWith\"\r\n | \"Contains\";\r\n\r\n const [variable] = sequencedVariables;\r\n const options = variable.choiceList.map((choice) => {\r\n const translatedLabel = translate(choice, \"Text\", language);\r\n return {\r\n id: choice.elementId,\r\n value: choice.value,\r\n label: translatedLabel,\r\n recalledLabel: this.getRecalledLabel(translatedLabel),\r\n };\r\n });\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { isEqual, isEmpty } from \"../../utils/lodash\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { MentionModel } from \"../../models/MentionModel\";\r\nimport { MentionBuilderDelegate } from \"../../models/builders/MentionBuilder\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport { QuestionnaireModel } from \"../../models/QuestionnaireModel\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingString,\r\n getSettingNumber,\r\n hasSetting,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { ThemeModel } from \"../../models/ThemeModel\";\r\nimport { Signal } from \"../../signals\";\r\nimport { SignalListener } from \"../shared/SignalListener\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { isNullOrEmpty } from \"../../utils\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { Voxco } from \"../../public\";\r\nimport {\r\n isAutoAdvanceEnabled,\r\n isInputRequired,\r\n} from \"../../models/utilities/questionnaireUtilities\";\r\nimport {\r\n getSoftPromptCode,\r\n isAutoAdvanceCompatible,\r\n isQuestionSoftPrompt,\r\n shouldSetSoftPromptCode,\r\n shouldSetDefaultChoice,\r\n} from \"../../models/utilities/questionUtilities\";\r\nimport { NavigationType } from \"../../models/enums/NavigationType\";\r\nimport { hasOpenEnd } from \"../../models/utilities/choiceUtilities\";\r\nimport { ElementWithSettings } from \"../../models/ElementWithSettings\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport { AxisModel } from \"../../models/AxisModel\";\r\nimport { BlockModel } from \"../../models/BlockModel\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { FileUploadModel } from \"../../models/FileUploadModel\";\r\nimport {\r\n setMultipleVariablesMentions,\r\n setQuestionFieldStatus,\r\n setVariableMentions,\r\n} from \"../../redux/actions\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\n// eslint-disable-next-line import/no-deprecated\r\nimport { supportValidateSoftPrompt } from \"../../redux/thunks/validation\";\r\nimport { __getStore__ } from \"../../redux/store\";\r\nimport { ThunkDispatchProp } from \"../../models/actions/ThunkDispatchProp\";\r\nimport { VariableType } from \"../../models/enums/VariableType\";\r\nimport { getAllCurrentPageQuestions } from \"../../models/utilities/blockUtilities\";\r\n\r\nexport interface ControlProps {\r\n // Store state\r\n block: BlockModel;\r\n questionnaire: QuestionnaireModel;\r\n files: { [variableName: string]: FileUploadModel[] };\r\n language: string;\r\n email: string;\r\n phone: string;\r\n timeZone: string;\r\n question: QuestionModel;\r\n theme: ThemeModel;\r\n mentions: { [variableName: string]: MentionModel[] };\r\n matrix: number;\r\n sequencedVariables: VariableModel[];\r\n sequencedRows: AxisModel[];\r\n sequencedColumns: AxisModel[];\r\n min: string;\r\n max: string;\r\n // Signals\r\n validateSignal?: Signal;\r\n // Props\r\n isSingleOnPage?: boolean;\r\n showSoftPrompt: boolean;\r\n gridRendering?: boolean;\r\n prefix?: string;\r\n onNavigation?(type: NavigationType): void;\r\n isDisabled?: boolean;\r\n useClientValidation?: boolean;\r\n carrouselActiveVariableIndex?: number;\r\n onAfterSelection?(): void;\r\n executeUpdateForIdAfterSelection?: string;\r\n}\r\n\r\nexport abstract class BaseControl<\r\n P extends ControlProps & ThunkDispatchProp,\r\n S\r\n> extends React.Component {\r\n renderedQuestion: QuestionModel;\r\n autoAdvanceTimer: number;\r\n preventAutoAdvance: boolean;\r\n\r\n UNSAFE_componentWillMount() {\r\n const { question } = this.props;\r\n this.initializeQuestion(question, this.props);\r\n }\r\n\r\n componentDidMount() {\r\n const { question } = this.props;\r\n if (question !== this.renderedQuestion) {\r\n this.questionFirstRender((this.renderedQuestion = question), this.props);\r\n }\r\n }\r\n\r\n UNSAFE_componentWillReceiveProps(nextProps: P) {\r\n const { mentions } = this.props;\r\n const mentionChanged = !isEqual(mentions, nextProps.mentions);\r\n if (mentionChanged) {\r\n this.willUpdateMentions(nextProps.question, nextProps);\r\n }\r\n }\r\n\r\n componentDidUpdate(prevProps: P, prevState: S) {\r\n const { question, matrix, mentions, sequencedVariables } = this.props;\r\n const sameQuestion =\r\n question?.name === prevProps.question?.name && matrix === prevProps.matrix;\r\n const mentionChanged = !isEqual(mentions, prevProps.mentions);\r\n if (sameQuestion && mentionChanged) {\r\n this.didUpdateMentions(prevProps.question, prevProps);\r\n }\r\n if (question !== this.renderedQuestion) {\r\n this.questionFirstRender((this.renderedQuestion = question), this.props);\r\n }\r\n if (!isEqual(sequencedVariables, prevProps.sequencedVariables)) {\r\n this.didUpdateVariables(sequencedVariables, prevProps);\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n const { question } = this.props;\r\n this.finalizeQuestion(question, this.props);\r\n }\r\n\r\n setMentions(\r\n props: P,\r\n variableName: string,\r\n builder: MentionBuilderDelegate,\r\n matrixIndex?: number,\r\n preventAutoAdvance?: boolean,\r\n ) {\r\n const { dispatch } = this.props;\r\n this.preventAutoAdvance = preventAutoAdvance;\r\n const index = matrixIndex || props.matrix;\r\n dispatch(setVariableMentions(variableName, builder, index));\r\n }\r\n\r\n setCarrouselActiveVariable = (questionId: number) => {\r\n const { sequencedVariables } = this.props;\r\n const carrouselActiveVariableIndex = __getStore__().getState().interview.carrousel[\r\n `${questionId}_statement`\r\n ]?.activeVariableIndex;\r\n return (\r\n carrouselActiveVariableIndex !== undefined &&\r\n sequencedVariables[carrouselActiveVariableIndex]\r\n );\r\n };\r\n\r\n getLatestMentionsForVariableName = (variableName: string) => {\r\n return __getStore__().getState().interview.variables.mentionsByVariableName[variableName];\r\n };\r\n\r\n updateMentionsAfterDisablingFields = (variableNames: any) => {\r\n const { dispatch } = this.props;\r\n dispatch(setMultipleVariablesMentions(variableNames));\r\n };\r\n\r\n updateQuestionFieldDisabledStatus = (ids: any, disabled: boolean) => {\r\n const { dispatch } = this.props;\r\n dispatch(setQuestionFieldStatus(ids, disabled));\r\n };\r\n\r\n disableAndResetHybridQuestionMapppedCell = (currentFieldIdentifier: string) => {\r\n const { question } = this.props;\r\n if (\r\n question?.parent?.type === QuestionType.HybridGrid &&\r\n !isNullOrEmpty(currentFieldIdentifier)\r\n ) {\r\n const [questionId, currentFieldVariableName] = currentFieldIdentifier.split(\"&\");\r\n const disabledFieldKeys = [];\r\n const enableFieldKeys = [];\r\n const disableColumnsList = [];\r\n\r\n // To reset multiple mentions at once\r\n let mentionsByVariable: { [variableName: string]: MentionBuilderDelegate } = {};\r\n const addMention = (variableName: string, builder: MentionBuilderDelegate) => {\r\n mentionsByVariable = {\r\n ...mentionsByVariable,\r\n [variableName]: builder,\r\n };\r\n };\r\n\r\n const rows = question?.parent?.rows;\r\n const filteredRows = rows.filter(\r\n (x) =>\r\n x.variables &&\r\n x.variables.length > 0 &&\r\n x.variables.find((vb) => vb.name === currentFieldVariableName),\r\n );\r\n\r\n if (filteredRows && filteredRows.length > 0) {\r\n // Get columns to be disabled for entire row if there is any mention selected for it.\r\n filteredRows[0].variables.forEach((loopVariable) => {\r\n if (loopVariable.choiceList?.length > 0) {\r\n const mention = this.getLatestMentionsForVariableName(loopVariable.name);\r\n\r\n if (mention && mention.length > 0) {\r\n loopVariable.choiceList.forEach((choice) => {\r\n if (mention && mention.some((x) => x.value === choice.value)) {\r\n disableColumnsList.push(\r\n getSettingString(choice, \"DisableColumns\"),\r\n );\r\n }\r\n });\r\n }\r\n }\r\n });\r\n\r\n // Don't add filter for current variablename as index will vary\r\n filteredRows[0].variables.forEach((loopVariable, index) => {\r\n const mappedFieldIdentifier = `${questionId}&${loopVariable.name}`;\r\n\r\n // enableFieldKeys store all keys which will enable all column and disabledFieldKeys will disable based on choice selection again.\r\n if (disableColumnsList && disableColumnsList.length > 0) {\r\n enableFieldKeys.push(mappedFieldIdentifier);\r\n\r\n const isDisabled = disableColumnsList\r\n .join(\",\")\r\n .replace(/\\s/g, \"\")\r\n .split(\",\")\r\n .some((c) => c === index.toString());\r\n\r\n if (isDisabled && currentFieldIdentifier !== mappedFieldIdentifier) {\r\n disabledFieldKeys.push(mappedFieldIdentifier);\r\n\r\n // Check latest mentions and reset only if there is any\r\n const currentMentions = this.getLatestMentionsForVariableName(\r\n loopVariable.name,\r\n );\r\n\r\n if (currentMentions && currentMentions.length > 0) {\r\n addMention(loopVariable.name, (m) => m.clear());\r\n }\r\n }\r\n } else {\r\n enableFieldKeys.push(mappedFieldIdentifier);\r\n }\r\n });\r\n }\r\n\r\n if (!isEmpty(enableFieldKeys)) {\r\n this.updateQuestionFieldDisabledStatus(enableFieldKeys, false);\r\n }\r\n\r\n if (!isEmpty(disabledFieldKeys)) {\r\n this.updateQuestionFieldDisabledStatus(disabledFieldKeys, true);\r\n }\r\n\r\n if (!isEmpty(mentionsByVariable)) {\r\n this.updateMentionsAfterDisablingFields(mentionsByVariable);\r\n }\r\n }\r\n };\r\n\r\n getMentions = (props: P, variableName?: string) => {\r\n const variable =\r\n this.setCarrouselActiveVariable(props.question.id) ||\r\n this.getQuestionVariable(props.question.variables);\r\n\r\n const mentions = props.mentions[(variableName || variable.name).toUpperCase()] || [];\r\n return mentions.filter((mention) => mention.matrix === props.matrix);\r\n };\r\n\r\n getMention = (props: P, variableName?: string, mentionIndex?: number) =>\r\n this.getMentions(props, variableName).find((m) => m.index === (mentionIndex || 1));\r\n\r\n getMentionValue = (props: P, variableName?: string, mentionIndex?: number) =>\r\n (this.getMention(props, variableName, mentionIndex) || { value: \"\" }).value;\r\n\r\n getMentionOpenEnd = (props: P, variableName?: string, mentionIndex?: number) =>\r\n (this.getMention(props, variableName, mentionIndex) || { openEnd: \"\" }).openEnd;\r\n\r\n axisHasMentions = (axis: AxisModel) => {\r\n return axis.variables.some(\r\n (variable) => !isEmpty(this.getMentions(this.props, variable.name)),\r\n );\r\n };\r\n\r\n getFiles = (props: P, variableName?: string) => {\r\n const variable = this.getQuestionVariable(props.question.variables);\r\n const files = props.files[(variableName || variable.name).toUpperCase()] || [];\r\n return files.filter((file) => file.matrix === props.matrix);\r\n };\r\n\r\n getFile = (props: P, variableName?: string) => {\r\n const [file] = this.getFiles(props, variableName);\r\n return file;\r\n };\r\n\r\n isSoftPrompt = (props: P) => {\r\n const { questionnaire, question } = props;\r\n return isInputRequired(questionnaire) && isQuestionSoftPrompt(question);\r\n };\r\n\r\n onAutoAdvanceTimer = () => {\r\n const { onNavigation } = this.props;\r\n this.autoAdvanceTimer = null;\r\n onNavigation(NavigationType.Next);\r\n };\r\n\r\n truncateOpenEnd = (element: ElementWithSettings, text: string): string => {\r\n const maxLenght = getSettingNumber(element, \"MaxOpenEndLength\", -1);\r\n if (maxLenght > 0 && text.length > maxLenght) {\r\n return text.substring(0, maxLenght);\r\n }\r\n return text;\r\n };\r\n\r\n parentCustomError = (parent: QuestionModel) => {\r\n const { language } = this.props;\r\n if (isEmpty(parent)) {\r\n return null;\r\n }\r\n if (parent.type === QuestionType.StarRatingGrid) {\r\n return translate(parent.columns[0], \"CustomErrorMessage\", language);\r\n }\r\n return translate(parent, \"CustomErrorMessage\", language);\r\n };\r\n\r\n validateHandler = (options?: ValidationOptionsModel) => {\r\n if (!this.shouldValidate()) {\r\n return new ValidationBuilder().build();\r\n }\r\n return this.validate(options);\r\n };\r\n\r\n isOpenEndRequired = (element: ElementWithSettings): boolean =>\r\n hasSetting(element, \"EnforceOpenEnd\") ? getSettingBoolean(element, \"EnforceOpenEnd\") : true;\r\n\r\n isAxisAnswerRequired = (axis: AxisModel) =>\r\n !hasSetting(axis, \"AnswerRequired\") || getSettingBoolean(axis, \"AnswerRequired\");\r\n\r\n isChoiceVisible = (choiceValue: string, props: P, variable = props.sequencedVariables?.[0]) =>\r\n this.hasChoiceWithValue(choiceValue, variable);\r\n\r\n isChoiceNoLongerVisible = (choiceValue: string, prevProps: P) =>\r\n this.isChoiceVisible(choiceValue, prevProps) &&\r\n !this.isChoiceVisible(choiceValue, this.props);\r\n\r\n isValidChoice = (value: string) => {\r\n const { question } = this.props;\r\n const variable = this.getQuestionVariable(question.variables);\r\n return this.hasChoiceWithValue(value, variable);\r\n };\r\n\r\n hasChoiceWithValue = (value: string, variable: VariableModel) =>\r\n variable.choiceList.some((choice) => choice.value === value);\r\n\r\n removeUnavailableMentions = (variable: VariableModel) => {\r\n const mentions = this.getMentions(this.props, variable.name);\r\n mentions.forEach((mention) => {\r\n const shouldRemoveMention = !this.shouldDisplayMentionValue(variable, mention.value);\r\n if (shouldRemoveMention) {\r\n this.setMentions(this.props, variable.name, (m) => m.removeValue(mention.value));\r\n }\r\n });\r\n };\r\n\r\n getQuestionVariable = (variables: VariableModel[]) =>\r\n variables.find((v) => v.type !== VariableType.Computed);\r\n\r\n shouldDisplayMentionValue = (variable: VariableModel, value: string) => {\r\n const { choiceList = [] } = variable;\r\n const { question, sequencedVariables } = this.props;\r\n if (choiceList.length > 0) {\r\n const defaultChoices = choiceList.filter(\r\n (choice) =>\r\n getSettingBoolean(choice, \"Default\") && shouldSetDefaultChoice(question),\r\n );\r\n const softPromptCode = shouldSetSoftPromptCode(question)\r\n ? getSoftPromptCode(question)\r\n : null;\r\n const isChoiceDefault = defaultChoices.some((choice) => choice.value === value);\r\n const sequencedVariable = sequencedVariables.find((v) => v.name === variable.name);\r\n const isChoiceVisible = this.isChoiceVisible(value, this.props, sequencedVariable);\r\n const isChoiceSoftPrompt = value === softPromptCode;\r\n return isChoiceVisible || (!isChoiceDefault && !isChoiceSoftPrompt);\r\n }\r\n return (\r\n this.isVariableComputed(question, variable) ||\r\n sequencedVariables?.find((v) => v.name === variable.name)\r\n );\r\n };\r\n\r\n isVariableComputed = (question: QuestionModel, variable: VariableModel) =>\r\n question.variables?.find(\r\n (v) => v.name === variable.name && v.type === VariableType.Computed,\r\n );\r\n\r\n setChoicesAsMentions = (element: ElementWithSettings, choices: ChoiceModel[]) => {\r\n const values = choices.slice(0, this.maxValue() || choices.length).map((choice) => ({\r\n value: choice.value,\r\n }));\r\n if (values.length) {\r\n this.setMentions(\r\n this.props,\r\n element.name,\r\n (mentions) => mentions.clear().add(values),\r\n undefined,\r\n true,\r\n );\r\n }\r\n };\r\n\r\n isAnswerRequired(questionnaire: QuestionnaireModel, question: QuestionModel): boolean {\r\n if (question.type === QuestionType.Description) {\r\n return false;\r\n }\r\n if (!isInputRequired(questionnaire)) {\r\n return false;\r\n }\r\n const answerRequired =\r\n !hasSetting(question, \"AnswerRequired\") ||\r\n getSettingBoolean(question, \"AnswerRequired\");\r\n const control = !answerRequired ? question : question.parent || question;\r\n return (\r\n !hasSetting(control, \"AnswerRequired\") ||\r\n getSettingBoolean(control, \"AnswerRequired\", \"Yes\", \"SoftPrompt\")\r\n );\r\n }\r\n\r\n /**\r\n * This is called when the question will disappear; either it is\r\n * hidden by a skip logic or the page has changed.\r\n * Use this to unsubscribe to events, dispose of resources\r\n * or save mentions in some cases.\r\n * @param question\r\n * @param props\r\n */\r\n finalizeQuestion(question: QuestionModel, props: P) {}\r\n\r\n minValue() {\r\n const { min } = this.props;\r\n const value = parseInt(min, 10);\r\n return !Number.isNaN(value) ? value : null;\r\n }\r\n\r\n maxValue() {\r\n const { max } = this.props;\r\n const value = parseInt(max, 10);\r\n return !Number.isNaN(value) ? value : null;\r\n }\r\n\r\n hasMentions(props: P, variableName?: string) {\r\n const mentions = this.getMentions(props, variableName || props.sequencedVariables[0].name);\r\n return mentions.some((mention) => this.mentionIsValid(mention, props.question));\r\n }\r\n\r\n hasOpenEnd(question: QuestionModel) {\r\n const { mentions } = this.props;\r\n const openEndChoices = question.variables[0].choiceList.filter(hasOpenEnd);\r\n const mentionValues = Object.values(mentions).reduce((acc, val) => acc.concat(val), []);\r\n return mentionValues.some((mention) =>\r\n openEndChoices.some((openEndChoice) => mention.value === openEndChoice.value),\r\n );\r\n }\r\n\r\n isAnswerComplete(props: P) {\r\n return this.hasMentions(props);\r\n }\r\n\r\n mentionIsValid(mention: MentionModel, question: QuestionModel) {\r\n return mention.value !== undefined && mention.value !== null && mention.value.length > 0;\r\n }\r\n\r\n shouldValidate(): boolean {\r\n const { isDisabled } = this.props;\r\n return !isDisabled;\r\n }\r\n\r\n /**\r\n * This is called after the question is first displayed. It will be called only\r\n * once. Use this instead of UNSAFE_componentWillMount.\r\n * @param question\r\n * @param props\r\n */\r\n questionFirstRender(question: QuestionModel, props: P) {}\r\n\r\n /**\r\n * This is called before the question is first displayed. It will be called only\r\n * once. Use this instead of UNSAFE_componentWillMount.\r\n * @param question\r\n * @param props\r\n */\r\n initializeQuestion(question: QuestionModel, props: P) {\r\n const { dispatch } = this.props;\r\n const [firstVariable] = question.variables;\r\n const defaultValue = getSettingString(props.question, \"DefaultValue\");\r\n const hasDefaultValue = defaultValue !== undefined && defaultValue.length > 0;\r\n if (hasDefaultValue && !this.hasMentions(props)) {\r\n dispatch(\r\n setVariableMentions(firstVariable.name, (mentions) => mentions.set(defaultValue)),\r\n );\r\n }\r\n question.variables.forEach(this.removeUnavailableMentions);\r\n }\r\n\r\n /**\r\n * This is called before mentions are updated.\r\n * @param question\r\n * @param nextProps\r\n */\r\n willUpdateMentions(question: QuestionModel, nextProps: P) {}\r\n\r\n /**\r\n * This is called after mentions are updated.\r\n * @param question\r\n * @param nextProps\r\n */\r\n didUpdateMentions(question: QuestionModel, prevProps: P) {\r\n const { mentions } = this.props;\r\n const event = Voxco.trigger(\"controlDidUpdateMentions\", {\r\n question,\r\n mentions,\r\n });\r\n\r\n if (!event.defaultPrevented) {\r\n if (this.autoAdvanceTimer) {\r\n window.clearInterval(this.autoAdvanceTimer);\r\n }\r\n\r\n const firstVariable = question.variableNames[0];\r\n const firstVariableMentionChanged =\r\n prevProps.mentions[firstVariable] !== mentions[firstVariable];\r\n\r\n const shouldSetAutoAdvanceTimer =\r\n (firstVariableMentionChanged ||\r\n this.anyMentionChangedForQuestion(question, prevProps)) &&\r\n this.shouldAutoAdvance() &&\r\n !this.hasOpenEnd(question) &&\r\n Voxco.validatePage({ silent: true }).isValid;\r\n\r\n if (shouldSetAutoAdvanceTimer) {\r\n this.autoAdvanceTimer = window.setTimeout(this.onAutoAdvanceTimer, 300);\r\n }\r\n }\r\n }\r\n\r\n anyMentionChangedForQuestion(question: QuestionModel, prevProps: P) {\r\n const { mentions } = this.props;\r\n switch (question.type) {\r\n case QuestionType.Carrousel:\r\n return prevProps.mentions !== mentions;\r\n default:\r\n return false;\r\n }\r\n }\r\n\r\n didUpdateVariables(sequencedVariables: VariableModel[], prevProps: P) {}\r\n\r\n failValidation(variables: VariableModel[], key: string, args?: { [name: string]: string }) {\r\n const validationBuilder = new ValidationBuilder();\r\n variables.forEach((variable) => validationBuilder.fail(variable.name, key, args));\r\n return validationBuilder.build();\r\n }\r\n\r\n validateSoftPrompt(props: P, variables?: VariableModel[]): ValidationResultModel {\r\n const { question, useClientValidation, dispatch } = props;\r\n if (!useClientValidation) {\r\n return new ValidationBuilder().build();\r\n }\r\n const variablesToValidate = props.sequencedVariables?.filter(\r\n (v) => v.type !== VariableType.Computed,\r\n );\r\n // eslint-disable-next-line import/no-deprecated\r\n return supportValidateSoftPrompt(\r\n question,\r\n variablesToValidate,\r\n dispatch,\r\n __getStore__().getState(),\r\n );\r\n }\r\n\r\n validateOpenEnd(\r\n openEnd: string,\r\n element: ElementWithSettings,\r\n variableName?: string,\r\n ): ValidationResultModel {\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n const isOpenEndQuestion = question.type === QuestionType.OpenEndAnswer;\r\n const value = isNullOrEmpty(openEnd) ? openEnd : openEnd.trim();\r\n\r\n const customError = getSettingString(question, \"CustomErrorMessage\");\r\n const minLength = isOpenEndQuestion\r\n ? getSettingNumber(element, \"MinAnswerLength\", 0)\r\n : getSettingNumber(element, \"MinOpenEndLength\", 0);\r\n\r\n if (!isOpenEndQuestion && this.isOpenEndRequired(element) && isNullOrEmpty(value)) {\r\n return new ValidationBuilder()\r\n .fail(variableName || variable.name, customError || \"IncompleteAnswer\", {\r\n openEnd: element.name,\r\n })\r\n .build();\r\n }\r\n\r\n if (!isNullOrEmpty(value) && value.length < minLength) {\r\n return new ValidationBuilder()\r\n .fail(variableName || variable.name, customError || \"InvalidCharactersMin\", {\r\n min: String(minLength),\r\n openEnd: element.name,\r\n })\r\n .build();\r\n }\r\n\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const { questionnaire, question, sequencedVariables } = this.props;\r\n const required = this.isAnswerRequired(questionnaire, question);\r\n const hasMentions = this.isAnswerComplete(this.props);\r\n if (!hasMentions && required) {\r\n const isSoftPrompt = this.isSoftPrompt(this.props);\r\n if (isSoftPrompt) {\r\n return this.validateSoftPrompt(this.props);\r\n }\r\n // Question is required but has no mentions.\r\n const customError =\r\n getSettingString(question, \"CustomErrorMessage\") ||\r\n this.parentCustomError(question.parent);\r\n return new ValidationBuilder()\r\n .fail(sequencedVariables[0].name, customError || \"IncompleteAnswer\")\r\n .build();\r\n }\r\n // Question is valid.\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n shouldAutoAdvance() {\r\n const { questionnaire, block, question, isSingleOnPage } = this.props;\r\n const pageQuestions = getAllCurrentPageQuestions(block, question.index);\r\n const variableDependencies = pageQuestions.flatMap((q) => q.variableDependencies);\r\n const variables = pageQuestions.flatMap((q) => q.variableNames);\r\n const pageHasDynamicLogic = variableDependencies.some((v) => variables.includes(v));\r\n\r\n if (pageHasDynamicLogic) {\r\n return false;\r\n }\r\n if (!isAutoAdvanceEnabled(questionnaire, block)) {\r\n return false;\r\n }\r\n if (this.preventAutoAdvance) {\r\n this.preventAutoAdvance = null;\r\n return false;\r\n }\r\n if (!isSingleOnPage) {\r\n return false;\r\n }\r\n return isAutoAdvanceCompatible(question, this.props);\r\n }\r\n\r\n /**\r\n * Override this to render the question element.\r\n * @param question\r\n */\r\n abstract renderQuestion(question: QuestionModel): JSX.Element | null;\r\n\r\n render() {\r\n const { question, validateSignal } = this.props;\r\n return (\r\n <>\r\n \r\n {this.renderQuestion(question)}\r\n \r\n );\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { foregroundColor, darken, alpha } from \"../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n container: {\r\n position: \"relative\",\r\n userSelect: \"none\",\r\n },\r\n group: {\r\n position: \"absolute\",\r\n textAlign: \"center\",\r\n fontWeight: \"bolder\",\r\n },\r\n bucket: {\r\n position: \"absolute\",\r\n background: ({ theme, color }) =>\r\n `${alpha(\r\n color || theme.ControlBackground,\r\n theme.ControlAlpha,\r\n )} 0% 0% no-repeat padding-box`,\r\n color: ({ theme, color }) => foregroundColor(theme, color || theme.ControlBackground),\r\n border: ({ theme, color }) => [\r\n [\r\n theme.BorderWidth,\r\n \"solid\",\r\n darken(color || theme.ControlBackground, theme.BorderValue),\r\n ],\r\n ],\r\n borderRadius: ({ theme }) => Math.min(theme.BorderRadius, 50),\r\n textAlign: \"center\",\r\n fontWeight: \"bolder\",\r\n },\r\n card: {\r\n backgroundColor: ({ theme, color }) => color || theme.SecondaryColor,\r\n border: ({ theme, color }) => [\r\n [\r\n Math.max(theme.BorderWidth, 1),\r\n \"solid\",\r\n darken(color || theme.SecondaryColor, theme.BorderValue),\r\n ],\r\n ],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n color: ({ theme, color }) => foregroundColor(theme, color || theme.SecondaryColor),\r\n position: \"absolute\",\r\n textAlign: \"center\",\r\n fontWeight: \"bolder\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n cursor: \"grab\",\r\n\r\n \"&:active\": {\r\n cursor: \"grabbing\",\r\n },\r\n },\r\n});\r\n","import * as React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport { useSpring, interpolate, animated } from \"react-spring\";\r\nimport { useDrag } from \"react-use-gesture\";\r\nimport { uniq, clamp } from \"../../utils/lodash\";\r\nimport useStyles from \"./CardSortControl.styles\";\r\nimport { useLanguage } from \"../../hooks/useLanguage\";\r\nimport { ControlProps } from \"./BaseControl\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { useElementDimensions } from \"../../hooks/useElementDimensions\";\r\nimport useRecall from \"../../hooks/useRecall\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport { usePickMentions, useSetVariableMentions } from \"../../hooks/useMentions\";\r\nimport { usePrevious } from \"../../hooks/usePrevious\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { useValidation, useDiscreteVariadicValidator } from \"../../hooks/useValidation\";\r\nimport { getSettingString } from \"../../models/utilities/settingUtilities\";\r\nimport { getChoice } from \"../../models/utilities/variableUtilities\";\r\n\r\nconst CARD_SIZE_RATIO = 3 / 5;\r\nconst PADDING_RATIO = 2 / 100;\r\nconst MARGIN_RATIO = 2 / 100;\r\nconst MAX_CARD_SIZE = 200;\r\nconst MIN_FONT_SIZE = 12;\r\nconst MAX_FONT_SIZE = 19;\r\nconst FONT_SIZE_RATIO = 2 / 100;\r\nconst BOUNDS_MARGIN = 90;\r\nconst CARD_MAX_SPACING_RATIO = 3 / 100;\r\n\r\nconst makeCardSpring = ({\r\n gestureState: {\r\n down,\r\n movement: [x, y],\r\n },\r\n left,\r\n top,\r\n immediate,\r\n}: any) => ({\r\n x: down ? x : left,\r\n y: down ? y : top,\r\n z: down ? 10 : 0,\r\n immediate: (name) => (immediate || down) && [\"x\", \"y\"].includes(name),\r\n config: { mass: 1, tension: 170, friction: 25 },\r\n});\r\n\r\ninterface CardProps {\r\n text: string;\r\n color: string;\r\n imageUrl: string;\r\n width: number;\r\n height: number;\r\n padding: number;\r\n left: number;\r\n top: number;\r\n onDrop(xy: number[]);\r\n bounds: { top: number; bottom: number; left: number; right: number };\r\n id: string;\r\n areaCode: any;\r\n}\r\n\r\nfunction CardSortCard({\r\n left,\r\n top,\r\n text,\r\n color,\r\n imageUrl,\r\n width,\r\n height,\r\n padding,\r\n bounds,\r\n onDrop,\r\n id,\r\n areaCode,\r\n}: CardProps) {\r\n const recalledImage = useRecall(imageUrl);\r\n const recalledText = useRecall(text);\r\n const prevBounds = usePrevious(bounds);\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, color });\r\n const drag = React.useRef({ down: false, movement: [0, 0] });\r\n\r\n const [spring, set] = useSpring(() =>\r\n makeCardSpring({ gestureState: drag.current, left, top }),\r\n );\r\n\r\n const boundsChanged = prevBounds !== bounds;\r\n React.useLayoutEffect(() => {\r\n set(makeCardSpring({ gestureState: drag.current, left, top, immediate: boundsChanged }));\r\n }, [left, top, set, boundsChanged]);\r\n\r\n const bind = useDrag(\r\n (state) => {\r\n drag.current = state;\r\n set(makeCardSpring({ gestureState: state, left, top }));\r\n const { movement, down, tap } = state;\r\n if (tap) return;\r\n if (!down && onDrop) onDrop(movement);\r\n },\r\n {\r\n initial: () => [spring.x.getValue(), spring.y.getValue()],\r\n capture: true,\r\n filterTaps: true,\r\n bounds: {\r\n ...bounds,\r\n right: bounds.right - width,\r\n bottom: bounds.bottom - height,\r\n },\r\n },\r\n );\r\n\r\n return (\r\n `translate(${x}px, ${y}px) scale(${z * 0.01 + 1})`,\r\n ),\r\n boxShadow: spring.z.interpolate((z) => `0 ${z * 0.3}px ${z + 3}px rgba(0,0,0,0.2)`),\r\n zIndex: spring.z.interpolate((z) => Math.max(1, 1 + Math.round(z))),\r\n backgroundImage: recalledImage && `url('${recalledImage}')`,\r\n touchAction: \"none\",\r\n }}\r\n {...bind()}\r\n className={classes.card}\r\n id={id}\r\n data-areacode={areaCode}\r\n >\r\n \r\n \r\n );\r\n}\r\n\r\ninterface BucketProps {\r\n text: string;\r\n color: string;\r\n width: number;\r\n height: number;\r\n lineHeight: number;\r\n left: number;\r\n top: number;\r\n id: string;\r\n}\r\n\r\nfunction CardSortBucket({ text, color, width, height, lineHeight, left, top, id }: BucketProps) {\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, color });\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\ninterface GroupProps {\r\n text: string;\r\n width: number;\r\n height: number;\r\n lineHeight: number;\r\n left: number;\r\n top: number;\r\n}\r\n\r\nfunction CardSortGroup({ text, width, height, lineHeight, left, top }: GroupProps) {\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport function CardSortControl(props: ControlProps) {\r\n const { question, sequencedVariables, validateSignal } = props;\r\n const [language] = useLanguage();\r\n const [insertionOrder, setInsertionOrder] = React.useState([]);\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n const containerRef = React.useRef();\r\n const { innerWidth } = useElementDimensions(containerRef);\r\n const choices = sequencedVariables[0].choiceList;\r\n const bucketPadding = innerWidth * PADDING_RATIO;\r\n const bucketMargin = innerWidth * MARGIN_RATIO;\r\n const cardSpacing = innerWidth * CARD_MAX_SPACING_RATIO;\r\n const fontSize = clamp(innerWidth * FONT_SIZE_RATIO, MIN_FONT_SIZE, MAX_FONT_SIZE);\r\n const lineHeight = fontSize * 3;\r\n const bucketWidth = innerWidth / 2 - bucketMargin / 2;\r\n const cardSize = clamp((bucketWidth - bucketPadding * 2) * CARD_SIZE_RATIO, 0, MAX_CARD_SIZE);\r\n const cardPadding = cardSize * PADDING_RATIO;\r\n const setMentions = useSetVariableMentions();\r\n const cardVariableMentions = usePickMentions(question.variableNames);\r\n const getCardGroup = React.useCallback(\r\n (card: VariableModel) => translate(card, \"group\", language),\r\n [language],\r\n );\r\n const mentionValueForCard = React.useCallback(\r\n (card: VariableModel) => {\r\n const mentions = cardVariableMentions[card.name] || [];\r\n return mentions[0] && mentions[0].value;\r\n },\r\n [cardVariableMentions],\r\n );\r\n const unselectedCards = React.useMemo(\r\n () => sequencedVariables.filter((c) => mentionValueForCard(c) === undefined),\r\n [sequencedVariables, mentionValueForCard],\r\n );\r\n const groups = React.useMemo(() => uniq(sequencedVariables.map(getCardGroup)), [\r\n sequencedVariables,\r\n getCardGroup,\r\n ]);\r\n const bucketHeight = lineHeight + cardSize + bucketPadding;\r\n const bucketsHeight = Math.ceil(choices.length / 2) * (bucketHeight + bucketMargin);\r\n const groupsHeight = Math.max(Math.ceil(groups.length / 2), 1) * (bucketHeight + bucketMargin);\r\n const containerHeight = bucketsHeight + groupsHeight;\r\n\r\n const bounds = React.useMemo(\r\n () => ({\r\n top: -BOUNDS_MARGIN,\r\n bottom: containerHeight + BOUNDS_MARGIN,\r\n left: -BOUNDS_MARGIN,\r\n right: innerWidth + BOUNDS_MARGIN,\r\n }),\r\n [innerWidth, containerHeight],\r\n );\r\n\r\n useValidation(validateSignal, useDiscreteVariadicValidator(question, sequencedVariables));\r\n\r\n const insertionOrderSort = (a, b) =>\r\n insertionOrder.indexOf(a.id) - insertionOrder.indexOf(b.id);\r\n\r\n const unselectedCardGroup = (group: string) =>\r\n unselectedCards.filter((v) => getCardGroup(v) === group).sort(insertionOrderSort);\r\n\r\n const cardsForChoice = (choice: ChoiceModel) =>\r\n sequencedVariables\r\n .filter((v) => mentionValueForCard(v) === choice.value)\r\n .sort(insertionOrderSort);\r\n\r\n const cardTop = (card: VariableModel) => {\r\n const value = mentionValueForCard(card);\r\n const group = getCardGroup(card);\r\n const i = choices.findIndex((c) => c.value === value);\r\n if (i === -1) {\r\n const groupIndex = groups.indexOf(group);\r\n return (\r\n bucketsHeight +\r\n Math.floor(groupIndex / 2) * (bucketHeight + bucketMargin) +\r\n lineHeight\r\n );\r\n }\r\n return Math.floor(i / 2) * (bucketHeight + bucketMargin) + lineHeight;\r\n };\r\n\r\n const cardLeft = (card: VariableModel) => {\r\n const value = mentionValueForCard(card);\r\n const choice = choices.find((c) => c.value === value);\r\n const group = getCardGroup(card);\r\n const cards = choice ? cardsForChoice(choice) : unselectedCardGroup(group);\r\n const spacing = clamp(\r\n (bucketWidth - bucketPadding - cardSize) / cards.length,\r\n 0,\r\n cardSpacing,\r\n );\r\n const choiceIndex = choice ? choices.indexOf(choice) : groups.indexOf(group);\r\n const cardIndex = cards.indexOf(card);\r\n const offset = cardIndex * spacing;\r\n return (choiceIndex % 2) * (innerWidth / 2 + bucketMargin / 2) + offset + bucketPadding;\r\n };\r\n\r\n const onChoiceDrop = (card: VariableModel) => ([x, y]: number[]) => {\r\n const cx = x + cardSize / 2;\r\n const cy = y + cardSize / 2;\r\n const r = Math.floor(cy / bucketHeight);\r\n const c = cx < innerWidth / 2 ? 0 : 1;\r\n const i = c + r * 2;\r\n const dropBucket = i >= 0 && i < choices.length ? i : undefined;\r\n\r\n if (dropBucket !== undefined) {\r\n const dropChoice = choices[dropBucket];\r\n setMentions(card.name, (b) => b.set(dropChoice.value));\r\n } else {\r\n setMentions(card.name, (b) => b.clear());\r\n }\r\n setInsertionOrder([...insertionOrder.filter((id) => id !== card.id), card.id]);\r\n };\r\n\r\n // To Do : remove duplicated code from BaseControl.tsx\r\n const getMentions = (props: ControlProps, variableName?: string) => {\r\n const [variable] = props.question.variables;\r\n const mentions = props.mentions[(variableName || variable.name).toUpperCase()] || [];\r\n return mentions.filter((mention) => mention.matrix === props.matrix);\r\n };\r\n\r\n // To Do : remove duplicated code from BaseControl.tsx\r\n const getMention = (props: ControlProps, variableName?: string, mentionIndex?: number) =>\r\n getMentions(props, variableName).find((m) => m.index === (mentionIndex || 1));\r\n\r\n // To Do : remove duplicated code from BaseControl.tsx\r\n const getMentionValue = (props: ControlProps, variableName?: string, mentionIndex?: number) =>\r\n (getMention(props, variableName, mentionIndex) || { value: \"\" }).value;\r\n\r\n const getCurrentChoice = (props: ControlProps, variableName: VariableModel) => {\r\n const value = getMentionValue(props, variableName.name);\r\n return getChoice(variableName, value);\r\n };\r\n\r\n return (\r\n \r\n {sequencedVariables[0].choiceList.map((c, i) => (\r\n \r\n ))}\r\n {groups.map((g, i) => (\r\n \r\n ))}\r\n {sequencedVariables.sort(insertionOrderSort).map((v) => {\r\n const choice = getCurrentChoice(props, v);\r\n\r\n return (\r\n \r\n );\r\n })}\r\n \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { alpha } from \"../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n container: {\r\n position: \"relative\",\r\n width: ({ isMobileView }) => (isMobileView ? \"100%\" : \"auto\"),\r\n },\r\n statementsContainer: {\r\n width: ({ isMobileView }) => (isMobileView ? \"100%\" : \"auto\"),\r\n display: \"flex\",\r\n overflowX: \"hidden\",\r\n scrollBehavior: \"smooth\",\r\n margin: \"0 auto\",\r\n justifyContent: \"center\",\r\n },\r\n statement: {\r\n width: ({ isMobileView }) => (!isMobileView ? \"460px\" : \"100%\"),\r\n height: ({ isMobileView, contentResponsivenessOption }) => {\r\n let calHeight = \"460px\";\r\n if (isMobileView && contentResponsivenessOption !== \"resize-carousel\") {\r\n calHeight = \"293px\";\r\n } else if (contentResponsivenessOption === \"resize-carousel\") {\r\n calHeight = \"auto\";\r\n }\r\n return calHeight;\r\n },\r\n backgroundColor: ({ color }) => color,\r\n color: \"#555555\",\r\n textAlign: \"center\",\r\n minWidth: ({ isMobileView }) => (isMobileView ? \"100%\" : \"\"),\r\n overflow: \"hidden\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n justifyContent: ({ justifyContent }) => justifyContent,\r\n background: ({ theme, color }) =>\r\n `${\r\n theme.ShowStatementBackgroundSettings\r\n ? alpha(color ?? theme.ControlBackground, theme.StatementBackgroundAlpha)\r\n : alpha(theme.ControlBackground, 0)\r\n }`,\r\n borderRadius: ({ theme, isMobileView }) =>\r\n `${\r\n theme.ShowStatementBackgroundSettings\r\n ? Math.min(\r\n theme.CustomBorderValue\r\n ? theme.StatementBorderRadius\r\n : theme.ChoiceListBackgroundBorderRadius,\r\n (isMobileView ? 293 : 460) / 2,\r\n )\r\n : \"\"\r\n }px`,\r\n\r\n \"& .statementTextContent\": {\r\n padding: \"20px\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n lineHeight: \"1.2\",\r\n },\r\n\r\n \"& .statementTextContent:empty\": {\r\n display: \"none\",\r\n },\r\n\r\n \"& .image-wrapper\": {\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n width: ({ isMobileView }) => (isMobileView ? \"100%\" : \"auto\"),\r\n height: ({ contentResponsivenessOption }) =>\r\n contentResponsivenessOption === \"resize-carousel\" ? \"auto\" : \"100%\",\r\n flex: 1,\r\n\r\n \"& .image-element\": {\r\n borderRadius: ({ theme }) => {\r\n if (!theme.ShowStatementBackgroundSettings || !theme.CustomBorderValue) {\r\n if (theme.ChoiceListBackgroundBorderRadius === 100) return \"20px\";\r\n if (theme.ChoiceListBackgroundBorderRadius === 15) return \"8px\";\r\n }\r\n\r\n if (\r\n theme.ShowStatementBackgroundSettings &&\r\n theme.StatementBackgroundAlpha === 0\r\n ) {\r\n return `${theme.StatementBorderRadius}px`;\r\n }\r\n return \"\";\r\n },\r\n },\r\n },\r\n\r\n \"& .crop-image\": {\r\n width: ({ isMobileView }) => (isMobileView ? \"100%\" : \"460px\"),\r\n height: ({ isMobileView }) => (isMobileView ? \"235px\" : \"368px\"),\r\n objectFit: \"cover\",\r\n objectPosition: \"center center\",\r\n },\r\n \"& .fade-in-element\": { animation: \"mbsc-anim-f-in 2s\" },\r\n },\r\n navigationButtonsPanel: {\r\n textAlign: \"center\",\r\n display: \"flex\",\r\n justifyContent: ({ justifyContent }) => justifyContent,\r\n marginTop: \"25px\",\r\n\r\n \"& .fixedWidth\": {\r\n flex: \"0 0 20px\",\r\n minWidth: \"20px\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n },\r\n },\r\n navigationButton: {\r\n height: \"100%\",\r\n cursor: \"pointer\",\r\n },\r\n});\r\n","import * as React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport { useDispatch, useSelector } from \"react-redux\";\r\nimport ClampLines from \"react-clamp-lines\";\r\nimport { StoreState } from \"../../models/states/StoreState\";\r\nimport {\r\n setCarrouselActiveVariableIndex,\r\n validationClear,\r\n validationSetResult,\r\n} from \"../../redux/actions\";\r\nimport useStyles from \"./CarrouselControl.styles\";\r\nimport { useLanguage } from \"../../hooks/useLanguage\";\r\nimport { ControlProps } from \"./BaseControl\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport {\r\n useValidation,\r\n useDiscreteVariadicValidator,\r\n isAnswerRequired,\r\n} from \"../../hooks/useValidation\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingNumber,\r\n getSettingString,\r\n hasSetting,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { ControlContainer } from \"../../containers/controls/ControlContainer\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { ChoiceListControl } from \"./ChoiceListControl\";\r\nimport { FontAwesomeIcon } from \"../shared/FontAwesome\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\n\r\ninterface StatementProps {\r\n id: string;\r\n key: string;\r\n text: string;\r\n color: string;\r\n imageUrl: string;\r\n isMobileView: boolean;\r\n}\r\n\r\nconst MOBILE_DIMENSIONS = 293;\r\nconst DESKTOP_DIMENSIONS = 460;\r\nconst RESIZE_CAROUSEL_DEFAULT_TEXT_LINES = 15;\r\n\r\nconst Statement = (props: StatementProps) => {\r\n const { id, color, text, imageUrl, isMobileView } = props;\r\n const theme: any = useTheme();\r\n const { ContentResponsivenessOption: contentResponsivenessOption } = theme;\r\n const justifyContent = imageUrl ? \"space-between\" : \"center\";\r\n const classes = useStyles({\r\n theme,\r\n color,\r\n justifyContent,\r\n isMobileView,\r\n contentResponsivenessOption,\r\n });\r\n const containerRef = React.useRef(null);\r\n const imageRef = React.useRef(null);\r\n const textContainerRef = React.useRef(null);\r\n const [linesToShow, setLinesToShow] = React.useState(RESIZE_CAROUSEL_DEFAULT_TEXT_LINES);\r\n const [forceUpdateKey, setForceUpdateKey] = React.useState(0);\r\n\r\n React.useEffect(() => {\r\n const container = containerRef.current;\r\n const textContainer = textContainerRef.current;\r\n const image = imageRef.current;\r\n if (image) {\r\n image.addEventListener(\"load\", responsiveRender);\r\n } else {\r\n resizeFont();\r\n }\r\n\r\n return () => {\r\n image && image.removeEventListener(\"load\", responsiveRender);\r\n };\r\n\r\n function responsiveRender() {\r\n if (contentResponsivenessOption === \"resize-carousel\") {\r\n resizeCarousel(image, container);\r\n }\r\n resizeFont();\r\n calculateLinesToShow(textContainer, image);\r\n }\r\n\r\n function resizeFont() {\r\n const fontSize = getFontSize(container);\r\n container.style.fontSize = `${fontSize}px`;\r\n }\r\n }, [imageUrl, isMobileView, contentResponsivenessOption]);\r\n\r\n const calculateLinesToShow = (textContainer, image) => {\r\n if (contentResponsivenessOption === \"resize-carousel\") {\r\n setForceUpdateKey((prevKey) => prevKey + 1);\r\n return;\r\n }\r\n\r\n textContainer.style.height = `${\r\n (isMobileView ? MOBILE_DIMENSIONS : DESKTOP_DIMENSIONS) - image.height\r\n }px`;\r\n\r\n const lineHeight = parseFloat(getComputedStyle(textContainer).lineHeight);\r\n const containerHeight =\r\n textContainer.clientHeight -\r\n parseFloat(getComputedStyle(textContainer).paddingTop) -\r\n parseFloat(getComputedStyle(textContainer).paddingBottom) -\r\n lineHeight;\r\n\r\n const calculatedLines = Math.floor(containerHeight / lineHeight);\r\n setLinesToShow(calculatedLines <= 0 ? 1 : calculatedLines);\r\n setForceUpdateKey((prevKey) => prevKey + 1);\r\n containerRef.current.style.height = `${\r\n isMobileView ? MOBILE_DIMENSIONS : DESKTOP_DIMENSIONS\r\n }px`;\r\n };\r\n\r\n const resizeCarousel = (image, container) => {\r\n if (!image) return;\r\n const STATEMENT_RESIZE_WIDTH = 460;\r\n setLinesToShow(RESIZE_CAROUSEL_DEFAULT_TEXT_LINES);\r\n const originalWidth = image.naturalWidth;\r\n const originalHeight = image.naturalHeight;\r\n const newHeight = (originalHeight / originalWidth) * STATEMENT_RESIZE_WIDTH;\r\n\r\n image.style.width = `${STATEMENT_RESIZE_WIDTH}px`;\r\n image.style.height = `${newHeight}px`;\r\n container.style.width = !isMobileView ? `${STATEMENT_RESIZE_WIDTH}px` : \"\";\r\n };\r\n\r\n const getFontSize = (container) => {\r\n const DEFAULT_FONT_SIZE = 16;\r\n const MINIMUM_FONT_SIZE = 12;\r\n const MAXIMUM_FONT_SIZE = 30;\r\n const containerWidth = container.offsetWidth;\r\n const canvas = document.createElement(\"canvas\");\r\n const context = canvas.getContext(\"2d\");\r\n\r\n context.font = `${DEFAULT_FONT_SIZE}px`;\r\n const textWidth = context.measureText(text).width;\r\n\r\n let fontSize = Math.floor((containerWidth / textWidth) * DEFAULT_FONT_SIZE);\r\n fontSize = Math.max(fontSize, MINIMUM_FONT_SIZE);\r\n fontSize = Math.min(fontSize, MAXIMUM_FONT_SIZE);\r\n\r\n if (textWidth < containerWidth && fontSize < DEFAULT_FONT_SIZE) {\r\n fontSize = DEFAULT_FONT_SIZE;\r\n }\r\n if (\r\n contentResponsivenessOption === \"resize-carousel\" ||\r\n contentResponsivenessOption === \"crop-content\"\r\n ) {\r\n fontSize = DEFAULT_FONT_SIZE;\r\n }\r\n return fontSize;\r\n };\r\n\r\n return (\r\n
    \r\n {imageUrl && (\r\n \r\n \r\n \r\n )}\r\n {text.trim() && (\r\n
    \r\n \r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nconst WrapperWithNavigationButtons = ({\r\n children,\r\n classes,\r\n isPrevBtnActive,\r\n isNextBtnActive,\r\n handleNavigationButtonClick,\r\n isMobileView,\r\n}) => {\r\n return (\r\n
    \r\n {isMobileView && (\r\n
    \r\n {isPrevBtnActive && (\r\n handleNavigationButtonClick(\"prev\")}\r\n />\r\n )}\r\n
    \r\n )}\r\n {children}\r\n {isMobileView && (\r\n
    \r\n {isNextBtnActive && (\r\n {\r\n handleNavigationButtonClick(\"next\");\r\n }}\r\n />\r\n )}\r\n
    \r\n )}\r\n
    \r\n );\r\n};\r\n\r\nexport function CarrouselControl(props: ControlProps) {\r\n const { question, sequencedVariables, validateSignal, mentions, questionnaire } = props;\r\n const questionHasAtleastOneVariable = sequencedVariables && sequencedVariables.length > 0;\r\n\r\n // This condition only occurs if all the statements is eliminated then only question description is displayed\r\n if (!questionHasAtleastOneVariable) {\r\n return \"\";\r\n }\r\n\r\n const instanceId = `${question.id}_statement`;\r\n\r\n let hideVariableBackArrow = false;\r\n let canLoopVariable = false;\r\n let advanceAutomatically = false;\r\n let choiceListAnswerType = QuestionType[QuestionType.CheckBox];\r\n let activeStatementMentionsCount = 0;\r\n const questionName = question.name;\r\n const dispatch = useDispatch();\r\n\r\n if (hasSetting(question, \"HideVariableBackArrow\")) {\r\n hideVariableBackArrow = getSettingBoolean(question, \"HideVariableBackArrow\");\r\n }\r\n\r\n if (hasSetting(question, \"LoopVariable\")) {\r\n canLoopVariable = getSettingBoolean(question, \"LoopVariable\");\r\n }\r\n\r\n if (hasSetting(question, \"AutoAdvanceVariable\")) {\r\n advanceAutomatically = getSettingBoolean(question, \"AutoAdvanceVariable\");\r\n }\r\n\r\n if (hasSetting(question, \"CarrouselChoiceListAnswerType\")) {\r\n choiceListAnswerType = getSettingString(question, \"CarrouselChoiceListAnswerType\");\r\n }\r\n\r\n const backButtonAlwaysVisible = canLoopVariable && !hideVariableBackArrow;\r\n const [language] = useLanguage();\r\n const theme = useTheme();\r\n const counter = React.useRef(1);\r\n const containerRef = React.useRef();\r\n const [deviceWidth] = React.useState(window.innerWidth);\r\n const mobilePreview = useSelector((state: StoreState) => state.mobilePreview);\r\n const isMobileView = deviceWidth <= 768 || mobilePreview;\r\n const justifyContent = isMobileView ? \"space-between\" : \"center\";\r\n const classes = useStyles({ theme, isMobileView, justifyContent });\r\n const [statementValidation, setStatementValidationCheck] = React.useState({\r\n action: \"NONE\",\r\n direction: \"NONE\",\r\n });\r\n const isPrevBtnActive = useSelector(\r\n (state: StoreState) => state.interview.carrousel[instanceId]?.isPrevBtnActive || false,\r\n );\r\n const isNextBtnActive = useSelector(\r\n (state: StoreState) => state.interview.carrousel[instanceId]?.isNextBtnActive || false,\r\n );\r\n const carrouselActiveVariableIndex = useSelector(\r\n (state: StoreState) => state.interview.carrousel[instanceId]?.activeVariableIndex || 0,\r\n );\r\n\r\n let activeVariable = sequencedVariables[carrouselActiveVariableIndex];\r\n\r\n // This condition occurs if due to statement elimination some variable got removed and greater active index is previously stored\r\n if (!activeVariable) {\r\n if (questionHasAtleastOneVariable && carrouselActiveVariableIndex !== 0) {\r\n // dispatch will be triggered with some delay then exception so setting active variable here\r\n activeVariable = sequencedVariables[0];\r\n dispatch(\r\n setCarrouselActiveVariableIndex(\r\n instanceId,\r\n 0,\r\n backButtonAlwaysVisible,\r\n canLoopVariable || counter.current !== sequencedVariables.length,\r\n ),\r\n );\r\n } else {\r\n return \"\";\r\n }\r\n }\r\n\r\n const variableHasChoices =\r\n activeVariable && activeVariable.choiceList && activeVariable.choiceList.length > 0;\r\n const variableName = activeVariable.name;\r\n\r\n const isRequired = isAnswerRequired(question, questionnaire);\r\n const defaultMinRequiredAnswerValue = 1;\r\n\r\n const getMinRequiredAnswers = React.useCallback(() => {\r\n const number = getSettingNumber(question, \"MinRequiredAnswers\");\r\n if (number !== undefined && !Number.isNaN(number)) {\r\n return number === 0 ? defaultMinRequiredAnswerValue : number;\r\n }\r\n return null;\r\n }, [question, defaultMinRequiredAnswerValue]);\r\n\r\n const minRequiredAnswers = getMinRequiredAnswers();\r\n\r\n if (\r\n mentions &&\r\n Object.keys(mentions).length > 0 &&\r\n mentions[variableName] &&\r\n mentions[variableName].length > 0\r\n ) {\r\n activeStatementMentionsCount = mentions[variableName].length;\r\n }\r\n const activeStatementHasRequiredMentions =\r\n activeStatementMentionsCount >= (minRequiredAnswers ?? defaultMinRequiredAnswerValue);\r\n\r\n React.useEffect(() => {\r\n if (statementValidation.action === \"VALIDATEMENTIONS\") {\r\n if (activeStatementHasRequiredMentions) {\r\n scrollHandler(statementValidation.direction, sequencedVariables);\r\n setStatementValidationCheck({\r\n action: \"MENTIONSVALIDATEDSUCCESSFULLY\",\r\n direction: \"NONE\",\r\n });\r\n dispatch(validationClear(true, false, [questionName]));\r\n } else {\r\n setStatementValidationCheck({\r\n action: \"SHOWMENTIONERROR\",\r\n direction: \"NONE\",\r\n });\r\n\r\n const errorKey =\r\n activeStatementMentionsCount === 0 ? \"IncompleteAnswer\" : \"InvalidChoicesMin\";\r\n\r\n const minChoices = minRequiredAnswers ?? defaultMinRequiredAnswerValue;\r\n\r\n const questionValidationError = {\r\n [questionName]: [\r\n { key: errorKey, softPrompt: false, args: { min: minChoices } },\r\n ],\r\n };\r\n\r\n dispatch(\r\n validationSetResult({\r\n errorsByVariableName: questionValidationError,\r\n isValid: false,\r\n }),\r\n );\r\n }\r\n }\r\n }); // Runs every time cause mention might get changed\r\n\r\n React.useEffect(() => {\r\n const index = counter.current - 1;\r\n const canLoop = canLoopVariable || counter.current !== sequencedVariables.length;\r\n\r\n dispatch(\r\n setCarrouselActiveVariableIndex(instanceId, index, backButtonAlwaysVisible, canLoop),\r\n );\r\n }, []); // Runs once on component mount\r\n\r\n const scrollHandler = (direction, vars) => {\r\n const isPrev = direction === \"prev\";\r\n\r\n // eslint-disable-next-line no-nested-ternary\r\n counter.current = isPrev\r\n ? canLoopVariable && counter.current === 1\r\n ? vars.length\r\n : counter.current - 1\r\n : canLoopVariable && counter.current === vars.length\r\n ? 1\r\n : counter.current + 1;\r\n\r\n const newPrevBtnActive = isPrev\r\n ? backButtonAlwaysVisible || counter.current > 1\r\n : !hideVariableBackArrow;\r\n\r\n const newNextBtnActive = canLoopVariable || counter.current !== sequencedVariables.length;\r\n dispatch(\r\n setCarrouselActiveVariableIndex(\r\n instanceId,\r\n counter.current - 1,\r\n newPrevBtnActive,\r\n newNextBtnActive,\r\n ),\r\n );\r\n dispatch(validationClear(true, false, [questionName]));\r\n };\r\n\r\n const handleNavigationButtonClick = React.useCallback(\r\n (direction, isAfterSelectionAction = false) => {\r\n // If no choices is there then no validation check on arrow click (Can be due to elimination process)\r\n if (variableHasChoices) {\r\n const notRequiredButMinChoiceIsDefinedValidation =\r\n !isRequired &&\r\n minRequiredAnswers &&\r\n activeStatementMentionsCount !== 0 &&\r\n !activeStatementHasRequiredMentions;\r\n\r\n // For automatically advance(radio only) and prev button click move to next statement\r\n if (isAfterSelectionAction || direction === \"prev\") {\r\n scrollHandler(direction, sequencedVariables);\r\n } else if (isRequired || notRequiredButMinChoiceIsDefinedValidation) {\r\n setStatementValidationCheck({\r\n action: \"VALIDATEMENTIONS\",\r\n direction,\r\n });\r\n } else {\r\n scrollHandler(direction, sequencedVariables);\r\n }\r\n } else {\r\n scrollHandler(direction, sequencedVariables);\r\n }\r\n },\r\n [\r\n isRequired,\r\n sequencedVariables,\r\n minRequiredAnswers,\r\n activeStatementMentionsCount,\r\n activeStatementHasRequiredMentions,\r\n variableHasChoices,\r\n ],\r\n );\r\n\r\n const onAfterCarouselChoiceSelection = React.useCallback(\r\n (isAfterSelectionAction) => {\r\n if (\r\n advanceAutomatically &&\r\n choiceListAnswerType === QuestionType[QuestionType.RadioButton]\r\n ) {\r\n if (sequencedVariables.length - 1 > carrouselActiveVariableIndex) {\r\n handleNavigationButtonClick(\"next\", isAfterSelectionAction);\r\n }\r\n }\r\n },\r\n [\r\n sequencedVariables,\r\n carrouselActiveVariableIndex,\r\n advanceAutomatically,\r\n choiceListAnswerType,\r\n handleNavigationButtonClick,\r\n ],\r\n );\r\n\r\n useValidation(validateSignal, useDiscreteVariadicValidator(question, sequencedVariables));\r\n\r\n const commonProps = {\r\n isNextBtnActive,\r\n isPrevBtnActive,\r\n handleNavigationButtonClick,\r\n classes,\r\n };\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n
    {`${carrouselActiveVariableIndex + 1}/${\r\n sequencedVariables.length\r\n }`}
    \r\n
    \r\n {\r\n onAfterCarouselChoiceSelection(true);\r\n }}\r\n isSingleOnPage={props.isSingleOnPage}\r\n onNavigation={props.onNavigation}\r\n {...getRendererProps(props)}\r\n />\r\n
    \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport useStyles from \"./ChoiceListRenderer.styles\";\r\nimport { RendererProps, getRendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { QuestionType } from \"../../../models/enums/QuestionType\";\r\nimport ChoiceListItemRenderer from \"./ChoiceListItemRenderer\";\r\nimport { MentionModel } from \"../../../models/MentionModel\";\r\nimport { CheckBox } from \"../../choices/CheckBox\";\r\nimport { Radio } from \"../../choices/Radio\";\r\nimport { ImageSelect } from \"../../choices/ImageSelect\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingNumber,\r\n getSettingString,\r\n} from \"../../../models/utilities/settingUtilities\";\r\nimport { VariableModel } from \"../../../models/VariableModel\";\r\nimport Button from \"../../shared/Button\";\r\nimport useQuestion from \"../../../hooks/useQuestion\";\r\nimport useTranslatable from \"../../../hooks/useTranslatable\";\r\nimport { QuestionModel } from \"../../../models/QuestionModel\";\r\nimport { getChoiceListDisplayType } from \"../../../models/utilities/questionUtilities\";\r\nimport { ChoiceListDisplayType } from \"../../../models/enums/ChoiceListDisplayType\";\r\nimport useDimensionContext from \"../../../hooks/useDimensionContext\";\r\nimport { isIE } from \"../../../utils\";\r\n\r\ninterface Props extends RendererProps {\r\n variable: VariableModel;\r\n openEndValue?: { [key: string]: string };\r\n onClick?(choice: ChoiceModel): void;\r\n onOpenEndChange?(choice: ChoiceModel, text: string): void;\r\n onOpenEndBlur?(choice: ChoiceModel): void;\r\n mentions: MentionModel[];\r\n choices: ChoiceModel[];\r\n gridRendering?: boolean;\r\n onReset(): void;\r\n language: string;\r\n maxAnswers?: number;\r\n isSelected?: boolean;\r\n isCarrouselCheckboxActive?: boolean;\r\n onAfterSelection?(): void;\r\n executeUpdateForIdAfterSelection?: string;\r\n}\r\n\r\nconst shouldDisplayResetButton = (question: QuestionModel) =>\r\n getSettingBoolean(question, \"DisplayResetButton\");\r\n\r\nfunction isSelected(props: Props, choice: ChoiceModel) {\r\n const { mentions } = props;\r\n return mentions.some((mention) => mention.value === choice.value);\r\n}\r\n\r\nfunction isChoiceDisabled(props: Props, selected: boolean, controlType: any) {\r\n const { question, maxAnswers, mentions } = props;\r\n if (controlType === Radio) {\r\n return false;\r\n }\r\n if (maxAnswers === -1) {\r\n return false;\r\n }\r\n if (question.type === QuestionType.ImageSelector && maxAnswers === 1) {\r\n return false;\r\n }\r\n return !selected && mentions.length >= maxAnswers;\r\n}\r\n\r\nfunction renderChoiceListItem(\r\n props: Props,\r\n choice: ChoiceModel,\r\n isFirst: boolean,\r\n isLast: boolean,\r\n key: any,\r\n controlType: any,\r\n) {\r\n const {\r\n question,\r\n gridRendering,\r\n openEndValue,\r\n onOpenEndChange,\r\n onOpenEndBlur,\r\n variable,\r\n onAfterSelection,\r\n executeUpdateForIdAfterSelection,\r\n } = props;\r\n const displayType = getChoiceListDisplayType(question);\r\n const isHorizontalDisplay =\r\n displayType === ChoiceListDisplayType.Horizontal ||\r\n displayType === ChoiceListDisplayType.HorizontalColumns;\r\n const selected = isSelected(props, choice);\r\n const isDisabled = isChoiceDisabled(props, selected, controlType);\r\n return (\r\n \r\n );\r\n}\r\n\r\nfunction renderChoice(\r\n props: Props,\r\n choice: ChoiceModel,\r\n isFirst: boolean,\r\n isLast: boolean,\r\n key: any,\r\n) {\r\n const { question, isCarrouselCheckboxActive } = props;\r\n switch (question.type) {\r\n case QuestionType.ImageSelector:\r\n return renderChoiceListItem(props, choice, isFirst, isLast, key, ImageSelect);\r\n case QuestionType.CheckBox:\r\n return renderChoiceListItem(props, choice, isFirst, isLast, key, CheckBox);\r\n case QuestionType.Carrousel:\r\n return renderChoiceListItem(\r\n props,\r\n choice,\r\n isFirst,\r\n isLast,\r\n key,\r\n isCarrouselCheckboxActive ? CheckBox : Radio,\r\n );\r\n default:\r\n return renderChoiceListItem(props, choice, isFirst, isLast, key, Radio);\r\n }\r\n}\r\n\r\nfunction renderChoices(props: Props) {\r\n const { choices } = props;\r\n return choices.map((choice, i) =>\r\n renderChoice(props, choice, i === 0, i === choices.length - 1, choice.name),\r\n );\r\n}\r\n\r\nfunction ResetButton(props: Props) {\r\n const { theme, onReset } = props;\r\n const question = useQuestion();\r\n const defaultClearButtonText = useTranslatable(theme, \"QuestionClearButton\") || \"Reset\";\r\n const clearButtonText = useTranslatable(question, \"ResetButtonText\") || defaultClearButtonText;\r\n\r\n return (\r\n onReset()}\r\n />\r\n );\r\n}\r\n\r\nexport default function ChoiceListRenderer(props: Props) {\r\n const question = useQuestion();\r\n const { choices, isCarrouselCheckboxActive } = props;\r\n\r\n const dimension = useDimensionContext();\r\n\r\n const theme = useTheme();\r\n const displayType = getChoiceListDisplayType(question);\r\n\r\n const numberOfColumns = getSettingNumber(question, \"NumberOfColumns\");\r\n const numberOfRows = numberOfColumns > 1 ? Math.ceil(choices?.length / numberOfColumns) : 1;\r\n const classes = useStyles({ theme, displayType, numberOfColumns, numberOfRows });\r\n\r\n if (choices === undefined || choices.length === 0) {\r\n return null;\r\n }\r\n\r\n const displayAsTable = question.type === QuestionType.ImageSelector;\r\n const displayOrder = getSettingString(question, \"DisplayOrder\");\r\n\r\n const isDisplayColumns = displayType === ChoiceListDisplayType.VerticalColumns;\r\n const isDisplayWide = dimension && dimension.minWidth(778);\r\n\r\n // Internet Explorer fallback layout: vertical columns choice list will be displayed as a simple vertical choice list\r\n const displayAsGrid = isDisplayColumns && isDisplayWide && !isIE();\r\n\r\n const role = question.type === QuestionType.RadioButton ? \"radiogroup\" : \"group\";\r\n\r\n return (\r\n \r\n {renderChoices(props)}\r\n {shouldDisplayResetButton(question) && }\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { QuestionType, isGrid } from \"../../models/enums/QuestionType\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport {\r\n getSettingNumber,\r\n getSettingBoolean,\r\n getSettingString,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { isNullOrEmpty } from \"../../utils\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { hasOpenEnd, isVisible } from \"../../models/utilities/choiceUtilities\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport ChoiceListRenderer from \"../renderers/v2/ChoiceListRenderer\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n openEndValue: { [key: string]: string };\r\n}\r\n\r\nexport class ChoiceListControl extends BaseControl {\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = { openEndValue: {} };\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props) {\r\n super.initializeQuestion(question, props);\r\n const variable = this.setCarrouselActiveVariable(question.id) || question.variables[0];\r\n const { choiceList = [] } = variable;\r\n\r\n if (!this.hasMentions(props)) {\r\n switch (question.type) {\r\n case QuestionType.RespondentTimeZone: {\r\n const choice = choiceList.find((answer) => answer.value === props.timeZone);\r\n if (choice) {\r\n this.setMentions(\r\n props,\r\n variable.name,\r\n (mentions) => mentions.set(choice.value),\r\n undefined,\r\n true,\r\n );\r\n }\r\n break;\r\n }\r\n default: {\r\n this.setDefaultChoices();\r\n break;\r\n }\r\n }\r\n }\r\n this.setState((s, p) => {\r\n const newState = { ...s };\r\n choiceList.forEach((choice) => {\r\n const mention = this.getMentions(p, variable.name).find(\r\n (m) => m.value === choice.value,\r\n );\r\n if (mention !== undefined && !isNullOrEmpty(mention.openEnd)) {\r\n newState.openEndValue = {\r\n ...newState.openEndValue,\r\n [choice.index]: mention.openEnd || \"\",\r\n };\r\n } else {\r\n newState.openEndValue = { ...newState.openEndValue, [choice.index]: \"\" };\r\n }\r\n });\r\n return newState;\r\n });\r\n }\r\n\r\n componentDidUpdate(prevProps: Props, prevState: State) {\r\n super.componentDidUpdate(prevProps, prevState);\r\n const variable =\r\n this.setCarrouselActiveVariable(this.props.question.id) ||\r\n this.props.question.variables[0];\r\n\r\n const mentions = this.getMentions(this.props);\r\n mentions.forEach((mention) => {\r\n const isValidChoice = this.isValidChoice(mention.value);\r\n const isChoiceNoLongerVisible = this.isChoiceNoLongerVisible(mention.value, prevProps);\r\n if (isValidChoice && isChoiceNoLongerVisible) {\r\n this.setMentions(this.props, variable.name, (m) => m.pull(mention.value));\r\n }\r\n });\r\n }\r\n\r\n willUpdateMentions(question: QuestionModel, nextProps: Props) {\r\n super.willUpdateMentions(question, nextProps);\r\n const variable = this.setCarrouselActiveVariable(question.id) || question.variables[0];\r\n const mentions = this.getMentions(nextProps, variable.name) || [];\r\n this.setState((s) => {\r\n const newState = { ...s };\r\n variable.choiceList.forEach((answer) => {\r\n const mention = mentions.find((m) => m.value === answer.value);\r\n if (mention !== undefined) {\r\n newState.openEndValue = {\r\n ...newState.openEndValue,\r\n [answer.index]: mention.openEnd,\r\n };\r\n }\r\n });\r\n return newState;\r\n });\r\n }\r\n\r\n onReset = () => {\r\n const { question } = this.props;\r\n const variable = this.setCarrouselActiveVariable(question.id) || question.variables[0];\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.clear());\r\n };\r\n\r\n onOpenEndChange = (choice: ChoiceModel, text: string) => {\r\n this.setState((s) => {\r\n const newState = { ...s };\r\n newState.openEndValue = {\r\n ...newState.openEndValue,\r\n [choice.index]: this.truncateOpenEnd(choice, text),\r\n };\r\n return newState;\r\n });\r\n };\r\n\r\n onOpenEndBlur = (choice: ChoiceModel) => {\r\n const openEnd = this.state.openEndValue[choice.index];\r\n const [variable] = this.props.question.variables;\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.removeValue(choice.value).add(choice.value, openEnd.trim()),\r\n );\r\n };\r\n\r\n setDefaultChoices = () => {\r\n const { sequencedVariables } = this.props;\r\n const [variable] = sequencedVariables;\r\n const { choiceList = [] } = variable;\r\n const defaultVisibleChoices = choiceList.filter(\r\n (choice) => getSettingBoolean(choice, \"Default\") && isVisible(choice),\r\n );\r\n this.setChoicesAsMentions(variable, defaultVisibleChoices);\r\n };\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const { question, useClientValidation } = this.props;\r\n\r\n question.variables.forEach(this.removeUnavailableMentions);\r\n if (question.type === QuestionType.RadioButton) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n const softPromptValidationResult = this.validateSoftPrompt(this.props);\r\n if (!softPromptValidationResult.isValid) {\r\n return softPromptValidationResult;\r\n }\r\n\r\n const result = super.validate(options);\r\n const variable = this.setCarrouselActiveVariable(question.id) || question.variables[0];\r\n\r\n const hasMentions = this.hasMentions(this.props);\r\n\r\n if (!hasMentions) {\r\n const { choiceList } = variable;\r\n const invisibleDefaultChoices = choiceList.filter(\r\n (choice) => getSettingBoolean(choice, \"Default\") && !isVisible(choice),\r\n );\r\n if (invisibleDefaultChoices.length) {\r\n this.setChoicesAsMentions(variable, invisibleDefaultChoices);\r\n return new ValidationBuilder().build();\r\n }\r\n }\r\n\r\n if (result.isValid && hasMentions) {\r\n const min = this.minValue();\r\n const max = this.maxValue();\r\n const mentions = this.getMentions(this.props);\r\n\r\n // Test for minimum and maximum values.\r\n if (min !== null && min > 0 && mentions.length < min) {\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"InvalidChoicesMin\", { min: String(min) })\r\n .build();\r\n }\r\n if (max !== null && max > 0 && mentions.length > max) {\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"InvalidChoicesMax\", { max: String(max) })\r\n .build();\r\n }\r\n\r\n // Validate open end if parent is not Grid\r\n if (!question.parent || !isGrid(question.parent.type)) {\r\n const { choiceList } = variable;\r\n const choicesWithOpenEnd = choiceList.filter(hasOpenEnd);\r\n\r\n const openEndFailedValidation = choicesWithOpenEnd\r\n .map((choice) => {\r\n const openEnd = this.state.openEndValue[choice.index];\r\n const mention = mentions.find((m) => m.value === choice.value);\r\n return mention ? this.validateOpenEnd(openEnd, choice) : undefined;\r\n })\r\n .find((validation) => validation && !validation.isValid);\r\n\r\n if (openEndFailedValidation) {\r\n return openEndFailedValidation;\r\n }\r\n }\r\n }\r\n return result;\r\n }\r\n\r\n renderQuestion(question: QuestionModel) {\r\n const variable =\r\n this.setCarrouselActiveVariable(question.id) || this.props.sequencedVariables[0];\r\n const choiceList = variable ? variable.choiceList : [];\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport parser from \"mini-html-parser\";\r\nimport { flatten } from \"../../utils/lodash\";\r\n\r\nconst findScripts = (node) => {\r\n if (node.nodeName && node.nodeName === \"SCRIPT\")\r\n return (node.childNodes || []).map((n) => n.nodeValue);\r\n return flatten((node.childNodes || []).map(findScripts));\r\n};\r\n\r\ninterface Props {\r\n render?(html: string): JSX.Element;\r\n scriptKey: string;\r\n html: string;\r\n}\r\n\r\nexport function ExecutableHtml(props: Props): JSX.Element {\r\n const { html, scriptKey, render } = props;\r\n\r\n React.useEffect(() => {\r\n const timeout = setTimeout(() => {\r\n const content = html;\r\n const scripts = findScripts(parser(content).parse());\r\n scripts.forEach((script) => {\r\n (window as any).eval(`${script}\\n//# sourceURL=${scriptKey}.js`);\r\n });\r\n });\r\n return function cleanup() {\r\n clearTimeout(timeout);\r\n };\r\n }, [html, scriptKey]);\r\n\r\n if (render) return render(html);\r\n return
    ;\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp, useDispatch } from \"react-redux\";\r\nimport { uniq, filter, isEmpty } from \"../../utils/lodash\";\r\nimport { ControlProps } from \"./BaseControl\";\r\nimport { ExecutableHtml } from \"../shared/ExecutableHtml\";\r\nimport useTranslatable from \"../../hooks/useTranslatable\";\r\nimport { usePickMentions } from \"../../hooks/useMentions\";\r\nimport { useValidation, isAnswerRequired } from \"../../hooks/useValidation\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { isNullOrEmpty } from \"../../utils\";\r\nimport { MentionBuilderDelegate } from \"../../models/builders/MentionBuilder\";\r\nimport { setMultipleVariablesMentions } from \"../../redux/actions\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\nconst supportedSingleValueInputTypes = [\"text\", \"hidden\", \"date\", \"number\", \"password\"];\r\n\r\nfunction findHtmlVariables(html: string) {\r\n const regex = /name\\s*=\\s*(?:[\"']([^\"':]*?:[^\"']*?)[\"']|[\"']([^\"':]*?)[\"']|(\\S+))/gi;\r\n const variables = [];\r\n let matches;\r\n // eslint-disable-next-line no-cond-assign\r\n while ((matches = regex.exec(html))) {\r\n variables.push(matches[1] || matches[2] || matches[3]);\r\n }\r\n return uniq(variables);\r\n}\r\n\r\nfunction documentFindValue(name: string) {\r\n const elements = document.getElementsByName(name) as any;\r\n if (!elements || !elements[0]) {\r\n return undefined;\r\n }\r\n if ([\"TEXTAREA\", \"SELECT\"].includes(elements[0].tagName)) {\r\n return elements[0].value;\r\n }\r\n if (\r\n elements[0].tagName === \"INPUT\" &&\r\n supportedSingleValueInputTypes.includes(elements[0].type)\r\n ) {\r\n return elements[0].value;\r\n }\r\n if ([\"checkbox\", \"radio\"].includes(elements[0].type)) {\r\n return filter(elements as HTMLInputElement[], (el) => el.checked).map((el) => el.value);\r\n }\r\n return undefined;\r\n}\r\n\r\nfunction validateAnswersInHtml(html: string) {\r\n const variables = findHtmlVariables(html);\r\n return variables.every((name) => {\r\n const [variableName, choiceValue, openEnd] = name.split(\":\");\r\n // Open-end answers are not required if the open-end choice is not selected.\r\n if (openEnd && !documentFindValue(variableName).includes(choiceValue)) {\r\n return true;\r\n }\r\n return !isEmpty(documentFindValue(name));\r\n });\r\n}\r\n\r\nexport function CustomHtmlControl(props: Props) {\r\n const { question, questionnaire, validateSignal } = props;\r\n\r\n const variableMentions = usePickMentions(question.variableNames);\r\n const contentTemplate = useTranslatable(question, \"content\") || \"\";\r\n const dispatch = useDispatch();\r\n const previousValue = React.useRef();\r\n\r\n const answerForMatch = React.useCallback(\r\n (_value: string, variable: string, choice: string, openEnd: string) => {\r\n let mentions = variableMentions[variable];\r\n if (!mentions || !mentions[0]) {\r\n return \"\";\r\n }\r\n if (choice) {\r\n if (openEnd) {\r\n mentions = mentions.filter((mention) => mention.customChoiceIndex === choice);\r\n if (!mentions || !mentions[0] || !mentions[0].openEnd) {\r\n return \"\";\r\n }\r\n return mentions[0].openEnd;\r\n }\r\n return mentions.some((mention) => mention.customChoiceIndex === choice)\r\n ? \"checked selected\"\r\n : \"\";\r\n }\r\n return mentions[0].value || \"\";\r\n },\r\n [variableMentions],\r\n );\r\n\r\n const content = React.useMemo(\r\n () => contentTemplate.replace(/%(\\w+):?(\\w*):?(\\w*)%/gi, answerForMatch),\r\n [answerForMatch, contentTemplate],\r\n );\r\n\r\n const captureAnswers = React.useCallback(\r\n (html: string) => {\r\n // Find all mentions in html.\r\n const variables = findHtmlVariables(html);\r\n let mentionsByVariable: { [variableName: string]: MentionBuilderDelegate } = {};\r\n const addMention = (variableName: string, builder: MentionBuilderDelegate) => {\r\n mentionsByVariable = {\r\n ...mentionsByVariable,\r\n [variableName]: builder,\r\n };\r\n };\r\n variables.forEach((name) => {\r\n const elements = document.getElementsByName(name) as any;\r\n const variable = name.split(\":\")[0];\r\n const openEnd = name.indexOf(\":O\");\r\n if (!elements || !elements[0]) {\r\n return;\r\n }\r\n const elValue = elements[0].value;\r\n if (isNullOrEmpty(elValue) && openEnd == -1) {\r\n // element is not openend\r\n addMention(variable, (m) => m.clear());\r\n } else if (elements[0].tagName === \"TEXTAREA\") {\r\n const choice = name.split(\":\")[1];\r\n if (choice && !isNullOrEmpty(elValue)) {\r\n addMention(name, (m) =>\r\n m.addOpenEndValueByCustomChoiceIndex(choice, elValue),\r\n );\r\n } else if (!isNullOrEmpty(elValue)) {\r\n addMention(variable, (m) => m.set(elValue));\r\n }\r\n } else if (elements[0].tagName === \"SELECT\") {\r\n addMention(variable, (m) => m.set(elValue));\r\n } else if (supportedSingleValueInputTypes.includes(elements[0].type)) {\r\n if (!isNullOrEmpty(elValue)) {\r\n addMention(variable, (m) => m.set(elValue));\r\n }\r\n } else if ([\"checkbox\", \"radio\"].includes(elements[0].type)) {\r\n const checked = filter(elements as HTMLInputElement[], (el) => el.checked);\r\n addMention(variable, (m) => {\r\n m.clear();\r\n checked.forEach((c) =>\r\n m.add(c.value, null, [...elements].indexOf(c) + 1 + \"\"),\r\n );\r\n return m;\r\n });\r\n }\r\n });\r\n if (!isEmpty(mentionsByVariable)) {\r\n dispatch(setMultipleVariablesMentions(mentionsByVariable));\r\n }\r\n },\r\n [dispatch],\r\n );\r\n\r\n useValidation(validateSignal, () => {\r\n const answerRequired = isAnswerRequired(question, questionnaire);\r\n captureAnswers(content);\r\n\r\n if (validateAnswersInHtml(content) || !answerRequired) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n // Question is not answered, so we fail validation for 1st empty variable\r\n let firstEmptyVariableName = \"\";\r\n for (let i = 0; i < question.variableNames.length; i++) {\r\n const variableName = question.variableNames[i];\r\n if (isEmpty(documentFindValue(variableName))) {\r\n firstEmptyVariableName = variableName;\r\n break;\r\n }\r\n }\r\n return new ValidationBuilder().fail(firstEmptyVariableName, \"IncompleteAnswer\").build();\r\n });\r\n\r\n // Capture the answers before we render new html.\r\n if (previousValue.current && previousValue.current !== content) {\r\n captureAnswers(previousValue.current);\r\n }\r\n previousValue.current = content;\r\n\r\n return ;\r\n}\r\n","import React from \"react\";\r\nimport { DateTime } from \"luxon\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { range, find, times } from \"../../utils/lodash\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { ControlContainer } from \"../../containers/controls/ControlContainer\";\r\nimport { ChoiceListControl } from \"./ChoiceListControl\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingString,\r\n hasSetting,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { isNullOrEmpty, removeHtmlTags } from \"../../utils\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { dateFromValue, dateFormat, size } from \"../../models/utilities/questionUtilities\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport {\r\n IMobiscroll,\r\n Calendar,\r\n MbscCalendarOptions,\r\n} from \"../../../lib/mobiscroll/js/mobiscroll.javascript.min\";\r\nimport { cDateFormatToMobiscroll } from \"../../utils/time\";\r\nimport Select, { Option } from \"../select/Select\";\r\nimport { getChoice } from \"../../models/utilities/variableUtilities\";\r\nimport TextAnswerRenderer from \"../renderers/v2/TextAnswerRenderer\";\r\nimport { respondentSetAppointment } from \"../../redux/actions\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\n/* import Mobiscroll JS, Typings and CSS */\r\nconst mobiscroll: IMobiscroll = require(\"../../../lib/mobiscroll/js/mobiscroll.javascript.min.js\");\r\n\r\ntype MbscSize = \"xsmall\" | \"small\" | \"medium\" | \"large\" | \"xlarge\" | number;\r\ntype MbscDisplay = \"center\" | \"inline\" | \"bubble\" | \"top\" | \"bottom\";\r\ntype MbscControl = \"date\" | \"time\" | \"calendar\";\r\n\r\nconst MOBISCROLL_THEME = \"voxco\";\r\n\r\nconst daysRange = [1, 31];\r\nconst hoursRange = [0, 23];\r\nconst minutesRange = [0, 59];\r\nconst weekDays = [\"sunday\", \"monday\", \"tuesday\", \"wednesday\", \"thursday\", \"friday\", \"saturday\"];\r\nconst initialState = {\r\n value: \"\",\r\n year: \"\",\r\n month: null,\r\n date: \"\",\r\n hour: \"00\",\r\n minute: \"00\",\r\n};\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n value: string;\r\n year: string;\r\n month: number;\r\n date: string;\r\n hour: string;\r\n minute: string;\r\n}\r\n\r\nexport class DateTimeControl extends BaseControl {\r\n inputRef: HTMLElement;\r\n inputDivRef: HTMLElement;\r\n picker?: Calendar;\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = { ...initialState };\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props) {\r\n super.initializeQuestion(question, props);\r\n this.setState({ ...initialState });\r\n this.updateState(props);\r\n this.bindDatePicker(props);\r\n }\r\n\r\n willUpdateMentions(question: QuestionModel, nextProps: Props) {\r\n super.willUpdateMentions(question, nextProps);\r\n this.updateState(nextProps);\r\n }\r\n\r\n finalizeQuestion(question: QuestionModel, props: Props) {\r\n super.finalizeQuestion(question, props);\r\n if (this.picker) {\r\n this.picker.destroy();\r\n this.picker = null;\r\n }\r\n }\r\n\r\n componentDidUpdate(prevProps: Props) {\r\n if (\r\n prevProps.question !== this.props.question ||\r\n prevProps.language !== this.props.language\r\n ) {\r\n this.bindDatePicker(this.props);\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n this.bindDatePicker(this.props);\r\n }\r\n\r\n openDatePicker() {\r\n if (this.picker && !this.picker.isVisible()) {\r\n this.picker.show();\r\n }\r\n }\r\n\r\n isYearType = (question: QuestionModel) => getSettingBoolean(question, \"Type\", \"Year\");\r\n\r\n isMonthType = (question: QuestionModel) => getSettingBoolean(question, \"Type\", \"Month\");\r\n\r\n isDayType = (question: QuestionModel) => getSettingBoolean(question, \"Type\", \"Day\");\r\n\r\n isHourType = (question: QuestionModel) => getSettingBoolean(question, \"Type\", \"Hours\");\r\n\r\n isMinuteType = (question: QuestionModel) => getSettingBoolean(question, \"Type\", \"Minutes\");\r\n\r\n findAnswer = (props: Props, value: string) => getChoice(props.sequencedVariables[0], value);\r\n\r\n updateState(props: Props) {\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n newState.value = undefined;\r\n const [mention] = this.getMentions(props);\r\n if (mention !== undefined) {\r\n newState.value = mention.value;\r\n }\r\n if (this.isMonthType(props.question)) {\r\n newState.month = Number(newState.value);\r\n }\r\n if (this.isDayType(props.question)) {\r\n newState.date = Number(newState.value).toString();\r\n }\r\n if (this.isHourType(props.question)) {\r\n newState.hour = newState.value;\r\n }\r\n if (this.isMinuteType(props.question)) {\r\n newState.minute = newState.value;\r\n }\r\n if (newState.value == null || this.findAnswer(this.props, newState.value) != null) {\r\n newState.value = \"\";\r\n }\r\n if (this.picker) {\r\n const value = this.dateValue();\r\n this.picker.setVal(value);\r\n }\r\n return newState;\r\n });\r\n }\r\n\r\n minDate = () => {\r\n const { min: value, question } = this.props;\r\n const isMinDateToday =\r\n value?.toString().split(\"T\")[0] === new Date().toISOString().split(\"T\")[0];\r\n\r\n if (isNullOrEmpty(value)) {\r\n return undefined;\r\n }\r\n if (value === \"TodayValue\" || isMinDateToday) {\r\n return DateTime.now().startOf(\"day\");\r\n }\r\n const result = dateFromValue(question, value);\r\n return result.isValid ? result : undefined;\r\n };\r\n\r\n maxDate = () => {\r\n const { max: value, question } = this.props;\r\n if (isNullOrEmpty(value)) {\r\n return undefined;\r\n }\r\n if (value === \"TodayValue\") {\r\n return DateTime.now().endOf(\"day\");\r\n }\r\n const result = dateFromValue(question, value);\r\n return result.isValid ? result : undefined;\r\n };\r\n\r\n dateValue = () => {\r\n const { value } = this.state;\r\n const { question } = this.props;\r\n if (value === undefined) {\r\n return undefined;\r\n }\r\n return dateFromValue(question, value);\r\n };\r\n\r\n shouldShowCalendar = (props: Props) => {\r\n const { question } = props;\r\n const questionType = getSettingString(question, \"Type\");\r\n return [\"Date\", \"DateTime\", \"Time\"].includes(questionType);\r\n };\r\n\r\n mobiscrollDisplay(calendarSize?: MbscSize): MbscDisplay {\r\n const isSmall = calendarSize === \"xsmall\" || calendarSize === \"small\";\r\n return isSmall ? \"bottom\" : \"center\";\r\n }\r\n\r\n mobiscrollControls(props: Props): MbscControl[] {\r\n const { question } = props;\r\n const type = getSettingString(question, \"Type\", \"Date\");\r\n if (type === \"DateTime\") {\r\n return [\"calendar\", \"time\"];\r\n }\r\n if (type === \"Time\") {\r\n return [\"time\"];\r\n }\r\n return [\"calendar\"];\r\n }\r\n\r\n bindDatePicker(props: Props) {\r\n const { question, language } = props;\r\n if (this.picker) {\r\n this.picker.destroy();\r\n this.picker = null;\r\n }\r\n\r\n const input = this.inputRef;\r\n const showCalendar = this.shouldShowCalendar(props);\r\n if (!showCalendar || !input) {\r\n return;\r\n }\r\n\r\n const type = getSettingString(question, \"Type\", \"Date\");\r\n const showButtons = !(type === \"Date\");\r\n\r\n const onClear = (event, instance) => {\r\n this.setState((prevState) => ({ ...prevState, value: undefined }));\r\n if (type === \"Date\" && !showButtons) {\r\n instance.hide();\r\n }\r\n };\r\n\r\n const onSet = (event, instance) => {\r\n if (type === \"Date\") {\r\n return;\r\n }\r\n const value = instance.getVal();\r\n const format = dateFormat(question);\r\n const luxonValue = DateTime.fromJSDate(value);\r\n const text = luxonValue.toFormat(format);\r\n this.setState((prevState) => ({ ...prevState, value: text }));\r\n };\r\n\r\n const onSetDate = (event, instance) => {\r\n if (showButtons || !event.control) {\r\n return;\r\n }\r\n const format = dateFormat(question);\r\n const luxonValue = DateTime.fromJSDate(event.date);\r\n const text = luxonValue.toFormat(format);\r\n this.setState((prevState) => ({ ...prevState, value: text }));\r\n if (type === \"Date\" && !showButtons) {\r\n instance.hide();\r\n }\r\n };\r\n\r\n const formatValue = () => this.state.value;\r\n\r\n const responsive = {\r\n xsmall: {\r\n display: this.mobiscrollDisplay(\"xsmall\"),\r\n },\r\n small: {\r\n display: this.mobiscrollDisplay(\"small\"),\r\n months: type === \"DateTime\" ? 1 : 2,\r\n },\r\n medium: {\r\n display: this.mobiscrollDisplay(\"medium\"),\r\n months: type === \"DateTime\" ? 1 : 2,\r\n touchUi: false,\r\n tabs: false,\r\n },\r\n };\r\n\r\n const dateFormatSetting = getSettingString(question, \"DateFormat\") || \"yyyy-mm-dd\";\r\n const pickerDateFormat = cDateFormatToMobiscroll(dateFormatSetting);\r\n\r\n const timeFormatSetting = getSettingString(question, \"TimeFormat\") || \"hh:mm\";\r\n const pickerTimeFormat = cDateFormatToMobiscroll(timeFormatSetting);\r\n\r\n const buttons = showButtons ? [\"cancel\", \"clear\", \"now\", \"set\"] : [\"clear\"];\r\n\r\n const options: MbscCalendarOptions = {\r\n theme: MOBISCROLL_THEME,\r\n controls: this.mobiscrollControls(props),\r\n lang: language,\r\n min: this.minDate(),\r\n max: this.maxDate(),\r\n showLabel: true,\r\n dateFormat: pickerDateFormat,\r\n timeWheels: pickerTimeFormat,\r\n headerText: (value) => (value !== undefined ? value : \"\"),\r\n invalid: [],\r\n layout: \"fixed\",\r\n onClear,\r\n onSet,\r\n onSetDate,\r\n formatValue,\r\n responsive,\r\n buttons,\r\n width: 100,\r\n };\r\n\r\n if (hasSetting(question, \"DisabledDates\")) {\r\n const disabledDates = JSON.parse(getSettingString(question, \"DisabledDates\"));\r\n const shiftWeekDays = DateTime.local().startOf(\"week\").weekday;\r\n const localizedWeekDays = [...weekDays];\r\n if (shiftWeekDays) {\r\n localizedWeekDays.push(localizedWeekDays.shift());\r\n }\r\n options.invalid = [\r\n ...disabledDates.ranges.map(({ start, end }) => ({\r\n start: dateFromValue(question, start, false),\r\n end: dateFromValue(question, end, false),\r\n })),\r\n ...disabledDates.dates.map((date) => dateFromValue(question, date, false)),\r\n ...disabledDates.weekdays.map(\r\n (wkd) => `w${localizedWeekDays.indexOf(wkd) + shiftWeekDays}`,\r\n ),\r\n ];\r\n }\r\n\r\n this.picker = mobiscroll.calendar(input, options);\r\n if (this.dateValue()) {\r\n this.picker.setVal(this.dateValue());\r\n }\r\n }\r\n\r\n isDateDisabled(date: Date) {\r\n const { question } = this.props;\r\n\r\n const isDateType =\r\n getSettingBoolean(question, \"Type\", \"Date\") ||\r\n getSettingBoolean(question, \"Type\", \"DateTime\");\r\n const disabledDates = JSON.parse(getSettingString(question, \"DisabledDates\", null));\r\n\r\n if (!isDateType || !disabledDates) {\r\n return false;\r\n }\r\n\r\n const isDisabledWeekDay = () =>\r\n disabledDates.weekdays?.some((entry) => entry === date.getDay());\r\n\r\n const isDisabledDay = () =>\r\n disabledDates.weekdays?.some(\r\n (entry) => dateFromValue(question, entry).valueOf() === date.valueOf(),\r\n );\r\n\r\n const isDisabledRange = () =>\r\n disabledDates.ranges?.some(\r\n ({ start, end }) =>\r\n date >= dateFromValue(question, start).toJSDate() &&\r\n date <= dateFromValue(question, end).toJSDate(),\r\n );\r\n\r\n const isDisabled = isDisabledWeekDay() || isDisabledDay() || isDisabledRange();\r\n return isDisabled;\r\n }\r\n\r\n onYearChanged = (event) => {\r\n const { value } = event.target;\r\n this.setState((prevState) => ({\r\n ...prevState,\r\n year: value,\r\n }));\r\n };\r\n\r\n onMonthChanged = ([value]) => {\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n this.setMentions(this.props, variable.name, (mentions) => {\r\n mentions.clear();\r\n if (!isNullOrEmpty(value)) {\r\n mentions.set(value);\r\n }\r\n return mentions;\r\n });\r\n this.setState((prevState) => ({\r\n ...prevState,\r\n month: value,\r\n }));\r\n };\r\n\r\n onDayChanged = ([value]) => {\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n this.setMentions(this.props, variable.name, (mentions) => {\r\n mentions.clear();\r\n if (!isNullOrEmpty(value)) {\r\n mentions.set(value);\r\n }\r\n return mentions;\r\n });\r\n this.setState((prevState) => ({\r\n ...prevState,\r\n date: value,\r\n }));\r\n };\r\n\r\n onHourChanged = ([value]) => {\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n this.setMentions(this.props, variable.name, (mentions) => {\r\n mentions.clear();\r\n if (!isNullOrEmpty(value)) {\r\n mentions.set(value);\r\n }\r\n return mentions;\r\n });\r\n this.setState((prevState) => ({\r\n ...prevState,\r\n hour: value,\r\n }));\r\n };\r\n\r\n onMinuteChanged = ([value]) => {\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n this.setMentions(this.props, variable.name, (mentions) => {\r\n mentions.clear();\r\n if (!isNullOrEmpty(value)) {\r\n mentions.set(value);\r\n }\r\n return mentions;\r\n });\r\n this.setState((prevState) => ({\r\n ...prevState,\r\n minute: value,\r\n }));\r\n };\r\n\r\n onTextChanged = (event) => {\r\n const { question } = this.props;\r\n const { value } = event.target;\r\n const type = getSettingString(question, \"Type\");\r\n if ([\"Day\", \"Hours\", \"Minutes\", \"Year\"].includes(type) && /[^\\d]/.test(value)) {\r\n return;\r\n }\r\n this.setState((prevState) => ({\r\n ...prevState,\r\n value,\r\n }));\r\n };\r\n\r\n onTextBlur = () => {\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n const type = getSettingString(question, \"Type\");\r\n if ([\"Date\", \"DateTime\", \"Time\"].includes(type)) {\r\n this.onDateBlur();\r\n return;\r\n }\r\n let { value } = this.state;\r\n const typeBounds: { [type: string]: number[] } = {\r\n Day: daysRange,\r\n Hours: hoursRange,\r\n Minutes: minutesRange,\r\n };\r\n if (typeBounds[type] != null && !isNullOrEmpty(value)) {\r\n const [lowerBound, upperBound] = typeBounds[type];\r\n if (parseInt(value, 10) < lowerBound) {\r\n value = String(lowerBound);\r\n } else if (parseInt(value, 10) > upperBound) {\r\n value = String(upperBound);\r\n }\r\n this.setState((prevState) => ({ ...prevState, value }));\r\n }\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.set(value));\r\n };\r\n\r\n onDateBlur = () => {\r\n this.setMentionToDate(this.dateValue());\r\n };\r\n\r\n getNormalizedDate(date: DateTime) {\r\n const minDate = this.minDate();\r\n if (minDate != null && date.valueOf() < minDate.valueOf()) {\r\n return minDate;\r\n }\r\n const maxDate = this.maxDate();\r\n if (maxDate != null && date.valueOf() > maxDate.valueOf()) {\r\n return maxDate;\r\n }\r\n return date;\r\n }\r\n\r\n setMentionToDate(date: DateTime) {\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n if (date == null) {\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.clear());\r\n return;\r\n }\r\n const normalizedDate = this.getNormalizedDate(date);\r\n if (getSettingBoolean(question, \"SetRespondentAppointment\")) {\r\n this.props.dispatch(respondentSetAppointment(normalizedDate.toJSDate()));\r\n }\r\n const text = normalizedDate.toFormat(dateFormat(question));\r\n this.setState((prevState) => ({ ...prevState, value: text }));\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.set(text));\r\n }\r\n\r\n monthArray() {\r\n return times(12, (i) => DateTime.fromFormat(String(i + 1), \"M\").toFormat(\"MMMM\"));\r\n }\r\n\r\n dayArray() {\r\n const [min, max] = daysRange;\r\n return range(min, max + 1);\r\n }\r\n\r\n hourArray() {\r\n const [min, max] = hoursRange;\r\n return range(min, max + 1);\r\n }\r\n\r\n minuteArray() {\r\n const [min, max] = minutesRange;\r\n const increment = 5;\r\n return range(min, max, increment);\r\n }\r\n\r\n renderYear() {\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n renderSelect(value: string, options: Option[], onChange: (value: string[]) => void) {\r\n const { question, theme, language } = this.props;\r\n const [variable] = question.variables;\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n renderMonth() {\r\n const { month } = this.state;\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n\r\n const options = this.monthArray().map((value, index) => ({\r\n id: `${variable.elementId}_C_${index + 1}`,\r\n value: (index + 1).toString(),\r\n label: value,\r\n }));\r\n\r\n return this.renderSelect(String(month), options, this.onMonthChanged);\r\n }\r\n\r\n renderDay() {\r\n const { date } = this.state;\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n\r\n const options = this.dayArray().map((value) => ({\r\n id: `${variable.elementId}_C_${value}`,\r\n value: value.toString(),\r\n label: value.toString(),\r\n }));\r\n\r\n return this.renderSelect(date, options, this.onDayChanged);\r\n }\r\n\r\n renderHours() {\r\n const { hour } = this.state;\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n\r\n const options = this.hourArray().map((value) => ({\r\n id: `${variable.elementId}_C_${value}`,\r\n value: value.toString(),\r\n label: value.toString(),\r\n }));\r\n\r\n return this.renderSelect(hour, options, this.onHourChanged);\r\n }\r\n\r\n renderMinutes() {\r\n const { minute } = this.state;\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n\r\n const options = this.minuteArray().map((value) => ({\r\n id: `${variable.elementId}_C_${value}`,\r\n value: value.toString(),\r\n label: value.toString(),\r\n }));\r\n\r\n return this.renderSelect(minute, options, this.onMinuteChanged);\r\n }\r\n\r\n renderDateTime() {\r\n return (\r\n <>\r\n {\r\n this.inputRef = r;\r\n }}\r\n inputDivRef={(r) => {\r\n this.inputDivRef = r;\r\n }}\r\n inputType=\"text\"\r\n onBlur={this.onTextBlur}\r\n onChange={this.onTextChanged}\r\n openDatePicker={this.openDatePicker}\r\n value={this.state.value}\r\n />\r\n \r\n \r\n );\r\n }\r\n\r\n renderQuestion(question: QuestionModel) {\r\n if (this.isMonthType(question)) {\r\n return this.renderMonth();\r\n }\r\n if (this.isYearType(question)) {\r\n return this.renderYear();\r\n }\r\n if (this.isDayType(question)) {\r\n return this.renderDay();\r\n }\r\n if (this.isHourType(question)) {\r\n return this.renderHours();\r\n }\r\n if (this.isMinuteType(question)) {\r\n return this.renderMinutes();\r\n }\r\n if ([\"Date\", \"DateTime\", \"Time\"].includes(getSettingString(question, \"Type\"))) {\r\n return this.renderDateTime();\r\n }\r\n const { min, max } = this.props;\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n isAnswerComplete(props: Props) {\r\n if (isNullOrEmpty(this.state.value) && this.hasMentions(this.props)) {\r\n const mention = find(this.getMentions(this.props));\r\n const [variable] = this.props.sequencedVariables;\r\n if (variable.choiceList.some((choice) => choice.value === mention.value)) {\r\n return true;\r\n }\r\n }\r\n return !isNullOrEmpty(this.state.value) || super.isAnswerComplete(props);\r\n }\r\n\r\n isLowerBoundInvalid(date: Date, useTime = true) {\r\n let min = this.minDate();\r\n if (min) {\r\n if (!useTime) {\r\n min = min.startOf(\"day\");\r\n }\r\n return DateTime.fromJSDate(date) < min;\r\n }\r\n return false;\r\n }\r\n\r\n isUpperBoundInvalid(date: Date, useTime = true) {\r\n let max = this.maxDate();\r\n if (max) {\r\n if (!useTime) {\r\n max = max.endOf(\"day\");\r\n }\r\n return DateTime.fromJSDate(date) > max;\r\n }\r\n return false;\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const { value } = this.state;\r\n const { question, sequencedVariables, useClientValidation } = this.props;\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n const [variable] = sequencedVariables;\r\n const result = super.validate(options);\r\n\r\n let hasSelectedAnswer = variable.choiceList\r\n .filter((choice) => getSettingBoolean(choice, \"Visible\"))\r\n .some((choice) => choice.value === value);\r\n\r\n if (isNullOrEmpty(value) && this.hasMentions(this.props)) {\r\n hasSelectedAnswer = variable.choiceList.some(\r\n (choice) => choice.value === find(this.getMentions(this.props)).value,\r\n );\r\n }\r\n\r\n if (result.isValid && !isNullOrEmpty(value) && !hasSelectedAnswer) {\r\n const type = getSettingString(question, \"Type\", \"\");\r\n const minValue = this.minValue();\r\n const maxValue = this.maxValue();\r\n\r\n if ([\"Year\", \"Month\", \"Day\", \"Hours\", \"Minutes\"].includes(type)) {\r\n // Validate non-date values.\r\n const intValue = parseInt(value, 10);\r\n const hasMinValue = minValue !== null && minValue !== undefined;\r\n const hasMaxValue = maxValue !== null && maxValue !== undefined;\r\n\r\n const [minRange, maxRange] = {\r\n Year: [0, 9999],\r\n Month: [1, 12],\r\n Day: daysRange,\r\n Hours: hoursRange,\r\n Minutes: minutesRange,\r\n }[type];\r\n\r\n if (intValue < minRange || intValue > maxRange) {\r\n return new ValidationBuilder().fail(variable.name, \"InvalidDate\").build();\r\n }\r\n\r\n if (hasMinValue && hasMaxValue) {\r\n if (intValue < minValue || intValue > maxValue) {\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"OutOfBounds\", {\r\n min: String(minValue),\r\n max: String(maxValue),\r\n })\r\n .build();\r\n }\r\n } else if (hasMinValue && !hasMaxValue && intValue < minValue) {\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"LowerBoundNotFulfilled\", {\r\n min: String(minValue),\r\n })\r\n .build();\r\n } else if (!hasMinValue && hasMaxValue && intValue > maxValue) {\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"UpperBoundNotFulfilled\", {\r\n max: String(maxValue),\r\n })\r\n .build();\r\n }\r\n } else {\r\n // Validate date values.\r\n const date = this.dateValue();\r\n const format = dateFormat(question);\r\n\r\n if (type === \"Time\" && format && !DateTime.fromFormat(value, format).isValid) {\r\n return new ValidationBuilder().fail(variable.name, \"InvalidDate\").build();\r\n }\r\n\r\n const dateValue = date.toJSDate();\r\n\r\n if (this.isDateDisabled(dateValue)) {\r\n return new ValidationBuilder().fail(variable.name, \"UnavailableDate\").build();\r\n }\r\n\r\n if (this.isLowerBoundInvalid(dateValue) || this.isUpperBoundInvalid(dateValue)) {\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"OutOfBounds\", {\r\n min: this.minDate()?.toFormat(format),\r\n max: this.maxDate()?.toFormat(format),\r\n })\r\n .build();\r\n }\r\n }\r\n }\r\n\r\n return result;\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { foregroundColor, darken, alpha } from \"../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n container: {\r\n composes: \"drag-drop\",\r\n position: \"relative\",\r\n userSelect: \"none\",\r\n margin: \"auto\",\r\n maxWidth: 600,\r\n },\r\n bucket: {\r\n composes: \"drag-drop__list\",\r\n border: \"1px solid #999\",\r\n position: \"absolute\",\r\n borderRadius: ({ theme }) => Math.min(theme.BorderRadius, 50),\r\n },\r\n bucketOrigin: {\r\n composes: \"drag-drop__list--origin\",\r\n border: ({ theme }) => [\r\n [Math.max(theme.BorderWidth, 1), \"solid\", theme.ControlBorderColor],\r\n ],\r\n },\r\n bucketOriginNoDrag: {\r\n composes: \"drag-drop__list--origin--no-drag\",\r\n cursor: \"not-allowed\",\r\n },\r\n bucketDestination: {\r\n composes: \"drag-drop__list--destination\",\r\n background: ({ theme }) =>\r\n `${alpha(theme.ControlBackground, theme.ControlAlpha)} 0% 0% no-repeat padding-box`,\r\n border: ({ theme }) => [[theme.BorderWidth, \"solid\", theme.ControlBorderColor]],\r\n },\r\n card: {\r\n composes: \"drag-drop__choice\",\r\n backgroundColor: ({ theme }) => theme.SecondaryColor,\r\n border: ({ theme }) => [\r\n [\r\n Math.max(theme.BorderWidth, 1),\r\n \"solid\",\r\n darken(theme.SecondaryColor, theme.BorderValue),\r\n ],\r\n ],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n color: ({ theme }) => foregroundColor(theme, theme.SecondaryColor),\r\n position: \"absolute\",\r\n padding: 8,\r\n textAlign: \"center\",\r\n fontWeight: \"bolder\",\r\n boxSizing: \"border-box\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n cursor: \"grab\",\r\n\r\n \"&:active\": {\r\n cursor: \"grabbing\",\r\n },\r\n },\r\n cardNoDrag: {\r\n composes: \"drag-drop__choice--no-drag\",\r\n pointerEvents: \"none\",\r\n cursor: \"not-allowed\",\r\n backgroundColor: ({ theme }) => darken(theme.SecondaryColor),\r\n border: ({ theme }) => [\r\n [\r\n Math.max(theme.BorderWidth, 1),\r\n \"solid\",\r\n darken(theme.SecondaryColor, theme.BorderValue),\r\n ],\r\n ],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n color: ({ theme }) => foregroundColor(theme, theme.SecondaryColor),\r\n position: \"absolute\",\r\n padding: 8,\r\n textAlign: \"center\",\r\n fontWeight: \"bolder\",\r\n boxSizing: \"border-box\",\r\n backgroundSize: \"cover\",\r\n backgroundPosition: \"center\",\r\n\r\n \"&:active\": {\r\n cursor: \"grabbing\",\r\n },\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useDrag } from \"react-use-gesture\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { useSpring, animated, interpolate } from \"react-spring\";\r\nimport useStyles from \"./DragDropControl.styles\";\r\nimport { useElementDimensions } from \"../../hooks/useElementDimensions\";\r\nimport { ControlProps } from \"./BaseControl\";\r\nimport { useMentionValues } from \"../../hooks/useMentions\";\r\nimport useRecall from \"../../hooks/useRecall\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { useLanguage } from \"../../hooks/useLanguage\";\r\nimport { useValidation, useDiscreteAnswerValidator } from \"../../hooks/useValidation\";\r\nimport { usePrevious } from \"../../hooks/usePrevious\";\r\nimport { isIE } from \"../../../src/utils\";\r\n\r\nconst BUCKET_DIVIDER_SIZE = 16;\r\nconst MIN_CARD_HEIGHT = 47;\r\nconst CARD_SPACING = 15;\r\nconst BOUNDS_MARGIN = 90;\r\n\r\nconst ORIGIN = 0;\r\nconst DESTINATION = 1;\r\n\r\nconst insert = (l, i, x) => [...l.slice(0, x), i, ...l.slice(x)];\r\n\r\ninterface CardProps {\r\n id?: string;\r\n text: string;\r\n imageUrl: string;\r\n width: number;\r\n height: number;\r\n top: number;\r\n left: number;\r\n bounds: { top: number; bottom: number; left: number; right: number };\r\n onDrag(xy: number[]);\r\n onDrop(xy: number[]);\r\n setCardRef(id: string, ref: any): void;\r\n isDragAllowed: boolean;\r\n}\r\n\r\nconst makeCardSpring = ({\r\n gestureState: {\r\n down,\r\n movement: [x, y],\r\n },\r\n left,\r\n top,\r\n immediate,\r\n}: any) => ({\r\n x: down ? x : left,\r\n y: down ? y : top,\r\n z: down ? 10 : 0,\r\n immediate: (name) => (immediate || down) && [\"x\", \"y\"].includes(name),\r\n config: { mass: 1, tension: 170, friction: 25 },\r\n});\r\n\r\nfunction DragDropCard({\r\n id,\r\n text,\r\n imageUrl,\r\n width,\r\n height,\r\n top,\r\n left,\r\n onDrag,\r\n onDrop,\r\n bounds,\r\n setCardRef,\r\n isDragAllowed,\r\n}: CardProps) {\r\n const recalledImage = useRecall(imageUrl);\r\n const recalledText = useRecall(text);\r\n const prevBounds = usePrevious(bounds);\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n const drag = React.useRef({ down: false, movement: [0, 0] });\r\n\r\n const [spring, set] = useSpring(() =>\r\n makeCardSpring({ gestureState: drag.current, left, top }),\r\n );\r\n\r\n const boundsChanged = prevBounds !== bounds;\r\n const isLegacyBrowser = isIE();\r\n\r\n React.useLayoutEffect(() => {\r\n set(makeCardSpring({ gestureState: drag.current, left, top, immediate: boundsChanged }));\r\n }, [left, top, set, boundsChanged]);\r\n\r\n const bind = useDrag(\r\n (state) => {\r\n drag.current = state;\r\n set(makeCardSpring({ gestureState: state, left, top }));\r\n const { movement, down } = state;\r\n if (down && onDrag) onDrag(movement);\r\n if (!down && onDrop) onDrop(movement);\r\n },\r\n {\r\n initial: () => [spring.x.getValue(), spring.y.getValue()],\r\n filterTaps: true,\r\n bounds: {\r\n ...bounds,\r\n right: bounds.right - width,\r\n bottom: bounds.bottom - height,\r\n },\r\n },\r\n );\r\n\r\n return (\r\n setCardRef(id, ref)}\r\n style={{\r\n left: CARD_SPACING,\r\n top: CARD_SPACING * 2,\r\n width: width - CARD_SPACING * 2,\r\n minHeight: height,\r\n transform: interpolate(\r\n [spring.x, spring.y, spring.z],\r\n (x, y, z) => `translate(${x}px, ${y}px) scale(${z * 0.01 + 1})`,\r\n ),\r\n boxShadow: spring.z.interpolate((z) => `0 ${z * 0.3}px ${z + 3}px rgba(0,0,0,0.2)`),\r\n zIndex: spring.z.interpolate((z) => Math.max(1, 1 + Math.round(z))),\r\n backgroundImage: recalledImage && `url('${recalledImage}')`,\r\n cursor: isLegacyBrowser && \"pointer\",\r\n }}\r\n {...bind()}\r\n className={classnames(classes.card, isDragAllowed && classes.cardNoDrag)}\r\n dangerouslySetInnerHTML={recalledImage ? undefined : { __html: recalledText }}\r\n />\r\n );\r\n}\r\n\r\ninterface BucketProps {\r\n origin?: boolean;\r\n destination?: boolean;\r\n width: number;\r\n height: number;\r\n left: number;\r\n top: number;\r\n isCursorNoDrag?: boolean;\r\n}\r\n\r\nexport function DragDropBucket({\r\n origin,\r\n destination,\r\n width,\r\n height,\r\n left,\r\n top,\r\n isCursorNoDrag,\r\n}: BucketProps) {\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport function DragDropControl(props: ControlProps) {\r\n const { question, sequencedVariables, showSoftPrompt, validateSignal, max } = props;\r\n const variable = sequencedVariables[0];\r\n const [mentions, setMentions] = useMentionValues(variable.name);\r\n const [dragging, setDragging] = React.useState();\r\n const [dropBucket, setDropBucket] = React.useState(0);\r\n const [dropIndex, setDropIndex] = React.useState(0);\r\n const [language] = useLanguage();\r\n const theme = useTheme();\r\n const [imageRatioByCard, setImageRatioByCard] = React.useState<{ [name: string]: number }>({});\r\n const classes = useStyles({ theme });\r\n const containerRef = React.useRef();\r\n const { innerWidth } = useElementDimensions(containerRef);\r\n const [cardsRefs, setCardsRefs] = React.useState<{ [key: string]: any }>({});\r\n\r\n const bucketWidth = innerWidth / 2 - BUCKET_DIVIDER_SIZE;\r\n\r\n const getCardHeight = (choice: ChoiceModel) =>\r\n Math.max(\r\n bucketWidth / imageRatioByCard[choice.name] || 0,\r\n MIN_CARD_HEIGHT,\r\n getCardRefHeight(choice),\r\n );\r\n\r\n const getCardRefHeight = ({ elementId }) => {\r\n const ref = cardsRefs[elementId];\r\n return ref ? ref.clientHeight : 0;\r\n };\r\n\r\n let [originChoices, destinationChoices] = [\r\n variable.choiceList\r\n .filter(({ value }) => !mentions.includes(value))\r\n .filter((choice) => choice !== dragging),\r\n mentions\r\n .map((value) => variable.choiceList.find((c) => c.value === value))\r\n .filter(Boolean)\r\n .filter((choice) => choice !== dragging),\r\n ];\r\n\r\n const onChoiceDrag = (choice: ChoiceModel) => ([x, y]: number[]) => {\r\n setDragging(choice);\r\n const cx = x + bucketWidth / 2;\r\n const bucket = cx < innerWidth / 2 ? ORIGIN : DESTINATION;\r\n const choices = bucket === ORIGIN ? originChoices : destinationChoices;\r\n setDropBucket(bucket);\r\n setDropIndex(getDropIndex(choices, y));\r\n };\r\n\r\n if (dragging && dropBucket === ORIGIN) {\r\n originChoices = insert(originChoices, dragging, dropIndex);\r\n }\r\n\r\n if (dragging && dropBucket === DESTINATION) {\r\n destinationChoices = insert(destinationChoices, dragging, dropIndex);\r\n }\r\n\r\n const originBucketHeight =\r\n variable.choiceList\r\n .map((choice) => getCardHeight(choice) + CARD_SPACING)\r\n .reduce((a, b) => a + b) +\r\n CARD_SPACING * 3;\r\n\r\n let dynamicArrayOfChoices: ChoiceModel[] = [];\r\n\r\n if (destinationChoices.length < Number(max) || max === undefined || Number(max) === 0) {\r\n dynamicArrayOfChoices = variable.choiceList;\r\n } else {\r\n dynamicArrayOfChoices = destinationChoices;\r\n }\r\n\r\n const destinationBucketHeight =\r\n dynamicArrayOfChoices\r\n .map((choice, index) => {\r\n return Number(max) > index ? getCardHeight(choice) + CARD_SPACING : 0;\r\n })\r\n .reduce((a, b) => a + b) +\r\n CARD_SPACING * 3;\r\n\r\n const isChoiceSelected = ({ value }) => mentions && mentions.includes(value);\r\n\r\n const getCardTop = (list, choice) =>\r\n list\r\n .slice(0, list.indexOf(choice))\r\n .map((c) => getCardHeight(c) + CARD_SPACING)\r\n .reduce((sum, x) => sum + x, 0);\r\n\r\n const getDropIndex = (list, y) => {\r\n const fl = list.filter((c) => c !== dragging);\r\n return fl.filter((c) => y > getCardTop(fl, c) + getCardHeight(c) / 2).length;\r\n };\r\n\r\n const borderWidth = 1;\r\n const destinationLeft = bucketWidth + BUCKET_DIVIDER_SIZE * 2 - borderWidth * 2;\r\n const bounds = React.useMemo(\r\n () => ({\r\n top: -BOUNDS_MARGIN,\r\n bottom: originBucketHeight + BOUNDS_MARGIN,\r\n left: -BOUNDS_MARGIN,\r\n right: innerWidth + BOUNDS_MARGIN,\r\n }),\r\n [innerWidth, originBucketHeight],\r\n );\r\n\r\n useValidation(validateSignal, useDiscreteAnswerValidator(question, variable, showSoftPrompt));\r\n\r\n React.useEffect(\r\n () =>\r\n variable.choiceList.forEach((card) => {\r\n const imageUrl = translate(card, \"imageurl\", language);\r\n if (imageUrl) {\r\n const { name } = card;\r\n const img = new Image();\r\n img.addEventListener(\"load\", () => {\r\n const ratio = img.naturalWidth / img.naturalHeight;\r\n setImageRatioByCard((state) => ({ ...state, [name]: ratio }));\r\n });\r\n img.src = imageUrl;\r\n }\r\n }),\r\n [variable.choiceList, language],\r\n );\r\n\r\n const onChoiceDrop = (choice: ChoiceModel) => () => {\r\n const { value } = choice;\r\n if (dropBucket === DESTINATION) {\r\n setMentions((b) => b.removeValue(value).insert(dropIndex, value));\r\n } else {\r\n setMentions((b) => b.removeValue(value));\r\n }\r\n setDragging(undefined);\r\n };\r\n\r\n const setCardRef = (id: string, ref: any) => {\r\n if (!cardsRefs[id] && ref) setCardsRefs((refs) => ({ ...refs, [id]: ref }));\r\n };\r\n\r\n const maxAnswers = Number.parseInt(max, 10);\r\n\r\n return (\r\n \r\n = maxAnswers}\r\n />\r\n \r\n\r\n {variable.choiceList.map((choice) => (\r\n = maxAnswers\r\n }\r\n id={choice.elementId}\r\n key={choice.name}\r\n text={translate(choice, \"text\", language)}\r\n imageUrl={translate(choice, \"imageurl\", language)}\r\n width={bucketWidth}\r\n left={isChoiceSelected(choice) ? destinationLeft : 0}\r\n height={getCardHeight(choice)}\r\n top={getCardTop(\r\n isChoiceSelected(choice) ? destinationChoices : originChoices,\r\n choice,\r\n )}\r\n bounds={bounds}\r\n onDrag={onChoiceDrag(choice)}\r\n onDrop={onChoiceDrop(choice)}\r\n setCardRef={setCardRef}\r\n />\r\n ))}\r\n
    \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n drillDown: {\r\n composes: \"drill-down\",\r\n },\r\n variable: {\r\n composes: \"drill-down__variable\",\r\n },\r\n label: {\r\n composes: \"drill-down__label\",\r\n display: \"block\",\r\n fontWeight: 600,\r\n marginTop: 20,\r\n marginBottom: 4,\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport { useSelector } from \"react-redux\";\r\nimport useStyles from \"./DrillDownRenderer.styles\";\r\nimport { VariableModel } from \"../../../models/VariableModel\";\r\nimport { StoreState } from \"../../../models/states/StoreState\";\r\nimport { translate } from \"../../../models/utilities/translationUtilities\";\r\nimport { getRendererProps, RendererProps } from \"../BaseRenderer\";\r\nimport { removeHtmlTags, isNullOrEmpty } from \"../../../utils\";\r\nimport Select from \"../../select/Select\";\r\nimport { MentionModel } from \"../../../models/MentionModel\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport ChoiceOpenEndRenderer from \"./ChoiceOpenEndRenderer\";\r\nimport { size } from \"../../../models/utilities/questionUtilities\";\r\nimport { getSettingString, getSettingNumber } from \"../../../models/utilities/settingUtilities\";\r\nimport useRecall from \"../../../hooks/useRecall\";\r\nimport { usePickMentions } from \"../../../hooks/useMentions\";\r\n\r\ninterface VariableProps extends RendererProps {\r\n variable: VariableModel;\r\n parentVariable: VariableModel;\r\n mentions: { [variableName: string]: MentionModel[] };\r\n onVariableChanged(variableName: string, value: string[]): void;\r\n openEndValue?: { [key: string]: string };\r\n getFirstOpenEndedChoice(variable: VariableModel): ChoiceModel;\r\n onOpenEndChange(variable: VariableModel, choice: ChoiceModel, text: string): void;\r\n onOpenEndBlur(variable: VariableModel, choice: ChoiceModel): void;\r\n}\r\n\r\nfunction DrillDownVariable(props: VariableProps) {\r\n const {\r\n question,\r\n variable,\r\n parentVariable,\r\n mentions,\r\n onVariableChanged,\r\n openEndValue,\r\n getFirstOpenEndedChoice,\r\n onOpenEndChange,\r\n onOpenEndBlur,\r\n } = props;\r\n\r\n const theme = useTheme();\r\n const classes = useStyles({ ...props, theme });\r\n const language = useSelector((state: StoreState) => state.interview.language);\r\n const surveyTheme = useSelector((state: StoreState) => state.interview.theme);\r\n\r\n const openEndChoice = getFirstOpenEndedChoice(variable);\r\n\r\n const min = variable.settings.MinRequiredAnswers;\r\n const max = variable.settings.MaxAllowedAnswers;\r\n const varMentions = mentions[variable.name];\r\n const parentVarMentions = parentVariable ? mentions[parentVariable.name] : undefined;\r\n const isMultiple = min > 1 || max > 1;\r\n\r\n const availableChoices = React.useMemo(() => {\r\n if (!parentVariable) {\r\n return variable.choiceList;\r\n }\r\n\r\n const parentMentionValues = parentVarMentions ? parentVarMentions.map((m) => m.value) : [];\r\n return variable.choiceList.filter(\r\n (choice) =>\r\n isNullOrEmpty(choice.parentValue) ||\r\n parentMentionValues.includes(choice.parentValue),\r\n );\r\n }, [parentVariable, parentVarMentions, variable]);\r\n\r\n const availableOptions = React.useMemo(\r\n () =>\r\n availableChoices.map((choice) => ({\r\n id: choice.elementId,\r\n label: translate(choice, \"TEXT\", language),\r\n value: choice.value,\r\n })),\r\n [availableChoices, language],\r\n );\r\n\r\n const emptyAnswerOption = React.useMemo(\r\n () => ({\r\n id: `${variable.elementId}_EMPTY`,\r\n label: removeHtmlTags(translate(surveyTheme, \"DropdownEmptyAnswer\", language)),\r\n value: \"\",\r\n }),\r\n [variable, language, surveyTheme],\r\n );\r\n\r\n const options = React.useMemo(() => [emptyAnswerOption, ...availableOptions], [\r\n emptyAnswerOption,\r\n availableOptions,\r\n ]);\r\n\r\n const variableText = useRecall(translate(variable, \"Text\", language));\r\n\r\n return (\r\n
    \r\n \r\n m.value || \"\") : []}\r\n multiple={isMultiple}\r\n onChange={(value) => onVariableChanged(variable.name, value)}\r\n options={options}\r\n size={size(question)}\r\n />\r\n {openEndChoice && (\r\n onOpenEndBlur(variable, choice)}\r\n onOpenEndChange={(choice, text) => onOpenEndChange(variable, choice, text)}\r\n size={getSettingString(openEndChoice, \"OpenEndSize\", \"Medium\")}\r\n lines={getSettingNumber(openEndChoice, \"OpenEndLines\", 2)}\r\n />\r\n )}\r\n
    \r\n );\r\n}\r\n\r\ninterface Props extends RendererProps {\r\n variables: VariableModel[];\r\n onVariableChanged(variableName: string, value: string[]): void;\r\n openEndValue?: { [key: string]: string };\r\n getFirstOpenEndedChoice(variable: VariableModel): ChoiceModel;\r\n onOpenEndChange(variable: VariableModel, choice: ChoiceModel, text: string): void;\r\n onOpenEndBlur(variable: VariableModel, choice: ChoiceModel): void;\r\n}\r\n\r\nexport default function DrillDownRenderer(props: Props) {\r\n const {\r\n variables,\r\n onVariableChanged,\r\n openEndValue,\r\n getFirstOpenEndedChoice,\r\n onOpenEndChange,\r\n onOpenEndBlur,\r\n } = props;\r\n const theme = useTheme();\r\n const classes = useStyles({ ...props, theme });\r\n const drillDownMentions = usePickMentions(variables.map((v) => v.name));\r\n\r\n return (\r\n
    \r\n {variables.map((variable) => (\r\n \r\n ))}\r\n
    \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { intersectionBy, find } from \"../../utils/lodash\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { getSettingBoolean } from \"../../models/utilities/settingUtilities\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport { isNullOrEmpty } from \"../../utils\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { hasOpenEnd } from \"../../models/utilities/choiceUtilities\";\r\nimport DrillDownRenderer from \"../renderers/v2/DrillDownRenderer\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { setVariableMentions } from \"../../redux/actions\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n popupX: number;\r\n popupY: number;\r\n openEndValue?: { [key: string]: string };\r\n}\r\n\r\nexport class DrillDownControl extends BaseControl {\r\n drillDownRef: HTMLElement;\r\n\r\n popUpRef: HTMLDivElement;\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n popupX: 0,\r\n popupY: 0,\r\n openEndValue: {},\r\n };\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props): void {\r\n super.initializeQuestion(question, props);\r\n this.setDefaultChoices(props);\r\n this.setState({\r\n popupX: 0,\r\n popupY: 0,\r\n });\r\n this.updateData(props);\r\n }\r\n\r\n setDefaultChoices(props: Props): void {\r\n if (!this.hasMentions(props)) {\r\n for (const variable of props.sequencedVariables) {\r\n const defaultChoices = variable.choiceList.filter((a) =>\r\n getSettingBoolean(a, \"Default\"),\r\n );\r\n\r\n const dropdownMentions = this.getMentions(props, variable.name);\r\n\r\n if (defaultChoices.length > 0 && dropdownMentions.length < 1) {\r\n this.setMentions(props, variable.name, (mentions) => {\r\n mentions = mentions.clear();\r\n for (const choice of defaultChoices) {\r\n mentions = mentions.add(choice.value);\r\n }\r\n return mentions;\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n willUpdateMentions(question: QuestionModel, props: Props) {\r\n // Validate selected choices in the drilldown, making\r\n // sure choices have their parent value selected.\r\n let parentSelected: ChoiceModel[];\r\n\r\n const dropdowns = this.availableDropdowns(props);\r\n for (let i = 0; i < dropdowns.length; i++) {\r\n const dropdown = dropdowns[i];\r\n // Get the selected choices for this dropdown.\r\n const dropdownMentions = this.getMentions(props, dropdown.name);\r\n const selectedChoices = intersectionBy(\r\n dropdown.choiceList,\r\n dropdownMentions,\r\n (c) => c.value,\r\n );\r\n if (i > 0) {\r\n // Remove from the list choices not selected in the parent.\r\n const parentSelectedValues = parentSelected.map((p) => p.value);\r\n const childrenSelected = selectedChoices.filter(\r\n (c) =>\r\n isNullOrEmpty(c.parentValue) ||\r\n parentSelectedValues.includes(c.parentValue),\r\n );\r\n\r\n if (selectedChoices.length !== childrenSelected.length) {\r\n this.setMentions(props, dropdown.name, (mentions) => {\r\n mentions = mentions.clear();\r\n childrenSelected.forEach((choice) => {\r\n const choiceMention = dropdownMentions.find(\r\n (x) => x.value === choice.value,\r\n );\r\n const openEnd = choiceMention && choiceMention.openEnd;\r\n mentions = mentions.add(choice.value, openEnd);\r\n });\r\n return mentions;\r\n });\r\n }\r\n\r\n parentSelected = childrenSelected;\r\n } else {\r\n parentSelected = selectedChoices;\r\n }\r\n }\r\n }\r\n\r\n updateData(props: Props) {\r\n this.setState((s) => {\r\n const newState = { ...s };\r\n this.availableDropdowns(props).forEach((dropdown) => {\r\n const mention = find(\r\n this.getMentions(props, dropdown.name),\r\n (m) => !isNullOrEmpty(m.openEnd),\r\n );\r\n if (mention !== undefined && !isNullOrEmpty(mention.openEnd)) {\r\n newState.openEndValue = {\r\n ...newState.openEndValue,\r\n [dropdown.name]: mention.openEnd,\r\n };\r\n } else {\r\n newState.openEndValue = { ...newState.openEndValue, [dropdown.name]: \"\" };\r\n }\r\n });\r\n return newState;\r\n });\r\n }\r\n\r\n UNSAFE_componentWillReceiveProps(nextProps: Props) {\r\n super.UNSAFE_componentWillReceiveProps(nextProps);\r\n this.updateData(nextProps);\r\n }\r\n\r\n getValue = (props: Props, dropdown: VariableModel) => {\r\n if (dropdown == null) {\r\n return [];\r\n }\r\n return this.getMentions(props, dropdown.name).map((m) => m.value);\r\n };\r\n\r\n onVariableChanged = (variableName: string, value: string[]) => {\r\n this.setMentions(this.props, variableName, (builder) =>\r\n builder.clear().add(value.map((v) => ({ value: v }))),\r\n );\r\n };\r\n\r\n availableDropdowns = (props: Props) => props.sequencedVariables.filter((v) => v.choiceList);\r\n\r\n renderQuestion(question: QuestionModel) {\r\n return (\r\n this.getFirstOpenEndedChoice(variable)}\r\n />\r\n );\r\n }\r\n\r\n onOpenEndChange = (variable: VariableModel, choice: ChoiceModel, text: string) => {\r\n this.setState((state) => {\r\n const newState = { ...state };\r\n newState.openEndValue = {\r\n ...newState.openEndValue,\r\n [variable.name]: this.truncateOpenEnd(choice, text),\r\n };\r\n return newState;\r\n });\r\n };\r\n\r\n onOpenEndBlur = (variable: VariableModel, choice: ChoiceModel) => {\r\n const openEnd = this.state.openEndValue[variable.name];\r\n this.props.dispatch(\r\n setVariableMentions(variable.name, (mentions) =>\r\n mentions.removeValue(choice.value).add(choice.value, openEnd.trim()),\r\n ),\r\n );\r\n };\r\n\r\n getFirstOpenEndedChoice(variable: VariableModel) {\r\n const value = this.getValue(this.props, variable);\r\n return variable.choiceList.find((c) => c.settings.OpenEndType && value.includes(c.value));\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const { questionnaire, question, mentions, useClientValidation } = this.props;\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n const availableDropdowns = this.availableDropdowns(this.props);\r\n for (const dropdown of availableDropdowns) {\r\n const value = this.getValue(this.props, dropdown);\r\n const min = dropdown.settings.MinRequiredAnswers;\r\n const max = dropdown.settings.MaxAllowedAnswers;\r\n if (value.length > 0) {\r\n if (min !== null && value.length < min) {\r\n return this.failValidation(availableDropdowns, \"InvalidChoicesMin\", {\r\n min: String(min),\r\n });\r\n }\r\n if (max !== null && value.length > max) {\r\n return this.failValidation(availableDropdowns, \"InvalidChoicesMax\", {\r\n max: String(max),\r\n });\r\n }\r\n // Check if selected choice has openEnd.\r\n const dropdownMentions = mentions[dropdown.name];\r\n const openEndChoices = dropdown.choiceList.filter(hasOpenEnd);\r\n for (const choice of openEndChoices) {\r\n const mention = dropdownMentions.find((m) => m.value === choice.value);\r\n const openEnd = this.state.openEndValue[dropdown.name];\r\n if (mention) {\r\n const result = this.validateOpenEnd(openEnd, choice, dropdown.name);\r\n if (!result.isValid) {\r\n return result;\r\n }\r\n }\r\n }\r\n } else if (this.isAnswerRequired(questionnaire, question)) {\r\n return this.failValidation(availableDropdowns, \"IncompleteAnswer\");\r\n }\r\n }\r\n return new ValidationBuilder().build();\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { size } from \"../../models/utilities/questionUtilities\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { hasOpenEnd, isVisible } from \"../../models/utilities/choiceUtilities\";\r\nimport { isNullOrEmpty, removeHtmlTags } from \"../../utils/index\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport ChoiceOpenEndRenderer from \"../renderers/v2/ChoiceOpenEndRenderer\";\r\nimport Select, { Option } from \"../select/Select\";\r\nimport {\r\n getSettingString,\r\n getSettingNumber,\r\n getSettingBoolean,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { getChoice } from \"../../models/utilities/variableUtilities\";\r\nimport { respondentSetTimeZone, changeLanguage } from \"../../redux/actions\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n openEndValue?: string;\r\n}\r\n\r\nexport class DropDownControl extends BaseControl {\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {};\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props) {\r\n super.initializeQuestion(question, props);\r\n const [variable] = this.props.sequencedVariables;\r\n if (this.hasMentions(props)) {\r\n const openEnd = this.getMentionOpenEnd(props, variable.name, 0);\r\n if (openEnd) {\r\n this.setState({ openEndValue: openEnd });\r\n }\r\n }\r\n switch (question.type) {\r\n case QuestionType.RespondentLanguage: {\r\n const answers = variable.choiceList || [];\r\n const questionName = question.name;\r\n const mention = this.getMentions(this.props, questionName);\r\n let choice = null;\r\n\r\n if (mention?.length) {\r\n choice = answers.find((answer) => answer.value === mention[0].value);\r\n } else if (!isNullOrEmpty(props.language)) {\r\n choice = answers.find((answer) => answer.value === props.language);\r\n } else {\r\n answers[0];\r\n }\r\n\r\n if (choice) {\r\n this.setMentions(\r\n props,\r\n variable.name,\r\n (mentions) => mentions.set(choice.value),\r\n null,\r\n true,\r\n );\r\n this.props.dispatch(changeLanguage(choice.value));\r\n }\r\n break;\r\n }\r\n case QuestionType.RespondentTimeZone: {\r\n const answers = variable.choiceList || [];\r\n const choice = answers.find((answer) => answer.value === props.timeZone);\r\n if (choice !== undefined) {\r\n this.setMentions(\r\n props,\r\n variable.name,\r\n (mentions) => mentions.set(choice.value),\r\n null,\r\n true,\r\n );\r\n }\r\n break;\r\n }\r\n default: {\r\n this.setDefaultChoices();\r\n break;\r\n }\r\n }\r\n }\r\n\r\n maxValue = () => 1;\r\n\r\n componentDidUpdate(prevProps: Props, prevState: State) {\r\n super.componentDidUpdate(prevProps, prevState);\r\n const { question, language } = this.props;\r\n const [variable] = question.variables;\r\n const mentions = this.getMentions(this.props);\r\n\r\n if (question.type === QuestionType.RespondentLanguage && language !== prevProps.language) {\r\n this.setMentions(this.props, variable.name, (m) => m.set(language));\r\n }\r\n\r\n mentions.forEach((mention) => {\r\n const isValidChoice = this.isValidChoice(mention.value);\r\n const isChoiceNoLongerVisible = this.isChoiceNoLongerVisible(mention.value, prevProps);\r\n if (isValidChoice && isChoiceNoLongerVisible) {\r\n this.setMentions(this.props, variable.name, (m) => m.pull(mention.value));\r\n }\r\n });\r\n }\r\n\r\n setDefaultChoices = () => {\r\n const { sequencedVariables } = this.props;\r\n const [variable] = sequencedVariables;\r\n const { choiceList = [] } = variable;\r\n const defaultVisibleChoices = choiceList.filter(\r\n (choice) => getSettingBoolean(choice, \"Default\") && isVisible(choice),\r\n );\r\n this.setChoicesAsMentions(variable, defaultVisibleChoices);\r\n };\r\n\r\n getValue() {\r\n return this.getMentionValue(this.props) || \"\";\r\n }\r\n\r\n getDropdownText(question: QuestionModel) {\r\n const { theme, language } = this.props;\r\n const value = this.getValue();\r\n const [variable] = question.variables;\r\n const choice = getChoice(variable, value);\r\n if (!choice) {\r\n return translate(theme, \"DropdownEmptyAnswer\", language);\r\n }\r\n return translate(choice, \"TEXT\", language);\r\n }\r\n\r\n onSelectedChanged = (values: string[]) => {\r\n const [value] = values;\r\n const { question, executeUpdateForIdAfterSelection } = this.props;\r\n const [variable] = question.variables;\r\n\r\n if (question.type === QuestionType.RespondentLanguage) {\r\n if (variable.choiceList.some((c) => c.value === value)) {\r\n this.props.dispatch(changeLanguage(value));\r\n }\r\n }\r\n if (question.type === QuestionType.RespondentTimeZone) {\r\n this.props.dispatch(respondentSetTimeZone(value));\r\n }\r\n if (isNullOrEmpty(value)) {\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.clear());\r\n this.disableAndResetHybridQuestionMapppedCell(executeUpdateForIdAfterSelection);\r\n return;\r\n }\r\n\r\n const selectedChoice = getChoice(variable, value);\r\n const choiceHasOpenEnd = this.choiceHasOpenEnd(selectedChoice);\r\n const openEndValue =\r\n choiceHasOpenEnd && !isNullOrEmpty(this.state.openEndValue)\r\n ? this.state.openEndValue.trim()\r\n : undefined;\r\n\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.set(value, openEndValue),\r\n );\r\n\r\n this.disableAndResetHybridQuestionMapppedCell(executeUpdateForIdAfterSelection);\r\n };\r\n\r\n choiceHasOpenEnd = (choice: ChoiceModel): boolean =>\r\n !isNullOrEmpty(choice.value) && hasOpenEnd(choice);\r\n\r\n validate(): ValidationResultModel {\r\n // Bypass old validation only for standalone dropdown (not in hyrbid grid)\r\n if (!this.props.question.parent) {\r\n return new ValidationBuilder().build();\r\n }\r\n return super.validate();\r\n }\r\n\r\n onOpenEndChange = (choice: ChoiceModel, text: string) => {\r\n this.setState({ openEndValue: this.truncateOpenEnd(choice, text) });\r\n };\r\n\r\n onOpenEndBlur = (choice: ChoiceModel) => {\r\n this.setState((prevState, props) => {\r\n const { question } = props;\r\n const [variable] = question.variables;\r\n const openEnd = isNullOrEmpty(prevState.openEndValue)\r\n ? prevState.openEndValue\r\n : prevState.openEndValue.trim();\r\n this.setMentions(props, variable.name, (mentions) =>\r\n mentions.removeValue(choice.value).add(choice.value, openEnd),\r\n );\r\n return {\r\n ...prevState,\r\n openEndValue: openEnd,\r\n };\r\n });\r\n };\r\n\r\n getOpenEndChoice(props: Props) {\r\n const { question } = props;\r\n const value = this.getValue();\r\n const [variable] = question.variables;\r\n if (isNullOrEmpty(value) || !variable) {\r\n return undefined;\r\n }\r\n return getChoice(variable, value);\r\n }\r\n\r\n renderQuestion(question: QuestionModel) {\r\n const { theme, language, sequencedVariables, isDisabled } = this.props;\r\n const openEndChoice = this.getOpenEndChoice(this.props);\r\n\r\n const [variable] = sequencedVariables;\r\n const emptyAnswerOption: Option = {\r\n id: `${variable.elementId}_EMPTY`,\r\n label: removeHtmlTags(translate(theme, \"DropdownEmptyAnswer\", language)),\r\n value: \"\",\r\n };\r\n\r\n const options: Option[] = variable.choiceList.map((choice) => ({\r\n id: choice.elementId,\r\n label: translate(choice, \"TEXT\", language),\r\n value: choice.value,\r\n isNonInteractive: isNullOrEmpty(choice.value),\r\n }));\r\n\r\n const inputSize = size(question);\r\n const questionId = question.parent ? question.parent.elementId : question.elementId;\r\n\r\n return (\r\n <>\r\n \r\n {openEndChoice && (\r\n \r\n )}\r\n \r\n );\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport * as Mixins from \"../../../theme/Mixins\";\r\n\r\nfunction getRelativeSize(originalSize, { TextFontSize, BaseFontSize }) {\r\n return (TextFontSize * originalSize) / BaseFontSize;\r\n}\r\n\r\nexport default createUseStyles({\r\n fileUploadContainer: {\r\n composes: \"file-upload__container\",\r\n height: ({ theme }) => getRelativeSize(256, theme),\r\n border: ({ theme }) => [[3, \"dashed\", theme.ControlBorderColor]],\r\n borderRadius: ({ theme }) => Math.min(theme.BorderRadius, getRelativeSize(256, theme) / 2),\r\n textAlign: \"center\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n flexDirection: \"column\",\r\n },\r\n fileUploadContainerDrag: {\r\n composes: \"file-upload__container--drag\",\r\n border: ({ theme }) => [[3, \"dashed\", theme.PrimaryColor]],\r\n },\r\n fileUploadIcon: {\r\n composes: \"file-upload__icon\",\r\n color: ({ theme }) => theme.PrimaryColor,\r\n margin: [[0, \"auto\"]],\r\n },\r\n fileUploadOptionText: {\r\n composes: \"file-upload__upload-option-text\",\r\n fontWeight: \"bolder\",\r\n margin: [[25, 0]],\r\n },\r\n fileUploadButton: {\r\n \"&:hover\": {\r\n background: ({ theme }) =>\r\n Mixins.darken(theme.PrimaryColor, theme.ActiveHighlightValue),\r\n },\r\n background: ({ theme }) => theme.PrimaryColor,\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n color: ({ theme }) => Mixins.foregroundColor(theme, theme.PrimaryColor),\r\n composes: \"file-upload__button\",\r\n cursor: \"pointer\",\r\n fontSize: ({ theme }) => getRelativeSize(15, theme),\r\n fontWeight: 700,\r\n padding: [[10, 40]],\r\n transition: [[\"background\", \"200ms\", \"ease\"]],\r\n },\r\n fileUploadSelectedFile: {\r\n background: ({ theme }) => Mixins.alpha(theme.ControlBackground, theme.ControlAlpha),\r\n borderRadius: ({ theme }) => Math.min(theme.BorderRadius, theme.ChoiceHeight / 2),\r\n boxShadow: ({ theme }) => `0 0 0 ${theme.BorderWidth}px ${theme.ControlBorderColor} inset`,\r\n composes: \"file-upload__selected-file\",\r\n marginTop: 26,\r\n overflow: \"hidden\",\r\n position: \"relative\",\r\n },\r\n fileUploadFileInfo: {\r\n composes: \"file-upload__file-info\",\r\n height: ({ theme }) => theme.ChoiceHeight,\r\n position: \"relative\",\r\n padding: [[0, 26]],\r\n display: \"flex\",\r\n },\r\n fileUploadFileContainer: {\r\n composes: \"file-upload__file-container\",\r\n flexGrow: 1,\r\n minWidth: 0,\r\n },\r\n fileUploadFileContainerInner: {\r\n display: \"inline-flex\",\r\n minWidth: 0,\r\n maxWidth: \"100%\",\r\n cursor: \"pointer\",\r\n transition: \"color 200ms ease\",\r\n outline: \"none\",\r\n },\r\n fileUploadFileIcon: {\r\n composes: \"file-upload__file-icon\",\r\n display: \"inline-block\",\r\n fontSize: 40,\r\n lineHeight: ({ theme }) => `${theme.ChoiceHeight}px`,\r\n marginRight: 20,\r\n \"& img\": {\r\n borderRadius: 3,\r\n height: 38,\r\n objectFit: \"cover\",\r\n paddingTop: 10,\r\n width: 38,\r\n },\r\n },\r\n fileUploadFileDetails: {\r\n composes: \"file-upload__file-details\",\r\n paddingTop: 10,\r\n fontSize: ({ theme }) => getRelativeSize(15, theme),\r\n lineHeight: \"20px\",\r\n display: \"inline-block\",\r\n minWidth: 0,\r\n },\r\n fileUploadFileName: {\r\n composes: \"file-upload__file-name\",\r\n fontWeight: \"bolder\",\r\n textOverflow: \"ellipsis\",\r\n overflowX: \"hidden\",\r\n whiteSpace: \"nowrap\",\r\n },\r\n fileUploadFileSize: {\r\n composes: \"file-upload__file-size\",\r\n },\r\n fileUploadProgress: {\r\n background: ({ theme }) => theme.SecondaryColor,\r\n composes: \"file-upload__progress\",\r\n height: ({ theme }) => theme.ChoiceHeight,\r\n opacity: 0.15,\r\n position: \"absolute\",\r\n transition: \"width 200ms ease 0s\",\r\n zIndex: 2,\r\n },\r\n fileUploadProgressText: {\r\n composes: \"file-upload__progress-text\",\r\n flexShrink: 0,\r\n fontSize: 15,\r\n fontWeight: \"bolder\",\r\n height: \"50%\",\r\n margin: [[\"auto\", 30]],\r\n },\r\n fileUploadValidationError: {\r\n color: ({ theme }) => theme.ErrorColor,\r\n composes: \"file-upload__validation-error\",\r\n extend: \"fileUploadProgressText\",\r\n fontWeight: \"lighter\",\r\n },\r\n fileUploadValidationErrorIcon: {\r\n composes: \"validation-error__icon\",\r\n marginRight: 10,\r\n },\r\n fileUploadDeleteButton: {\r\n composes: \"file-upload__delete-button\",\r\n height: \"50%\",\r\n margin: [[\"auto\", 0]],\r\n color: ({ theme }) => theme.SecondaryColor,\r\n cursor: \"pointer\",\r\n \"&:hover\": {\r\n color: ({ theme }) => Mixins.darken(theme.SecondaryColor, theme.ActiveHighlightValue),\r\n },\r\n \"&:focus-visible\": {\r\n color: ({ theme }) => theme.PrimaryColor,\r\n },\r\n outline: \"none\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport { FontAwesomeIcon } from \"../../shared/FontAwesome\";\r\nimport useStyle from \"./FileUploadRenderer.styles\";\r\nimport { getFileSize } from \"../../../utils/index\";\r\n\r\ninterface Props extends RendererProps {\r\n variableName?: string;\r\n fileName?: string;\r\n fileSize?: number;\r\n fileType?: string;\r\n fileMime?: string;\r\n fileStatus?: string;\r\n fileBlob?: Blob;\r\n fileProgress?: number;\r\n isValid?: boolean;\r\n onFileOpen?: React.MouseEventHandler;\r\n onClearFile?: Function;\r\n onFileSelection?: (file: File) => void;\r\n browseFilesLabel?: string;\r\n dragFilesLabel?: string;\r\n uploadErrorMessage?: string;\r\n}\r\n\r\nexport default function FileUploadRenderer(props: Props) {\r\n const {\r\n fileName,\r\n fileSize,\r\n fileMime,\r\n fileBlob,\r\n fileProgress,\r\n isValid,\r\n onFileOpen,\r\n onFileSelection,\r\n variableName,\r\n browseFilesLabel,\r\n dragFilesLabel: dragFileLabel,\r\n uploadErrorMessage,\r\n } = props;\r\n const theme = useTheme();\r\n const classes = useStyle({ theme });\r\n const [isDragOver, setIsDragOver] = React.useState(false);\r\n const [dragCounter, setDragCounter] = React.useState(0);\r\n\r\n const isFileSelected = fileName !== undefined && fileName !== \"\";\r\n let browseBtn;\r\n\r\n function onFileSelected(file: File) {\r\n if (file) onFileSelection(file);\r\n }\r\n\r\n function onChange(event: React.ChangeEvent) {\r\n onFileSelected(event.target.files[0]);\r\n }\r\n\r\n function onDrop(event: React.DragEvent) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n if (event.dataTransfer.files && event.dataTransfer.files[0]) {\r\n onFileSelected(event.dataTransfer.files[0]);\r\n }\r\n\r\n setIsDragOver(false);\r\n setDragCounter(0);\r\n }\r\n\r\n function onDragOver(event: React.DragEvent) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n }\r\n\r\n function onDragEnter(event: React.DragEvent) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n setDragCounter(dragCounter + 1);\r\n setIsDragOver(true);\r\n }\r\n\r\n function onDragExit(event: React.DragEvent) {\r\n event.preventDefault();\r\n event.stopPropagation();\r\n const counterValue = dragCounter - 1;\r\n setDragCounter(counterValue);\r\n if (counterValue > 0) return;\r\n setIsDragOver(false);\r\n }\r\n\r\n function onClearFile() {\r\n props.onClearFile();\r\n }\r\n\r\n function onKeyPress(event, func: Function) {\r\n if (event.key === \" \" || event.key === \"Enter\") {\r\n if (func) {\r\n func();\r\n }\r\n event.preventDefault();\r\n }\r\n }\r\n\r\n function getFilePreview() {\r\n switch (fileMime.split(\"/\").shift()) {\r\n case \"image\":\r\n if (!fileBlob) return ;\r\n return fileBlob && \"File;\r\n case \"video\":\r\n return ;\r\n case \"audio\":\r\n return ;\r\n case \"text\":\r\n return ;\r\n case \"application\":\r\n switch (fileMime.split(\"/\").pop()) {\r\n case \"pdf\":\r\n return ;\r\n case \"x-zipped-compressed\":\r\n return ;\r\n case \"vnd.ms-excel\":\r\n case \"vnd.openxmlformats-officedocument.spreadsheetml.sheet\":\r\n return ;\r\n case \"msword\":\r\n case \"vnd.openxmlformats-officedocument.wordprocessingml.document\":\r\n return ;\r\n case \"vnd.ms-powerpoint\":\r\n case \"vnd.openxmlformats-officedocument.presentationml.presentation\":\r\n return ;\r\n default:\r\n return ;\r\n }\r\n default:\r\n return ;\r\n }\r\n }\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n \r\n
    \r\n\r\n
    {dragFileLabel}
    \r\n {\r\n onKeyPress(event, () => browseBtn.click());\r\n }}\r\n >\r\n \r\n
    \r\n \r\n {isFileSelected && (\r\n
    \r\n {isValid && fileProgress < 1 && (\r\n \r\n )}\r\n
    \r\n
    \r\n \r\n
    {getFilePreview()}
    \r\n
    \r\n
    {fileName}
    \r\n
    \r\n {getFileSize(fileSize)}\r\n
    \r\n
    \r\n
    \r\n
    \r\n {isValid ? (\r\n
    \r\n {(fileProgress * 100).toFixed(0)}%\r\n
    \r\n ) : (\r\n
    \r\n \r\n {uploadErrorMessage}\r\n
    \r\n )}\r\n {\r\n onKeyPress(event, onClearFile);\r\n }}\r\n role=\"button\"\r\n tabIndex={0}\r\n >\r\n \r\n
    \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { CancelTokenSource } from \"axios\";\r\nimport { CancellationTokenSource } from \"../models/CancellationTokenSource\";\r\n\r\nexport class AxiosCancellationTokenSource implements CancellationTokenSource {\r\n private readonly source: CancelTokenSource;\r\n\r\n constructor(source: CancelTokenSource) {\r\n this.source = source;\r\n }\r\n\r\n cancel = () => {\r\n this.source.cancel();\r\n };\r\n}\r\n","import axios from \"axios\";\r\nimport {\r\n fileUploadCompleted,\r\n fileUploadStarted,\r\n fileUploadProgress,\r\n fileUploadFailed,\r\n getFileFailed,\r\n fileUploadCleared,\r\n setNavigationEnabled,\r\n} from \"../actions\";\r\nimport { StoreState } from \"../../models/states/StoreState\";\r\nimport { SuccessModel } from \"../../models/SuccessModel\";\r\nimport { ThunkActionType } from \"../actions/types\";\r\nimport { makeAxios } from \"./validation\";\r\nimport { FileUploadErrorModel } from \"../../models/FileUploadErrorModel\";\r\nimport { AxiosCancellationTokenSource } from \"../../utils/AxiosCancellationTokenSource\";\r\n\r\nconst enableNavigation: ThunkActionType = (dispatch, getState) => {\r\n const state = getState();\r\n if (\r\n Object.values(state.files.filesByVariableName).every((v) =>\r\n v.every((f) => f.status === \"completed\" || f.status === \"failed\"),\r\n )\r\n ) {\r\n dispatch(setNavigationEnabled(true));\r\n }\r\n};\r\n\r\nexport function uploadFile(\r\n variableName: string,\r\n matrix: number,\r\n file: File,\r\n callback: (serverErrorKey?: string) => void,\r\n): ThunkActionType> {\r\n return async (dispatch, getState) => {\r\n const state: StoreState = getState();\r\n if (state.interview.respondent.simulated) {\r\n dispatch(fileUploadCompleted(variableName, matrix));\r\n callback();\r\n return;\r\n }\r\n const data = new FormData();\r\n data.append(\"variableName\", variableName);\r\n data.append(\"matrix\", String(matrix));\r\n data.append(\"file\", file);\r\n\r\n const cancelToken = axios.CancelToken;\r\n const source = cancelToken.source();\r\n const cancellationTokenSource = new AxiosCancellationTokenSource(source);\r\n\r\n dispatch(\r\n fileUploadStarted(variableName, matrix, file.name, file.size, cancellationTokenSource),\r\n );\r\n dispatch(setNavigationEnabled(false));\r\n try {\r\n const result = await dispatch(makeAxios()).post(\r\n \"f/Upload\",\r\n data,\r\n {\r\n cancelToken: source.token,\r\n onUploadProgress: (pe: ProgressEvent) => {\r\n if (pe.lengthComputable)\r\n dispatch(\r\n fileUploadProgress(variableName, matrix, pe.loaded / pe.total),\r\n );\r\n },\r\n },\r\n );\r\n if (result.status !== 200) throw new Error(`Unexpected status ${result.status}`);\r\n const { key } = result.data;\r\n if (key) {\r\n dispatch(\r\n fileUploadFailed(\r\n variableName,\r\n matrix,\r\n file.name,\r\n new Error(`File upload failed ${file.name}`),\r\n ),\r\n );\r\n callback(key);\r\n return;\r\n }\r\n dispatch(fileUploadCompleted(variableName, matrix));\r\n callback();\r\n } catch (err) {\r\n if (axios.isCancel(err)) return;\r\n dispatch(fileUploadFailed(variableName, matrix, file.name, err));\r\n const { response } = err;\r\n if (response && response.status === 413) {\r\n callback(\"InvalidFileSize\");\r\n return;\r\n }\r\n callback(\"UnexpectedError\");\r\n } finally {\r\n dispatch(enableNavigation);\r\n }\r\n };\r\n}\r\n\r\nexport function getFile(\r\n variableName: string,\r\n fileName: string,\r\n mimType: string,\r\n matrix = 0,\r\n): ThunkActionType> {\r\n return async (dispatch, getState) => {\r\n try {\r\n const state: StoreState = getState();\r\n if (state.interview.respondent.simulated) return null;\r\n const result = await dispatch(makeAxios()).get(\"f/GetFile\", {\r\n params: { variableName, fileName, matrix },\r\n responseType: \"blob\",\r\n });\r\n if (result.status !== 200) throw new Error(`Unexpected status ${result.status}`);\r\n if (result.data.type !== mimType) throw new Error(`File not found ${fileName}`);\r\n return result.data;\r\n } catch (err) {\r\n dispatch(getFileFailed(variableName, fileName, err));\r\n return null;\r\n }\r\n };\r\n}\r\n\r\nexport function clearFile(variableName: string, matrix: number): ThunkActionType> {\r\n return async (dispatch, getState) => {\r\n const state: StoreState = getState();\r\n if (state.interview.respondent.simulated) return;\r\n dispatch(fileUploadCleared(variableName, matrix));\r\n dispatch(enableNavigation);\r\n try {\r\n const result = await dispatch(makeAxios()).delete(\"f/delete\", {\r\n params: { variableName, matrix },\r\n });\r\n if (result.status !== 200) throw new Error(`Unexpected status ${result.status}`);\r\n if (!result.data.success) throw new Error(`File deletion failed ${variableName}`);\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n };\r\n}\r\n","import React from \"react\";\r\nimport { saveAs } from \"file-saver\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { getSettingString } from \"../../models/utilities/settingUtilities\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport FileUploadRenderer from \"../renderers/v2/FileUploadRenderer\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { ThunkDispatchProp } from \"../../models/actions/ThunkDispatchProp\";\r\nimport { setVariableMentions, validationClear } from \"../../redux/actions\";\r\nimport { getFile, clearFile, uploadFile } from \"../../redux/thunks/file\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\ninterface Props extends ControlProps, ThunkDispatchProp {}\r\n\r\ninterface State {\r\n fileName: string;\r\n mimeType: string;\r\n size: number;\r\n fileBlob: Blob;\r\n status: string;\r\n progress: number;\r\n validationResult?: ValidationResultModel;\r\n isValid: boolean;\r\n errorMessage: string;\r\n}\r\n\r\nexport class FileUploadControl extends BaseControl {\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n fileName: \"\",\r\n size: 0,\r\n mimeType: \"\",\r\n fileBlob: null,\r\n status: \"\",\r\n progress: 0,\r\n isValid: true,\r\n errorMessage: \"\",\r\n };\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props) {\r\n super.initializeQuestion(question, props);\r\n this.updateState(props);\r\n const [variable] = props.question.variables;\r\n const mention = this.getMention(props, variable.name);\r\n if (mention) {\r\n const stateObject = JSON.parse(mention.value);\r\n props\r\n .dispatch(getFile(variable.name, stateObject.fileName, stateObject.mimeType))\r\n .then((data) => {\r\n this.setState((state) => ({ ...state, fileBlob: data }));\r\n });\r\n }\r\n }\r\n\r\n UNSAFE_componentWillReceiveProps(nextProps: Props) {\r\n this.updateState(nextProps);\r\n }\r\n\r\n updateState(props: Props) {\r\n this.setState((s) => {\r\n const newState = { ...s };\r\n const [variable] = props.question.variables;\r\n\r\n const mention = this.getMention(props, variable.name);\r\n if (mention) {\r\n const stateObject = JSON.parse(mention.value);\r\n newState.fileName = stateObject.fileName;\r\n newState.size = stateObject.size;\r\n newState.mimeType = stateObject.mimeType;\r\n }\r\n\r\n const file = this.getFile(props, variable.name);\r\n if (file) {\r\n newState.status = file.status;\r\n newState.progress = file.progress;\r\n }\r\n return newState;\r\n });\r\n }\r\n\r\n onFileOpen = () => {\r\n const { fileBlob, fileName } = this.state;\r\n if (fileBlob) saveAs(fileBlob, fileName);\r\n };\r\n\r\n onClearFile = () => {\r\n this.clearFileSelection();\r\n };\r\n\r\n onFileSelection = (selectedFile: File) => {\r\n const { name, size, type } = selectedFile;\r\n const { question, matrix, dispatch } = this.props;\r\n const [variable] = question.variables;\r\n this.setState((state) => ({\r\n ...state,\r\n fileName: name,\r\n size,\r\n mimeType: type,\r\n fileBlob: new Blob([selectedFile]),\r\n status: \"\",\r\n progress: 0,\r\n isValid: true,\r\n errorMessage: \"\",\r\n }));\r\n\r\n dispatch(setVariableMentions(variable.name, (mentions) => mentions.clear()));\r\n\r\n dispatch(validationClear());\r\n\r\n if (size > 0) {\r\n const addMention = () => {\r\n dispatch(\r\n setVariableMentions(variable.name, (mentions) =>\r\n mentions.add(\r\n JSON.stringify({\r\n fileName: name,\r\n size,\r\n mimeType: type,\r\n }),\r\n ),\r\n ),\r\n );\r\n };\r\n\r\n if (!this.isFileSizeValid(selectedFile.size)) {\r\n this.setInvalidState(\"InvalidFileSize\");\r\n addMention();\r\n } else if (!this.isMimeTypeValid(selectedFile.name)) {\r\n this.setInvalidState(\"InvalidFileType\");\r\n addMention();\r\n } else {\r\n dispatch(\r\n uploadFile(variable.name, matrix, selectedFile, (serverErrorKey) => {\r\n if (serverErrorKey) {\r\n this.setInvalidState(serverErrorKey);\r\n } else {\r\n addMention();\r\n }\r\n }),\r\n );\r\n }\r\n }\r\n };\r\n\r\n setInvalidState = (errorKey) => {\r\n const message = translate(this.props.questionnaire, errorKey, this.props.language);\r\n this.setState((state) => ({ ...state, isValid: false, errorMessage: message }));\r\n };\r\n\r\n clearFileSelection = () => {\r\n const [variable] = this.props.question.variables;\r\n this.props.dispatch(clearFile(variable.name, this.props.matrix));\r\n this.setState({ fileName: \"\", size: 0, mimeType: \"\", fileBlob: null });\r\n this.setMentions(this.props, variable.name, (m) => m.clear());\r\n };\r\n\r\n renderQuestion() {\r\n const {\r\n fileName,\r\n size,\r\n mimeType,\r\n status,\r\n fileBlob,\r\n progress,\r\n isValid,\r\n errorMessage,\r\n } = this.state;\r\n const { theme, language } = this.props;\r\n const [variable] = this.props.question.variables;\r\n const browseFilesLabel = translate(theme, \"BrowseFiles\", language) || \"BrowseFiles\";\r\n const dragFilesLabel = translate(theme, \"DragDropFiles\", language) || \"DragDropFiles\";\r\n\r\n return (\r\n \r\n );\r\n }\r\n\r\n validate(): ValidationResultModel {\r\n const { question, useClientValidation, questionnaire } = this.props;\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n const [variable] = question.variables;\r\n const required = this.isAnswerRequired(questionnaire, question);\r\n const mention = this.getMention(this.props, variable.name);\r\n\r\n if (required && !mention)\r\n return new ValidationBuilder().fail(variable.name, \"IncompleteAnswer\").build();\r\n\r\n if (mention) {\r\n const mentionValueObject = JSON.parse(mention.value);\r\n\r\n if (!this.isMimeTypeValid(mentionValueObject.fileName))\r\n return new ValidationBuilder().fail(variable.name, \"InvalidFileType\").build();\r\n\r\n if (!this.isFileSizeValid(mentionValueObject.size)) {\r\n const maxSize = parseFloat(getSettingString(question, \"MaxFileSize\")) * 1024;\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"InvalidFileSize\", { max: maxSize.toString() })\r\n .build();\r\n }\r\n }\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n isFileSizeValid(size: number): boolean {\r\n const maxSize = parseFloat(getSettingString(this.props.question, \"MaxFileSize\")) * 1024;\r\n if (maxSize && maxSize > 0 && size > maxSize) {\r\n return false;\r\n }\r\n\r\n return true;\r\n }\r\n\r\n isMimeTypeValid(fileName: string): boolean {\r\n const acceptsMimeTypes = getSettingString(this.props.question, \"AcceptedFileTypes\");\r\n let acceptsMimeType: string[] = [];\r\n if (acceptsMimeTypes && acceptsMimeTypes.length > 0) {\r\n acceptsMimeType = acceptsMimeTypes.split(\",\");\r\n }\r\n const fileExtension = fileName.split(\".\").pop();\r\n\r\n if (acceptsMimeType.length === 0) {\r\n return true;\r\n }\r\n\r\n return fileName !== undefined && acceptsMimeType.some((m) => m.includes(fileExtension));\r\n }\r\n}\r\n","import React from \"react\";\r\n\r\nimport { isEqual, difference, min, pull, find, isEmpty, every, each } from \"../../utils/lodash\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { RowType } from \"../../models/enums/RowType\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport {\r\n getSettingString,\r\n hasSetting,\r\n getSettingNumber,\r\n getSettingBoolean,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { isNullOrEmpty, getContainerDiv } from \"../../utils\";\r\nimport { Signal } from \"../../signals\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport {\r\n variableForCell,\r\n openEndVariableName,\r\n isSingleChoice,\r\n isHeaderRow,\r\n hasOpenEnd,\r\n} from \"../../models/utilities/gridUtilities\";\r\nimport { AxisModel } from \"../../models/AxisModel\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { __getStore__ } from \"../../redux/store\";\r\nimport GridRenderer from \"../renderers/v2/GridRenderer\";\r\nimport { isVisible } from \"../../models/utilities/choiceUtilities\";\r\nimport { ElementWithSettings } from \"../../models/ElementWithSettings\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport { SurveyMode } from \"../../models/enums/SurveyMode\";\r\nimport { ThunkDispatchProp } from \"../../models/actions/ThunkDispatchProp\";\r\nimport {\r\n getSoftPromptCode,\r\n shouldSetSoftPromptCode,\r\n} from \"../../models/utilities/questionUtilities\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\nimport { evaluateIsVariableVisible } from \"../../redux/thunks/evaluator\";\r\n\r\ninterface Props extends ControlProps, ThunkDispatchProp {}\r\n\r\ninterface State {\r\n validationResult?: ValidationResultModel;\r\n openEndValue: { [key: string]: string };\r\n expandedRowsIndices: number[];\r\n}\r\nexport class GridControl extends BaseControl {\r\n validateSignal = new Signal();\r\n tableRef: HTMLTableElement;\r\n accordionRefs: HTMLDivElement[] = [];\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n openEndValue: {},\r\n expandedRowsIndices: [],\r\n };\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props): void {\r\n super.initializeQuestion(question, props);\r\n this.setState(\r\n {\r\n openEndValue: {},\r\n validationResult: null,\r\n expandedRowsIndices: [],\r\n },\r\n () => this.updateData(props),\r\n );\r\n this.initializeOpenEnd(question, props);\r\n this.setDefaultValues(props.sequencedVariables);\r\n // Remove mentions from rows no longer available\r\n each(question.rows, (r) => {\r\n if (\r\n this.axisHasMentions(r) &&\r\n every(props.sequencedRows, (sequencedRow) => sequencedRow.index !== r.index)\r\n ) {\r\n each(r.variables, (v) => {\r\n this.setMentions(this.props, v.name, (m) => m.clear());\r\n });\r\n }\r\n });\r\n }\r\n\r\n setOpenEndState = (openEndName: string, openEndValue: string) => {\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n newState.openEndValue[openEndName] = openEndValue;\r\n return newState;\r\n });\r\n };\r\n\r\n initializeOpenEnd(question: QuestionModel, props: Props) {\r\n question.rows.forEach((row) => {\r\n row.variables.forEach((variable) => {\r\n const answersWithOpenEnd = variable.choiceList.filter((answer) =>\r\n hasSetting(answer, \"OpenEndType\"),\r\n );\r\n answersWithOpenEnd.forEach((answer) => {\r\n const openEndName = openEndVariableName(answer);\r\n const mentions = this.getMentions(props, openEndName);\r\n const mention = mentions != null ? mentions[0] : undefined;\r\n const openEndValue = !isNullOrEmpty(mention?.openEnd) ? mention.openEnd : \"\";\r\n if (this.state.openEndValue[openEndName] !== openEndValue) {\r\n this.setOpenEndState(openEndName, openEndValue);\r\n }\r\n });\r\n });\r\n\r\n if (!hasSetting(row, \"OpenEndType\")) {\r\n return;\r\n }\r\n\r\n const openEndName = openEndVariableName(row);\r\n const mentions = this.getMentions(props, openEndName);\r\n const mention = mentions != null ? mentions[0] : undefined;\r\n const openEndValue = !isNullOrEmpty(mention?.openEnd) ? mention.openEnd : \"\";\r\n if (this.state.openEndValue[openEndName] !== openEndValue) {\r\n this.setOpenEndState(openEndName, openEndValue);\r\n }\r\n });\r\n }\r\n\r\n UNSAFE_componentWillReceiveProps(nextProps: Props) {\r\n this.updateData(nextProps);\r\n this.initializeOpenEnd(nextProps.question, nextProps);\r\n super.UNSAFE_componentWillReceiveProps(nextProps);\r\n }\r\n\r\n componentDidUpdate(prevProps: Props, prevState: State) {\r\n super.componentDidUpdate(prevProps, prevState);\r\n const rows = this.props.sequencedRows;\r\n // When validation result changes and is invalid\r\n if (\r\n this.state.validationResult &&\r\n !this.state.validationResult.isValid &&\r\n !isEqual(prevState.validationResult, this.state.validationResult)\r\n ) {\r\n if (!this.hasMaxAnswers(this.props.question)) {\r\n // Expand all rows to make error messages visible\r\n this.setState((state) => {\r\n const newState = { ...state };\r\n newState.expandedRowsIndices = [\r\n ...rows.filter((r) => !isHeaderRow(r)).map((r) => r.index),\r\n ];\r\n return newState;\r\n });\r\n } else {\r\n // Scroll to the first invalid row\r\n const firstInvalidRow = rows.find(\r\n (row) => !isHeaderRow(row) && this.isRowInvalid(this.state, this.props, row),\r\n );\r\n if (firstInvalidRow && !this.isRowExpanded(firstInvalidRow.index)) {\r\n this.onExpandRow(firstInvalidRow);\r\n }\r\n }\r\n }\r\n }\r\n\r\n didUpdateMentions(question: QuestionModel, prevProps: Props) {\r\n super.didUpdateMentions(question, prevProps);\r\n const { mentions } = this.props;\r\n const { mentions: prevMentions } = prevProps;\r\n const mentionKeys = Object.keys(mentions);\r\n const prevMentionKeys = Object.keys(prevMentions);\r\n if (this.hasMaxAnswers(question)) {\r\n // Get the new/changed mention ir order to decide which row should be collapsed\r\n const newMentions = difference(mentionKeys, prevMentionKeys);\r\n if (newMentions.length > 0) {\r\n newMentions.forEach((variableName) => {\r\n this.openNextRow(variableName);\r\n });\r\n } else {\r\n mentionKeys.forEach((variableName) => {\r\n if (!isEqual(mentions[variableName], prevMentions[variableName])) {\r\n this.openNextRow(variableName);\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n setDefaultValues(variables: VariableModel[]) {\r\n variables\r\n .filter((variable) => !this.hasMentions(this.props, variable.name))\r\n .forEach((variable) => {\r\n const { choiceList = [] } = variable;\r\n const defaultVisibleChoices = choiceList.filter(\r\n (choice) => getSettingBoolean(choice, \"Default\") && isVisible(choice),\r\n );\r\n this.setChoicesAsMentions(variable, defaultVisibleChoices);\r\n });\r\n }\r\n\r\n updateData(props: Props) {\r\n const { sequencedRows } = props;\r\n if (isEmpty(this.state.expandedRowsIndices)) {\r\n this.setState((s, p) => {\r\n const newState = { ...s };\r\n if (\r\n !this.hasMaxAnswers(p.question) ||\r\n getSettingBoolean(p.question, \"DisableAutoCollapse\")\r\n ) {\r\n newState.expandedRowsIndices.push(\r\n ...sequencedRows.filter((row) => !isHeaderRow(row)).map((row) => row.index),\r\n );\r\n } else {\r\n const row = sequencedRows.find((r) => !isHeaderRow(r));\r\n if (row) {\r\n newState.expandedRowsIndices.push(row.index);\r\n }\r\n }\r\n return newState;\r\n });\r\n }\r\n }\r\n\r\n isRowInvalid(state: State, props: Props, row: AxisModel) {\r\n return props.sequencedColumns.some((column) => {\r\n const cellVariable = variableForCell(row, column);\r\n const cellErrors = state.validationResult.errorsByVariableName[cellVariable.name];\r\n return cellErrors && cellErrors.length > 0;\r\n });\r\n }\r\n\r\n hasMaxAnswers = (question: QuestionModel) => this.getMaxAnswers(question) > 0;\r\n\r\n getMaxAnswers = (question: QuestionModel) => {\r\n if (isSingleChoice(question)) {\r\n return 1;\r\n }\r\n const rows = this.props.sequencedRows;\r\n const maxAnswers = getSettingNumber(question, \"MaxAllowedAnswers\", -1);\r\n const numberOfChoices = rows.filter((row) => !isHeaderRow(row)).length;\r\n return min([maxAnswers, numberOfChoices].filter(Boolean));\r\n };\r\n\r\n onIsRowSelected = (row: AxisModel) => {\r\n if (row.variables[0] == null) {\r\n return false;\r\n }\r\n return this.getMention(this.props, row.variables[0].name) != null;\r\n };\r\n\r\n onOpenEndChange = (answer: any, event: any) => {\r\n const { value } = event.target;\r\n this.setState((state) => {\r\n const newState = { ...state };\r\n newState.openEndValue = {\r\n ...newState.openEndValue,\r\n [openEndVariableName(answer)]: this.truncateOpenEnd(answer, value),\r\n };\r\n return newState;\r\n });\r\n };\r\n\r\n onOpenEndBlur = (answer: any) => {\r\n const openEndName = openEndVariableName(answer);\r\n const openEnd = this.state.openEndValue[openEndName];\r\n if (isNullOrEmpty(openEnd)) {\r\n this.setMentions(this.props, openEndName, (mentions) => mentions.clear());\r\n } else {\r\n this.setMentions(this.props, openEndName, (mentions) =>\r\n mentions.set(getSettingString(answer, \"OpenEndAnswerCode\", \"0\"), openEnd.trim()),\r\n );\r\n }\r\n };\r\n\r\n onExpandRow = (row: AxisModel) => {\r\n this.setState((state) => {\r\n const newState = { ...state };\r\n newState.expandedRowsIndices = [...state.expandedRowsIndices];\r\n if (this.isRowExpanded(row.index, newState)) {\r\n pull(newState.expandedRowsIndices, row.index);\r\n } else {\r\n newState.expandedRowsIndices = [row.index];\r\n }\r\n return newState;\r\n });\r\n };\r\n\r\n onAddAccordionRef = (index: number, ref: HTMLDivElement) => {\r\n this.accordionRefs[index] = ref;\r\n };\r\n\r\n openNextRow(currentRowVariableName: string) {\r\n if (\r\n this.getMentions(this.props, currentRowVariableName).length ===\r\n this.getMaxAnswers(this.props.question)\r\n ) {\r\n const rows = this.props.sequencedRows;\r\n const currentRow = rows.find((row) =>\r\n row.variables.map((variable) => variable.name).includes(currentRowVariableName),\r\n );\r\n if (currentRow && !hasOpenEnd(currentRow)) {\r\n const nextRow = rows.find(\r\n (row, index) =>\r\n !isHeaderRow(row) &&\r\n index > this.getRowPosition(currentRow) &&\r\n !this.axisHasMentions(row),\r\n );\r\n if (nextRow) {\r\n if (!this.isRowExpanded(nextRow.index)) {\r\n this.adjustScrollPosition(currentRow);\r\n this.onExpandRow(nextRow);\r\n }\r\n } else {\r\n this.onExpandRow(currentRow);\r\n }\r\n }\r\n }\r\n }\r\n\r\n adjustScrollPosition = (row: AxisModel) => {\r\n const ref = this.accordionRefs[row.index];\r\n if (ref) {\r\n const rects = ref.getBoundingClientRect();\r\n if (rects.top < 0) {\r\n const { mode } = __getStore__().getState().application;\r\n const bannerHeight = mode !== SurveyMode.Normal ? -38 : 0;\r\n const container = getContainerDiv();\r\n container.scrollTo(\r\n 0,\r\n container.scrollTop + rects.top + rects.height + bannerHeight,\r\n );\r\n }\r\n }\r\n };\r\n\r\n getRowPosition = (row: AxisModel) =>\r\n this.props.sequencedRows.findIndex((r) => r.index === row.index);\r\n\r\n isRowExpanded = (rowIndex: number, state: State = this.state) =>\r\n state.expandedRowsIndices.includes(rowIndex);\r\n\r\n cellHasMentions(row: AxisModel, column: AxisModel) {\r\n const { question } = this.props;\r\n const softPromptCode = shouldSetSoftPromptCode(question)\r\n ? getSoftPromptCode(question)\r\n : null;\r\n const variable = variableForCell(row, column);\r\n const mentions = this.getMentions(this.props, variable.name);\r\n return mentions.some((mention) => {\r\n const isMentionSoftPrompt = mention.value === softPromptCode;\r\n const mentionHasValue =\r\n mention.value !== undefined && mention.value !== null && !isMentionSoftPrompt;\r\n const mentionHasOpenEnd =\r\n mention.openEnd !== undefined &&\r\n mention.openEnd !== null &&\r\n mention.openEnd.length > 0;\r\n return mentionHasValue || mentionHasOpenEnd;\r\n });\r\n }\r\n\r\n onShouldHideCell = (row: AxisModel, column: AxisModel) => {\r\n const variable = variableForCell(row, column);\r\n if (!variable || variable.skipLogic == null) {\r\n return false;\r\n }\r\n const { dispatch } = this.props;\r\n const isHidden = !dispatch(evaluateIsVariableVisible(variable));\r\n\r\n if (isHidden && this.hasMentions(this.props, variable.name)) {\r\n this.setMentions(this.props, variable.name, (m) => m.clear());\r\n }\r\n\r\n return isHidden;\r\n };\r\n\r\n isChoiceSelected = (variable: VariableModel, choice: ChoiceModel) => {\r\n const mentions = this.getMentions(this.props, variable.name);\r\n return mentions.some((mention) => mention.value === choice.value);\r\n };\r\n\r\n isColumnChoiceSelected = (column: AxisModel, choice: ChoiceModel) =>\r\n this.props.sequencedRows.some((row) => {\r\n if (row.type !== RowType.Variable) {\r\n return false;\r\n }\r\n const cellVariable = variableForCell(row, column);\r\n return this.isChoiceSelected(cellVariable, choice);\r\n });\r\n\r\n onShouldDisableCell = (row: AxisModel, column: AxisModel) => {\r\n const { sequencedColumns } = this.props;\r\n const isCellDisabled = sequencedColumns\r\n .filter((sequencedColumn) => sequencedColumn.variables[0])\r\n .some((sequencedColumn) => {\r\n const cellVariable = variableForCell(row, sequencedColumn);\r\n return cellVariable.choiceList.some((choice) => {\r\n const disabledColumns = getSettingString(choice, \"DisableColumns\");\r\n if (!isNullOrEmpty(disabledColumns)) {\r\n const mentions = this.getMentions(this.props, cellVariable.name);\r\n if (mentions.some((m) => m.value === choice.value)) {\r\n const isDisabled = disabledColumns\r\n .replace(/\\s/g, \"\")\r\n .split(\",\")\r\n .find((c) => c === column.index.toString());\r\n if (isDisabled) {\r\n const currentCell = variableForCell(row, column);\r\n const currentMentions = this.getMentions(\r\n this.props,\r\n currentCell.name,\r\n );\r\n if (currentMentions && currentMentions.length > 0) {\r\n this.setMentions(this.props, currentCell.name, (m) =>\r\n m.clear(),\r\n );\r\n }\r\n return true;\r\n }\r\n }\r\n }\r\n return false;\r\n });\r\n });\r\n return isCellDisabled;\r\n };\r\n\r\n setChoicesAsMentions = (element: ElementWithSettings, choices: ChoiceModel[]) => {\r\n const values = choices.map((choice) => ({ value: choice.value }));\r\n if (values.length) {\r\n this.setMentions(\r\n this.props,\r\n element.name,\r\n (mentions) => mentions.clear().add(values),\r\n undefined,\r\n true,\r\n );\r\n }\r\n };\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const { question, useClientValidation } = this.props;\r\n question.variables.forEach(this.removeUnavailableMentions);\r\n this.removeHiddenOrDisabledOpenEndMentions(this.props);\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n const softPromptValidationResult = this.validateSoftPrompt(this.props);\r\n if (!softPromptValidationResult.isValid) {\r\n return softPromptValidationResult;\r\n }\r\n const isSingleStarRatingQuestion =\r\n question.type === QuestionType.StarRatingGrid && question.variables.length === 1;\r\n if (isSingleStarRatingQuestion) {\r\n const row = find(question.rows, (r) => !isEmpty(r.variables));\r\n const [column] = question.columns;\r\n return this.onValidateCell(row, column);\r\n }\r\n const results = this.validateSignal.dispatch(options);\r\n const result = results.reduce(\r\n (a, b) => ({\r\n isValid: a.isValid && b.isValid,\r\n errorsByVariableName: { ...a.errorsByVariableName, ...b.errorsByVariableName },\r\n }),\r\n { isValid: true, errorsByVariableName: {} },\r\n );\r\n if (!options || !options.silent) {\r\n this.setState((prevState) => ({ ...prevState, validationResult: result }));\r\n }\r\n return result;\r\n }\r\n\r\n removeHiddenOrDisabledOpenEndMentions(props: Props) {\r\n const { sequencedRows: rows, sequencedColumns: columns } = props;\r\n [...rows, ...columns].forEach((axisItem) => {\r\n if (axisItem.openEndActive !== false) {\r\n return;\r\n }\r\n const openEndVariable = openEndVariableName(axisItem);\r\n if (isNullOrEmpty(openEndVariable)) {\r\n return;\r\n }\r\n const openEndHasMentions = this.hasMentions(this.props, openEndVariable);\r\n if (!openEndHasMentions) {\r\n return;\r\n }\r\n this.setMentions(this.props, openEndVariable, (mentions) => mentions.clear());\r\n });\r\n }\r\n\r\n validateRowOpenEnd = (\r\n row: AxisModel,\r\n openEndValue: { [key: string]: string },\r\n ): ValidationResultModel => {\r\n if (hasSetting(row, \"OpenEndType\")) {\r\n const openEndName = openEndVariableName(row);\r\n const openEnd = openEndValue[openEndName];\r\n\r\n if (row.openEndActive) {\r\n if (!isNullOrEmpty(openEnd.trim()) || this.axisHasMentions(row)) {\r\n const result = this.validateOpenEnd(openEnd, row, openEndName);\r\n if (!result.isValid) {\r\n return result;\r\n }\r\n }\r\n } else if (!isNullOrEmpty(openEnd)) {\r\n this.setMentions(this.props, openEndName, (mentions) => mentions.clear());\r\n }\r\n }\r\n return new ValidationBuilder().build();\r\n };\r\n\r\n onValidateRowOpenEnd = (row: AxisModel): ValidationResultModel =>\r\n this.validateRowOpenEnd(row, this.state.openEndValue);\r\n\r\n onValidateChoiceOpenEnd = (column: AxisModel, choice: ChoiceModel): ValidationResultModel => {\r\n // Check if the choice has an enforced open-end.\r\n if (hasSetting(choice, \"OpenEndType\")) {\r\n // Check if this choice is selected in any row.\r\n const choiceSelected = this.isColumnChoiceSelected(column, choice);\r\n const openEndVariable = openEndVariableName(choice);\r\n const openEnd = this.state.openEndValue[openEndVariable];\r\n\r\n if (choiceSelected || !isNullOrEmpty(openEnd.trim())) {\r\n const result = this.validateOpenEnd(openEnd, choice, openEndVariable);\r\n if (!result.isValid) {\r\n return result;\r\n }\r\n }\r\n }\r\n return new ValidationBuilder().build();\r\n };\r\n\r\n onValidateCell = (row: AxisModel, column: AxisModel): ValidationResultModel => {\r\n const { questionnaire, question, language } = this.props;\r\n const validation = new ValidationBuilder();\r\n\r\n const isAnswerRequired =\r\n this.isAnswerRequired(questionnaire, question) &&\r\n this.isAxisAnswerRequired(row) &&\r\n this.isAxisAnswerRequired(column);\r\n const isCellDisabled = this.onShouldDisableCell(row, column);\r\n const cellHasMentions = this.cellHasMentions(row, column);\r\n\r\n // Validate right away if nothing is required.\r\n if (isCellDisabled || (!isAnswerRequired && !cellHasMentions)) {\r\n return validation.build();\r\n }\r\n\r\n const variable = question.variables.find(\r\n (unfilteredVariable) => row.variables[0].name === unfilteredVariable.name,\r\n );\r\n\r\n const cellVariable = variableForCell(row, column);\r\n const customError = translate(question, \"CustomErrorMessage\", language);\r\n\r\n if (cellHasMentions) {\r\n // Check the minimum and maximum answers if an answer was selected\r\n const mentions = this.getMentions(this.props, cellVariable.name);\r\n // For HybridGrid, the min and max are defined per column\r\n const minValue = this.minValue() || column.settings.MinRequiredAnswers;\r\n const maxValue = this.maxValue() || column.settings.MaxAllowedAnswers;\r\n if (minValue !== null && mentions.length < minValue) {\r\n return validation\r\n .fail(cellVariable.name, customError || \"InvalidChoicesMin\", {\r\n min: String(minValue),\r\n })\r\n .build();\r\n }\r\n if (maxValue !== null && mentions.length > maxValue) {\r\n return validation\r\n .fail(cellVariable.name, customError || \"InvalidChoicesMax\", {\r\n max: String(maxValue),\r\n })\r\n .build();\r\n }\r\n } else {\r\n const { choiceList } = variable;\r\n const invisibleDefaultChoices = choiceList.filter(\r\n (choice) => getSettingBoolean(choice, \"Default\") && !isVisible(choice),\r\n );\r\n if (invisibleDefaultChoices.length) {\r\n this.setChoicesAsMentions(variable, invisibleDefaultChoices);\r\n return validation.build();\r\n }\r\n return this.validateSoftPrompt(this.props, [cellVariable]);\r\n }\r\n\r\n return validation.build();\r\n };\r\n\r\n renderQuestion(): JSX.Element {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { foregroundColor, alpha, controlBackgroundColor } from \"../../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n imageArea: {\r\n border: ({ theme }) => [[theme.BorderWidth, \"solid\", theme.ControlBorderColor]],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n composes: \"image-area\",\r\n display: \"inline-block\",\r\n fontSize: 0,\r\n lineHeight: 0,\r\n maxWidth: \"100%\",\r\n overflow: \"hidden\",\r\n position: \"relative\",\r\n },\r\n imageAreaImage: {\r\n composes: \"image-area__image\",\r\n lineHeight: 0,\r\n maxWidth: \"100%\",\r\n position: \"relative\",\r\n cursor: \"pointer\",\r\n },\r\n imageAreaLegend: {\r\n composes: \"image-area-legend\",\r\n background: ({ theme }) => alpha(theme.ControlBackground, theme.ControlAlpha),\r\n border: ({ theme }) => [[theme.BorderWidth, \"solid\", theme.ControlBorderColor]],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n color: ({ theme }) => foregroundColor(theme, controlBackgroundColor(theme)),\r\n display: \"flex\",\r\n marginTop: 18,\r\n padding: 9,\r\n },\r\n dynamicImageAreaLegend: {\r\n flexWrap: \"wrap\",\r\n },\r\n imageAreaLegendTitle: {\r\n composes: \"image-area-legend__title\",\r\n alignSelf: \"center\",\r\n flex: 1,\r\n fontWeight: 600,\r\n margin: [[0, 20]],\r\n },\r\n imageAreaLegendList: {\r\n display: \"flex\",\r\n flexWrap: \"wrap\",\r\n flex: 3,\r\n composes: \"image-area-legend__list\",\r\n },\r\n initialFlex: {\r\n flex: \"auto\",\r\n },\r\n imageAreaLegendContainer: {\r\n composes: \"image-area-legend__container\",\r\n margin: [[4, 20]],\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n },\r\n imageAreaLegendColor: {\r\n borderRadius: ({ theme }) => Math.min(theme.BorderRadius, 12.5),\r\n composes: \"image-area-legend__color\",\r\n display: \"inline-block\",\r\n height: 25,\r\n marginRight: 15,\r\n verticalAlign: \"middle\",\r\n width: 25,\r\n },\r\n imageAreaLegendText: {\r\n composes: \"image-area-legend__text\",\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport useStyle from \"./HeatMapRenderer.styles\";\r\n\r\ninterface Props extends RendererProps {\r\n imageSrc?: string;\r\n height?: string;\r\n width?: string;\r\n onSelect?(event: any): void;\r\n top?: string;\r\n left?: string;\r\n color?: string;\r\n text?: string;\r\n variableName?: string;\r\n areaCode?: string;\r\n}\r\n\r\nexport default function HeatMapRenderer(props: Props) {\r\n const theme = useTheme();\r\n const divRef = React.useRef();\r\n const { text, onSelect, variableName } = props;\r\n const classes = useStyle({ theme });\r\n const { imageSrc, children, height, width } = props;\r\n return (\r\n <>\r\n {\r\n if (event.target !== divRef.current) return;\r\n if (event.key === \" \") {\r\n event.preventDefault();\r\n }\r\n }}\r\n onMouseDown={(event) => {\r\n onSelect(event);\r\n event.preventDefault();\r\n }}\r\n >\r\n \r\n {children}\r\n \r\n \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n imageAreaSelection: {\r\n composes: \"image-area__selection\",\r\n content: \"\",\r\n cursor: \"pointer\",\r\n display: \"inline-block\",\r\n lineHeight: 0,\r\n maxWidth: \"100%\",\r\n opacity: \"1\",\r\n position: \"absolute\",\r\n transition: \"background 200ms, opacity 200ms\",\r\n width: \"10px\",\r\n height: \"10px\",\r\n borderRadius: \"50%\",\r\n boxShadow: \"0 6px 12px rgba(0,0,0,.175)\",\r\n background: \"white !important\",\r\n },\r\n imageAreaSelectionActive: {\r\n background: \"#999\",\r\n composes: \"image-area__selection--active\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport useStyle from \"./HeatMapSelectionRenderer.styles\";\r\n\r\ninterface Props extends RendererProps {\r\n top: string;\r\n left: string;\r\n width?: string;\r\n height?: string;\r\n color: string;\r\n borderWidth: string;\r\n variableName?: string;\r\n areaCode?: string;\r\n onSelect?(index: any): void;\r\n index?: number;\r\n}\r\n\r\nexport default function ImageAreaSelectionRenderer(props: Props) {\r\n const divRef = React.useRef();\r\n const { index, variableName, onSelect } = props;\r\n const theme = useTheme();\r\n const classes = useStyle({ theme });\r\n // Style-specific props\r\n const { top, left, color, areaCode, borderWidth } = props;\r\n const border =\r\n (!borderWidth ? 1 : borderWidth) +\r\n \"px solid \" +\r\n (!color || color == \"\" ? \"#000000\" : color);\r\n const style = {\r\n top: top || \"0px\",\r\n left: left || \"0px\",\r\n border: border || \"1px solid black\",\r\n };\r\n\r\n const [active, setActive] = React.useState(false);\r\n\r\n return (\r\n {\r\n onSelect(index);\r\n event.preventDefault();\r\n }}\r\n onFocus={() => setActive(true)}\r\n onMouseOver={() => setActive(true)}\r\n onMouseOut={() => setActive(false)}\r\n style={style}\r\n />\r\n );\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { getSettingString } from \"../../models/utilities/settingUtilities\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport HeatMapRenderer from \"../renderers/v2/HeatMapRenderer\";\r\nimport HeatMapSelectionRenderer from \"../renderers/v2/HeatMapSelectionRenderer\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n value: string;\r\n focus: boolean;\r\n answers: ChoiceModel[];\r\n input?: HTMLElement;\r\n}\r\n\r\nexport class HeatMapControl extends BaseControl {\r\n onSelectedHeatMapArea(event: any, variableName = \"\") {\r\n var bounds = event.target.getBoundingClientRect();\r\n var x = event.clientX - bounds.left;\r\n var y = event.clientY - bounds.top;\r\n var value = x.toFixed(4) + \",\" + y.toFixed(4);\r\n if (!this.onSelectDot) {\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n if (!newState.value) {\r\n newState.value = value;\r\n } else {\r\n newState.value = newState.value + \"|\" + value;\r\n }\r\n return newState;\r\n });\r\n this.setMentions(this.props, variableName, (m) => {\r\n return m.add(value);\r\n });\r\n\r\n if (\r\n this.renderHeatMapPreview[variableName] &&\r\n this.renderHeatMapPreview[variableName].length > 0\r\n ) {\r\n this.renderHeatMapPreview[variableName].push(value);\r\n } else {\r\n this.renderHeatMapPreview[variableName] = [];\r\n this.renderHeatMapPreview[variableName].push(value);\r\n }\r\n }\r\n this.onSelectDot = false;\r\n }\r\n\r\n onSelectDot = false;\r\n onSelectedHeatMapAreaOnDot(index, variableName) {\r\n this.onSelectDot = true;\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n var totalVal = newState.value ? newState.value.split(\"|\") : [];\r\n if (totalVal.length > 0) totalVal.splice(index - 1, 1);\r\n if (totalVal.length != 0) {\r\n newState.value = totalVal.join(\"|\");\r\n } else {\r\n newState.value = undefined;\r\n }\r\n return newState;\r\n });\r\n var mentions = this.getMentions(this.props);\r\n var selectedMentions = mentions.filter((m) => m.index === index);\r\n if (selectedMentions.length > 0) {\r\n this.setMentions(this.props, variableName, (m) =>\r\n m.removeValue(selectedMentions[0].value),\r\n );\r\n }\r\n }\r\n\r\n getDimension(value: any) {\r\n return Number.isNaN(value) ? \"0\" : `${value}px`;\r\n }\r\n\r\n renderMapChoice(question: QuestionModel, variableName: any, choice: any, index = 1) {\r\n var dataPoint = choice.split(\",\");\r\n return (\r\n this.onSelectedHeatMapAreaOnDot(divIndex, variableName)}\r\n index={index}\r\n borderWidth={getSettingString(question, \"OutlineWeight\")}\r\n variableName={variableName}\r\n />\r\n );\r\n }\r\n\r\n renderHeatMapPreview = {};\r\n renderMap(question: QuestionModel) {\r\n var variableName = question.variables.length > 0 ? question.variables[0].name : \"\";\r\n var dataPoints = this.state?.value?.replace(\"undefined\", \"\").split(\"|\");\r\n var mentions = this.getMentions(this.props, variableName);\r\n if (mentions && mentions.length > 0) {\r\n dataPoints = [];\r\n mentions.map((mention) => {\r\n dataPoints.push(mention.value);\r\n });\r\n }\r\n return dataPoints?.map((answer, index) =>\r\n this.renderMapChoice(question, variableName, answer, index + 1),\r\n );\r\n }\r\n\r\n updateState(props: Props) {\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n const mention = this.getMention(props);\r\n if (!newState.value) {\r\n newState.value = mention?.value;\r\n } else {\r\n newState.value = newState.value + \"|\" + mention?.value;\r\n }\r\n return newState;\r\n });\r\n }\r\n\r\n renderQuestion(question: QuestionModel) {\r\n const { language } = this.props;\r\n var variableName = question.variables.length > 0 ? question.variables[0].name : \"\";\r\n if (variableName) {\r\n return (\r\n this.onSelectedHeatMapArea(event, variableName)}\r\n >\r\n {this.renderMap(question)}\r\n \r\n );\r\n }\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n imageAreaSelection: {\r\n composes: \"image-area__selection\",\r\n content: \"\",\r\n cursor: \"pointer\",\r\n display: \"inline-block\",\r\n lineHeight: 0,\r\n maxWidth: \"100%\",\r\n opacity: 0,\r\n outline: \"none\",\r\n position: \"absolute\",\r\n transition: \"background 200ms, opacity 200ms\",\r\n },\r\n imageAreaSelectionSelected: {\r\n background: ({ theme }) => theme.PrimaryColor,\r\n composes: \"image-area__selection--selected\",\r\n opacity: 0.3,\r\n },\r\n imageAreaSelectionActive: {\r\n background: \"#999\",\r\n composes: \"image-area__selection--active\",\r\n opacity: 0.5,\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport useStyle from \"./ImageAreaSelectionRenderer.styles\";\r\n\r\ninterface Props extends RendererProps {\r\n onSelect?(): void;\r\n selected?: boolean;\r\n top: string;\r\n left: string;\r\n width: string;\r\n height: string;\r\n color: string;\r\n text: string;\r\n variableName?: string;\r\n areaCode?: string;\r\n}\r\n\r\nexport default function ImageAreaSelectionRenderer(props: Props) {\r\n const divRef = React.useRef();\r\n const { text, selected, onSelect, variableName } = props;\r\n const theme = useTheme();\r\n const classes = useStyle({ theme });\r\n\r\n // Style-specific props\r\n const { top, left, width, height, color, areaCode } = props;\r\n const style = {\r\n top: top || \"0px\",\r\n left: left || \"0px\",\r\n width,\r\n height,\r\n backgroundColor: selected ? color : null,\r\n };\r\n\r\n const [active, setActive] = React.useState(false);\r\n\r\n return (\r\n {\r\n if (event.target !== divRef.current) return;\r\n if (event.key === \" \") {\r\n onSelect();\r\n event.preventDefault();\r\n }\r\n }}\r\n onMouseDown={(event) => {\r\n onSelect();\r\n event.preventDefault();\r\n }}\r\n onFocus={() => selected && setActive(true)}\r\n onBlur={() => setActive(false)}\r\n onMouseOver={() => setActive(true)}\r\n onMouseOut={() => setActive(false)}\r\n style={style}\r\n title={text}\r\n />\r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { foregroundColor, alpha, controlBackgroundColor } from \"../../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n imageArea: {\r\n border: ({ theme }) => [[theme.BorderWidth, \"solid\", theme.ControlBorderColor]],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n composes: \"image-area\",\r\n display: \"inline-block\",\r\n fontSize: 0,\r\n lineHeight: 0,\r\n maxWidth: \"100%\",\r\n overflow: \"hidden\",\r\n position: \"relative\",\r\n },\r\n imageAreaImage: {\r\n composes: \"image-area__image\",\r\n lineHeight: 0,\r\n maxWidth: \"100%\",\r\n position: \"relative\",\r\n },\r\n imageAreaLegend: {\r\n composes: \"image-area-legend\",\r\n background: ({ theme }) => alpha(theme.ControlBackground, theme.ControlAlpha),\r\n border: ({ theme }) => [[theme.BorderWidth, \"solid\", theme.ControlBorderColor]],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n color: ({ theme }) => foregroundColor(theme, controlBackgroundColor(theme)),\r\n display: \"flex\",\r\n marginTop: 18,\r\n padding: 9,\r\n },\r\n dynamicImageAreaLegend: {\r\n flexWrap: \"wrap\",\r\n },\r\n imageAreaLegendTitle: {\r\n composes: \"image-area-legend__title\",\r\n alignSelf: \"center\",\r\n flex: 1,\r\n fontWeight: 600,\r\n margin: [[0, 20]],\r\n },\r\n imageAreaLegendList: {\r\n display: \"flex\",\r\n flexWrap: \"wrap\",\r\n flex: 3,\r\n composes: \"image-area-legend__list\",\r\n },\r\n initialFlex: {\r\n flex: \"auto\",\r\n },\r\n imageAreaLegendContainer: {\r\n composes: \"image-area-legend__container\",\r\n margin: [[4, 20]],\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n },\r\n imageAreaLegendColor: {\r\n borderRadius: ({ theme }) => Math.min(theme.BorderRadius, 12.5),\r\n composes: \"image-area-legend__color\",\r\n display: \"inline-block\",\r\n height: 25,\r\n marginRight: 15,\r\n verticalAlign: \"middle\",\r\n width: 25,\r\n },\r\n imageAreaLegendText: {\r\n composes: \"image-area-legend__text\",\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport { translate } from \"../../../models/utilities/translationUtilities\";\r\nimport { getSettingString } from \"../../../models/utilities/settingUtilities\";\r\nimport useStyle from \"./ImageAreaRenderer.styles\";\r\nimport useQuestion from \"../../../hooks/useQuestion\";\r\nimport { QuestionType } from \"../../../models/enums/QuestionType\";\r\nimport useDimensionContext from \"../../../hooks/useDimensionContext\";\r\nimport { RecalledText } from \"../../../containers/shared/RecalledText\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\n\r\ninterface Props extends RendererProps {\r\n imageSrc: string;\r\n legendLabel: string;\r\n height: string;\r\n width: string;\r\n choices: ChoiceModel[];\r\n}\r\n\r\nfunction Legend(props: Props) {\r\n const theme = useTheme();\r\n const classes = useStyle({ theme });\r\n const { choices, legendLabel, language } = props;\r\n const dimension = useDimensionContext();\r\n\r\n const legendItems = Object.keys(choices).map((key) => {\r\n const choice: ChoiceModel = choices[key];\r\n\r\n return (\r\n
    \r\n \r\n (\r\n \r\n )}\r\n />\r\n
    \r\n );\r\n });\r\n\r\n return (\r\n <>\r\n {dimension && dimension.maxWidth(670) ? (\r\n \r\n
    \r\n Legend\r\n
    \r\n
    \r\n {legendItems}\r\n
    \r\n \r\n ) : (\r\n
    \r\n
    {legendLabel}
    \r\n
    {legendItems}
    \r\n
    \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default function ImageAreaRenderer(props: Props) {\r\n const theme = useTheme();\r\n const classes = useStyle({ theme });\r\n const { imageSrc, children, height, width } = props;\r\n const question = useQuestion();\r\n const displayLegend = question.type === QuestionType.ImageAreaEvaluator;\r\n\r\n return (\r\n <>\r\n
    \r\n \r\n {children}\r\n
    \r\n {displayLegend && }\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { isEmpty } from \"../../utils/lodash\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport { ElementWithSettings } from \"../../models/ElementWithSettings\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingNumber,\r\n getSettingString,\r\n hasSetting,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { getChoice } from \"../../models/utilities/variableUtilities\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { blurFocusedField } from \"../../utils/index\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport ImageAreaSelectionRenderer from \"../renderers/v2/ImageAreaSelectionRenderer\";\r\nimport ImageAreaRenderer from \"../renderers/v2/ImageAreaRenderer\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n filteredAnswers: ChoiceModel[];\r\n}\r\n\r\nexport class ImageAreaControl extends BaseControl {\r\n onSelectArea(variable: VariableModel) {\r\n const { choiceList } = variable;\r\n let choice = this.getAreaCurrentChoice(this.props, variable);\r\n const nextIndex =\r\n choice === undefined ? 0 : choiceList.findIndex((c) => c.value === choice.value) + 1;\r\n\r\n if (nextIndex >= choiceList.length) {\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.clear());\r\n return;\r\n }\r\n choice = choiceList[nextIndex];\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.set(choice.value));\r\n }\r\n\r\n onSelectChoice(choice: ChoiceModel) {\r\n blurFocusedField();\r\n const { question } = this.props;\r\n const [variable] = question.variables;\r\n const mentions = this.getMentions(this.props);\r\n if (\r\n hasSetting(question, \"MaxAllowedAnswers\") &&\r\n mentions.length >= getSettingNumber(question, \"MaxAllowedAnswers\") &&\r\n !mentions.find((m) => m.value === choice.value)\r\n ) {\r\n const [firstMention] = mentions;\r\n this.setMentions(this.props, variable.name, (m) => m.toggle(firstMention.value));\r\n }\r\n\r\n this.setMentions(this.props, variable.name, (m) => {\r\n const isSelectedExclusive = getSettingBoolean(choice, \"Exclusive\");\r\n if (variable.choiceList !== undefined) {\r\n variable.choiceList.forEach((c) => {\r\n if (isSelectedExclusive || getSettingBoolean(c, \"Exclusive\")) {\r\n m = m.removeValue(c.value);\r\n }\r\n });\r\n }\r\n return m.toggle(choice.value);\r\n });\r\n }\r\n\r\n getAreaCurrentChoice(props: Props, area: VariableModel) {\r\n const value = this.getMentionValue(props, area.name);\r\n return getChoice(area, value);\r\n }\r\n\r\n isChoiceSelected(choice: ChoiceModel) {\r\n return this.getMentions(this.props).some((m) => m.value === choice.value);\r\n }\r\n\r\n getDimension(element: ElementWithSettings, name: string) {\r\n const dimension = getSettingNumber(element, name) * 100;\r\n return Number.isNaN(dimension) ? \"0\" : `${dimension}%`;\r\n }\r\n\r\n renderMapChoice(question: QuestionModel, choice: ChoiceModel) {\r\n return (\r\n this.onSelectChoice(choice)}\r\n text={translate(choice, \"TEXT\", this.props.language)}\r\n variableName={choice.elementId}\r\n />\r\n );\r\n }\r\n\r\n renderMapArea(question: QuestionModel, variable: VariableModel) {\r\n const choice = this.getAreaCurrentChoice(this.props, variable);\r\n\r\n return (\r\n this.onSelectArea(variable)}\r\n text={translate(variable, \"TEXT\", this.props.language)}\r\n variableName={variable.elementId}\r\n areaCode={choice !== undefined ? choice.value : \"none\"}\r\n />\r\n );\r\n }\r\n\r\n renderMap(question: QuestionModel) {\r\n const variables = this.availableAreas(this.props);\r\n if (question.type === QuestionType.ImageAreaEvaluator) {\r\n return variables.map((variable) => this.renderMapArea(question, variable));\r\n }\r\n const [firstVariable] = variables;\r\n const choiceList = firstVariable ? firstVariable.choiceList : [];\r\n return choiceList.map((answer) => this.renderMapChoice(question, answer));\r\n }\r\n\r\n availableAreas = (props: Props) => {\r\n const { question, sequencedVariables } = props;\r\n if (question.type === QuestionType.ImageAreaEvaluator) {\r\n return sequencedVariables.filter((v) => !isEmpty(v.settings));\r\n }\r\n return sequencedVariables.filter((v) => v.choiceList && v.choiceList.length > 0);\r\n };\r\n\r\n renderQuestion(question: QuestionModel) {\r\n const { language } = this.props;\r\n\r\n return (\r\n \r\n {this.renderMap(question)}\r\n \r\n );\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const { questionnaire, question, showSoftPrompt, useClientValidation } = this.props;\r\n const bypassClientValidation = isQuestionValidatedServerSide(\r\n question.type,\r\n useClientValidation,\r\n );\r\n\r\n const availableAreas = this.availableAreas(this.props);\r\n\r\n const choices =\r\n question.type === QuestionType.ImageAreaSelector\r\n ? availableAreas[0].choiceList.filter((answer) => this.isChoiceSelected(answer))\r\n : availableAreas\r\n .map((area) => this.getAreaCurrentChoice(this.props, area))\r\n .filter((answer) => answer !== undefined);\r\n\r\n if (this.isSoftPrompt(this.props) && !this.hasMentions(this.props)) {\r\n return this.validateSoftPrompt(this.props);\r\n }\r\n\r\n if (bypassClientValidation) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n if (choices.length > 0) {\r\n const min = this.minValue();\r\n const max = this.maxValue();\r\n if (min !== null && max !== null) {\r\n if (choices.length < min || choices.length > max) {\r\n return this.failValidation(availableAreas, \"OutOfBounds\", {\r\n min: String(min),\r\n max: String(max),\r\n });\r\n }\r\n } else {\r\n if (min !== null && choices.length < min) {\r\n return this.failValidation(availableAreas, \"InvalidChoicesMin\", {\r\n min: String(min),\r\n });\r\n }\r\n if (max !== null && choices.length > max) {\r\n return this.failValidation(availableAreas, \"InvalidChoicesMax\", {\r\n max: String(max),\r\n });\r\n }\r\n }\r\n } else if (!showSoftPrompt && this.isAnswerRequired(questionnaire, question)) {\r\n return this.failValidation(availableAreas, \"IncompleteAnswer\");\r\n }\r\n\r\n const validationResult = new ValidationBuilder().build();\r\n return validationResult;\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { foregroundColor, alpha } from \"../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n paginatedTable: {\r\n composes: \"paginated-table\",\r\n },\r\n table: {\r\n background: ({ theme }) => alpha(\"#fff\", theme.ControlAlpha),\r\n color: ({ theme }) => theme.ForegroundColorDark,\r\n borderCollapse: \"collapse\",\r\n borderRadius: ({ theme }) => Math.min(theme.BorderRadius, 20),\r\n overflow: \"hidden\",\r\n boxShadow: ({ theme }) =>\r\n theme.BorderWidth > 1 && `0 0 0 ${theme.BorderWidth}px ${theme.ControlBorderColor}`,\r\n margin: ({ theme }) => theme.BorderWidth > 1 && theme.BorderWidth,\r\n\r\n \"& td, & th\": {\r\n padding: [[8, 24]],\r\n border: 0,\r\n whiteSpace: \"nowrap\",\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\",\r\n maxWidth: 400,\r\n },\r\n },\r\n tableRow: {\r\n composes: \"row\",\r\n transition: \"background 100ms, color 100ms\",\r\n },\r\n tableRowAlternate: {\r\n background: ({ theme }) => alpha(theme.ControlBackground, theme.ControlAlpha),\r\n },\r\n tableRowSelectable: {\r\n composes: \"row--selectable\",\r\n cursor: \"pointer\",\r\n userSelect: \"none\",\r\n },\r\n tableRowSelected: {\r\n composes: \"row--selected\",\r\n background: ({ theme }) => theme.ControlAlpha !== 0 && theme.PrimaryColor,\r\n color: ({ theme }) =>\r\n theme.ControlAlpha !== 0 && foregroundColor(theme, theme.PrimaryColor),\r\n },\r\n tableRowCheckbox: {\r\n padding: \"6px !important\",\r\n\r\n \"& span\": {\r\n height: 32,\r\n },\r\n },\r\n tableColumn: {\r\n background: ({ theme }) => theme.SecondaryColor,\r\n color: ({ theme }) => foregroundColor(theme, theme.SecondaryColor),\r\n textAlign: \"left\",\r\n fontWeight: \"normal\",\r\n cursor: \"pointer\",\r\n userSelect: \"none\",\r\n },\r\n tableColumnFilter: {\r\n background: ({ theme }) => theme.SecondaryColor,\r\n color: ({ theme }) => foregroundColor(theme, theme.SecondaryColor),\r\n padding: \"0 6px 8px 6px !important\",\r\n },\r\n tableColumnFilterInput: {\r\n display: \"block\",\r\n boxSizing: \"border-box\",\r\n width: \"100%\",\r\n background: \"#fff\",\r\n padding: \"8px 18px\",\r\n fontSize: \"14px\",\r\n outline: 0,\r\n border: 0,\r\n },\r\n sortedColumn: {\r\n fontWeight: \"bolder\",\r\n },\r\n});\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n footer: {\r\n composes: \"paginated-table__footer\",\r\n display: \"flex\",\r\n fontSize: \"12px\",\r\n flexDirection: \"row\",\r\n alignItems: \"center\",\r\n padding: [[12, 0]],\r\n },\r\n pageInfo: {\r\n composes: \"paginated-table__page-info\",\r\n },\r\n flex: {\r\n flex: 1,\r\n },\r\n rowsPerPage: {\r\n padding: [[0, 24]],\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n alignItems: \"center\",\r\n },\r\n});\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { foregroundColor, alpha, darken } from \"../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n buttonGroup: {\r\n display: \"flex\",\r\n paddingLeft: ({ theme }) => theme.BorderWidth,\r\n },\r\n groupButton: {\r\n boxShadow: ({ theme }) => `0 0 0 ${theme.BorderWidth}px ${theme.ControlBorderColor} inset`,\r\n marginLeft: ({ theme }) => -theme.BorderWidth,\r\n fontWeight: 700,\r\n padding: ({ theme }) => [[0, 9 + theme.BorderWidth]],\r\n lineHeight: \"1.6em\",\r\n background: ({ theme }) => theme.ControlBackground,\r\n color: ({ theme }) => foregroundColor(theme, theme.ControlBackground),\r\n userSelect: \"none\",\r\n cursor: \"pointer\",\r\n\r\n \"&:first-child\": {\r\n borderTopLeftRadius: ({ theme }) => theme.BorderRadius,\r\n borderBottomLeftRadius: ({ theme }) => theme.BorderRadius,\r\n },\r\n\r\n \"&:last-child\": {\r\n borderTopRightRadius: ({ theme }) => theme.BorderRadius,\r\n borderBottomRightRadius: ({ theme }) => theme.BorderRadius,\r\n },\r\n },\r\n groupButtonActive: {\r\n boxShadow: ({ theme }) =>\r\n `0 0 0 ${theme.BorderWidth}px ${darken(theme.PrimaryColor, 0.5)} inset`,\r\n background: ({ theme }) => theme.PrimaryColor,\r\n color: ({ theme }) => foregroundColor(theme, theme.PrimaryColor),\r\n zIndex: 2,\r\n },\r\n groupButtonDisabled: {\r\n color: ({ theme }) => alpha(foregroundColor(theme, theme.ControlBackground), 0.6),\r\n cursor: \"default\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport useStyles from \"./ButtonGroup.styles\";\r\nimport { FontAwesomeIcon } from \"./FontAwesome\";\r\nimport { IconProp } from \"@fortawesome/fontawesome-svg-core\";\r\nimport classNames from \"classnames\";\r\n\r\ninterface GroupButtonInheritedProps {\r\n size?: \"small\" | \"large\";\r\n}\r\n\r\ninterface GroupButtonProps {\r\n text?: React.ReactNode;\r\n icon?: IconProp;\r\n inheritedProps?: GroupButtonInheritedProps;\r\n onClick?(): void;\r\n active?: boolean;\r\n disabled?: boolean;\r\n}\r\n\r\nfunction GroupButton(props: GroupButtonProps) {\r\n const { text, icon, active, disabled, onClick, inheritedProps } = props;\r\n const { size = \"large\" } = inheritedProps;\r\n\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, size });\r\n\r\n let content = text;\r\n if (icon) content = ;\r\n\r\n return (\r\n \r\n {content}\r\n \r\n );\r\n}\r\n\r\ninterface Props {\r\n children: any;\r\n}\r\n\r\nexport default function ButtonGroup(props: Props & GroupButtonInheritedProps) {\r\n const { children, size } = props;\r\n\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, size });\r\n\r\n const clonedChildren = React.Children.map(children, (child) => {\r\n return child && React.cloneElement(child, { inheritedProps: props });\r\n });\r\n\r\n return
    {clonedChildren}
    ;\r\n}\r\n\r\nButtonGroup.Button = GroupButton;\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n pagination: {\r\n flexShrink: 0,\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport { range } from \"../../utils/lodash\";\r\nimport { PaginatedTableProps } from \"./PaginatedTable\";\r\nimport ButtonGroup from \"../shared/ButtonGroup\";\r\nimport useStyles from \"./TablePagination.styles\";\r\n\r\ninterface PaginationProps {\r\n tableProps: PaginatedTableProps;\r\n rowsPerPage: number;\r\n currentPage: number;\r\n pageCount: number;\r\n}\r\n\r\nexport function TablePagination(props: PaginationProps) {\r\n const { tableProps, rowsPerPage, currentPage, pageCount } = props;\r\n const { onChangePage: onPageChanged } = tableProps;\r\n\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n\r\n let startPage = currentPage - 1;\r\n let endPage = startPage + 3;\r\n\r\n let showStartEllipsis = startPage > 2;\r\n if (!showStartEllipsis) {\r\n startPage = 2;\r\n endPage = 6;\r\n }\r\n\r\n const showEndEllipsis = endPage < pageCount - 2;\r\n if (!showEndEllipsis) {\r\n startPage = pageCount - 4;\r\n endPage = pageCount;\r\n showStartEllipsis = startPage > 3;\r\n }\r\n\r\n startPage = Math.max(startPage, 2);\r\n endPage = Math.min(endPage, pageCount);\r\n\r\n function navigateToPage(page: number) {\r\n if (page > pageCount) {\r\n navigateToPage(pageCount);\r\n return;\r\n }\r\n if (page < 1) {\r\n navigateToPage(1);\r\n return;\r\n }\r\n onPageChanged((page - 1) * rowsPerPage, rowsPerPage);\r\n }\r\n\r\n return (\r\n
    \r\n \r\n navigateToPage(currentPage - 1)}\r\n />\r\n navigateToPage(1)}\r\n />\r\n {showStartEllipsis && }\r\n {endPage > 1 &&\r\n range(startPage, endPage).map((page) => (\r\n navigateToPage(page)}\r\n />\r\n ))}\r\n {showEndEllipsis && }\r\n {endPage > 1 && (\r\n navigateToPage(pageCount)}\r\n />\r\n )}\r\n = pageCount}\r\n onClick={() => navigateToPage(currentPage + 1)}\r\n />\r\n \r\n
    \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { foregroundColor } from \"../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n select: ({ theme }) => ({\r\n boxShadow: `0 0 0 ${theme.BorderWidth}px ${theme.ControlBorderColor} inset`,\r\n borderRadius: theme.BorderRadius,\r\n background: theme.ControlBackground,\r\n color: foregroundColor(theme, theme.ControlBackground),\r\n padding: [[1, 4]],\r\n lineHeight: \"1.6em\",\r\n border: 0,\r\n margin: \"10px\",\r\n }),\r\n});\r\n","import React from \"react\";\r\nimport useStyles from \"./TinySelect.styles\";\r\nimport { useTheme } from \"react-jss\";\r\n\r\ninterface Props {\r\n value: string;\r\n options: string[];\r\n onChange(value: string): void;\r\n}\r\n\r\nexport function TinySelect(props: Props) {\r\n const { options, onChange, value } = props;\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n return (\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport useStyles from \"./TableFooter.styles\";\r\nimport { PaginatedTableProps } from \"./PaginatedTable\";\r\nimport { TablePagination } from \"./TablePagination\";\r\nimport { TinySelect } from \"../select/TinySelect\";\r\n\r\ninterface FooterProps {\r\n children: React.ReactNode;\r\n rowsPerPage: number;\r\n tableProps: PaginatedTableProps;\r\n currentPage: number;\r\n pageCount: number;\r\n lengthMenuText: string;\r\n onChangeRowsPerPage(value: number);\r\n}\r\n\r\nexport function TableFooter(props: FooterProps) {\r\n const {\r\n children,\r\n rowsPerPage,\r\n tableProps,\r\n onChangeRowsPerPage,\r\n currentPage,\r\n pageCount,\r\n lengthMenuText,\r\n } = props;\r\n const { rowsPerPageOptions } = tableProps;\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n const [displayText, itemsText] = lengthMenuText.split(\"_MENU_\");\r\n return (\r\n
    \r\n
    \r\n {children}\r\n
    \r\n
    \r\n
    \r\n {displayText}\r\n onChangeRowsPerPage(parseInt(value, 10))}\r\n />\r\n {itemsText}\r\n
    \r\n \r\n
    \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport numeral from \"numeral\";\r\nimport classNames from \"classnames\";\r\nimport ScrollableContainer from \"../shared/ScrollableContainer\";\r\nimport useStyles from \"./PaginatedTable.styles\";\r\nimport { FontAwesomeIcon } from \"../shared/FontAwesome\";\r\nimport { TableFooter } from \"./TableFooter\";\r\nimport InputBox from \"../shared/InputBox\";\r\nimport { CheckBoxIcon } from \"../shared/CheckBoxIcon\";\r\n\r\nexport interface TableColumn {\r\n name: string;\r\n searchable?: boolean;\r\n width?: number;\r\n filter?: string;\r\n translatedName?: string;\r\n}\r\n\r\nexport interface TableRow {\r\n id: number;\r\n selected?: boolean;\r\n [columnName: string]: any;\r\n}\r\n\r\nexport interface ColumnFilterProps {\r\n value?: string;\r\n onChange?(value: string): void;\r\n}\r\n\r\nexport interface TableTexts {\r\n search: string;\r\n selectedItems: string;\r\n selectedItemsLimit: string;\r\n emptyTable: string;\r\n info: string;\r\n infoFiltered: string;\r\n lengthMenu: string;\r\n}\r\n\r\nfunction ColumnFilter(props: ColumnFilterProps) {\r\n const { value: _value, onChange } = props;\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n const prevValue = React.useRef(_value);\r\n const [value, setValue] = React.useState(_value);\r\n const onChangeRef = React.useRef(onChange);\r\n\r\n React.useEffect(() => {\r\n onChangeRef.current = onChange;\r\n }, [onChange]);\r\n\r\n React.useEffect(() => {\r\n if (prevValue.current === value) return undefined;\r\n prevValue.current = value;\r\n const timer = setTimeout(() => onChangeRef.current && onChangeRef.current(value), 500);\r\n return () => {\r\n clearTimeout(timer);\r\n };\r\n }, [value]);\r\n\r\n return (\r\n setValue(e.target.value)}\r\n />\r\n );\r\n}\r\n\r\ninterface PaginatedTableRowProps {\r\n index: number;\r\n row: TableRow;\r\n tableProps: PaginatedTableProps;\r\n}\r\n\r\nfunction PaginatedTableRow(props: PaginatedTableRowProps) {\r\n const { index, row, tableProps } = props;\r\n const { selectable, columns, max, totalSelected, onChangeRowSelected } = tableProps;\r\n const theme: any = useTheme();\r\n const classes = useStyles({ theme });\r\n const [hover, setHover] = React.useState(false);\r\n\r\n return (\r\n // eslint-disable-next-line jsx-a11y/mouse-events-have-key-events\r\n setHover(true)}\r\n onMouseOut={() => setHover(false)}\r\n className={classNames(\r\n classes.tableRow,\r\n index % 2 === 1 && classes.tableRowAlternate,\r\n selectable && !row.disabled && classes.tableRowSelectable,\r\n row.selected && classes.tableRowSelected,\r\n )}\r\n onClick={(e) => {\r\n if (row.selected || !max || totalSelected < max) {\r\n onChangeRowSelected(row, !row.selected);\r\n e.preventDefault();\r\n }\r\n }}\r\n >\r\n {selectable && theme.DisplayChoiceIcon === \"left\" && (\r\n \r\n = max}\r\n backgroundless={theme.ControlAlpha === 0}\r\n />\r\n \r\n )}\r\n {columns.map(({ name, width, searchable }) => (\r\n \r\n {row[name]}\r\n \r\n ))}\r\n {selectable && theme.DisplayChoiceIcon === \"right\" && (\r\n \r\n = max}\r\n backgroundless={theme.ControlAlpha === 0}\r\n />\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport interface PaginatedTableProps {\r\n id: string;\r\n columns: TableColumn[];\r\n defaultRowsPerPage?: number;\r\n rowsPerPageOptions: number[];\r\n pageRows: TableRow[];\r\n pageStart: number;\r\n max?: number;\r\n selectable?: boolean;\r\n filterable?: boolean;\r\n sortColumn?: string;\r\n sortAsc?: boolean;\r\n totalRows: number;\r\n totalFilteredRows?: number;\r\n totalSelected?: number;\r\n search?: string;\r\n texts?: TableTexts;\r\n onChangeRowSelected?(row: TableRow, selected: boolean): void;\r\n onChangeSort?(sortColumn: string, sortAsc: boolean): void;\r\n onChangePage?(pageStart: number, length: number): void;\r\n onChangeSearch?(value: string): void;\r\n onChangeColumnFilter?(column: string, value: string): void;\r\n}\r\n\r\nexport function PaginatedTable(props: PaginatedTableProps) {\r\n const {\r\n columns,\r\n pageRows,\r\n pageStart,\r\n max,\r\n totalRows,\r\n totalFilteredRows,\r\n totalSelected,\r\n sortAsc,\r\n sortColumn,\r\n selectable,\r\n filterable,\r\n onChangeSort,\r\n defaultRowsPerPage,\r\n rowsPerPageOptions,\r\n search: searchValue,\r\n texts,\r\n onChangeSearch,\r\n onChangeColumnFilter,\r\n onChangePage,\r\n } = props;\r\n const initialRowsPerPage = defaultRowsPerPage || rowsPerPageOptions[0] || 10;\r\n const prevRowsPerPage = React.useRef(initialRowsPerPage);\r\n const [rowsPerPage, setRowsPerPage] = React.useState(initialRowsPerPage);\r\n const onChangePageRef = React.useRef<(pageStart: number, length: number) => void>();\r\n\r\n const pageCount = Math.ceil(totalFilteredRows / rowsPerPage);\r\n const currentPage = Math.floor(pageStart / rowsPerPage) + 1;\r\n\r\n const prevSearch = React.useRef(searchValue);\r\n const [search, setSearch] = React.useState(searchValue);\r\n\r\n const theme: any = useTheme();\r\n const classes = useStyles({ theme });\r\n\r\n React.useEffect(() => {\r\n if (prevSearch.current === search) return undefined;\r\n prevSearch.current = search;\r\n const timer = setTimeout(() => onChangeSearch(search), 500);\r\n return () => {\r\n clearTimeout(timer);\r\n };\r\n }, [search, onChangeSearch]);\r\n\r\n React.useEffect(() => {\r\n onChangePageRef.current = onChangePage;\r\n }, [onChangePage]);\r\n\r\n React.useEffect(() => {\r\n if (prevRowsPerPage.current === rowsPerPage) return;\r\n prevRowsPerPage.current = rowsPerPage;\r\n onChangePageRef.current(0, rowsPerPage);\r\n }, [rowsPerPage]);\r\n\r\n const hasSearchableColumns = columns.some((c) => c.searchable);\r\n\r\n return (\r\n
    \r\n {hasSearchableColumns && (\r\n \r\n setSearch(e.target.value)}\r\n />\r\n \r\n )}\r\n
    \r\n \r\n \r\n \r\n \r\n {selectable && theme.DisplayChoiceIcon === \"left\" && (\r\n \r\n ))}\r\n {selectable && theme.DisplayChoiceIcon === \"right\" && (\r\n \r\n {filterable && (\r\n \r\n {selectable && theme.DisplayChoiceIcon === \"left\" && (\r\n \r\n ))}\r\n {selectable && theme.DisplayChoiceIcon === \"right\" && (\r\n \r\n )}\r\n \r\n \r\n {pageRows.map((row, index) => (\r\n \r\n ))}\r\n \r\n
    \r\n )}\r\n {columns.map(({ name, width, searchable, translatedName }) => (\r\n \r\n onChangeSort(name, sortColumn === name ? !sortAsc : true)\r\n }\r\n style={{ minWidth: width, maxWidth: width }}\r\n className={classNames(\r\n classes.tableColumn,\r\n sortColumn === name && classes.sortedColumn,\r\n )}\r\n >\r\n {searchable && (\r\n \r\n )}\r\n {translatedName || name}\r\n {sortColumn === name && (\r\n \r\n )}\r\n \r\n )}\r\n
    \r\n )}\r\n {columns.map(({ name, width, filter }) => (\r\n \r\n onChangeColumnFilter(name, value)}\r\n />\r\n \r\n )}\r\n
    \r\n
    \r\n \r\n {!pageRows.length && texts.emptyTable}\r\n {pageRows.length > 0 &&\r\n texts.info\r\n .replace(\"_START_\", `${pageStart + 1}`)\r\n .replace(\"_END_\", `${pageStart + pageRows.length}`)\r\n .replace(\"_TOTAL_\", numeral(totalFilteredRows).format(\"0,0\"))}\r\n {totalFilteredRows < totalRows\r\n ? ` ${texts.infoFiltered.replace(\"_MAX_\", numeral(totalRows).format(\"0,0\"))}`\r\n : \"\"}\r\n {totalSelected\r\n ? ` ${(max ? texts.selectedItemsLimit : texts.selectedItems)\r\n .replace(\"{count}\", `${totalSelected}`)\r\n .replace(\"{limit}\", `${max || \"\"}`)}`\r\n : \"\"}\r\n \r\n
    \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { connect, DispatchProp } from \"react-redux\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { StoreState } from \"../../models/states/StoreState\";\r\nimport { LookupTablePage } from \"../../models/LookupTablePage\";\r\nimport {\r\n getSettingString,\r\n getSettingBoolean,\r\n getSettingNumber,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { LookupTableParams } from \"../../models/LookupTableParams\";\r\nimport { isNullOrEmpty } from \"../../utils/index\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { Piping } from \"../../piping\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { __getStore__ } from \"../../redux/store\";\r\nimport { PaginatedTable, TableRow, TableTexts } from \"../table/PaginatedTable\";\r\nimport { isVisible } from \"../../models/utilities/choiceUtilities\";\r\nimport { getChoice } from \"../../models/utilities/variableUtilities\";\r\nimport { getSoftPromptCode } from \"../../models/utilities/questionUtilities\";\r\nimport { lookupTableFetch } from \"../../redux/actions\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\ninterface StateProps {\r\n page: LookupTablePage;\r\n}\r\n\r\ninterface Props extends ControlProps, StateProps, DispatchProp {}\r\n\r\ninterface State {\r\n params: LookupTableParams;\r\n shouldDisplayFilters: boolean;\r\n}\r\n\r\nconst mapStateToProps = (state: StoreState, ownProps: Props): StateProps => ({\r\n page: state.lookupTable.lookupTable[ownProps.question.name],\r\n});\r\n\r\nconst SEARCH = \"SEARCH\";\r\nconst SELECTED_ITEMS_LIMIT = \"SELECTED_ITEMS_LIMIT\";\r\nconst SELECTED_ITEMS = \"SELECTED_ITEMS\";\r\nconst DATA_TABLE_EMPTY_TABLE = \"DATA_TABLE_EMPTY_TABLE\";\r\nconst DATA_TABLE_INFO = \"DATA_TABLE_INFO\";\r\nconst DATA_TABLE_INFO_FILTERED = \"DATA_TABLE_INFO_FILTERED\";\r\nconst DATA_TABLE_LENGTH_MENU = \"DATA_TABLE_LENGTH_MENU\";\r\n\r\nclass LookupTableImpl extends BaseControl {\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n shouldDisplayFilters: false,\r\n params: {\r\n pageStart: 0,\r\n pageLength: 25,\r\n search: \"\",\r\n searchableColumns: [],\r\n columnFilters: {},\r\n sortColumn: \"\",\r\n sortAsc: false,\r\n selected: [],\r\n },\r\n };\r\n }\r\n\r\n tableName = (props: Props) => getSettingString(props.question, \"Name\");\r\n\r\n pageCount = (props: Props) =>\r\n Math.ceil(props.page.totalFilteredRows / props.page.params.pageLength);\r\n\r\n currentPage = (props: Props) => props.page.params.pageStart / props.page.params.pageLength + 1;\r\n\r\n searchableColumns = (props: Props) =>\r\n props.sequencedVariables\r\n .filter((c) => getSettingBoolean(c, \"Searchable\"))\r\n .map((c) => getSettingString(c, \"ColumnName\"));\r\n\r\n showColumnFilters = (props: Props) => getSettingBoolean(props.question, \"ColumnFilters\");\r\n\r\n initializeQuestion(question: QuestionModel, props: Props): void {\r\n super.initializeQuestion(question, props);\r\n if (props.sequencedVariables.length === 0) {\r\n return;\r\n }\r\n const mentions = this.getSelectedInternalIds(props);\r\n const shouldDisplayFilters = mentions != null && mentions.length > 0;\r\n this.setState(\r\n (state) => {\r\n const newState = { ...state };\r\n newState.shouldDisplayFilters = shouldDisplayFilters;\r\n newState.params = {\r\n pageStart: 0,\r\n pageLength: getSettingNumber(props.question, \"PageSize\", 25),\r\n selected: this.getSelectedInternalIds(props),\r\n search: \"\",\r\n searchableColumns: this.searchableColumns(props),\r\n columnFilters: {},\r\n sqlFilter: \"\",\r\n sortColumn: getSettingString(question, \"SortColumn\"),\r\n sortAsc: getSettingBoolean(props.question, \"SortDirection\", \"asc\"),\r\n };\r\n return newState;\r\n },\r\n () => this.updateSqlFilter(question, props),\r\n );\r\n }\r\n\r\n willUpdateMentions(question: QuestionModel, nextProps: Props) {\r\n super.willUpdateMentions(question, nextProps);\r\n this.updateSqlFilter(question, nextProps);\r\n this.updateSelected(nextProps);\r\n }\r\n\r\n updateSelected(props: Props) {\r\n this.setState((state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n selected: this.getSelectedInternalIds(props),\r\n },\r\n }));\r\n }\r\n\r\n getMaxAnswer(props: Props) {\r\n return getSettingNumber(props.question, \"MaxAllowedAnswers\");\r\n }\r\n\r\n updateSqlFilter(question: QuestionModel, props: Props) {\r\n const { interview } = __getStore__().getState();\r\n let filter: string;\r\n if (question.lookupFilter) {\r\n filter = Piping.evaluateRecalls(interview, question.lookupFilter.expression);\r\n }\r\n if (filter == null) {\r\n this.fetchLookupTable(props);\r\n return;\r\n }\r\n this.setState(\r\n (state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n sqlFilter: filter,\r\n },\r\n }),\r\n () => this.fetchLookupTable(props),\r\n );\r\n }\r\n\r\n fetchLookupTable(props: Props) {\r\n props.dispatch(\r\n lookupTableFetch(this.tableName(props), this.state.params, props.question.name),\r\n );\r\n }\r\n\r\n idForRow(row: number) {\r\n return `${this.props.question.name}_${row}`;\r\n }\r\n\r\n isVisibleColumn(props: Props, columnName: string) {\r\n return props.sequencedVariables.some(\r\n (variable) =>\r\n columnName === getSettingString(variable, \"ColumnName\") &&\r\n getSettingBoolean(variable, \"Visible\"),\r\n );\r\n }\r\n\r\n getColumnNameByIndex(page: LookupTablePage, index) {\r\n return page.columns[index];\r\n }\r\n\r\n getInternalIdVariableName(props: Props) {\r\n return props.question.variables.find((v) =>\r\n getSettingBoolean(v, \"ColumnName\", \"InternalId\"),\r\n ).name;\r\n }\r\n\r\n maxAnswersReached(props: Props) {\r\n const maxAnswer = this.getMaxAnswer(props);\r\n const mentionCount = this.getSelectedRowCount(props);\r\n return maxAnswer > 0 && mentionCount >= maxAnswer;\r\n }\r\n\r\n onChangeRowSelected = (row: TableRow, selected: boolean) => {\r\n const { props } = this;\r\n if (selected && this.maxAnswersReached(props)) {\r\n return;\r\n }\r\n const isRowSelected = this.isRowSelected(props, row.id);\r\n if (isRowSelected && !selected) {\r\n const mentionIndex = this.getMentions(\r\n props,\r\n this.getInternalIdVariableName(props),\r\n ).findIndex((m) => parseInt(m.value, 10) === row.id);\r\n props.question.variables.forEach((variable) => {\r\n this.setMentions(props, variable.name, (mentions) =>\r\n mentions.splice(mentionIndex, 1),\r\n );\r\n });\r\n } else if (!isRowSelected && selected) {\r\n props.question.variables.forEach((variable) => {\r\n const columnName = getSettingString(variable, \"ColumnName\");\r\n const value = row[columnName];\r\n this.setMentions(props, variable.name, (mentions) => mentions.add(String(value)));\r\n });\r\n }\r\n };\r\n\r\n getSelectedRowCount(props: Props) {\r\n return this.getSelectedInternalIds(props).length;\r\n }\r\n\r\n getSelectedInternalIds(props: Props) {\r\n const mentions = this.getMentions(props, this.getInternalIdVariableName(props));\r\n return mentions.map((m) => parseInt(m.value, 10));\r\n }\r\n\r\n isRowSelected(props: Props, id: number) {\r\n return this.getSelectedInternalIds(props).includes(id);\r\n }\r\n\r\n changePage(page: number) {\r\n this.setState(\r\n (state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n pageStart: (page - 1) * state.params.pageLength,\r\n },\r\n }),\r\n () => this.fetchLookupTable(this.props),\r\n );\r\n }\r\n\r\n onFirstPageClick = () => {\r\n this.changePage(1);\r\n };\r\n\r\n onLastPageClick = () => {\r\n this.changePage(this.pageCount(this.props));\r\n };\r\n\r\n onPrevPageclick = () => {\r\n const page = this.currentPage(this.props) - 1;\r\n if (page >= 1) {\r\n this.changePage(page);\r\n }\r\n };\r\n\r\n onNextPageClick = () => {\r\n const page = this.currentPage(this.props) + 1;\r\n if (page <= this.pageCount(this.props)) {\r\n this.changePage(page);\r\n }\r\n };\r\n\r\n onChangeItemCount = (event) => {\r\n const { value } = event.target.value;\r\n this.onFirstPageClick();\r\n this.setState(\r\n (state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n pageLength: parseInt(value, 10),\r\n },\r\n }),\r\n () => this.fetchLookupTable(this.props),\r\n );\r\n };\r\n\r\n onChangeSearch = (value: string) => {\r\n this.setState((state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n search: value,\r\n pageStart: 0,\r\n },\r\n }));\r\n this.fetchLookupTable(this.props);\r\n };\r\n\r\n onClickHeader = (header: string) => {\r\n if (this.state.params.sortColumn.includes(header)) {\r\n this.setState(\r\n (state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n sortAsc: !state.params.sortAsc,\r\n },\r\n }),\r\n () => this.fetchLookupTable(this.props),\r\n );\r\n } else {\r\n this.setState(\r\n (state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n sortColumn: header,\r\n sortAsc: true,\r\n },\r\n }),\r\n () => this.fetchLookupTable(this.props),\r\n );\r\n }\r\n };\r\n\r\n onClearColumnFilters = () => {\r\n this.setState(\r\n (state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n columnFilters: {},\r\n pageStart: 0,\r\n },\r\n }),\r\n () => this.fetchLookupTable(this.props),\r\n );\r\n };\r\n\r\n onChangeColumnFilter = (column: string, value: string) => {\r\n this.setState(\r\n (state) => {\r\n let columnFilters = {\r\n ...state.params.columnFilters,\r\n [column]: value,\r\n };\r\n columnFilters = Object.entries(columnFilters)\r\n .filter(([, v]) => v)\r\n .reduce((obj, [k, v]) => ({ ...obj, [k]: v }), {});\r\n return {\r\n ...state,\r\n params: {\r\n ...state.params,\r\n columnFilters,\r\n pageStart: 0,\r\n },\r\n };\r\n },\r\n () => this.fetchLookupTable(this.props),\r\n );\r\n };\r\n\r\n onFieldKeyPress = (event) => {\r\n if (event.key === \"Enter\") {\r\n this.fetchLookupTable(this.props);\r\n }\r\n };\r\n\r\n hasMentions(props: Props) {\r\n const variableName = this.getInternalIdVariableName(props);\r\n const mentions = this.getMentions(props, variableName);\r\n return (\r\n mentions !== undefined &&\r\n mentions.length > 0 &&\r\n mentions.some((m) => this.mentionIsValid(m, props.question))\r\n );\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const { question, useClientValidation } = this.props;\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n const required = this.isAnswerRequired(this.props.questionnaire, this.props.question);\r\n const [variable] = question.variables;\r\n const min = this.minValue();\r\n if (this.hasMentions(this.props)) {\r\n const max = this.maxValue();\r\n const selected = this.state.params.selected.length;\r\n if (max != null && selected > Number(max)) {\r\n const message = getSettingString(question, \"UpperBoundNotFulfilledMessage\");\r\n return new ValidationBuilder()\r\n .fail(\r\n variable.name,\r\n !isNullOrEmpty(message) ? message : \"UpperBoundNotFulfilled\",\r\n { max: String(max) },\r\n )\r\n .build();\r\n }\r\n if (min != null && selected < Number(min)) {\r\n const message = getSettingString(question, \"LowerBoundNotFulfilledMessage\");\r\n return new ValidationBuilder()\r\n .fail(variable.name, !isNullOrEmpty(message) ? message : \"InvalidChoicesMin\", {\r\n min: String(min),\r\n })\r\n .build();\r\n }\r\n } else if (required) {\r\n // Validate soft-prompt.\r\n const validation = new ValidationBuilder();\r\n const softPromptCode = getSoftPromptCode(question);\r\n if (this.props.showSoftPrompt && softPromptCode != null) {\r\n const softPromptChoice = getChoice(question.variables[0], softPromptCode);\r\n if (!isVisible(softPromptChoice)) {\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.set(softPromptCode),\r\n );\r\n }\r\n return new ValidationBuilder().build();\r\n }\r\n if (min != null && Number(min) > 0) {\r\n const message = getSettingString(question, \"LowerBoundNotFulfilledMessage\");\r\n validation.fail(\r\n variable.name,\r\n !isNullOrEmpty(message) ? message : \"InvalidChoicesMin\",\r\n { min: String(min) },\r\n );\r\n }\r\n // Question is required but has no mentions.\r\n return validation.fail(variable.name, \"IncompleteAnswer\").build();\r\n }\r\n // Question is valid.\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n hasSearchableColumns() {\r\n return this.props.sequencedVariables.some((c) => getSettingBoolean(c, \"Searchable\"));\r\n }\r\n\r\n onSortChanged = (sortColumn: string, sortAsc: boolean) => {\r\n this.setState(\r\n (state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n sortColumn,\r\n sortAsc,\r\n },\r\n }),\r\n () => this.fetchLookupTable(this.props),\r\n );\r\n };\r\n\r\n onPageChanged = (pageStart: number, pageLength: number) => {\r\n this.setState(\r\n (state) => ({\r\n ...state,\r\n params: {\r\n ...state.params,\r\n pageStart,\r\n pageLength,\r\n },\r\n }),\r\n () => this.fetchLookupTable(this.props),\r\n );\r\n };\r\n\r\n getTableTexts = (question: QuestionModel, language: string): TableTexts => {\r\n const translateKey = (key: string, defaultValue: string) =>\r\n translate(question, key, language) || defaultValue;\r\n return {\r\n search: translateKey(SEARCH, \"Search\"),\r\n selectedItemsLimit: translateKey(SELECTED_ITEMS_LIMIT, \"{count} of {limit} selected\"),\r\n selectedItems: translateKey(SELECTED_ITEMS, \"{count} selected\"),\r\n emptyTable: translateKey(DATA_TABLE_EMPTY_TABLE, \"No items to display\"),\r\n info: translateKey(DATA_TABLE_INFO, \"Displaying _START_ to _END_ of _TOTAL_ item(s)\"),\r\n infoFiltered: translateKey(DATA_TABLE_INFO_FILTERED, \"(Filtered from _MAX_ item(s))\"),\r\n lengthMenu: translateKey(DATA_TABLE_LENGTH_MENU, \"Display _MENU_ items\"),\r\n };\r\n };\r\n\r\n renderQuestion(question: QuestionModel) {\r\n const { props } = this;\r\n const { page, language } = props;\r\n if (!page) {\r\n return
    Loading...
    ;\r\n }\r\n const { columns, rows, totalRows, totalFilteredRows, params, columnsTranslation } = page;\r\n const filterable = this.showColumnFilters(props);\r\n const columnFilters = params.columnFilters || {};\r\n const tableColumns = props.sequencedVariables\r\n .filter((variable) => {\r\n const columnName = getSettingString(variable, \"ColumnName\");\r\n return this.isVisibleColumn(props, columnName) && columns.includes(columnName);\r\n })\r\n .map((variable) => {\r\n const columnName = getSettingString(variable, \"ColumnName\");\r\n const translatedName = translate(\r\n variable,\r\n \"TEXT\",\r\n language,\r\n (columnsTranslation || {})[columnName],\r\n );\r\n return {\r\n name: columnName,\r\n searchable: getSettingBoolean(variable, \"Searchable\"),\r\n width: getSettingNumber(variable, \"Width\"),\r\n filter: columnFilters[columnName],\r\n translatedName,\r\n };\r\n })\r\n .sort((a, b) => columns.indexOf(a.name) - columns.indexOf(b.name));\r\n const pageRows = rows.map(({ RowNum, ...row }) => {\r\n const selected = this.isRowSelected(props, parseInt(row.InternalId, 10));\r\n return {\r\n id: parseInt(row.InternalId, 10),\r\n index: RowNum,\r\n selected,\r\n ...row,\r\n };\r\n });\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport const LookupTableControl = connect(mapStateToProps)(LookupTableImpl);\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { controlBackgroundColor, alpha, foregroundColor, darken } from \"../../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n choice: {\r\n background: ({ theme }) => alpha(theme.ControlBackground, theme.ControlAlpha),\r\n border: ({ theme }) => [[theme.BorderWidth, \"solid\", theme.ControlBorderColor]],\r\n borderRadius: ({ theme }) => theme.BorderRadius,\r\n color: ({ theme }) => foregroundColor(theme, controlBackgroundColor(theme)),\r\n composes: \"choice radio-button\",\r\n cursor: \"pointer\",\r\n flex: 1,\r\n outline: \"none\",\r\n position: \"relative\",\r\n textAlign: \"center\",\r\n transition: \"background 200ms, border-color 200ms, color 200ms\",\r\n margin: 3,\r\n\r\n \"&:before\": {\r\n content: \"''\",\r\n float: \"left\",\r\n paddingTop: \"100%\",\r\n },\r\n },\r\n dynamicChoice: {\r\n width: \"100%\",\r\n margin: ({ theme }) => [[theme.ChoiceSpacing / 2, 0]],\r\n padding: [[14.5, 0]],\r\n\r\n \"&:before\": {\r\n paddingTop: \"0\",\r\n height: 29,\r\n width: \"100%\",\r\n },\r\n },\r\n choiceSelected: {\r\n background: ({ theme }) => theme.PrimaryColor,\r\n borderColor: ({ theme }) => darken(theme.PrimaryColor, theme.ActiveHighlightValue),\r\n color: ({ theme }) => foregroundColor(theme, theme.PrimaryColor),\r\n composes: \"choice--selected\",\r\n },\r\n choiceActive: {\r\n background: ({ theme, selected }) =>\r\n selected\r\n ? darken(theme.PrimaryColor, theme.ActiveHighlightValue)\r\n : darken(theme.ControlBackground, theme.ActiveBackgroundValue),\r\n composes: \"choice--active\",\r\n color: ({ theme, selected }) => {\r\n return selected\r\n ? foregroundColor(theme, darken(theme.PrimaryColor, theme.ActiveHighlightValue))\r\n : foregroundColor(\r\n theme,\r\n darken(theme.ControlBackground, theme.ActiveBackgroundValue),\r\n );\r\n },\r\n },\r\n content: {\r\n alignItems: \"center\",\r\n bottom: 0,\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n left: 0,\r\n position: \"absolute\",\r\n right: 0,\r\n top: 0,\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport useStyle from \"./NetPromoterItemRenderer.styles\";\r\nimport useTranslatable from \"../../../hooks/useTranslatable\";\r\nimport useDimensionContext from \"../../../hooks/useDimensionContext\";\r\n\r\ninterface Props extends RendererProps {\r\n choice?: ChoiceModel;\r\n selected?: boolean;\r\n onSelect?(choice: ChoiceModel): void;\r\n}\r\n\r\nexport default function NetPromoterItemRenderer(props: Props) {\r\n const { choice, selected, onSelect } = props;\r\n const theme = useTheme();\r\n const dimension = useDimensionContext();\r\n const classes = useStyle({ theme, selected, dimension });\r\n const label = useTranslatable(choice, \"Text\");\r\n const [active, setActive] = React.useState(false);\r\n const acceptedKeyCodes = [13, 32]; //Enter, Space\r\n\r\n return (\r\n setActive(true)}\r\n onBlur={() => setActive(false)}\r\n onMouseOver={() => setActive(true)}\r\n onMouseOut={() => setActive(false)}\r\n onClick={() => onSelect(choice)}\r\n onKeyDown={(event) => {\r\n if (acceptedKeyCodes.includes(event.keyCode)) {\r\n onSelect(choice);\r\n event.preventDefault();\r\n }\r\n }}\r\n >\r\n
    \r\n {label}\r\n
    \r\n
    \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n choices: {\r\n alignItems: \"center\",\r\n composes: \"net-promoter__choices\",\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n margin: [[0, -3]],\r\n },\r\n dynamicChoices: {\r\n flexDirection: \"column\",\r\n margin: 0,\r\n },\r\n labels: {\r\n composes: \"net-promoter__labels\",\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n margin: [[20, 0]],\r\n },\r\n dynamicLabels: {\r\n display: \"none\",\r\n },\r\n label: {\r\n composes: \"net-promoter__label\",\r\n },\r\n mobileLabel: {\r\n textAlign: \"center\",\r\n display: \"none\",\r\n },\r\n dynamicMobileLabel: {\r\n display: \"block\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { createUseStyles, useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { RendererProps, getRendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { MentionModel } from \"../../../models/MentionModel\";\r\nimport NetPromoterItemRenderer from \"./NetPromoterItemRenderer\";\r\nimport useStyle from \"./NetPromoterRenderer.styles\";\r\nimport useQuestion from \"../../../hooks/useQuestion\";\r\nimport useDimensionContext from \"../../../hooks/useDimensionContext\";\r\nimport useTranslatable from \"../../../hooks/useTranslatable\";\r\nimport OpenEndRenderer from \"./OpenEndRenderer\";\r\nimport { QuestionLabel } from \"./QuestionRenderer\";\r\n\r\ninterface Props extends RendererProps {\r\n mentions: MentionModel[];\r\n choices: ChoiceModel[];\r\n onSelect(choice: ChoiceModel): void;\r\n showFeedbackQuestion?: boolean;\r\n feedbackQuestion?: string;\r\n feedbackVariable?: string;\r\n openEndValue?: string;\r\n onOpenEndChange?(event: any): void;\r\n onOpenEndBlur?(): void;\r\n}\r\n\r\nfunction isSelected(props: Props, choice: ChoiceModel) {\r\n return props.mentions.some((mention) => mention.value === choice.value);\r\n}\r\n\r\nexport default function NetPromoterRenderer(props: Props) {\r\n const theme = useTheme();\r\n const classes = useStyle({ theme });\r\n const {\r\n choices,\r\n gridRendering,\r\n variable,\r\n onSelect,\r\n showFeedbackQuestion,\r\n feedbackQuestion,\r\n feedbackVariable,\r\n openEndValue,\r\n onOpenEndChange,\r\n onOpenEndBlur,\r\n } = props;\r\n const question = useQuestion();\r\n const leftLabel = useTranslatable(question, \"LeftLabel\");\r\n const rightLabel = useTranslatable(question, \"RightLabel\");\r\n const displayQuestion = useTranslatable(question, feedbackQuestion);\r\n const dimension = useDimensionContext();\r\n\r\n return (\r\n
    \r\n {(leftLabel !== null || rightLabel !== null) && (\r\n \r\n )}\r\n \r\n {choices.map((choice) => {\r\n const selected = isSelected(props, choice);\r\n return (\r\n \r\n );\r\n })}\r\n
    \r\n {(leftLabel !== null || rightLabel !== null) && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {showFeedbackQuestion && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n","export enum NpsFeedbackQuestionSettings {\r\n HasFeedbackQuestion = \"HasFeedbackQuestion\",\r\n DefaultFeedbackQuestion = \"DefaultFeedbackQuestion\",\r\n FeedbackVariable = \"FeedbackVariable\",\r\n FeedbackAnswerRequired = \"FeedbackAnswerRequired\",\r\n PromotersFeedbackQuestion = \"PromotersFeedbackQuestion\",\r\n PromotersVariable = \"PromotersVariable\",\r\n PromotersAnswerRequired = \"PromotersAnswerRequired\",\r\n PassivesFeedbackQuestion = \"PassivesFeedbackQuestion\",\r\n PassivesVariable = \"PassivesVariable\",\r\n PassivesAnswerRequired = \"PassivesAnswerRequired\",\r\n DetractorsFeedbackQuestion = \"DetractorsFeedbackQuestion\",\r\n DetractorsVariable = \"DetractorsVariable\",\r\n DetractorsAnswerRequired = \"DetractorsAnswerRequired\",\r\n}\r\nexport enum NpsScoresBySegment {\r\n PromotersScore = 9,\r\n DetractorsScore = 6,\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport NetPromoterRenderer from \"../renderers/v2/NetPromoterRenderer\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport {\r\n NpsFeedbackQuestionSettings,\r\n NpsScoresBySegment,\r\n} from \"../../models/enums/NpsFeedbackQuestionSettings\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingString,\r\n hasSetting,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { isNullOrEmpty } from \"../../utils\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\ninterface State {\r\n feedbackQuestion: string;\r\n feedbackVariable: string;\r\n feedbackAnswerRequired: boolean;\r\n showFeedbackQuestion: boolean;\r\n openEndValue: string;\r\n oldFeedbackVariable: string;\r\n}\r\nexport class NetPromoterControl extends BaseControl {\r\n constructor(props: Props) {\r\n super(props);\r\n const { question } = this.props;\r\n this.state = {\r\n ...this.generateNpsFeedbackQuestionObject(\r\n NpsFeedbackQuestionSettings.DefaultFeedbackQuestion,\r\n getSettingString(question, NpsFeedbackQuestionSettings.FeedbackVariable.toString()),\r\n getSettingBoolean(\r\n question,\r\n NpsFeedbackQuestionSettings.FeedbackAnswerRequired.toString(),\r\n ),\r\n ),\r\n showFeedbackQuestion: false,\r\n openEndValue: \"\",\r\n oldFeedbackVariable: \"\",\r\n };\r\n }\r\n\r\n onSelect = (choice: ChoiceModel) => {\r\n const [variable] = this.props.sequencedVariables;\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.set(choice.value));\r\n const { question } = this.props;\r\n this.setState({\r\n oldFeedbackVariable: this.state.feedbackVariable,\r\n });\r\n let npsFeedbackQuestion;\r\n if (\r\n hasSetting(question, NpsFeedbackQuestionSettings.HasFeedbackQuestion) &&\r\n getSettingBoolean(question, NpsFeedbackQuestionSettings.HasFeedbackQuestion)\r\n ) {\r\n if (\r\n hasSetting(question, NpsFeedbackQuestionSettings.FeedbackVariable.toString())\r\n ) {\r\n npsFeedbackQuestion = this.generateNpsFeedbackQuestionObject(\r\n NpsFeedbackQuestionSettings.DefaultFeedbackQuestion,\r\n getSettingString(question, NpsFeedbackQuestionSettings.FeedbackVariable),\r\n getSettingBoolean(question, NpsFeedbackQuestionSettings.FeedbackAnswerRequired),\r\n );\r\n }\r\n if (\r\n Number(choice.value) >= NpsScoresBySegment.PromotersScore &&\r\n hasSetting(\r\n question,\r\n NpsFeedbackQuestionSettings.PromotersVariable.toString(),\r\n )\r\n ) {\r\n npsFeedbackQuestion = this.generateNpsFeedbackQuestionObject(\r\n NpsFeedbackQuestionSettings.PromotersFeedbackQuestion,\r\n getSettingString(question, NpsFeedbackQuestionSettings.PromotersVariable),\r\n getSettingBoolean(\r\n question,\r\n NpsFeedbackQuestionSettings.PromotersAnswerRequired,\r\n ),\r\n );\r\n }\r\n if (\r\n Number(choice.value) < NpsScoresBySegment.PromotersScore &&\r\n Number(choice.value) > NpsScoresBySegment.DetractorsScore &&\r\n hasSetting(\r\n question,\r\n NpsFeedbackQuestionSettings.PassivesVariable.toString(),\r\n )\r\n ) {\r\n npsFeedbackQuestion = this.generateNpsFeedbackQuestionObject(\r\n NpsFeedbackQuestionSettings.PassivesFeedbackQuestion,\r\n getSettingString(question, NpsFeedbackQuestionSettings.PassivesVariable),\r\n getSettingBoolean(question, NpsFeedbackQuestionSettings.PassivesAnswerRequired),\r\n );\r\n }\r\n if (\r\n Number(choice.value) <= NpsScoresBySegment.DetractorsScore &&\r\n hasSetting(\r\n question,\r\n NpsFeedbackQuestionSettings.DetractorsVariable.toString(),\r\n )\r\n ) {\r\n npsFeedbackQuestion = this.generateNpsFeedbackQuestionObject(\r\n NpsFeedbackQuestionSettings.DetractorsFeedbackQuestion,\r\n getSettingString(question, NpsFeedbackQuestionSettings.DetractorsVariable),\r\n getSettingBoolean(\r\n question,\r\n NpsFeedbackQuestionSettings.DetractorsAnswerRequired,\r\n ),\r\n );\r\n }\r\n this.setState({\r\n ...npsFeedbackQuestion,\r\n showFeedbackQuestion: true,\r\n });\r\n this.renderQuestion();\r\n }\r\n };\r\n\r\n onOpenEndChange = (event: any) => {\r\n const { value } = event.target;\r\n this.setState({\r\n openEndValue: value,\r\n });\r\n };\r\n\r\n onOpenEndBlur = (): void => {\r\n const openEndName = this.state.feedbackVariable;\r\n const openEnd = this.state.openEndValue;\r\n const openEndAnswerCode = \"0\";\r\n if (this.state.oldFeedbackVariable !== undefined) {\r\n this.setMentions(this.props, this.state.oldFeedbackVariable, (mentions) =>\r\n mentions.clear(),\r\n );\r\n }\r\n this.setMentions(this.props, openEndName, (mentions) => mentions.clear());\r\n if (!isNullOrEmpty(openEnd)) {\r\n this.setMentions(this.props, openEndName, (mentions) =>\r\n mentions.set(openEndAnswerCode, openEnd.trim()),\r\n );\r\n }\r\n };\r\n\r\n generateNpsFeedbackQuestionObject(\r\n feedbackQuestion: string,\r\n feedbackVariable: string,\r\n feedbackAnswerRequired: boolean,\r\n ) {\r\n return {\r\n feedbackQuestion,\r\n feedbackVariable,\r\n feedbackAnswerRequired,\r\n };\r\n }\r\n\r\n getChoiceList = () => {\r\n const { question } = this.props;\r\n if (question.variables.length > 0) {\r\n return question.variables.filter((variable) => variable.choiceList.length > 0)[0]\r\n .choiceList;\r\n }\r\n\r\n return null;\r\n };\r\n\r\n validate(): ValidationResultModel {\r\n if (this.state.feedbackAnswerRequired && isNullOrEmpty(this.state.openEndValue)) {\r\n return new ValidationBuilder()\r\n .fail(this.state.feedbackVariable, \"IncompleteAnswer\", {\r\n openEnd: this.state.feedbackVariable,\r\n })\r\n .build();\r\n }\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n renderQuestion() {\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\n\r\nexport class NullControl extends BaseControl {\r\n initializeQuestion(question: QuestionModel, props: ControlProps): void {}\r\n\r\n renderQuestion(question: QuestionModel): JSX.Element | null {\r\n return null;\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n return new ValidationBuilder().build();\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport * as Mixins from \"../../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n numericRanking: {\r\n composes: \"numericRanking\",\r\n },\r\n numericOptionList: {\r\n composes: \"numeric-option-list\",\r\n },\r\n numericOption: {\r\n composes: \"numeric-option\",\r\n },\r\n numericOptionChoiceTextHeader: {\r\n composes: \"numeric-option__choice-text-header\",\r\n },\r\n numericOptionChoiceRankingHeader: {\r\n composes: \"numeric-option__choice-ranking-header\",\r\n },\r\n numericOptionChoiceHeader: {\r\n composes: \"numeric-option__choice-header\",\r\n paddingBottom: \"13px\",\r\n paddingTop: \"13px\",\r\n },\r\n numericOptionChoiceText: {\r\n composes: \"numeric-option__choice-text\",\r\n paddingBottom: \"13px\",\r\n paddingRight: \"24px\",\r\n paddingTop: \"13px\",\r\n verticalAlign: \"middle\",\r\n },\r\n numericOptionChoiceRanking: {\r\n composes: \"numeric-option__choice-ranking\",\r\n paddingRight: \"24px\",\r\n verticalAlign: \"middle\",\r\n },\r\n numericOptionChoiceInput: {\r\n composes: \"numeric-option__choice-Input\",\r\n },\r\n numericOptionChoiceLabel: {\r\n composes: \"numeric-option__choice-label\",\r\n },\r\n numericOptionChoiceSelected: ({ theme }) => ({\r\n background: theme.PrimaryColor,\r\n color: Mixins.foregroundColor(theme, theme.PrimaryColor),\r\n composes: \"numeric-option__choice-ranking--selected\",\r\n }),\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport useStyles from \"./NumericRankingRenderer.styles\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { getSettingString } from \"../../../models/utilities/settingUtilities\";\r\nimport { isNullOrEmpty } from \"../../../utils/index\";\r\nimport { RecalledText } from \"../../../containers/shared/RecalledText\";\r\nimport { translate } from \"../../../models/utilities/translationUtilities\";\r\nimport { NumericRankingModel } from \"../../../models/NumericRankingModel\";\r\nimport { getChoiceRanking } from \"../../../models/utilities/choiceUtilities\";\r\nimport InputBox from \"../../shared/InputBox\";\r\n\r\ninterface Props extends RendererProps {\r\n rankings: NumericRankingModel[];\r\n labelsHeader: string;\r\n answerHeader: string;\r\n choices: ChoiceModel[];\r\n onFocus?: React.FocusEventHandler;\r\n onChange(choice: ChoiceModel, value: string): void;\r\n}\r\n\r\nfunction RankingHeader(props: Props) {\r\n const theme: any = useTheme();\r\n const classes = useStyles({ theme });\r\n const { question } = props;\r\n const {\r\n answerHeader = getSettingString(question, \"AnswersHeader\"),\r\n labelsHeader = getSettingString(question, \"LabelsHeader\"),\r\n } = props;\r\n\r\n return (\r\n \r\n {theme.DisplayChoiceIcon === \"right\" && !isNullOrEmpty(labelsHeader) && (\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n )}\r\n {!isNullOrEmpty(answerHeader) && (\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n )}\r\n {theme.DisplayChoiceIcon !== \"right\" && !isNullOrEmpty(labelsHeader) && (\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction Header({ language, choice }) {\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n return (\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n );\r\n}\r\n\r\nfunction Row(props: Props & { choice: ChoiceModel }) {\r\n const [focused, setFocused] = React.useState(false);\r\n const theme: any = useTheme();\r\n const classes = useStyles({ theme });\r\n const { choice, rankings, language, onFocus, onChange } = props;\r\n const choiceText = translate(choice, \"TEXT\", language);\r\n\r\n return (\r\n \r\n {theme.DisplayChoiceIcon === \"right\" && (\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n )}\r\n \r\n \r\n {\r\n setFocused(true);\r\n onFocus(e);\r\n }}\r\n onBlur={() => setFocused(false)}\r\n onChange={(e) => onChange(choice, (e.target as any).value)}\r\n />\r\n \r\n \r\n {theme.DisplayChoiceIcon !== \"right\" && (\r\n \r\n (\r\n \r\n )}\r\n />\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default function NumericRankingRenderer(props: Props) {\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n const { choices, language } = props;\r\n return (\r\n
    \r\n \r\n \r\n \r\n {choices.map((choice) =>\r\n !choice.value ? (\r\n
    \r\n ) : (\r\n \r\n ),\r\n )}\r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { remove, isEmpty, max, cloneDeep } from \"../../utils/lodash\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { ControlProps, BaseControl } from \"./BaseControl\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { isNullOrEmpty } from \"../../utils/index\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { getSettingNumber, getSettingString } from \"../../models/utilities/settingUtilities\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { NumericRankingModel } from \"../../models/NumericRankingModel\";\r\nimport { MentionModel } from \"../../models/MentionModel\";\r\nimport NumericRankingRenderer from \"../renderers/v2/NumericRankingRenderer\";\r\nimport { getSoftPromptCode } from \"../../models/utilities/questionUtilities\";\r\nimport { getChoice } from \"../../models/utilities/variableUtilities\";\r\nimport { isVisible } from \"../../models/utilities/choiceUtilities\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n rankings: NumericRankingModel[];\r\n}\r\n\r\nexport class NumericRankingControl extends BaseControl {\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = { rankings: [] };\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props) {\r\n super.initializeQuestion(question, props);\r\n const mentions: MentionModel[] = this.getMentions(props);\r\n this.setState({\r\n rankings: mentions.map((mention, i) => ({\r\n choiceValue: mention.value,\r\n rankingValue: i + 1,\r\n })),\r\n });\r\n }\r\n\r\n getSoftPromptChoiceRanking = (choiceValue: string): NumericRankingModel => ({\r\n choiceValue,\r\n rankingValue: 1,\r\n });\r\n\r\n getMaxAnswers(): number {\r\n const maxAnswers = getSettingNumber(this.props.question, \"MaxAllowedAnswers\");\r\n const choicesCount = this.props.sequencedVariables[0].choiceList.filter(\r\n (a) => !isNullOrEmpty(a.value),\r\n ).length;\r\n\r\n return maxAnswers !== undefined && !Number.isNaN(maxAnswers)\r\n ? Math.min(maxAnswers, choicesCount)\r\n : choicesCount;\r\n }\r\n\r\n getMinAnswers(): number {\r\n const minAnswers = getSettingNumber(this.props.question, \"MinRequiredAnswers\");\r\n if (minAnswers !== undefined && !Number.isNaN(minAnswers)) {\r\n return minAnswers;\r\n }\r\n return 1;\r\n }\r\n\r\n getRankingValue = (value: string): number => {\r\n const sanitizedValue = value.replace(/\\D/g, \"\");\r\n if (!isNullOrEmpty(sanitizedValue)) {\r\n const maxAnswers = this.getMaxAnswers();\r\n const intValue = parseInt(sanitizedValue, 10);\r\n if (!Number.isNaN(intValue) && intValue >= 1 && intValue <= maxAnswers) {\r\n return intValue;\r\n }\r\n }\r\n return undefined;\r\n };\r\n\r\n onChange = (choice: ChoiceModel, value: string) => {\r\n const { sequencedVariables } = this.props;\r\n const [variable] = sequencedVariables;\r\n\r\n const { value: choiceValue } = choice;\r\n const rankingValue = this.getRankingValue(value);\r\n const ranking: NumericRankingModel = {\r\n choiceValue,\r\n rankingValue,\r\n };\r\n\r\n this.setState((prevState) => {\r\n const newState = cloneDeep(prevState);\r\n remove(newState.rankings, (r) => r.choiceValue === choiceValue);\r\n if (rankingValue) {\r\n newState.rankings.push(ranking);\r\n }\r\n this.setNumericRankingMentions(variable, newState.rankings);\r\n return newState;\r\n });\r\n };\r\n\r\n setNumericRankingMentions(variable: VariableModel, rankings: NumericRankingModel[]): void {\r\n const { name: variableName } = variable;\r\n const rankingsToSet = this.getRankingIndicesToSet(rankings);\r\n this.setMentions(this.props, variableName, (mentions) => {\r\n mentions.clear();\r\n rankingsToSet.forEach((index) => {\r\n const choices = rankings\r\n .filter((ranking) => ranking.rankingValue === index)\r\n .map((ranking) => ranking.choiceValue)\r\n .sort();\r\n const [firstChoiceInRanking] = choices;\r\n if (firstChoiceInRanking) {\r\n choices.forEach(() => mentions.add(firstChoiceInRanking));\r\n } else {\r\n mentions.add(\"\");\r\n }\r\n });\r\n return mentions;\r\n });\r\n }\r\n\r\n getRankingIndicesToSet(rankings: NumericRankingModel[]): number[] {\r\n if (!rankings?.length) {\r\n return [];\r\n }\r\n const maxRankingInState = Math.max(...rankings.map((ranking) => ranking.rankingValue));\r\n const maxAnswers = this.getMaxAnswers();\r\n const maxRanking = Math.min(maxAnswers, maxRankingInState);\r\n const rankingsToSet = [...Array(maxRanking)].map((_, i) => i + 1);\r\n return rankingsToSet;\r\n }\r\n\r\n onFocus = (event) => {\r\n const inputIsEmpty = isEmpty(event.target.value);\r\n const alreadyHasMaxAnswers = this.state.rankings.length >= this.getMaxAnswers();\r\n if (inputIsEmpty && alreadyHasMaxAnswers) {\r\n event.target.blur();\r\n }\r\n };\r\n\r\n validate(): ValidationResultModel {\r\n const {\r\n question,\r\n questionnaire,\r\n showSoftPrompt,\r\n sequencedVariables,\r\n useClientValidation,\r\n } = this.props;\r\n const [variable] = sequencedVariables;\r\n const { choiceList } = variable;\r\n const { rankings } = this.state;\r\n const validation = new ValidationBuilder();\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n const customError =\r\n getSettingString(question, \"CustomErrorMessage\") ||\r\n this.parentCustomError(question.parent);\r\n const incompleteAnswerError = customError || \"IncompleteAnswer\";\r\n\r\n const hasValues = rankings.length;\r\n const isRequired = this.isAnswerRequired(questionnaire, question);\r\n if (!isRequired && !hasValues) {\r\n return validation.build();\r\n }\r\n\r\n const isSoftPrompt = this.isSoftPrompt(this.props);\r\n const softPromptCode = getSoftPromptCode(question);\r\n const hasNonSoftPromptAnswers = rankings.some(\r\n (ranking) => softPromptCode === undefined || ranking.choiceValue !== softPromptCode,\r\n );\r\n if (isSoftPrompt && !hasNonSoftPromptAnswers) {\r\n if (showSoftPrompt) {\r\n // Short-circuit validation: set invisible choice mentions (if any) and return valid\r\n const softPromptChoice = getChoice(variable, softPromptCode);\r\n if (softPromptChoice !== undefined && !isVisible(softPromptChoice)) {\r\n const ranking = this.getSoftPromptChoiceRanking(softPromptChoice.value);\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.set(ranking.choiceValue),\r\n );\r\n }\r\n return validation.build();\r\n }\r\n return this.validateSoftPrompt(this.props);\r\n }\r\n\r\n if (!hasValues) {\r\n return validation.fail(variable.name, incompleteAnswerError).build();\r\n }\r\n\r\n // Sorting numbers will return unexpected results without a comparer: (a, b) => a - b\r\n const values = rankings.map((r) => r.rankingValue).sort((a, b) => a - b);\r\n\r\n const hasFewerAnswersThanMinimum = values.length < this.getMinAnswers();\r\n if (hasFewerAnswersThanMinimum) {\r\n return validation\r\n .fail(variable.name, \"InvalidChoicesMin\", { min: String(this.getMinAnswers()) })\r\n .build();\r\n }\r\n\r\n const hasGapsInRanking = values.slice(1).some((value, i) => value - values[i] !== 1);\r\n const maxRankExceedsMaxLength = values.length !== max(values);\r\n const hasInvalidValue = values.some(\r\n (value, index) =>\r\n Number.isNaN(value) ||\r\n value < 0 ||\r\n value > choiceList.length ||\r\n values.indexOf(value) !== index,\r\n );\r\n\r\n const [firstValue] = values;\r\n const hasInvalidResponse =\r\n firstValue !== 1 || hasGapsInRanking || maxRankExceedsMaxLength || hasInvalidValue;\r\n if (hasInvalidResponse) {\r\n return validation\r\n .fail(variable.name, \"InvalidRankingValue\", {\r\n min: String(1),\r\n max: String(this.getMaxAnswers()),\r\n })\r\n .build();\r\n }\r\n\r\n return validation.build();\r\n }\r\n\r\n renderQuestion(question: QuestionModel) {\r\n const { language, sequencedVariables } = this.props;\r\n return (\r\n \r\n );\r\n }\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingString,\r\n getSettingNumber,\r\n hasSetting,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { Signal } from \"../../signals/index\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport {\r\n isHeaderRow,\r\n variableForCell,\r\n hasOpenEnd,\r\n openEndVariableName,\r\n} from \"../../models/utilities/gridUtilities\";\r\nimport { Piping } from \"../../piping\";\r\nimport { isNullOrEmpty } from \"../../utils/index\";\r\nimport { AxisModel } from \"../../models/AxisModel\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { RecallType } from \"../../piping/RecallType\";\r\nimport { getNumeral, formatNumeric } from \"../../utils/Number\";\r\nimport { __getStore__ } from \"../../redux/store\";\r\nimport GridRenderer from \"../renderers/v2/GridRenderer\";\r\nimport { ElementWithSettings } from \"../../models/ElementWithSettings\";\r\nimport { MentionModel } from \"../../models/MentionModel\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n validationResult?: ValidationResultModel;\r\n openEndValue: { [key: string]: string };\r\n}\r\n\r\nexport class RunningTotalControl extends BaseControl {\r\n validateSignal = new Signal();\r\n tableRef: HTMLTableElement;\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = { openEndValue: {} };\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props): void {\r\n super.initializeQuestion(question, props);\r\n this.setState({\r\n openEndValue: {},\r\n validationResult: null,\r\n });\r\n this.initializeOpenEnd(question, props);\r\n }\r\n\r\n UNSAFE_componentWillReceiveProps(nextProps: Props) {\r\n this.initializeOpenEnd(nextProps.question, nextProps);\r\n super.UNSAFE_componentWillReceiveProps(nextProps);\r\n }\r\n\r\n getVariableNames = (axes: AxisModel[]): string[] =>\r\n axes\r\n .map((axis) => axis.variables.map((variable) => variable.name))\r\n .reduce((acc, next) => [...acc, ...next], [])\r\n .reduce((acc, next) => (acc.includes(next) ? acc : [...acc, next]), []);\r\n\r\n getAxesVariablesToClear = (prevAxes: AxisModel[], currentAxes: AxisModel[]): string[] => {\r\n const prevAxesVariables = this.getVariableNames(prevAxes);\r\n const currentAxesVariables = this.getVariableNames(currentAxes);\r\n const axesVariablesToClear = prevAxesVariables.filter(\r\n (variable) => !currentAxesVariables.includes(variable),\r\n );\r\n return axesVariablesToClear;\r\n };\r\n\r\n getOpenEndVariablesToClear = (prevRows: AxisModel[], currentRows: AxisModel[]): string[] => {\r\n const prevOpenEnds = prevRows\r\n .filter((row) => !isNullOrEmpty(row.settings.OpenEndVariable))\r\n .map((row) => row.settings.OpenEndVariable);\r\n const currentOpenEnds = currentRows\r\n .filter((row) => !isNullOrEmpty(row.settings.OpenEndVariable))\r\n .map((row) => row.settings.OpenEndVariable);\r\n const openEndVariablesToClear = prevOpenEnds.filter(\r\n (variable) => !currentOpenEnds.includes(variable),\r\n );\r\n return openEndVariablesToClear;\r\n };\r\n\r\n getRemovedVariableNames = (prevProps: Props, props: Props): string[] => {\r\n const columnVariablesToClear = this.getAxesVariablesToClear(\r\n prevProps.sequencedColumns,\r\n props.sequencedColumns,\r\n );\r\n const rowVariablesToClear = this.getAxesVariablesToClear(\r\n prevProps.sequencedRows,\r\n props.sequencedRows,\r\n );\r\n const openEndVariablesToClear = this.getOpenEndVariablesToClear(\r\n prevProps.sequencedRows,\r\n props.sequencedRows,\r\n );\r\n const variablesToClear = [...columnVariablesToClear, ...rowVariablesToClear]\r\n .reduce((acc, next) => (acc.includes(next) ? acc : [...acc, next]), [])\r\n .concat(openEndVariablesToClear);\r\n return variablesToClear;\r\n };\r\n\r\n didUpdateVariables(sequencedVariables: VariableModel[], prevProps: Props) {\r\n const variablesToClear = this.getRemovedVariableNames(prevProps, this.props);\r\n variablesToClear.forEach((variableName) =>\r\n this.setMentions(this.props, variableName, (mentions) => mentions.clear()),\r\n );\r\n }\r\n\r\n initializeOpenEnd(question: QuestionModel, props: Props) {\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n question.rows\r\n .filter((row) => hasOpenEnd(row))\r\n .forEach((row) => {\r\n const openEndName = openEndVariableName(row);\r\n const mentions = this.getMentions(props, openEndName);\r\n const mention = mentions != null ? mentions[0] : undefined;\r\n if (mention !== undefined && !isNullOrEmpty(mention.openEnd)) {\r\n newState.openEndValue[openEndName] = mention.openEnd;\r\n } else {\r\n newState.openEndValue[openEndName] = \"\";\r\n }\r\n });\r\n return newState;\r\n });\r\n }\r\n\r\n onOpenEndChange = (answer: any, event: any) => {\r\n const { value } = event.target;\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n newState.openEndValue = {\r\n ...newState.openEndValue,\r\n [openEndVariableName(answer)]: this.truncateOpenEnd(answer, value),\r\n };\r\n return newState;\r\n });\r\n };\r\n\r\n onOpenEndBlur = (answer: any) => {\r\n const openEndName = openEndVariableName(answer);\r\n const openEnd = this.state.openEndValue[openEndName];\r\n if (isNullOrEmpty(openEnd)) {\r\n this.setMentions(this.props, openEndName, (mentions) => mentions.clear());\r\n } else {\r\n this.setMentions(this.props, openEndName, (mentions) =>\r\n mentions.set(getSettingString(answer, \"OpenEndAnswerCode\", \"0\"), openEnd.trim()),\r\n );\r\n }\r\n };\r\n\r\n onColumnDisplayRunningTotal = (column: AxisModel) => {\r\n const total = this.columnRunningTotal(column);\r\n return this.formatNumeric(total, column);\r\n };\r\n\r\n bodyRows = () => {\r\n const { sequencedRows = [] } = this.props;\r\n return sequencedRows.filter((row) => !isHeaderRow(row));\r\n };\r\n\r\n columnRunningTotal(column: AxisModel) {\r\n const rows = this.bodyRows();\r\n const total = rows\r\n .map((row) => {\r\n const variable = variableForCell(row, column);\r\n const value = this.getMentionValue(this.props, variable.name);\r\n return getNumeral(value).value();\r\n })\r\n .reduce((a: number, b: number) => a + b, 0);\r\n return total;\r\n }\r\n\r\n formatNumeric(value: string | number, column: AxisModel): string {\r\n const decimals = getSettingNumber(column, \"NumberOfDecimals\");\r\n return formatNumeric(\r\n value,\r\n decimals,\r\n this.props.language,\r\n false,\r\n !hasSetting(column, \"AutoFormatting\") || getSettingBoolean(column, \"AutoFormatting\"),\r\n );\r\n }\r\n\r\n onReset = (question: QuestionModel) => {\r\n question.variableNames.forEach((v) =>\r\n this.setMentions(this.props, v, (mentions) => mentions.clear()),\r\n );\r\n };\r\n\r\n validateAnswerRequired = (\r\n rows: AxisModel[],\r\n columns: AxisModel[],\r\n customError: string,\r\n validation: ValidationBuilder,\r\n ): ValidationBuilder => {\r\n const errorKey = !isNullOrEmpty(customError) ? customError : \"IncompleteAnswer\";\r\n columns.forEach((column) => {\r\n const isColumnRequired = this.isAxisAnswerRequired(column);\r\n if (!isColumnRequired) {\r\n return;\r\n }\r\n rows.forEach((row) => {\r\n const isRowRequired = this.isAxisAnswerRequired(row);\r\n const variable = variableForCell(row, column);\r\n if (!isRowRequired || variable === undefined) {\r\n return;\r\n }\r\n const hasMentions = this.variableHasMentions(variable);\r\n if (!hasMentions) {\r\n validation.fail(variable.name, errorKey);\r\n }\r\n });\r\n });\r\n return validation;\r\n };\r\n\r\n hasValidNumericValue = (mention: MentionModel) =>\r\n mention && !Number.isNaN(parseFloat(mention.value));\r\n\r\n variableHasMentions = (variable: VariableModel) =>\r\n this.getMentions(this.props, variable.name).filter(this.hasValidNumericValue).length;\r\n\r\n axisHasMentions = (axis: AxisModel) => axis.variables.some(this.variableHasMentions);\r\n\r\n validateColumnRunningTotal = (\r\n column: AxisModel,\r\n customError: string,\r\n validation: ValidationBuilder,\r\n ): ValidationBuilder => {\r\n const hasMentionsSet = this.axisHasMentions(column);\r\n if (!hasMentionsSet) {\r\n return validation;\r\n }\r\n\r\n const { language } = this.props;\r\n const min = this.getColumnValueSetting(column, \"MinValue\");\r\n const max = this.getColumnValueSetting(column, \"MaxValue\");\r\n const total = this.columnRunningTotal(column);\r\n\r\n const hasMax = max !== undefined;\r\n const hasMin = min !== undefined;\r\n\r\n const invalidMax = hasMax && total > max;\r\n const invalidMin = hasMin && total < min;\r\n const outOfBounds = hasMax && hasMin && (invalidMax || invalidMin);\r\n\r\n let columnError = \"\";\r\n if (invalidMax) {\r\n columnError = translate(column, \"UpperBoundNotFulfilledMessage\", language);\r\n } else if (invalidMin) {\r\n columnError = translate(column, \"LowerBoundNotFulfilledMessage\", language);\r\n }\r\n\r\n let errorKey = \"\";\r\n\r\n if (outOfBounds) {\r\n errorKey = customError || \"OutOfBounds\";\r\n } else if (invalidMax) {\r\n errorKey = customError || \"UpperBoundNotFulfilled\";\r\n } else if (invalidMin) {\r\n errorKey = customError || \"LowerBoundNotFulfilled\";\r\n }\r\n\r\n if (!isNullOrEmpty(errorKey)) {\r\n column.variables.forEach((variable) =>\r\n validation.fail(\r\n variable.name,\r\n !isNullOrEmpty(columnError) ? \"CustomErrorMessage\" : errorKey,\r\n {\r\n min: hasMin ? String(min) : undefined,\r\n max: hasMax ? String(max) : undefined,\r\n },\r\n columnError,\r\n ),\r\n );\r\n }\r\n return validation;\r\n };\r\n\r\n validateRowOpenEnd = (\r\n row: AxisModel,\r\n openEndValue: { [key: string]: string },\r\n customError: string,\r\n validation: ValidationBuilder,\r\n ): ValidationBuilder => {\r\n const hasMentionsSet = this.axisHasMentions(row);\r\n const rowHasOpenEnd = hasOpenEnd(row);\r\n const isRowOpenEndRequired = getSettingBoolean(row, \"EnforceOpenEnd\");\r\n if (!hasMentionsSet || !rowHasOpenEnd || !isRowOpenEndRequired || !row.openEndActive) {\r\n return validation;\r\n }\r\n\r\n const rowOpenEndVariableName = openEndVariableName(row);\r\n const hasOpenEndMentionSet =\r\n openEndValue !== undefined && !isNullOrEmpty(openEndValue[rowOpenEndVariableName]);\r\n if (!hasOpenEndMentionSet) {\r\n const errorKey = !isNullOrEmpty(customError) ? customError : \"IncompleteAnswer\";\r\n validation.fail(rowOpenEndVariableName, errorKey);\r\n }\r\n\r\n const minLength = getSettingNumber(row, \"MinOpenEndLength\");\r\n const isOpenEndValueMinimumLengthValid =\r\n minLength === undefined ||\r\n (hasOpenEndMentionSet && openEndValue[rowOpenEndVariableName].length >= minLength);\r\n if (!isOpenEndValueMinimumLengthValid) {\r\n const errorKey = !isNullOrEmpty(customError) ? customError : \"InvalidCharactersMin\";\r\n validation.fail(rowOpenEndVariableName, errorKey, {\r\n min: String(minLength),\r\n });\r\n }\r\n\r\n return validation;\r\n };\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const {\r\n questionnaire,\r\n question,\r\n sequencedColumns,\r\n sequencedRows,\r\n language,\r\n useClientValidation,\r\n } = this.props;\r\n const validation = new ValidationBuilder();\r\n question.variables.forEach(this.removeUnavailableMentions);\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return validation.build();\r\n }\r\n\r\n if (this.isSoftPrompt(this.props) && !this.hasMentions(this.props)) {\r\n return this.validateSoftPrompt(this.props);\r\n }\r\n const isQuestionRequired = this.isAnswerRequired(questionnaire, question);\r\n const customError = translate(question, \"CustomErrorMessage\", language);\r\n\r\n if (isQuestionRequired) {\r\n this.validateAnswerRequired(sequencedRows, sequencedColumns, customError, validation);\r\n }\r\n sequencedRows.forEach((row) => {\r\n this.validateRowOpenEnd(row, this.state.openEndValue, customError, validation);\r\n });\r\n sequencedColumns.forEach((column) => {\r\n this.validateColumnRunningTotal(column, customError, validation);\r\n });\r\n return validation.build();\r\n }\r\n\r\n getColumnValueSetting(column: ElementWithSettings, setting: \"MinValue\" | \"MaxValue\") {\r\n const { interview } = __getStore__().getState();\r\n const value = getSettingString(column, setting);\r\n const pipedValue = Piping.evaluateRecalls(interview, value, RecallType.Code);\r\n const parsedValue = parseInt(pipedValue, 10);\r\n return !Number.isNaN(parsedValue) ? parsedValue : undefined;\r\n }\r\n\r\n renderQuestion(question: QuestionModel): JSX.Element {\r\n return (\r\n this.onReset(question)}\r\n />\r\n );\r\n }\r\n}\r\n","export enum VariableDataType {\r\n Text = 0,\r\n Numeric = 1,\r\n Image = 2,\r\n Date = 3,\r\n File = 4,\r\n Base64 = 5,\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { alpha } from \"../../theme/Mixins\";\r\n\r\nconst cornerSize = 5;\r\nconst cornerWidth = 2;\r\nconst borderRadiuses = {\r\n squared: 0,\r\n soft: 15,\r\n rounded: 50,\r\n};\r\n\r\nconst makeCornerStyle = () => ({\r\n position: \"absolute\",\r\n pointerEvents: \"none\",\r\n width: `${cornerSize}%`,\r\n margin: ({ theme }) =>\r\n Math.min(theme.BorderRadius, borderRadiuses.rounded) >= borderRadiuses.rounded ? 20 : 12,\r\n height: ({ ratio }) => `${cornerSize * ratio}%`,\r\n});\r\n\r\nexport default createUseStyles({\r\n container: {\r\n display: \"inline-block\",\r\n background: ({ theme }) => alpha(theme.InputBackground, theme.ControlAlpha),\r\n borderRadius: ({ theme }) => Math.min(theme.BorderRadius, 50),\r\n border: ({ theme }) => [[theme.BorderWidth, \"solid\", theme.ControlBorderColor]],\r\n },\r\n signatureArea: {\r\n position: \"relative\",\r\n },\r\n canvas: {\r\n cursor: \"crosshair\",\r\n },\r\n image: {\r\n width: ({ signatureWidth }) => `${signatureWidth}px`,\r\n height: ({ signatureWidth, ratio }) => `${signatureWidth / ratio}px`,\r\n cursor: \"not-allowed\",\r\n },\r\n undoButton: {\r\n position: \"absolute\",\r\n top: \"20%\",\r\n left: \"10%\",\r\n marginBottom: ({ signatureWidth }) => `${signatureWidth * 0.03}px`,\r\n cursor: \"pointer\",\r\n },\r\n clearButton: {\r\n position: \"absolute\",\r\n top: \"20%\",\r\n right: \"10%\",\r\n marginBottom: ({ signatureWidth }) => `${signatureWidth * 0.03}px`,\r\n cursor: \"pointer\",\r\n },\r\n signatureLine: {\r\n position: \"absolute\",\r\n bottom: \"20%\",\r\n left: \"10%\",\r\n right: \"10%\",\r\n pointerEvents: \"none\",\r\n fontSize: ({ signatureWidth }) => signatureWidth * 0.04,\r\n lineHeight: ({ signatureWidth }) => `${signatureWidth * 0.1}px`,\r\n borderBottom: \"2px solid #999\",\r\n },\r\n topLeftCorner: {\r\n ...makeCornerStyle(),\r\n top: 0,\r\n left: 0,\r\n borderTop: ({ theme }) => `${cornerWidth}px solid ${theme.ControlBorderColor}`,\r\n borderLeft: ({ theme }) => `${cornerWidth}px solid ${theme.ControlBorderColor}`,\r\n },\r\n topRightCorner: {\r\n ...makeCornerStyle(),\r\n top: 0,\r\n right: 0,\r\n borderTop: ({ theme }) => `${cornerWidth}px solid ${theme.ControlBorderColor}`,\r\n borderRight: ({ theme }) => `${cornerWidth}px solid ${theme.ControlBorderColor}`,\r\n },\r\n bottomLeftCorner: {\r\n ...makeCornerStyle(),\r\n bottom: 0,\r\n left: 0,\r\n borderBottom: ({ theme }) => `${cornerWidth}px solid ${theme.ControlBorderColor}`,\r\n borderLeft: ({ theme }) => `${cornerWidth}px solid ${theme.ControlBorderColor}`,\r\n },\r\n bottomRightCorner: {\r\n ...makeCornerStyle(),\r\n bottom: 0,\r\n right: 0,\r\n borderBottom: ({ theme }) => `${cornerWidth}px solid ${theme.ControlBorderColor}`,\r\n borderRight: ({ theme }) => `${cornerWidth}px solid ${theme.ControlBorderColor}`,\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport SignaturePad, { IPointGroup } from \"signature_pad\";\r\nimport { useTheme } from \"react-jss\";\r\nimport { ControlProps } from \"./BaseControl\";\r\nimport useDimensionContext from \"../../hooks/useDimensionContext\";\r\nimport { getSettingString, getSettingBoolean } from \"../../models/utilities/settingUtilities\";\r\nimport useStyles from \"./SignatureControl.styles\";\r\nimport { FontAwesomeIcon } from \"../shared/FontAwesome\";\r\nimport Button from \"../shared/Button\";\r\nimport { ButtonChoice } from \"../shared/ButtonChoice\";\r\nimport useTranslatable from \"../../hooks/useTranslatable\";\r\nimport { useMentions } from \"../../hooks/useMentions\";\r\nimport { useValidation, useAnswerRequiredValidator } from \"../../hooks/useValidation\";\r\nimport { VariableDataType } from \"../../models/enums/VariableDataType\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ntype SizeType = \"Small\" | \"Medium\" | \"Large\" | \"Full\";\r\n\r\nfunction resizeData(data: IPointGroup[], scale: number): IPointGroup[] {\r\n return data.map((pointGroup) => ({\r\n ...pointGroup,\r\n points: pointGroup.points.map((point) => ({\r\n ...point,\r\n x: point.x * scale,\r\n y: point.y * scale,\r\n })),\r\n }));\r\n}\r\n\r\nfunction maxSize(size: SizeType) {\r\n switch (size) {\r\n case \"Small\":\r\n return 300;\r\n case \"Medium\":\r\n return 500;\r\n case \"Full\":\r\n return 1000;\r\n default:\r\n return 800;\r\n }\r\n}\r\n\r\nfunction onChoiceKeyDown(event, onToggleNoAnswer) {\r\n if (event.target !== event.currentTarget) {\r\n return;\r\n }\r\n if (event.key === \" \") {\r\n onToggleNoAnswer();\r\n event.preventDefault();\r\n }\r\n}\r\n\r\nexport function SignatureControl(props: Props) {\r\n const { question, validateSignal } = props;\r\n\r\n const displayNoAnswer = getSettingBoolean(question, \"DisplayNoAnswer\");\r\n const noAnswerValue = getSettingString(question, \"NoAnswerValue\");\r\n const noAnswerLabel = useTranslatable(question, \"NoAnswerLabel\");\r\n\r\n const variable = question.variables[0];\r\n const canvasRef = React.useRef();\r\n const signatureRef = React.useRef();\r\n const { innerWidth } = useDimensionContext();\r\n const [mentions, setMentions] = useMentions(variable.name);\r\n const mentionValue = mentions[0] && mentions[0].value;\r\n const [hasLines, setHasLines] = React.useState(false);\r\n const [initialValue, setInitialValue] = React.useState(\r\n mentionValue !== noAnswerValue ? mentionValue : undefined,\r\n );\r\n\r\n const theme = useTheme();\r\n const ratio = 21 / 9;\r\n const signatureWidth = Math.min(\r\n innerWidth - 2,\r\n maxSize(getSettingString(question, \"Size\") as SizeType),\r\n );\r\n const classes = useStyles({ theme, signatureWidth, ratio });\r\n\r\n useValidation(validateSignal, useAnswerRequiredValidator(question, variable));\r\n\r\n const isSvg = variable.dataType === VariableDataType.Base64;\r\n\r\n React.useEffect(() => {\r\n if (initialValue) {\r\n return undefined;\r\n }\r\n let data;\r\n if (signatureRef.current) {\r\n data = signatureRef.current.toData();\r\n }\r\n const canvas = canvasRef.current;\r\n const prevCanvasWidth = canvas.width;\r\n canvas.width = signatureWidth;\r\n canvas.height = canvas.width / ratio;\r\n signatureRef.current = new SignaturePad(canvas, {\r\n penColor: getSettingString(question, \"PenColor\", \"#000000\"),\r\n minWidth: signatureWidth * 0.002,\r\n maxWidth: signatureWidth * 0.006,\r\n minDistance: signatureWidth * 0.006,\r\n onEnd: () => {\r\n setHasLines(true);\r\n setMentions((b) =>\r\n b.set(signatureRef.current.toDataURL(isSvg ? \"image/svg+xml\" : null)),\r\n );\r\n },\r\n });\r\n if (data) {\r\n data = resizeData(data, canvas.width / prevCanvasWidth);\r\n signatureRef.current.fromData(data);\r\n }\r\n\r\n return () => {\r\n signatureRef.current.off();\r\n };\r\n }, [initialValue, innerWidth, isSvg, question, ratio, setMentions, signatureWidth]);\r\n\r\n const onToggleNoAnswer = React.useCallback(() => {\r\n signatureRef.current.clear();\r\n if (mentionValue === noAnswerValue) {\r\n setMentions((b) => b.clear());\r\n } else {\r\n setMentions((b) => b.set(noAnswerValue));\r\n }\r\n setHasLines(false);\r\n }, [mentionValue, noAnswerValue, setMentions]);\r\n\r\n return (\r\n <>\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n {hasLines && (\r\n
    \r\n {\r\n if (signatureRef.current) {\r\n const data = signatureRef.current.toData();\r\n signatureRef.current.clear();\r\n signatureRef.current.fromData(data.slice(0, -1));\r\n if (data.length > 1) {\r\n setMentions((b) =>\r\n b.set(\r\n signatureRef.current.toDataURL(\r\n isSvg ? \"image/svg+xml\" : null,\r\n ),\r\n ),\r\n );\r\n } else {\r\n setMentions((m) => m.clear());\r\n setHasLines(false);\r\n }\r\n }\r\n }}\r\n />\r\n
    \r\n )}\r\n
    \r\n {\r\n setMentions((b) => b.clear());\r\n setInitialValue(undefined);\r\n setHasLines(false);\r\n if (signatureRef.current) {\r\n signatureRef.current.clear();\r\n }\r\n }}\r\n />\r\n
    \r\n
    \r\n \r\n
    \r\n {!initialValue && }\r\n {initialValue && \"\"}\r\n
    \r\n
    \r\n {displayNoAnswer && (\r\n onChoiceKeyDown(event, onToggleNoAnswer)}\r\n onSelect={onToggleNoAnswer}\r\n selected={mentionValue === noAnswerValue}\r\n label={noAnswerLabel}\r\n />\r\n )}\r\n \r\n );\r\n}\r\n","export enum CursorPosition {\r\n Left,\r\n Right,\r\n Middle,\r\n Hidden,\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport * as Mixins from \"../../../theme/Mixins\";\r\nimport { alpha } from \"../../../theme/Mixins\";\r\n\r\nconst railHeight = ({ theme, isHybridGrid }) =>\r\n isHybridGrid ? theme.SliderRailHeightSmall : theme.SliderRailHeightLarge;\r\nconst handleSize = ({ theme, isHybridGrid }) =>\r\n isHybridGrid ? theme.SliderHandleSizeSmall : theme.SliderHandleSizeLarge;\r\n\r\nexport default createUseStyles({\r\n labelContainer: {\r\n composes: \"slider__label-container\",\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n },\r\n label: {\r\n composes: \"slider__label\",\r\n flex: \"auto\",\r\n marginTop: 16,\r\n color: ({ theme }) => Mixins.foregroundColor(theme, Mixins.wrapperBackgroundColor(theme)),\r\n },\r\n labelLeft: {\r\n composes: \"slider__label--left\",\r\n textAlign: \"left\",\r\n },\r\n labelMiddle: {\r\n composes: \"slider__label--middle\",\r\n textAlign: \"center\",\r\n },\r\n labelRight: {\r\n composes: \"slider__label--right\",\r\n textAlign: \"right\",\r\n },\r\n sliderContainer: {\r\n composes: \"slider__container\",\r\n marginLeft: ({ isHybridGrid }) => (isHybridGrid ? 10 : 0),\r\n marginRight: ({ isHybridGrid }) => (isHybridGrid ? 10 : 0),\r\n marginTop: ({ hasImages }) => (hasImages ? 90 : 0),\r\n maxWidth: ({ theme, size }) => Mixins.inputMaxWidth(theme, size),\r\n minWidth: ({ theme, size }) => Mixins.inputMinWidth(theme, size),\r\n padding: [[0, 5]],\r\n },\r\n slider: {\r\n composes: \"slider__compound\",\r\n position: \"relative\",\r\n width: \"100%\",\r\n height: \"6em\",\r\n },\r\n disabled: {\r\n opacity: 0.5,\r\n pointerEvents: \"none\",\r\n },\r\n rail: {\r\n backgroundColor: ({ theme }) => theme.ControlBackground,\r\n borderColor: ({ theme }) => Mixins.borderColor(theme, theme.ControlBackground),\r\n borderRadius: ({ theme }) => theme.BorderRadius / 4,\r\n borderStyle: \"solid\",\r\n borderWidth: ({ theme }) => theme.BorderWidth,\r\n bottom: 0,\r\n composes: \"slider__rail\",\r\n cursor: \"pointer\",\r\n height: railHeight,\r\n left: -5,\r\n margin: [[\"auto\", 0]],\r\n marginLeft: ({ theme }) => -theme.BorderWidth,\r\n position: \"absolute\",\r\n right: -5,\r\n top: 0,\r\n zIndex: 1,\r\n },\r\n handleContainer: {\r\n composes: \"slider__handle-container\",\r\n },\r\n handle: {\r\n align: \"center\",\r\n backgroundColor: ({ theme }) => theme.SecondaryColor,\r\n border: 0,\r\n borderColor: ({ theme }) => Mixins.borderColor(theme, theme.SecondaryColor),\r\n borderRadius: \"50%\",\r\n borderStyle: \"solid\",\r\n borderWidth: ({ theme }) => theme.BorderWidth,\r\n bottom: 0,\r\n composes: \"slider__handle\",\r\n cursor: \"pointer\",\r\n height: ({ theme, isHybridGrid }) =>\r\n handleSize({ theme, isHybridGrid }) - theme.BorderWidth,\r\n left: ({ percent }) => `${percent}%`,\r\n margin: [[\"auto\", 0]],\r\n marginLeft: ({ theme, isHybridGrid }) =>\r\n (handleSize({ theme, isHybridGrid }) / 2 + theme.BorderWidth) * -1,\r\n outline: \"2px solid transparent\",\r\n position: \"absolute\",\r\n textAlign: \"center\",\r\n top: 0,\r\n transition: \"background 200ms, box-shadow 200ms, outline-color 200ms\",\r\n userSelect: \"none\",\r\n width: ({ theme, isHybridGrid }) => handleSize({ theme, isHybridGrid }) - theme.BorderWidth,\r\n zIndex: 2,\r\n\r\n \"&:focus\": {\r\n outlineColor: ({ theme }) => alpha(theme.SecondaryColor, 0.5),\r\n outlineStyle: \"solid\",\r\n outlineWidth: \"22px\",\r\n },\r\n },\r\n handleActive: {\r\n composes: \"slider__handle--active\",\r\n backgroundColor: ({ theme }) =>\r\n Mixins.darken(theme.SecondaryColor, theme.ActiveHighlightValue),\r\n },\r\n handleLabelContainer: {\r\n bottom: \"100%\",\r\n color: \"transparent\",\r\n composes: \"slider__handle-label-container\",\r\n display: \"inline-block\",\r\n left: 0,\r\n marginLeft: \"50%\",\r\n position: \"absolute\",\r\n transform: \"translateX(-50%)\",\r\n },\r\n handleLabelContainerRegular: {\r\n composes: \"slider__handle-label-container--regular\",\r\n marginBottom: 16,\r\n padding: [[5, 16]],\r\n },\r\n handleLabelContainerHybridGrid: {\r\n composes: \"slider__handle-label-container--hybrid-grid\",\r\n marginBottom: 10,\r\n paddingTop: 2,\r\n paddingBottom: 0,\r\n paddingLeft: 8,\r\n paddingRight: 6,\r\n },\r\n handleLabelText: {\r\n color: ({ theme }) =>\r\n Mixins.foregroundColor(\r\n theme,\r\n Mixins.compoundBackgroundColor(theme, theme.PrimaryColor),\r\n ),\r\n composes: \"slider__handle-label-text\",\r\n left: 0,\r\n position: \"absolute\",\r\n textAlign: \"center\",\r\n top: 0,\r\n zIndex: 4,\r\n },\r\n handleLabelTextDiscrete: {\r\n color: ({ theme }) => Mixins.foregroundColor(theme, Mixins.wrapperBackgroundColor(theme)),\r\n composes: \"slider__handle-label-text-discrete\",\r\n position: \"relative\",\r\n textAlign: \"center\",\r\n zIndex: 4,\r\n top: \"110%\",\r\n },\r\n handleLabelTextRegular: {\r\n composes: \"slider__handle-label-text--regular\",\r\n fontSize: \"1rem\",\r\n padding: [[5, 16]],\r\n },\r\n handleLabelTextHybridGrid: {\r\n composes: \"slider__handle-label-text--hybrid-grid\",\r\n fontSize: 14,\r\n paddingTop: 2,\r\n paddingBottom: 0,\r\n paddingLeft: 8,\r\n paddingRight: 0,\r\n },\r\n handleLabelImageContainer: {\r\n boxSizing: \"border-box\",\r\n composes: \"slider__handle-label-image-container\",\r\n height: 84,\r\n margin: \"auto\",\r\n position: \"relative\",\r\n width: 150,\r\n },\r\n handleLabelImage: {\r\n backgroundImage: ({ imageUrl }) => `url(\"${imageUrl}\")`,\r\n backgroundPosition: \"center\",\r\n backgroundRepeat: \"no-repeat\",\r\n backgroundSize: \"contain\",\r\n bottom: 0,\r\n composes: \"slider__handle-label-image\",\r\n left: 0,\r\n position: \"absolute\",\r\n right: 0,\r\n top: 0,\r\n zIndex: 2,\r\n },\r\n handleLabelBackground: {\r\n align: \"center\",\r\n background: ({ theme, isDiscrete }) =>\r\n Mixins.alpha(isDiscrete ? theme.ControlBackground : theme.PrimaryColor),\r\n borderRadius: ({ theme }) => theme.BorderRadius / 2,\r\n bottom: 0,\r\n boxShadow: ({ theme, isDiscrete }) =>\r\n `0 0 0 ${theme.BorderWidth}px ${Mixins.borderColor(\r\n theme,\r\n isDiscrete ? theme.ControlBackground : theme.PrimaryColor,\r\n )}`,\r\n composes: \"slider__handle-label-background\",\r\n left: 0,\r\n opacity: ({ theme }) => theme.ControlAlpha,\r\n position: \"absolute\",\r\n right: 0,\r\n top: 0,\r\n zIndex: 2,\r\n },\r\n handleLabelArrowBorder: {\r\n border: \"8px solid transparent\",\r\n borderTopColor: ({ theme, isDiscrete }) =>\r\n Mixins.borderColor(theme, isDiscrete ? theme.ControlBackground : theme.PrimaryColor),\r\n content: '\"\"',\r\n left: \"50%\",\r\n marginLeft: -8,\r\n marginTop: ({ theme }) => theme.BorderWidth - 2,\r\n opacity: ({ theme }) => theme.ControlAlpha,\r\n position: \"absolute\",\r\n top: \"100%\",\r\n zIndex: 1,\r\n },\r\n handleLabelArrow: {\r\n border: \"8px solid transparent\",\r\n borderTopColor: ({ theme, isDiscrete }) =>\r\n isDiscrete ? theme.ControlBackground : theme.PrimaryColor,\r\n left: \"50%\",\r\n marginLeft: -8,\r\n marginTop: -2,\r\n opacity: ({ theme }) => theme.ControlAlpha,\r\n position: \"absolute\",\r\n top: \"100%\",\r\n zIndex: 3,\r\n },\r\n tickContainer: {\r\n composes: \"slider__tick-container\",\r\n position: \"absolute\",\r\n top: 0,\r\n bottom: 0,\r\n left: 0,\r\n right: 0,\r\n margin: [[\"auto\", 0]],\r\n height: 10,\r\n cursor: \"default\",\r\n userSelect: \"none\",\r\n zIndex: 0,\r\n },\r\n tick: {\r\n composes: \"slider__tick\",\r\n position: \"absolute\",\r\n marginLeft: -0.5,\r\n top: \"100%\",\r\n marginTop: ({ theme }) => theme.BorderWidth,\r\n width: 1,\r\n height: 13,\r\n left: ({ percent }) => `${percent}%`,\r\n backgroundColor: ({ theme }) => Mixins.borderColor(theme, theme.ControlBackground),\r\n },\r\n tickLabel: {\r\n composes: \"slider__tick-label\",\r\n cursor: \"pointer\",\r\n position: \"absolute\",\r\n top: \"100%\",\r\n marginTop: 9,\r\n padding: [[9, 0]],\r\n overflowWrap: \"anywhere\",\r\n textAlign: \"center\",\r\n color: ({ theme }) => Mixins.foregroundColor(theme, Mixins.wrapperBackgroundColor(theme)),\r\n },\r\n tickLabelRegular: {\r\n composes: \"slider__tick-label--regular\",\r\n fontSize: 18,\r\n lineHeight: \"18px\",\r\n marginLeft: ({ count, percent }) => {\r\n if (percent === 0 && count > 1) {\r\n return -20;\r\n }\r\n if (percent === 100 && count > 1) {\r\n return 4;\r\n }\r\n return `${-(100 / count) / 2}%`;\r\n },\r\n width: ({ count, percent }) => {\r\n if ([0, 100].includes(percent) && count > 1) {\r\n return `${90 / count / 2}%`;\r\n }\r\n return `${100 / count}%`;\r\n },\r\n left: ({ count, percent }) => {\r\n if (percent === 100 && count > 1) {\r\n return `${percent - 70 / count / 2}%`;\r\n }\r\n return `${percent}%`;\r\n },\r\n },\r\n tickLabelHybridGrid: {\r\n composes: \"slider__tick-label--hybrid-grid\",\r\n fontSize: 14,\r\n lineHeight: \"14px\",\r\n marginLeft: ({ count }) => `${-(100 / count) / 2}%`,\r\n width: ({ count }) => `${100 / count}%`,\r\n left: ({ percent }) => `${percent}%`,\r\n },\r\n noAnswer: {\r\n composes: \"slider__no-answer\",\r\n marginTop: 6,\r\n outline: \"none\",\r\n \"& > div\": {\r\n flex: \"initial\",\r\n },\r\n },\r\n noAnswerLabel: {\r\n composes: \"slider__no-answer__label\",\r\n marginLeft: 10,\r\n userSelect: \"none\",\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { Slider, Rail, Handles, Ticks } from \"react-compound-slider\";\r\nimport useStyles from \"./SliderRenderer.styles\";\r\nimport { RendererProps } from \"../BaseRenderer\";\r\nimport { LabelPosition } from \"../../../models/enums/LabelPosition\";\r\nimport { RecalledText } from \"../../../containers/shared/RecalledText\";\r\nimport useTranslatable from \"../../../hooks/useTranslatable\";\r\nimport Button from \"../../shared/Button\";\r\nimport { isNullOrEmpty } from \"../../../utils\";\r\nimport { Translatable } from \"../../../models/Translatable\";\r\nimport { ElementWithSettings } from \"../../../models/ElementWithSettings\";\r\nimport { ButtonChoice } from \"../../shared/ButtonChoice\";\r\nimport { CheckBoxIcon } from \"../../shared/CheckBoxIcon\";\r\nimport InputWrapper from \"../../shared/InputWrapper\";\r\nimport useQuestion from \"../../../hooks/useQuestion\";\r\nimport { size } from \"../../../models/utilities/questionUtilities\";\r\n\r\ninterface Props extends RendererProps {\r\n value: number;\r\n domain: number[];\r\n stepValue: number;\r\n hasValueSet: boolean;\r\n hasNoAnswer: boolean;\r\n noAnswerLabel: string;\r\n decimals?: number;\r\n displayTicks: boolean;\r\n tickValues?: number[];\r\n onChange?(value: number[]): void;\r\n onClearAnswer?(): void;\r\n onToggleNoAnswer?(): void;\r\n displayClearButton: boolean;\r\n displayNoAnswer?: boolean;\r\n isDiscrete: boolean;\r\n discreteValues?: { [value: number]: DiscreteValue };\r\n stepDecimalPlaces: number;\r\n tickDecimalPlaces: number;\r\n defaultPosition?: number;\r\n hasImages?: boolean;\r\n isHybridGrid?: boolean;\r\n elementId: string;\r\n isDisabled?: boolean;\r\n}\r\n\r\nexport interface DiscreteValue extends ElementWithSettings, Translatable {\r\n elementId: string;\r\n choiceValueCode: string;\r\n}\r\n\r\nfunction onChoiceKeyDown(event, onToggleNoAnswer) {\r\n if (event.target !== event.currentTarget) {\r\n return;\r\n }\r\n if (event.key === \" \") {\r\n onToggleNoAnswer();\r\n event.preventDefault();\r\n }\r\n}\r\n\r\nfunction Handle({\r\n handle: { id, value, percent },\r\n domain,\r\n hasValueSet,\r\n getHandleProps,\r\n isDiscrete,\r\n discreteValues,\r\n decimalPlaces,\r\n defaultPosition,\r\n isHybridGrid,\r\n onChange,\r\n}) {\r\n const [active, setActive] = React.useState(false);\r\n const [min, max] = domain;\r\n\r\n const theme = useTheme();\r\n const classes = useStyles({\r\n theme,\r\n percent: hasValueSet ? percent : defaultPosition,\r\n isHybridGrid,\r\n });\r\n const onFocus = () => {\r\n if (!hasValueSet) {\r\n onChange([value]);\r\n }\r\n setActive(true);\r\n };\r\n\r\n return (\r\n setActive(false)}\r\n onMouseOut={() => setActive(false)}\r\n >\r\n {hasValueSet && (\r\n setActive(true)}\r\n className={classnames(\r\n classes.handleLabelContainer,\r\n isHybridGrid && !isDiscrete\r\n ? classes.handleLabelContainerHybridGrid\r\n : classes.handleLabelContainerRegular,\r\n )}\r\n >\r\n \r\n
    \r\n )}\r\n
    \r\n );\r\n}\r\n\r\nfunction HandleLabel({ discreteValues, value, isHybridGrid, decimalPlaces, isDiscrete }) {\r\n const imageUrl = useTranslatable(discreteValues && discreteValues[value], \"ImageUrl\");\r\n if (!isNullOrEmpty(imageUrl)) {\r\n return (\r\n \r\n );\r\n }\r\n if (isDiscrete) {\r\n return ;\r\n }\r\n return (\r\n \r\n );\r\n}\r\n\r\nfunction StandardHandleLabel({ value, decimalPlaces, isHybridGrid }) {\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n const displayValue = value.toFixed(decimalPlaces);\r\n return (\r\n <>\r\n
    \r\n {!isHybridGrid && }\r\n \r\n {displayValue}\r\n
    \r\n {displayValue} {/* This is a placeholder to calculate the container size */}\r\n \r\n );\r\n}\r\n\r\nfunction DiscreteHandleLabel({ value, isHybridGrid }) {\r\n const alt = useTranslatable(value, \"TEXT\") || value.choiceValueCode;\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, isDiscrete: true });\r\n return (\r\n <>\r\n
    \r\n {!isHybridGrid && }\r\n \r\n
    {alt}
    \r\n
    \r\n {alt}\r\n \r\n );\r\n}\r\n\r\nfunction DiscreteHandleLabelWithImage({ value, isHybridGrid }) {\r\n const imageUrl = useTranslatable(value, \"ImageUrl\");\r\n const alt = useTranslatable(value, \"TEXT\") || value.choiceValueCode;\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, imageUrl, isDiscrete: true });\r\n return (\r\n <>\r\n
    \r\n {!isHybridGrid && }\r\n \r\n
    \r\n
    {alt}
    \r\n
    \r\n {alt.length < 10 ? (\r\n
    {alt}
    \r\n ) : (\r\n
    {alt.concat(alt).substring(0, (alt.length * 2) / 1.6)}
    \r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction HandleLabelArrow({ isDiscrete }: { isDiscrete?: boolean }) {\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, isDiscrete });\r\n return (\r\n <>\r\n
    \r\n
    \r\n \r\n );\r\n}\r\n\r\nfunction Tick({ tick, onChange, count, isDiscrete, discreteValues, decimalPlaces, isHybridGrid }) {\r\n const { percent, value } = tick;\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, percent, count });\r\n\r\n const id = isDiscrete ? discreteValues[value]?.elementId : null;\r\n const discreteValue = isDiscrete ? discreteValues[value] : undefined;\r\n const discreteValueText =\r\n useTranslatable(discreteValue, \"TEXT\") ||\r\n (discreteValue !== undefined && discreteValue.choiceValueCode) ||\r\n value;\r\n const displayValue = isDiscrete ? discreteValueText : value.toFixed(decimalPlaces);\r\n\r\n return (\r\n <>\r\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */}\r\n
    onChange([value])}>\r\n
    \r\n \r\n
    \r\n \r\n );\r\n}\r\n\r\nfunction Label({ text, position }) {\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n const positionalClasses = {\r\n [LabelPosition.Left]: classes.labelLeft,\r\n [LabelPosition.Middle]: classes.labelMiddle,\r\n [LabelPosition.Right]: classes.labelRight,\r\n };\r\n if (isNullOrEmpty(text)) {\r\n return null;\r\n }\r\n return (\r\n (\r\n \r\n )}\r\n />\r\n );\r\n}\r\n\r\nfunction ClearButton({ theme, question, onClearAnswer, isDisabled = false }) {\r\n const defaultText = useTranslatable(theme, \"QuestionClearButton\") || \"Reset\";\r\n const text = useTranslatable(question, \"ResetButtonText\") || defaultText;\r\n\r\n return (\r\n onClearAnswer()}\r\n />\r\n );\r\n}\r\n\r\nfunction CompoundSlider(props: Props) {\r\n const {\r\n value,\r\n domain,\r\n hasValueSet,\r\n stepValue,\r\n onChange,\r\n displayTicks,\r\n tickValues,\r\n isDiscrete,\r\n discreteValues,\r\n stepDecimalPlaces,\r\n tickDecimalPlaces,\r\n defaultPosition,\r\n hasImages,\r\n isHybridGrid,\r\n elementId,\r\n isDisabled,\r\n } = props;\r\n const question = useQuestion();\r\n const sliderSize = isHybridGrid ? size(question) : \"Full\";\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, size: sliderSize, hasImages, isHybridGrid });\r\n\r\n return (\r\n \r\n \r\n \r\n {({ getRailProps }) => (\r\n \r\n )}\r\n \r\n \r\n {({ handles, getHandleProps }) => (\r\n
    \r\n {handles.map((handle) => (\r\n \r\n ))}\r\n
    \r\n )}\r\n
    \r\n {displayTicks && (\r\n \r\n {({ ticks }) => (\r\n
    \r\n {ticks.map((tick) => (\r\n \r\n ))}\r\n
    \r\n )}\r\n
    \r\n )}\r\n \r\n
    \r\n );\r\n}\r\n\r\nfunction NoAnswer(props: Props) {\r\n const {\r\n displayNoAnswer,\r\n hasNoAnswer,\r\n onToggleNoAnswer,\r\n isHybridGrid,\r\n noAnswerLabel,\r\n isDisabled = false,\r\n } = props;\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n\r\n if (!displayNoAnswer) {\r\n return null;\r\n }\r\n\r\n if (isHybridGrid) {\r\n return (\r\n onChoiceKeyDown(event, onToggleNoAnswer)\r\n }\r\n onClick={isDisabled ? undefined : onToggleNoAnswer}\r\n >\r\n \r\n {noAnswerLabel}\r\n
    \r\n );\r\n }\r\n\r\n return (\r\n onChoiceKeyDown(event, onToggleNoAnswer)}\r\n onSelect={isDisabled ? undefined : onToggleNoAnswer}\r\n selected={hasNoAnswer}\r\n label={noAnswerLabel}\r\n className={classes.noAnswer}\r\n />\r\n );\r\n}\r\n\r\nexport default function SliderRenderer(props: Props) {\r\n const {\r\n theme: surveyTheme,\r\n question,\r\n displayClearButton,\r\n onClearAnswer,\r\n isHybridGrid,\r\n isDisabled,\r\n } = props;\r\n const theme = useTheme();\r\n const classes = useStyles({ theme });\r\n\r\n const leftLabel = useTranslatable(question, \"LeftLabel\");\r\n const middleLabel = useTranslatable(question, \"MiddleLabel\");\r\n const rightLabel = useTranslatable(question, \"RightLabel\");\r\n\r\n const slider = (\r\n <>\r\n \r\n
    \r\n {!isHybridGrid &&
    \r\n \r\n {displayClearButton && (\r\n \r\n )}\r\n \r\n );\r\n\r\n if (isHybridGrid)\r\n return (\r\n \r\n {slider}\r\n \r\n );\r\n\r\n return slider;\r\n}\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { intersection, isEmpty, range } from \"../../utils/lodash\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { CursorPosition } from \"../../models/enums/CursorPosition\";\r\nimport {\r\n getSettingString,\r\n getSettingBoolean,\r\n getSettingEnum,\r\n getSettingNumber,\r\n hasSetting,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { getChoiceWithValue, decimalPlaces } from \"../../models/utilities/questionUtilities\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport SliderRenderer, { DiscreteValue } from \"../renderers/v2/SliderRenderer\";\r\nimport { ElementWithSettings } from \"../../models/ElementWithSettings\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { isNullOrEmpty } from \"../../utils\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n value: number;\r\n}\r\n\r\nenum SliderType {\r\n Continuous = \"Continuous\",\r\n Discrete = \"Discrete\",\r\n}\r\n\r\nexport class SliderControl extends BaseControl {\r\n trackRef: Element;\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = { value: 0 };\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props): void {\r\n const [variable] = question.variables;\r\n // TODO: Duplicated code, needs refactoring\r\n if (this.isDiscrete(props)) {\r\n const defaultChoice = this.getChoices(props).find((choice) =>\r\n this.isElementDefault(choice),\r\n );\r\n if (defaultChoice !== undefined) {\r\n this.setMentions(props, variable.name, (mentions) =>\r\n mentions.set(defaultChoice.choiceValueCode),\r\n );\r\n }\r\n }\r\n super.initializeQuestion(question, props);\r\n this.setState({\r\n value: this.getValue(props),\r\n });\r\n }\r\n\r\n didUpdateMentions(question: QuestionModel, prevProps: Props) {\r\n super.didUpdateMentions(question, prevProps);\r\n // We should not change the slider's position if No Answer is checked.\r\n if (!this.noAnswer(this.props)) {\r\n this.setState({ value: this.getValue(this.props) });\r\n }\r\n }\r\n\r\n didUpdateVariables(sequencedVariables: VariableModel[], prevProps: Props) {\r\n super.didUpdateVariables(sequencedVariables, prevProps);\r\n const [variable] = sequencedVariables;\r\n const mentionValue = this.getMentionValue(this.props, variable.name);\r\n const shouldClearAnswer =\r\n !isNullOrEmpty(mentionValue) &&\r\n !variable.choiceList.some((choice) => choice.value === mentionValue);\r\n\r\n if (shouldClearAnswer) {\r\n this.onClearAnswer(this.props);\r\n }\r\n }\r\n\r\n getDisplayResetButtonSetting = (props: Props) =>\r\n getSettingBoolean(props.question, \"DisplayResetButton\");\r\n\r\n getCursorPositionSetting = (props: Props) =>\r\n getSettingEnum(props.question, CursorPosition, \"CursorPosition\");\r\n\r\n getDisplayTicksSetting = (props: Props) => getSettingBoolean(props.question, \"DisplayTicks\");\r\n\r\n getStepValueSetting = (props: Props) => {\r\n const defaultValue = 1;\r\n const stepSetting = getSettingNumber(props.question, \"StepValue\", defaultValue);\r\n return this.isDiscrete(props) || stepSetting === 0 ? defaultValue : stepSetting;\r\n };\r\n\r\n getTicksIntervalSetting = (props: Props) => {\r\n const defaultValue = 1;\r\n const intervalSetting = getSettingNumber(props.question, \"TicksInterval\", defaultValue);\r\n return this.isDiscrete(props) || intervalSetting === 0 ? defaultValue : intervalSetting;\r\n };\r\n\r\n getColumnNoAnswerLabel = (props: Props) => {\r\n const { variableNames, parent } = props.question;\r\n if (!parent || parent.type !== QuestionType.HybridGrid) {\r\n return undefined;\r\n }\r\n const column = parent.columns.find(\r\n (parentColumn) =>\r\n !isEmpty(\r\n intersection(\r\n variableNames,\r\n parentColumn.variables.map((variable) => variable.name),\r\n ),\r\n ),\r\n );\r\n return translate(column, \"NoAnswerLabel\", props.language);\r\n };\r\n\r\n getDisplayNoAnswerSetting = (props: Props) =>\r\n getSettingBoolean(props.question, \"DisplayNoAnswer\");\r\n\r\n getValue(props: Props) {\r\n const [variable] = props.question.variables;\r\n const mention = this.getMention(props, variable.name);\r\n if (this.noAnswer(props) || !mention) {\r\n return this.getDefaultValue(props);\r\n }\r\n\r\n // TODO: Duplicated code, needs refactoring\r\n if (this.isDiscrete(this.props)) {\r\n const choice = this.getChoices(props).find((c) => c.choiceValueCode === mention.value);\r\n if (choice) {\r\n return choice.value;\r\n }\r\n return this.getDefaultValue(props);\r\n }\r\n\r\n const [min, max] = this.getBoundaries(props);\r\n return Math.min(max, Math.max(min, Number.parseFloat(mention.value)));\r\n }\r\n\r\n getChoices(props: Props) {\r\n const [variable] = props.sequencedVariables;\r\n const choices = variable.choiceList\r\n .filter((choice) => this.isElementVisible(choice))\r\n .filter((choice) => this.hasChoiceValue(choice))\r\n .map((choice, index) => {\r\n const { elementId, name, value, translatedTexts, settings } = choice;\r\n return {\r\n elementId,\r\n name,\r\n value: index + 1,\r\n choiceValueCode: value,\r\n translatedTexts,\r\n settings,\r\n };\r\n });\r\n return choices;\r\n }\r\n\r\n getDiscreteValues(props: Props): { [value: string]: DiscreteValue } {\r\n const choices = this.getChoices(props);\r\n const discreteValues = choices.reduce((acc, next) => {\r\n const { value, elementId, name, choiceValueCode, translatedTexts } = next;\r\n return {\r\n ...acc,\r\n [value]: {\r\n elementId,\r\n name,\r\n choiceValueCode,\r\n translatedTexts,\r\n },\r\n };\r\n }, {});\r\n return discreteValues;\r\n }\r\n\r\n getBoundaries(props: Props) {\r\n const isDiscrete = this.isDiscrete(props);\r\n const [minValue, maxValue] = isDiscrete\r\n ? [1, this.getChoices(props).length]\r\n : [Number.parseFloat(props.min), Number.parseFloat(props.max)];\r\n\r\n const min = Number.isNaN(minValue) ? 0 : minValue;\r\n const max = Number.isNaN(maxValue) ? 0 : maxValue;\r\n\r\n // TODO: What to do with a discrete slider that has only ONE choice?\r\n const overrideMax = !isDiscrete && max <= min;\r\n return [min, overrideMax ? min + this.getStepValueSetting(props) : max];\r\n }\r\n\r\n isElementVisible(element: ElementWithSettings) {\r\n return !hasSetting(element, \"Visible\") || getSettingBoolean(element, \"Visible\");\r\n }\r\n\r\n isElementDefault(element: ElementWithSettings) {\r\n return getSettingBoolean(element, \"Default\");\r\n }\r\n\r\n hasChoiceValue(choice: ChoiceModel) {\r\n return !isNullOrEmpty(choice.value);\r\n }\r\n\r\n getDefaultValue(props: Props) {\r\n if (this.isDiscrete(props)) {\r\n const defaultChoice = this.getChoices(props).find((choice) =>\r\n this.isElementDefault(choice),\r\n );\r\n if (defaultChoice) {\r\n return defaultChoice.value;\r\n }\r\n }\r\n if (hasSetting(props.question, \"DefaultValue\")) {\r\n const defaultValue = getSettingNumber(props.question, \"DefaultValue\");\r\n if (defaultValue) {\r\n return defaultValue;\r\n }\r\n }\r\n const [min, max] = this.getBoundaries(props);\r\n switch (this.getCursorPositionSetting(props)) {\r\n case CursorPosition.Hidden:\r\n case CursorPosition.Middle: {\r\n const middle = (max - min) / 2;\r\n const percent = (middle - min) / (max - min);\r\n const step = this.getStepValueSetting(props);\r\n return step * Math.round((percent * (max - min)) / step) + min;\r\n }\r\n case CursorPosition.Right:\r\n return max;\r\n case CursorPosition.Left:\r\n default:\r\n return min;\r\n }\r\n }\r\n\r\n getDefaultPosition(props: Props) {\r\n switch (this.getCursorPositionSetting(props)) {\r\n case CursorPosition.Right:\r\n return 100;\r\n case CursorPosition.Hidden:\r\n case CursorPosition.Middle:\r\n return 50;\r\n case CursorPosition.Left:\r\n default:\r\n return 0;\r\n }\r\n }\r\n\r\n getTickValues(props: Props): number[] {\r\n const [min, max] = this.getBoundaries(props);\r\n const interval = this.getTicksIntervalSetting(props);\r\n\r\n const maxAmount = 100;\r\n const amount = (max - min + 1) / interval;\r\n const increment = amount > maxAmount ? (max - min + 1) / maxAmount : interval;\r\n\r\n const values = Array.from(range(-max, -min + 1, increment))\r\n .reverse()\r\n .map((value) => -value);\r\n\r\n return values[0] === min ? values : [min, ...values];\r\n }\r\n\r\n onChange(value: number) {\r\n const [variable] = this.props.question.variables;\r\n if (this.isDiscrete(this.props)) {\r\n const discreteValues = this.getDiscreteValues(this.props);\r\n const discreteValue = discreteValues[value];\r\n if (discreteValue) {\r\n const { choiceValueCode } = discreteValue;\r\n if (choiceValueCode !== undefined) {\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.set(choiceValueCode),\r\n );\r\n }\r\n }\r\n return;\r\n }\r\n if (Number.isNaN(value)) {\r\n return;\r\n }\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.set(String(value.toFixed(this.getStepDecimalPlaces(this.props)))),\r\n );\r\n }\r\n\r\n onClearAnswer = (props: Props) => {\r\n // TODO: Duplicated code, needs refactoring\r\n if (this.isDiscrete(props)) {\r\n const defaultChoice = this.getChoices(props).find((choice) =>\r\n this.isElementDefault(choice),\r\n );\r\n if (defaultChoice) {\r\n this.onChange(defaultChoice.value);\r\n } else {\r\n this.clearMentions(props);\r\n }\r\n } else if (hasSetting(props.question, \"DefaultValue\")) {\r\n const defaultValue = this.getDefaultValue(props);\r\n this.onChange(defaultValue);\r\n } else {\r\n this.clearMentions(props);\r\n }\r\n };\r\n\r\n clearMentions = (props: Props) => {\r\n const [variable] = props.question.variables;\r\n this.setMentions(props, variable.name, (mentions) => mentions.clear());\r\n };\r\n\r\n onToggleNoAnswer = (props: Props) => {\r\n const { question } = props;\r\n const [variable] = question.variables;\r\n if (!hasSetting(question, \"NoAnswerValue\")) {\r\n return;\r\n }\r\n const value = this.getMentionValue(props);\r\n const noAnswerValue = getSettingString(question, \"NoAnswerValue\");\r\n if (value !== noAnswerValue) {\r\n this.setMentions(props, variable.name, (mentions) => mentions.set(noAnswerValue));\r\n } else {\r\n this.onClearAnswer(props);\r\n }\r\n };\r\n\r\n noAnswer(props: Props) {\r\n const [variable] = props.question.variables;\r\n const mention = this.getMention(props, variable.name);\r\n if (mention === undefined) {\r\n return false;\r\n }\r\n return (\r\n this.getDisplayNoAnswerSetting(props) &&\r\n mention.value === this.getNoAnswerValueSetting(props)\r\n );\r\n }\r\n\r\n getNoAnswerValueSetting = (props: Props) =>\r\n getSettingString(props.question, \"NoAnswerValue\", \"0\");\r\n\r\n getNoAnswerLabel = (props: Props) => {\r\n return (\r\n this.getColumnNoAnswerLabel(props) ||\r\n translate(props.question, \"NoAnswerLabel\", props.language) ||\r\n translate(props.theme, \"SliderNoAnswer\", props.language)\r\n );\r\n };\r\n\r\n onChangeNoAnswer = () => {\r\n this.setState((prevState, props) => {\r\n const [variable] = props.question.variables;\r\n const newState = { ...prevState };\r\n const noAnswerValue = this.getNoAnswerValueSetting(props);\r\n if (this.noAnswer(props)) {\r\n this.setMentions(props, variable.name, (mentions) => mentions.set(noAnswerValue));\r\n } else {\r\n this.setMentions(props, variable.name, (mentions) =>\r\n mentions.set(String(newState.value)),\r\n );\r\n }\r\n return newState;\r\n });\r\n };\r\n\r\n displayValue = (props: Props, value: number) => {\r\n if (this.noAnswer(props)) {\r\n return undefined;\r\n }\r\n if (!this.isDiscrete(props)) {\r\n return String(value);\r\n }\r\n const choice = getChoiceWithValue(props.question, String(value));\r\n if (choice !== undefined) {\r\n return translate(choice, \"TEXT\", props.language);\r\n }\r\n return undefined;\r\n };\r\n\r\n isHybridGrid = (props: Props) => props.question.parent?.type === QuestionType.HybridGrid;\r\n\r\n hasImages = (props: Props) => {\r\n if (!this.isDiscrete(props)) {\r\n return false;\r\n }\r\n const {\r\n question: { variables },\r\n } = props;\r\n const [variable] = variables;\r\n const hasImages = variable?.choiceList\r\n .map((choice) => choice.translatedTexts?.[\"imageurl\"])\r\n .some((entry) => Object.keys(entry ?? {}).some((key) => !isNullOrEmpty(entry[key])));\r\n return hasImages;\r\n };\r\n\r\n getSliderType = (props: Props): SliderType => {\r\n const { question } = props;\r\n const isHybridGrid = this.isHybridGrid(props);\r\n const [key, valueDiscrete] = isHybridGrid\r\n ? [\"VarType\", \"0\"]\r\n : [\"Type\", SliderType.Discrete];\r\n\r\n const sliderType = getSettingBoolean(question, key, valueDiscrete)\r\n ? SliderType.Discrete\r\n : SliderType.Continuous;\r\n return sliderType;\r\n };\r\n\r\n isDiscrete = (props: Props) => SliderType.Discrete === this.getSliderType(props);\r\n\r\n getStepDecimalPlaces = (props: Props): number => {\r\n const value = getSettingString(props.question, \"StepValue\");\r\n return decimalPlaces(value);\r\n };\r\n\r\n getTickDecimalPlaces = (props: Props): number => {\r\n const value = getSettingString(props.question, \"TicksInterval\");\r\n return decimalPlaces(value);\r\n };\r\n\r\n hasNoAnswer = (props: Props) => {\r\n const { question } = props;\r\n const [variable] = question.variables;\r\n return (\r\n this.getMentionValue(props, variable.name) ===\r\n getSettingString(props.question, \"NoAnswerValue\")\r\n );\r\n };\r\n\r\n hasValueSet = (props: Props) => {\r\n const { question } = props;\r\n const [variable] = question.variables;\r\n const mention = this.getMention(props, variable.name);\r\n return mention && this.isValueValid(props, mention.value) && !this.hasNoAnswer(props);\r\n };\r\n\r\n isValueValid = (props: Props, value: string) => {\r\n return !this.isDiscrete(props) || this.isChoiceVisible(value, props);\r\n };\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n const { question, useClientValidation } = this.props;\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n return super.validate(options);\r\n }\r\n\r\n renderQuestion() {\r\n const { state, props } = this;\r\n const [variable] = props.question.variables;\r\n return (\r\n this.onChange(value)}\r\n displayClearButton={this.getDisplayResetButtonSetting(props)}\r\n onClearAnswer={() => this.onClearAnswer(props)}\r\n onToggleNoAnswer={() => this.onToggleNoAnswer(props)}\r\n displayTicks={this.getDisplayTicksSetting(props)}\r\n tickValues={this.getTickValues(props)}\r\n displayNoAnswer={this.getDisplayNoAnswerSetting(props)}\r\n isDiscrete={this.isDiscrete(props)}\r\n discreteValues={this.getDiscreteValues(props)}\r\n stepDecimalPlaces={this.getStepDecimalPlaces(props)}\r\n tickDecimalPlaces={this.getTickDecimalPlaces(props)}\r\n defaultPosition={this.getDefaultPosition(props)}\r\n hasImages={this.hasImages(props)}\r\n isHybridGrid={this.isHybridGrid(props)}\r\n elementId={variable.elementId}\r\n isDisabled={props.isDisabled}\r\n />\r\n );\r\n }\r\n}\r\n","export enum CaseMode {\r\n None = \"None\",\r\n AllCaps = \"AllCaps\",\r\n FirstLetterCaps = \"FirstLetterCaps\",\r\n}\r\n","export const EmailRegularExpression = /^['a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,4}$/;\r\nexport const PhoneRegularExpression = /^([(\\-\\s\\.\\+]*[0-9][)\\-\\s\\.]*){5,15}$/;\r\n","import React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { includes, trim } from \"../../utils/lodash\";\r\nimport { ChoiceListControl } from \"./ChoiceListControl\";\r\nimport { ControlContainer } from \"../../containers/controls/ControlContainer\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { PhoneRegularExpression, EmailRegularExpression } from \"../../consts\";\r\nimport { CaseMode } from \"../../models/enums/CaseMode\";\r\nimport {\r\n getSettingNumber,\r\n getSettingBoolean,\r\n getSettingString,\r\n hasSetting,\r\n getSettingEnum,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { isNullOrEmpty, isNullOrNaN, removeHtmlTags } from \"../../utils\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { formatNumeric, getNumeral, decimalSeparator } from \"../../utils/Number\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport { shouldAutoFormat, getSoftPromptCode } from \"../../models/utilities/questionUtilities\";\r\nimport TextAnswerRenderer from \"../renderers/v2/TextAnswerRenderer\";\r\nimport { respondentSetPhone, respondentSetEmail } from \"../../redux/actions\";\r\nimport { getValidationResults } from \"../../redux/thunks/validation\";\r\nimport { VariableType } from \"../../models/enums/VariableType\";\r\nimport { VariableModel } from \"../../models/VariableModel\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\n\r\ninterface State {\r\n value: string;\r\n focus: boolean;\r\n answers: ChoiceModel[];\r\n input?: HTMLElement;\r\n}\r\n\r\nexport class TextBoxControl extends BaseControl {\r\n input?: HTMLElement;\r\n\r\n maxResults = (props: Props) => getSettingNumber(props.question, \"MaxResults\");\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n value: \"\",\r\n focus: false,\r\n answers: undefined,\r\n };\r\n }\r\n\r\n getFilteredAnswers(state: State, props: Props, showAllAnswers?: boolean) {\r\n if (!showAllAnswers) {\r\n const minSearchLength = getSettingNumber(props.question, \"MinSearchLength\", 0);\r\n if (isNullOrEmpty(state.value) || state.value.length < minSearchLength) {\r\n return [];\r\n }\r\n }\r\n const { question } = props;\r\n const searchValue = state.value.trim().toLowerCase();\r\n let choiceList = props.sequencedVariables[0].choiceList.filter(\r\n (choice) => !isNullOrEmpty(choice.value),\r\n );\r\n if (!showAllAnswers) {\r\n switch (getSettingString(question, \"SearchOption\")) {\r\n case \"Exact\":\r\n choiceList = choiceList.filter(\r\n (choice) =>\r\n this.getChoiceText(choice, props.language).trim().toLowerCase() ===\r\n searchValue,\r\n );\r\n break;\r\n case \"StartsWith\":\r\n choiceList = choiceList.filter((choice) =>\r\n this.getChoiceText(choice, props.language)\r\n .trim()\r\n .toLowerCase()\r\n .startsWith(searchValue),\r\n );\r\n break;\r\n default:\r\n choiceList = choiceList.filter((choice) =>\r\n this.getChoiceText(choice, props.language)\r\n .trim()\r\n .toLowerCase()\r\n .includes(searchValue),\r\n );\r\n }\r\n }\r\n choiceList = choiceList.sort((a, b) => {\r\n if (a === b) {\r\n return 0;\r\n }\r\n return a < b ? -1 : 1;\r\n });\r\n if (this.maxResults(props) != null) {\r\n return choiceList.slice(0, this.maxResults(props));\r\n }\r\n return choiceList;\r\n }\r\n\r\n getChoiceText(choice: ChoiceModel, lang?: string) {\r\n return removeHtmlTags(translate(choice, \"TEXT\", lang || this.props.language));\r\n }\r\n\r\n initializeQuestion(question: QuestionModel, props: Props) {\r\n super.initializeQuestion(question, props);\r\n const variable = this.getQuestionVariable(question.variables);\r\n if (!this.hasMentions(props)) {\r\n switch (question.type) {\r\n case QuestionType.RespondentPhone:\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.set(props.phone),\r\n );\r\n break;\r\n case QuestionType.RespondentEmail:\r\n this.setMentions(this.props, variable.name, (mentions) =>\r\n mentions.set(props.email),\r\n );\r\n break;\r\n default:\r\n break;\r\n }\r\n }\r\n this.updateState(props, false);\r\n }\r\n\r\n willUpdateMentions(question: QuestionModel, nextProps: Props) {\r\n super.willUpdateMentions(question, nextProps);\r\n this.updateState(nextProps, false);\r\n }\r\n\r\n componentDidUpdate(prevProps: Props, prevState: State) {\r\n super.componentDidUpdate(prevProps, prevState);\r\n if (prevProps.language !== this.props.language) {\r\n this.updateState(this.props);\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n this.setState((prevState) => ({ ...prevState, input: this.input }));\r\n }\r\n\r\n hasAnswerWithValue(props: Props, value: string) {\r\n if (isNullOrEmpty(value)) {\r\n return false;\r\n }\r\n const { variables } = props.question;\r\n const [firstVariable] = variables;\r\n const { choiceList } = firstVariable;\r\n return choiceList.some((choice) => choice.value === value);\r\n }\r\n\r\n hasMentionsInChoices = (props: Props) => {\r\n const { question } = props;\r\n\r\n const [firstVariable] = question.variables;\r\n const { choiceList } = firstVariable;\r\n\r\n const hasMentions = this.hasMentions(props);\r\n const mentions = this.getMentions(props);\r\n const [firstMention] = mentions;\r\n\r\n const hasMentionInChoices =\r\n hasMentions &&\r\n choiceList\r\n .filter((choice) => !isNullOrEmpty(choice.value))\r\n .some((choice) => choice.value === firstMention.value);\r\n\r\n return hasMentionInChoices;\r\n };\r\n\r\n updateState(props: Props, shouldUpdateRespondentFields = true) {\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n const mention = this.getMention(props);\r\n const softPromptCode = getSoftPromptCode(this.props.question);\r\n newState.value = \"\";\r\n switch (props.question.type) {\r\n case QuestionType.RespondentEmail:\r\n newState.value = shouldUpdateRespondentFields\r\n ? props.email\r\n : mention?.value || prevState.value;\r\n break;\r\n case QuestionType.RespondentPhone:\r\n newState.value = shouldUpdateRespondentFields\r\n ? props.phone\r\n : mention?.value || prevState.value;\r\n break;\r\n case QuestionType.OpenEndAnswer:\r\n if (mention) {\r\n newState.value = mention.openEnd;\r\n }\r\n break;\r\n case QuestionType.NumericAnswer: {\r\n const hasAnswerWithValue =\r\n mention && this.hasAnswerWithValue(props, mention.value);\r\n const hasMentionsInChoices = this.hasMentionsInChoices(props);\r\n const isChoiceVisible = mention && this.isChoiceVisible(mention.value, props);\r\n if (\r\n mention &&\r\n !hasAnswerWithValue &&\r\n (!hasMentionsInChoices || !isChoiceVisible)\r\n ) {\r\n const numeral = getNumeral(mention.value).value();\r\n if (!isNullOrNaN(numeral)) {\r\n newState.value = this.formatNumeric(numeral, props);\r\n }\r\n }\r\n break;\r\n }\r\n default:\r\n if (mention && mention.value !== softPromptCode) {\r\n newState.value = mention.value;\r\n }\r\n break;\r\n }\r\n return newState;\r\n });\r\n }\r\n\r\n onKeyPress = (event: React.KeyboardEvent) => {\r\n if (this.isKeyPrintable(event.key) && this.hasMentionsInChoices(this.props)) {\r\n const { question } = this.props;\r\n const variable = this.getQuestionVariable(question.variables);\r\n this.setMentions(this.props, variable.name, (mention) => mention.clear());\r\n }\r\n };\r\n\r\n isKeyPrintable = (key: string) => key.length === 1;\r\n\r\n onTextChanged = (event) => {\r\n let { value } = event.target;\r\n const { maxLength } = event.target;\r\n const { question, language } = this.props;\r\n const caseMode = getSettingEnum(question, CaseMode, \"CaseMode\");\r\n\r\n const numericQuestionTypes = [QuestionType.NumericAnswer, QuestionType.RunningTotal];\r\n const isNumeric = numericQuestionTypes.includes(question.type);\r\n\r\n if (isNumeric) {\r\n const { NumberOfDecimals: nbDecimalDefine } = question.settings;\r\n const delimiter = decimalSeparator(language);\r\n const parts = value.split(delimiter);\r\n const [wholeNumber, decimalNumber] = parts;\r\n\r\n if (nbDecimalDefine === undefined || nbDecimalDefine === 0) {\r\n if (includes(value, delimiter)) {\r\n return;\r\n }\r\n value = wholeNumber;\r\n } else if (\r\n includes(value, delimiter) &&\r\n decimalNumber &&\r\n decimalNumber.length > nbDecimalDefine\r\n ) {\r\n parts[1] = decimalNumber.substring(0, nbDecimalDefine);\r\n value = parts.join(delimiter);\r\n }\r\n\r\n if (includes(value, \".\") && delimiter === \",\") {\r\n value = value.replace(\".\", \",\");\r\n }\r\n const invalidNumber =\r\n value.match(/[^\\d. ,-]|[.,]{2,}/) ||\r\n Array.from(value).find((char, index) => index > 0 && char === \"-\");\r\n if (invalidNumber) {\r\n return;\r\n }\r\n }\r\n\r\n if (caseMode === CaseMode.AllCaps) {\r\n value = value.toUpperCase();\r\n } else if (caseMode === CaseMode.FirstLetterCaps) {\r\n value = value\r\n .split(\" \")\r\n .map((v) => v.charAt(0).toUpperCase() + v.slice(1))\r\n .join(\" \");\r\n }\r\n\r\n if (maxLength > -1 && value.length > maxLength) {\r\n value = value.substring(0, maxLength);\r\n }\r\n\r\n this.setState((prevState) => {\r\n const newState = { ...prevState };\r\n newState.value = value;\r\n return newState;\r\n });\r\n };\r\n\r\n formatNumeric(value: string | number, props: Props, cultureInvariant?: boolean) {\r\n const { question } = props;\r\n return formatNumeric(\r\n value,\r\n getSettingNumber(question, \"NumberOfDecimals\"),\r\n props.language,\r\n cultureInvariant,\r\n this.shouldFormat(question),\r\n );\r\n }\r\n\r\n shouldFormat(question: QuestionModel) {\r\n return this.isNumericAnswer(question) && shouldAutoFormat(question);\r\n }\r\n\r\n isNumericAnswer(question: QuestionModel) {\r\n return question.type === QuestionType.NumericAnswer;\r\n }\r\n\r\n updateAnswers() {\r\n const { question, language } = this.props;\r\n const variable = this.getQuestionVariable(question.variables);\r\n let { value } = this.state;\r\n\r\n const hasMentionInChoices = this.hasMentionsInChoices(this.props);\r\n if (isNullOrEmpty(value) && hasMentionInChoices) {\r\n return;\r\n }\r\n\r\n if (this.isNumericAnswer(question)) {\r\n const numeral = getNumeral(value, language).value();\r\n if (!isNullOrNaN(numeral)) {\r\n value = this.formatNumeric(numeral, this.props, true);\r\n }\r\n }\r\n\r\n if (question.type === QuestionType.OpenEndAnswer) {\r\n value = trim(value || \"\");\r\n const answerCode = getSettingString(question, \"AnswerCode\", \"0\");\r\n this.updateMention(value, variable, answerCode);\r\n return;\r\n }\r\n\r\n this.updateMention(value, variable);\r\n }\r\n\r\n updateMention = (value: string, variable: VariableModel, code?: string) => {\r\n const mention = this.getMentions(this.props, variable.name)?.find((m) =>\r\n this.mentionIsValid(m, this.props.question),\r\n );\r\n if (isNullOrEmpty(value)) {\r\n if (mention) {\r\n this.setMentions(this.props, variable.name, (mentions) => mentions.clear());\r\n }\r\n } else if (mention?.value !== value) {\r\n this.setMentions(this.props, variable.name, (mentions) => {\r\n if (code) {\r\n return mentions.set(code, value);\r\n }\r\n return mentions.set(value);\r\n });\r\n }\r\n };\r\n\r\n onTextBlur = () => {\r\n this.updateAnswers();\r\n };\r\n\r\n placeholder() {\r\n return \"\";\r\n }\r\n\r\n inputtype(question: QuestionModel) {\r\n switch (question.type) {\r\n case QuestionType.RespondentEmail:\r\n case QuestionType.EmailAddressAnswer:\r\n return \"email\";\r\n case QuestionType.RespondentPhone:\r\n return \"tel\";\r\n default:\r\n return \"text\";\r\n }\r\n }\r\n\r\n maxLength = (question: QuestionModel) => getSettingNumber(question, \"MaxAnswerLength\");\r\n\r\n minValue() {\r\n const min = super.minValue();\r\n return min != null ? min : Number.MIN_SAFE_INTEGER;\r\n }\r\n\r\n maxValue() {\r\n const max = super.maxValue();\r\n return max != null ? max : Number.MAX_SAFE_INTEGER;\r\n }\r\n\r\n displayValue = () => {\r\n // Use the mention to make sure text does not disappear whenever it matches a possible answer.\r\n const mentionValue = this.getMentionValue(this.props);\r\n\r\n // Check if the value is equal to the mention to let the user change the value.\r\n const isValueMentioned =\r\n this.state.value === mentionValue && this.hasAnswerWithValue(this.props, mentionValue);\r\n\r\n if (this.state.value === undefined || isValueMentioned) {\r\n return \"\";\r\n }\r\n return this.state.value;\r\n };\r\n\r\n textAlign = (question: QuestionModel) => {\r\n if (question.type === QuestionType.NumericAnswer) {\r\n return \"right\";\r\n }\r\n return undefined;\r\n };\r\n\r\n renderQuestion(question: QuestionModel) {\r\n const multiline =\r\n getSettingBoolean(question, \"MultiLine\") ||\r\n question.type === QuestionType.OpenEndAnswer;\r\n\r\n const lines = getSettingNumber(question, \"Lines\");\r\n\r\n return (\r\n <>\r\n {\r\n this.input = r as HTMLInputElement;\r\n }}\r\n min={this.minValue()}\r\n max={this.maxValue()}\r\n maxLength={this.maxLength(question)}\r\n onBlur={this.onTextBlur}\r\n onChange={this.onTextChanged}\r\n onKeyPress={this.onKeyPress}\r\n value={this.displayValue()}\r\n disabled={this.props.isDisabled}\r\n lines={lines}\r\n />\r\n \r\n \r\n );\r\n }\r\n\r\n regexForValidationMask(mask: string) {\r\n let regex = \"\";\r\n const replacements = {\r\n A: \"[A-Z]\",\r\n Z: \"[A-Z0-9]\",\r\n 9: \"[0-9]\",\r\n \"*\": \".\",\r\n };\r\n Array.from(mask).forEach((c) => {\r\n regex += replacements[c] || `\\\\${c}`;\r\n });\r\n return `^${regex}$`;\r\n }\r\n\r\n validateFormat(question: QuestionModel, value: string) {\r\n const mask = getSettingString(question, \"ValidationMask\");\r\n if (isNullOrEmpty(mask)) {\r\n return true;\r\n }\r\n return new RegExp(this.regexForValidationMask(mask), \"i\").test(value);\r\n }\r\n\r\n shouldEnforceValidation(question: QuestionModel) {\r\n return (\r\n !hasSetting(question, \"EnforceValidation\") ||\r\n getSettingBoolean(question, \"EnforceValidation\")\r\n );\r\n }\r\n\r\n isAnswerComplete() {\r\n if (isNullOrEmpty(this.state.value) && this.hasMentions(this.props)) {\r\n const [mention] = this.getMentions(this.props);\r\n const variable = this.getQuestionVariable(this.props.sequencedVariables);\r\n const { choiceList = [] } = variable;\r\n if (choiceList.some((choice) => choice.value === mention.value)) {\r\n return true;\r\n }\r\n }\r\n return !isNullOrEmpty(trim(this.state.value));\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n this.updateAnswers();\r\n const { question, useClientValidation, dispatch } = this.props;\r\n const { value } = this.state;\r\n\r\n const validation = new ValidationBuilder();\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n if (question.type === QuestionType.RespondentPhone) {\r\n dispatch(respondentSetPhone(value));\r\n } else if (question.type === QuestionType.RespondentEmail) {\r\n dispatch(respondentSetEmail(value));\r\n }\r\n return validation.build();\r\n }\r\n\r\n const variable = question.variables.find((v) => v.type !== VariableType.Computed);\r\n const hasSelectedAnswer = this.hasAnswerWithValue(this.props, value);\r\n let result = super.validate(options);\r\n\r\n if (result.isValid) {\r\n if (!isNullOrEmpty(value) && !hasSelectedAnswer) {\r\n switch (question.type) {\r\n case QuestionType.OpenEndAnswer:\r\n result = this.validateOpenEnd(value, question);\r\n if (!result.isValid) {\r\n return result;\r\n }\r\n break;\r\n case QuestionType.RespondentPhone:\r\n if (\r\n this.shouldEnforceValidation(question) &&\r\n !PhoneRegularExpression.test(value)\r\n ) {\r\n return validation.fail(variable.name, \"InvalidAnswer\").build();\r\n }\r\n this.props.dispatch(respondentSetPhone(value));\r\n break;\r\n case QuestionType.RespondentEmail:\r\n if (\r\n this.shouldEnforceValidation(question) &&\r\n !EmailRegularExpression.test(value)\r\n ) {\r\n return validation.fail(variable.name, \"InvalidEmailAddress\").build();\r\n }\r\n this.props.dispatch(respondentSetEmail(value));\r\n break;\r\n case QuestionType.EmailAddressAnswer:\r\n if (\r\n this.shouldEnforceValidation(question) &&\r\n !EmailRegularExpression.test(value)\r\n ) {\r\n return validation.fail(variable.name, \"InvalidEmailAddress\").build();\r\n }\r\n break;\r\n case QuestionType.TextAnswer:\r\n if (!this.validateFormat(question, value)) {\r\n return validation.fail(variable.name, \"InvalidTextFormat\").build();\r\n }\r\n break;\r\n case QuestionType.NumericAnswer:\r\n return getValidationResults([question]);\r\n default:\r\n break;\r\n }\r\n }\r\n }\r\n return result;\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n selectedWord: {\r\n composes: \"selected-word\",\r\n \"background-color\": \"#2366DB\",\r\n color: \"#FFFFFF\",\r\n },\r\n selectedCategory0: ({ category0Color }) => ({\r\n composes: \"selected-category-0\",\r\n \"background-color\": category0Color,\r\n }),\r\n selectedCategory1: ({ category1Color }) => ({\r\n composes: \"selected-category-1\",\r\n \"background-color\": category1Color,\r\n }),\r\n selectedCategory2: ({ category2Color }) => ({\r\n composes: \"selected-category-2\",\r\n \"background-color\": category2Color,\r\n }),\r\n selectedCategory3: ({ category3Color }) => ({\r\n composes: \"selected-category-3\",\r\n \"background-color\": category3Color,\r\n }),\r\n selectedCategory4: ({ category4Color }) => ({\r\n composes: \"selected-category-4\",\r\n \"background-color\": category4Color,\r\n }),\r\n selectedCategory5: ({ category5Color }) => ({\r\n composes: \"selected-category-5\",\r\n \"background-color\": category5Color,\r\n }),\r\n saveButton: {\r\n composes: \"save__button\",\r\n \"background-color\": \"#3AAAEA\",\r\n color: \"white\",\r\n \"font-family\": \"Open Sans\",\r\n \"font-size\": \"14px\",\r\n \"font-weight\": \"600\",\r\n \"line-height\": \"19px\",\r\n \"letter-spacing\": \"0em\",\r\n \"text-align\": \"center\",\r\n width: \"104.61px\",\r\n height: \"33px\",\r\n \"border-radius\": \"8px\",\r\n },\r\n saveButtonDisabled: {\r\n composes: \"save__button__disabled\",\r\n \"background-color\": \"#F3F3F3\",\r\n color: \"#000000\",\r\n \"font-family\": \"Open Sans\",\r\n \"font-size\": \"14px\",\r\n \"font-weight\": \"600\",\r\n \"line-height\": \"19px\",\r\n \"letter-spacing\": \"0em\",\r\n \"text-align\": \"center\",\r\n width: \"104.61px\",\r\n height: \"33px\",\r\n \"border-radius\": \"8px\",\r\n },\r\n cancelButton: {\r\n composes: \"cancel__button\",\r\n width: \"104.82px\",\r\n height: \"33px\",\r\n background: \"#F3F3F3\",\r\n \"border-radius\": \"8px\",\r\n color: \"#000000\",\r\n \"font-weight\": \"600\",\r\n \"font-family\": \"Open Sans\",\r\n },\r\n cancelButtonHover: {\r\n composes: \"cancel__button buttonActive\",\r\n color: \"black\",\r\n },\r\n deleteButton: {\r\n composes: \"delete__button\",\r\n width: \"104.82px\",\r\n height: \"33px\",\r\n background: \"#FF006F\",\r\n color: \"#FFFFFF\",\r\n \"border-radius\": \"8px\",\r\n \"font-weight\": \"600\",\r\n \"font-family\": \"Open Sans\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n cursor: \"pointer\",\r\n },\r\n withFormatDisableUserSelection: {\r\n display: \"flex\",\r\n flexFlow: \"wrap\",\r\n WebkitTouchCallout: \"none\",\r\n WebkitUserSelect: \"none\",\r\n KhtmlUserSelect: \"none\",\r\n MozUserSelect: \"none\",\r\n msUserSelect: \"none\",\r\n userSelect: \"none\",\r\n },\r\n withoutFormatDisableUserSelection: {\r\n WebkitTouchCallout: \"none\",\r\n WebkitUserSelect: \"none\",\r\n KhtmlUserSelect: \"none\",\r\n MozUserSelect: \"none\",\r\n msUserSelect: \"none\",\r\n userSelect: \"none\",\r\n },\r\n});\r\n","import { createUseStyles } from \"react-jss\";\r\nimport * as Mixins from \"../../../theme/Mixins\";\r\n\r\nconst backgroundless = (theme) =>\r\n theme.ChoiceListBackgroundAlpha === 0 && theme.ChoiceListBackgroundBorderWidth === 0;\r\n\r\nexport default createUseStyles({\r\n choice: {\r\n background: ({ theme }) =>\r\n Mixins.alpha(theme.ControlBackground, theme.ChoiceListBackgroundAlpha),\r\n borderRadius: ({ theme }) =>\r\n Math.min(theme.ChoiceListBackgroundBorderRadius, theme.ChoiceHeight / 2),\r\n boxShadow: \"0 0 0 0\",\r\n boxSizing: \"border-box\",\r\n color: \"black\",\r\n composes: \"choice\",\r\n cursor: \"pointer\",\r\n margin: \"0\",\r\n outline: \"2px solid transparent\",\r\n overflow: \"hidden\",\r\n padding: ({ theme }) => (backgroundless(theme) ? [[16, 13]] : [[16, 26]]),\r\n textAlign: ({ theme }) => (theme.DisplayChoiceIcon === \"right\" ? \"right\" : \"\"),\r\n transition: \"background 200ms, box-shadow 200ms, outline-color 200ms\",\r\n userSelect: \"none\",\r\n \"& .check-box__icon\": {\r\n display: ({ theme }) => (!theme.ShowCheckboxSettings ? \"none\" : \"\"),\r\n },\r\n \"& .radio__icon\": {\r\n display: ({ theme }) => (!theme.ShowRadioSettings ? \"none\" : \"\"),\r\n },\r\n },\r\n choiceHeader: {\r\n composes: \"choice__header\",\r\n fontWeight: 700,\r\n margin: ({ theme }) => [[theme.ChoiceSpacing, 0]],\r\n },\r\n choiceTextTextHighlighter: {\r\n composes: \"choice__text__highlighter\",\r\n fontWeight: \"normal\",\r\n marginLeft: 8,\r\n paddingLeft: 20,\r\n },\r\n choiceContainer: {\r\n alignItems: \"center\",\r\n composes: \"choice-container\",\r\n display: \"flex\",\r\n flex: 1,\r\n \"margin-top\": 0,\r\n \"margin-bottom\": 0,\r\n flexDirection: ({ theme }) =>\r\n theme.CheckBoxIconAlignment === \"right\" ? \"row-reverse\" : \"row\",\r\n },\r\n choiceSelected: {\r\n background: ({ theme }) => !backgroundless(theme) && theme.PrimaryColor,\r\n boxShadow: ({ theme }) =>\r\n `0 0 0 ${theme.BorderWidth}px ${Mixins.borderColor(theme, theme.PrimaryColor)} inset`,\r\n color: ({ theme }) =>\r\n backgroundless(theme)\r\n ? theme.PrimaryColor\r\n : Mixins.foregroundColor(theme, theme.PrimaryColor),\r\n composes: \"choice--selected\",\r\n },\r\n choiceHover: {\r\n composes: \"choice--hover\",\r\n background: ({ theme, selected }) => {\r\n if (backgroundless(theme)) return undefined;\r\n return selected\r\n ? Mixins.darken(theme.PrimaryColor, theme.ActiveHighlightValue)\r\n : Mixins.darken(theme.ControlBackground, theme.ActiveHighlightValue);\r\n },\r\n boxShadow: ({ theme, selected }) =>\r\n `0 0 0 ${theme.BorderWidth}px ${Mixins.borderColor(\r\n theme,\r\n selected\r\n ? Mixins.darken(theme.PrimaryColor, theme.ActiveHighlightValue)\r\n : Mixins.darken(theme.ControlBackground, theme.ActiveHighlightValue),\r\n )} inset`,\r\n },\r\n choiceActive: {\r\n composes: \"choice--active\",\r\n background: ({ theme, selected }) => {\r\n if (backgroundless(theme)) return undefined;\r\n return selected\r\n ? Mixins.darken(theme.PrimaryColor, theme.ActiveHighlightValue)\r\n : Mixins.darken(theme.ControlBackground, theme.ActiveHighlightValue);\r\n },\r\n outlineColor: ({ theme }) => backgroundless(theme) && theme.PrimaryColor,\r\n },\r\n});\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n choiceTextHighlighter: {\r\n composes: \"choice\",\r\n borderRadius: ({ theme }) =>\r\n Math.min(theme.ChoiceListBackgroundBorderRadius, theme.ChoiceHeight / 2),\r\n boxSizing: \"border-box\",\r\n cursor: \"pointer\",\r\n display: ({ hasOpenEnd, openEndSize }) =>\r\n hasOpenEnd && openEndSize === \"Full\" ? \"block\" : \"flex\",\r\n flexWrap: \"wrap\",\r\n overflow: \"hidden\",\r\n textAlign: ({ theme }) => (theme.DisplayChoiceIcon === \"right\" ? \"right\" : \"\"),\r\n transition: \"background 200ms, box-shadow 200ms, outline-color 200ms\",\r\n userSelect: \"none\",\r\n outline: \"2px solid transparent\",\r\n \"& .radio__icon, & .check-box__icon\": {\r\n display: ({ theme }) => (theme.DisplayChoiceIcon === \"none\" ? \"none\" : \"\"),\r\n },\r\n fontFamily: \"Open Sans\",\r\n fontWeight: \"normal\",\r\n },\r\n choiceHeader: {\r\n composes: \"choice__header\",\r\n fontWeight: 400,\r\n margin: ({ theme }) => [[theme.ChoiceSpacing, 0]],\r\n },\r\n choiceTextTextHighlighter: {\r\n composes: \"choice__text__highlighter\",\r\n fontWeight: \"normal\",\r\n FontFace: \"openSans\",\r\n },\r\n choiceContainer: {\r\n composes: \"choice__container\",\r\n alignItems: \"center\",\r\n display: \"flex\",\r\n flexGrow: 1,\r\n minWidth: 125,\r\n flexDirection: ({ theme }) => (theme.DisplayChoiceIcon === \"right\" ? \"row-reverse\" : \"row\"),\r\n margin: [[8, 8, 8, 0]],\r\n },\r\n choiceSelectedTextHighlighter: {\r\n composes: \"choice--selected\",\r\n },\r\n choiceHoverTextHighlighter: {\r\n composes: \"choice--hover\",\r\n },\r\n choiceActiveTextHighlighter: {\r\n composes: \"choice--active\",\r\n },\r\n spacer: {\r\n width: 20,\r\n },\r\n});\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport useStyles from \"./ButtonChoiceTextHighlighter.styles\";\r\n\r\ninterface Props {\r\n id?: string;\r\n type: \"radio\";\r\n label?: string;\r\n className?: string;\r\n disabled?: boolean;\r\n selected?: boolean;\r\n hasOpenEnd?: boolean;\r\n openEndSize?: string;\r\n horizontal?: boolean;\r\n onSelect?(): void;\r\n onKeyDown?: React.KeyboardEventHandler;\r\n renderChoice?(): any;\r\n}\r\n\r\nexport function ButtonChoiceTextHighlighter(props: Props) {\r\n const {\r\n id,\r\n label,\r\n type,\r\n className,\r\n hasOpenEnd,\r\n openEndSize,\r\n horizontal,\r\n selected,\r\n onSelect,\r\n onKeyDown,\r\n renderChoice,\r\n } = props;\r\n\r\n const [hover, setHover] = React.useState(false);\r\n const [active, setActive] = React.useState(false);\r\n\r\n const theme = useTheme() as any;\r\n const classes = useStyles({ theme, selected, hasOpenEnd, openEndSize, horizontal });\r\n\r\n return (\r\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\r\n setActive(true)}\r\n onBlur={() => setActive(false)}\r\n onMouseOver={() => setHover(true)}\r\n onMouseOut={() => setHover(false)}\r\n onKeyDown={onKeyDown}\r\n onMouseDown={(e) => {\r\n const div = e.target as HTMLDivElement;\r\n const activeElement = document.activeElement as HTMLElement;\r\n if (!div.contains(activeElement)) activeElement.blur();\r\n e.preventDefault();\r\n onSelect();\r\n }}\r\n className={classnames(\r\n classes.choiceTextHighlighter,\r\n ...([className] || []),\r\n hover && classes.choiceHoverTextHighlighter,\r\n active && classes.choiceActiveTextHighlighter,\r\n selected && classes.choiceSelectedTextHighlighter,\r\n )}\r\n >\r\n
    {renderChoice()}
    \r\n
    \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport { Dictionary } from \"lodash\";\r\nimport { kebabCase } from \"../../../utils/lodash\";\r\nimport useStyles from \"./ChoiceListItemTextHighlighterRenderer.styles\";\r\nimport { RendererProps, getRendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { VariableModel } from \"../../../models/VariableModel\";\r\nimport { QuestionType, isChoiceList } from \"../../../models/enums/QuestionType\";\r\nimport { ChoiceRef } from \"../../choices/BaseChoice\";\r\nimport useQuestion from \"../../../hooks/useQuestion\";\r\nimport ChoiceLabelRenderer from \"./ChoiceLabelRenderer\";\r\nimport useTranslatable from \"../../../hooks/useTranslatable\";\r\nimport { getSettingBoolean, getSettingString } from \"../../../models/utilities/settingUtilities\";\r\nimport { isNullOrEmpty, removeHtmlTags } from \"../../../utils\";\r\nimport { ButtonChoiceTextHighlighter } from \"../../shared/ButtonChoiceTextHighlighter\";\r\nimport { translate } from \"../../../models/utilities/translationUtilities\";\r\nimport { ChoiceContainer } from \"../../../containers/controls/ChoiceContainer\";\r\nimport { MentionModel } from \"../../../models/MentionModel\";\r\n\r\ninterface Props extends RendererProps {\r\n selected?: boolean;\r\n variable: VariableModel;\r\n isFirst?: boolean;\r\n isLast?: boolean;\r\n name?: string;\r\n gridRendering?: boolean;\r\n openEnd?: string;\r\n onOpenEndChange?(choice: ChoiceModel, text: string): void;\r\n onOpenEndBlur?(choice: ChoiceModel): void;\r\n choice?: ChoiceModel;\r\n horizontal?: boolean;\r\n controlType?: any;\r\n disabled?: boolean;\r\n highlightedWordsByCategories: Dictionary;\r\n highlightedWords: Dictionary;\r\n selectedChoiceModels: ChoiceModel[];\r\n duplicateWords: string[];\r\n openEndValue?: { [key: string]: string };\r\n mentions: { [variableName: string]: MentionModel[] };\r\n toggleIsCategorySelected(isSelected: boolean, enable: boolean): void;\r\n}\r\nexport default function ChoiceListItemTextHighlighterRenderer(props: Props) {\r\n const {\r\n choice,\r\n controlType,\r\n isFirst,\r\n isLast,\r\n disabled,\r\n openEnd,\r\n gridRendering,\r\n selected,\r\n variable,\r\n horizontal,\r\n highlightedWordsByCategories,\r\n selectedChoiceModels,\r\n highlightedWords,\r\n duplicateWords,\r\n language,\r\n openEndValue,\r\n mentions,\r\n toggleIsCategorySelected,\r\n } = props;\r\n const choiceRef: ChoiceRef = React.useRef();\r\n const question = useQuestion();\r\n const theme = useTheme();\r\n const classes = useStyles({ theme, selected, horizontal });\r\n const choiceLabel = removeHtmlTags(useTranslatable(choice, \"TEXT\"));\r\n if (!choice.value) {\r\n return (\r\n
    \r\n \r\n
    \r\n );\r\n }\r\n\r\n const type = isChoiceList(question.type) ? question.type : QuestionType.RadioButton;\r\n\r\n function onSelect() {\r\n // Counter for selection\r\n Object.entries(selectedChoiceModels).forEach(([id, selectedChoiceModel]) => {\r\n if (choiceRef.current) {\r\n const isOpenEndRequired = getSettingBoolean(question, \"MakeCommentsMandatory\");\r\n if (isOpenEndRequired && isNullOrEmpty(openEndValue[selectedChoiceModel.value])) {\r\n toggleIsCategorySelected(true, true);\r\n } else {\r\n toggleIsCategorySelected(true, false);\r\n }\r\n }\r\n\r\n Object.entries(highlightedWordsByCategories).forEach(([key, value]) => {\r\n if (mentions[key]) {\r\n const mentionIndex = mentions[key].findIndex(\r\n (item) => selectedChoiceModel.value === item.value,\r\n );\r\n if (mentionIndex > -1) {\r\n mentions[key].splice(mentionIndex, 1);\r\n }\r\n }\r\n const choiceIndex = value.findIndex(\r\n (item) => selectedChoiceModel === item.choiceModel,\r\n );\r\n if (choiceIndex > -1) {\r\n highlightedWordsByCategories[key].splice(choiceIndex, 1);\r\n }\r\n });\r\n let highlightedWord: string;\r\n const choiceText = translate(selectedChoiceModel, \"TEXT\", language);\r\n if (duplicateWords.includes(choiceText)) {\r\n highlightedWord = `${choiceText} `;\r\n } else {\r\n highlightedWord = choiceText;\r\n }\r\n\r\n highlightedWordsByCategories[choice.name].push({\r\n highlightedWord,\r\n choiceModel: selectedChoiceModel,\r\n // addd counter for selection to remember\r\n });\r\n Object.entries(highlightedWords).forEach(([key, value]) => {\r\n value.splice(0);\r\n });\r\n });\r\n }\r\n\r\n function onKeyDown(event: React.KeyboardEvent) {\r\n if (event.target !== event.currentTarget) {\r\n return;\r\n }\r\n if (event.key === \" \") {\r\n onSelect();\r\n event.preventDefault();\r\n }\r\n if (event.key === \"ArrowUp\" || event.key === \"ArrowDown\") {\r\n const choices = variable.choiceList;\r\n const index = choices.indexOf(choice) + (event.key === \"ArrowDown\" ? 1 : -1);\r\n if (choices[index]) {\r\n const siblingElement = document.getElementById(`${choices[index].elementId}_INPUT`);\r\n if (siblingElement) {\r\n siblingElement.focus();\r\n if (type === QuestionType.RadioButton) siblingElement.click();\r\n event.preventDefault();\r\n }\r\n }\r\n }\r\n }\r\n\r\n const openEndSize = getSettingString(choice, \"OpenEndSize\", \"Medium\");\r\n\r\n return (\r\n <>\r\n (\r\n \r\n )}\r\n />\r\n \r\n );\r\n}\r\n","import React from \"react\";\r\nimport { useTheme } from \"react-jss\";\r\nimport classnames from \"classnames\";\r\nimport { Dictionary } from \"lodash\";\r\nimport useStyles from \"./ChoiceListRenderer.styles\";\r\nimport { RendererProps, getRendererProps } from \"../BaseRenderer\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { QuestionType } from \"../../../models/enums/QuestionType\";\r\nimport { MentionModel } from \"../../../models/MentionModel\";\r\nimport { Radio } from \"../../choices/Radio\";\r\nimport {\r\n getSettingBoolean,\r\n getSettingNumber,\r\n getSettingString,\r\n} from \"../../../models/utilities/settingUtilities\";\r\nimport { VariableModel } from \"../../../models/VariableModel\";\r\nimport Button from \"../../shared/Button\";\r\nimport useQuestion from \"../../../hooks/useQuestion\";\r\nimport useTranslatable from \"../../../hooks/useTranslatable\";\r\nimport { QuestionModel } from \"../../../models/QuestionModel\";\r\nimport { getChoiceListDisplayType } from \"../../../models/utilities/questionUtilities\";\r\nimport { ChoiceListDisplayType } from \"../../../models/enums/ChoiceListDisplayType\";\r\nimport useDimensionContext from \"../../../hooks/useDimensionContext\";\r\nimport { isIE } from \"../../../utils\";\r\nimport ChoiceListItemTextHighlighterRenderer from \"./ChoiceListItemTextHighlighterRenderer\";\r\n\r\ninterface Props extends RendererProps {\r\n variable: VariableModel;\r\n openEndValue?: { [key: string]: string };\r\n onClick?(choice: ChoiceModel): void;\r\n onOpenEndChange?(choice: ChoiceModel, text: string): void;\r\n onOpenEndBlur?(choice: ChoiceModel): void;\r\n mentions: { [variableName: string]: MentionModel[] };\r\n choices: ChoiceModel[];\r\n gridRendering?: boolean;\r\n onReset(): void;\r\n language: string;\r\n maxAnswers?: number;\r\n isSelected?: boolean;\r\n highlightedWordsByCategories: Dictionary;\r\n selectedChoiceModels: ChoiceModel[];\r\n highlightedWords: Dictionary;\r\n isChoiceAlreadyHighlighted: (choice: ChoiceModel, variableName: string) => boolean;\r\n duplicateWords: string[];\r\n toggleIsCategorySelected(isSelected: boolean, enable: boolean): void;\r\n}\r\n\r\nconst shouldDisplayResetButton = (question: QuestionModel) =>\r\n getSettingBoolean(question, \"DisplayResetButton\");\r\n\r\nfunction renderChoiceListItemTextHighlighter(\r\n props: Props,\r\n choice: ChoiceModel,\r\n isFirst: boolean,\r\n isLast: boolean,\r\n key: any,\r\n controlType: any,\r\n) {\r\n const {\r\n question,\r\n gridRendering,\r\n openEndValue,\r\n onOpenEndChange,\r\n onOpenEndBlur,\r\n variable,\r\n highlightedWordsByCategories,\r\n selectedChoiceModels,\r\n highlightedWords,\r\n isChoiceAlreadyHighlighted,\r\n duplicateWords,\r\n mentions,\r\n toggleIsCategorySelected,\r\n } = props;\r\n const displayType = getChoiceListDisplayType(question);\r\n const isHorizontalDisplay =\r\n displayType === ChoiceListDisplayType.Horizontal ||\r\n displayType === ChoiceListDisplayType.HorizontalColumns;\r\n const selected = [];\r\n Object.entries(selectedChoiceModels).forEach(([id, selectedChoiceModel]) => {\r\n selected.push(isChoiceAlreadyHighlighted(selectedChoiceModel, choice.name));\r\n });\r\n return (\r\n value === true)}\r\n choice={choice}\r\n variable={variable}\r\n disabled={false}\r\n horizontal={isHorizontalDisplay}\r\n highlightedWordsByCategories={highlightedWordsByCategories}\r\n selectedChoiceModels={selectedChoiceModels}\r\n highlightedWords={highlightedWords}\r\n duplicateWords={duplicateWords}\r\n mentions={mentions}\r\n toggleIsCategorySelected={toggleIsCategorySelected}\r\n />\r\n );\r\n}\r\n\r\nfunction renderChoice(\r\n props: Props,\r\n choice: ChoiceModel,\r\n isFirst: boolean,\r\n isLast: boolean,\r\n key: any,\r\n) {\r\n return renderChoiceListItemTextHighlighter(props, choice, isFirst, isLast, key, Radio);\r\n}\r\n\r\nfunction renderChoices(props: Props) {\r\n const { choices } = props;\r\n return choices.map((choice, i) =>\r\n renderChoice(props, choice, i === 0, i === choices.length - 1, choice.name),\r\n );\r\n}\r\n\r\nfunction ResetButton(props: Props) {\r\n const { theme, onReset } = props;\r\n const question = useQuestion();\r\n const defaultClearButtonText = useTranslatable(theme, \"QuestionClearButton\") || \"Reset\";\r\n const clearButtonText = useTranslatable(question, \"ResetButtonText\") || defaultClearButtonText;\r\n\r\n return (\r\n onReset()}\r\n />\r\n );\r\n}\r\n\r\nexport default function ChoiceListTextHighlighterRenderer(props: Props) {\r\n const question = useQuestion();\r\n const { choices } = props;\r\n const dimension = useDimensionContext();\r\n\r\n const theme = useTheme();\r\n const displayType = getChoiceListDisplayType(question);\r\n\r\n const numberOfColumns = getSettingNumber(question, \"NumberOfColumns\");\r\n const numberOfRows = numberOfColumns > 1 ? Math.ceil(choices?.length / numberOfColumns) : 1;\r\n\r\n const classes = useStyles({ theme, displayType, numberOfColumns, numberOfRows });\r\n\r\n if (choices === undefined || choices.length === 0) {\r\n return null;\r\n }\r\n\r\n const displayAsTable = question.type === QuestionType.ImageSelector;\r\n const displayOrder = getSettingString(question, \"DisplayOrder\");\r\n\r\n const isDisplayColumns = displayType === ChoiceListDisplayType.VerticalColumns;\r\n const isDisplayWide = dimension && dimension.minWidth(778);\r\n\r\n // Internet Explorer fallback layout: vertical columns choice list will be displayed as a simple vertical choice list\r\n const displayAsGrid = isDisplayColumns && isDisplayWide && !isIE();\r\n\r\n const role = question.type === QuestionType.RadioButton ? \"radiogroup\" : \"group\";\r\n\r\n return (\r\n \r\n {renderChoices(props)}\r\n {shouldDisplayResetButton(question) && }\r\n
    \r\n );\r\n}\r\n","import { ChoiceModel } from \"./ChoiceModel\";\r\nimport { LogicModel } from \"./LogicModel\";\r\nimport { TranslatedText } from \"./TranslatedText\";\r\n\r\nexport class VariableToChoiceModel implements ChoiceModel {\r\n elementId: string;\r\n index: number;\r\n value: string;\r\n parentValue: string;\r\n openEndDisplayLogic: LogicModel;\r\n openEndActive?: boolean;\r\n position?: number;\r\n name: string;\r\n settings: { [key: string]: any };\r\n skipLogic?: LogicModel;\r\n displayLogic?: LogicModel;\r\n translatedTexts?: { [key: string]: TranslatedText };\r\n\r\n constructor(\r\n elementId: string,\r\n index: number,\r\n value: string,\r\n name: string,\r\n openEndActive?: boolean,\r\n translatedTexts?: { [key: string]: TranslatedText },\r\n ) {\r\n this.elementId = elementId;\r\n this.index = index;\r\n this.value = value;\r\n this.name = name;\r\n this.openEndActive = openEndActive;\r\n this.translatedTexts = translatedTexts;\r\n }\r\n}\r\n","/* eslint-disable react-hooks/rules-of-hooks */\r\n/* eslint-disable @typescript-eslint/no-unused-vars */\r\nimport parse from \"html-react-parser\";\r\nimport React, { useEffect, useState } from \"react\";\r\nimport Modal from \"react-modal\";\r\nimport { Dictionary } from \"lodash\";\r\nimport useStyles from \"./TextHighlighterRenderer.styles\";\r\nimport { getRendererProps, RendererProps } from \"../BaseRenderer\";\r\nimport { MentionModel } from \"../../../models/MentionModel\";\r\nimport ChoiceListTextHighlighterRenderer from \"./ChoiceListTextHighlighterRenderer\";\r\nimport { VariableModel } from \"../../../models/VariableModel\";\r\nimport { ChoiceModel } from \"../../../models/ChoiceModel\";\r\nimport { VariableToChoiceModel } from \"../../../models/VariableToChoiceModel\";\r\nimport OpenEndRenderer from \"./OpenEndRenderer\";\r\nimport { translate } from \"../../../models/utilities/translationUtilities\";\r\nimport { getSettingBoolean, getSettingString } from \"../../../models/utilities/settingUtilities\";\r\nimport useTranslatable from \"../../../hooks/useTranslatable\";\r\n\r\ninterface Props extends RendererProps {\r\n onHighlight: (e: any) => void;\r\n highlightedWords: Dictionary;\r\n highlightedWordsByCategories: Dictionary;\r\n showModal: boolean;\r\n mentions: { [variableName: string]: MentionModel[] };\r\n onReset(): void;\r\n onCancelModal: () => void;\r\n modalPositions: DOMRect;\r\n onOpenEndChange?(answer: any, event: any): void;\r\n onOpenEndBlur?(answer: any): void;\r\n showDeleteButton: boolean;\r\n onDeleteHighlight: () => void;\r\n selectedChoiceModels: ChoiceModel[];\r\n isChoiceAlreadyHighlighted: (choice: ChoiceModel, variableName: string) => boolean;\r\n duplicateWords: string[];\r\n openEndValue: { [key: string]: any };\r\n variables: VariableModel[];\r\n toggleIsCategorySelected(isSelected: boolean, enable: boolean): void;\r\n handleMouseDown: (e: any) => void;\r\n handleMouseMove: (e: any) => void;\r\n selectedButtons: string[];\r\n buttonsRef: any;\r\n modalRef: any;\r\n handleTouchStart: (e: any) => void;\r\n handleTouchMove: (e: any) => void;\r\n handleTouchEnd: (e: any) => void;\r\n}\r\nexport default function TextHighlighterRenderer(props: Props) {\r\n function mapVariablesToChoices(variables: VariableModel[]): ChoiceModel[] {\r\n const choiceList: ChoiceModel[] = [];\r\n variables.forEach((variable) => {\r\n const choice = new VariableToChoiceModel(\r\n variable.elementId,\r\n variable.index,\r\n variable.name,\r\n variable.name,\r\n true,\r\n variable.translatedTexts,\r\n );\r\n choiceList.push(choice);\r\n });\r\n return choiceList;\r\n }\r\n const {\r\n highlightedWords,\r\n highlightedWordsByCategories,\r\n onHighlight,\r\n showModal,\r\n mentions,\r\n onReset,\r\n onCancelModal,\r\n question,\r\n questionnaire,\r\n modalPositions,\r\n onOpenEndBlur,\r\n onOpenEndChange,\r\n showDeleteButton,\r\n onDeleteHighlight,\r\n selectedChoiceModels,\r\n isChoiceAlreadyHighlighted,\r\n duplicateWords,\r\n language,\r\n openEndValue,\r\n variables,\r\n toggleIsCategorySelected,\r\n handleMouseDown,\r\n handleMouseMove,\r\n selectedButtons,\r\n buttonsRef,\r\n modalRef,\r\n handleTouchStart,\r\n handleTouchMove,\r\n handleTouchEnd,\r\n } = props;\r\n const questionTexts = question.variables[0].choiceList;\r\n const FormatTemplate = getSettingString(question, \"HighlightFormat\");\r\n let categoriesColors: string[] = getCategoriesColors();\r\n const classes = useStyles({\r\n category0Color: categoriesColors[0],\r\n category1Color: categoriesColors[1],\r\n category2Color: categoriesColors[2],\r\n category3Color: categoriesColors[3],\r\n category4Color: categoriesColors[4],\r\n category5Color: categoriesColors[5],\r\n });\r\n const variable = question.variables[0];\r\n const choiceList = mapVariablesToChoices(variables);\r\n const [deviceWidth] = useState(window.innerWidth);\r\n const isMobilePreview = deviceWidth <= 768;\r\n const isClickEventPropagation = true;\r\n const isMouseDownEventPropagation = true;\r\n let modalStyles;\r\n const responsePopUpTitle = useTranslatable(question, \"ResponsePopUpTitle\");\r\n const responsePopUpText = useTranslatable(question, \"ResponsePopUpText\");\r\n const responsePopUpDelete = useTranslatable(question, \"ResponsePopUpDelete\");\r\n\r\n if (showModal) {\r\n if (isMobilePreview) {\r\n modalStyles = {\r\n content: {\r\n position: \"absolute\",\r\n top: \"50%\",\r\n left: \"50%\",\r\n transform: \"translate(-50%, -50%)\",\r\n width: \"72%\",\r\n height: showDeleteButton ? \"50%\" : \"auto\",\r\n border: \"1px solid #DFDFDF\",\r\n borderRadius: \"20px\",\r\n },\r\n overlay: {\r\n backgroundColor: \"transparent\",\r\n },\r\n };\r\n } else {\r\n modalStyles = {\r\n content: {\r\n top: `${modalPositions?.bottom}px`,\r\n left: `${modalPositions?.left}px`,\r\n right: \"auto\",\r\n bottom: \"auto\",\r\n transform: \"\",\r\n width: \"fit-content\",\r\n height: \"auto\",\r\n position: \"relative\",\r\n border: \"1px solid #DFDFDF\",\r\n bordeRadius: \"20px\",\r\n outline: \"none\",\r\n },\r\n overlay: {\r\n position: \"absolute\",\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n marginRight: \"-50%\",\r\n width: \"100%\",\r\n height: \"auto\",\r\n backgroundColor: \"transparent\",\r\n overflow: \"auto\",\r\n zIndex: 1000,\r\n },\r\n };\r\n }\r\n }\r\n\r\n function getCategoriesColors() {\r\n categoriesColors = [];\r\n variables.forEach((variableItem, index) => {\r\n categoriesColors[index] = getSettingString(variableItem, \"Color\");\r\n });\r\n return categoriesColors;\r\n }\r\n\r\n function getCurrentHighlightedStyle(choiceValue: string) {\r\n let highlightColor = \"\";\r\n\r\n variables.forEach((variableItem) => {\r\n highlightedWordsByCategories[variableItem.name].forEach((x) => {\r\n if (x.choiceModel && x.choiceModel.value === choiceValue) {\r\n highlightColor = getClassName(variableItem);\r\n }\r\n });\r\n });\r\n return highlightColor;\r\n }\r\n\r\n function setStateFromMentions(choice: ChoiceModel) {\r\n variables.forEach((variableItem) => {\r\n if (\r\n isSelected(choice, variableItem.name) &&\r\n !highlightedWordsByCategories[variableItem.name].some(\r\n (item) => choice === item.choiceModel,\r\n )\r\n ) {\r\n highlightedWordsByCategories[variableItem.name].push({\r\n highlightedWord: translate(choice, \"TEXT\", language),\r\n choiceModel: choice,\r\n });\r\n openEndValue[choice.value] = getOpenEndFromMention(choice, variableItem.name);\r\n }\r\n });\r\n }\r\n function isSelected(choice: ChoiceModel, variableName: string) {\r\n return props.mentions[variableName]?.some((mention) => mention.value === choice.value);\r\n }\r\n\r\n function getOpenEndFromMention(choice: ChoiceModel, variableName: string) {\r\n return props.mentions[variableName].filter((mention) => mention.value === choice.value)[0]\r\n .openEnd;\r\n }\r\n\r\n function getClassName(variableItem: VariableModel) {\r\n switch (variableItem.index) {\r\n case 0: {\r\n return classes.selectedCategory0;\r\n }\r\n case 1: {\r\n return classes.selectedCategory1;\r\n }\r\n case 2: {\r\n return classes.selectedCategory2;\r\n }\r\n case 3: {\r\n return classes.selectedCategory3;\r\n }\r\n case 4: {\r\n return classes.selectedCategory4;\r\n }\r\n default: {\r\n return classes.selectedCategory5;\r\n }\r\n }\r\n }\r\n\r\n function HighlightButton({ choiceValue, choicePositionIndex }) {\r\n const [hovered, setHovered] = useState(false);\r\n const [selected, setSelected] = useState(false);\r\n\r\n useEffect(() => {\r\n if (selectedButtons.includes(`text-highlight-choice-${choiceValue}`)) {\r\n setSelected(true);\r\n } else {\r\n setSelected(false);\r\n }\r\n }, [choiceValue]);\r\n\r\n const choice = questionTexts.find((item) => item.value === choiceValue);\r\n if (!choice) return null;\r\n const choiceText = translate(choice, \"TEXT\", language);\r\n if (!choiceText) return null;\r\n\r\n setStateFromMentions(choice);\r\n const touchEvent = typeof window !== \"undefined\" && \"ontouchstart\" in window;\r\n\r\n const divStyles = {\r\n cursor: \"pointer\",\r\n backgroundColor: hovered || selected ? \"lightgrey\" : \"\",\r\n };\r\n\r\n if (variables.length > 0 && getSettingBoolean(choice, \"Highlightable\")) {\r\n return (\r\n handleMouseDown(e)}\r\n onMouseEnter={(e) => {\r\n setHovered(true);\r\n handleMouseMove(e);\r\n }}\r\n onMouseLeave={() => setHovered(false)}\r\n onTouchStart={handleTouchStart}\r\n role=\"button\"\r\n tabIndex={0}\r\n style={divStyles}\r\n className={getCurrentHighlightedStyle(choice.value)}\r\n >\r\n {choiceText}\r\n \r\n );\r\n }\r\n\r\n return (\r\n 0 ? {} : { marginRight: 5 }}\r\n >\r\n {choiceText}\r\n \r\n );\r\n }\r\n\r\n function parseHighlightFormat(highlightFormat) {\r\n let choicePositionIndex = 0;\r\n\r\n if (highlightFormat === null || highlightFormat === \"\" || highlightFormat === undefined) {\r\n return questionTexts.map((item) => (\r\n // eslint-disable-next-line react/jsx-key\r\n \r\n ));\r\n }\r\n\r\n // eslint-disable-next-line consistent-return\r\n const replace = (domNode) => {\r\n if (domNode.attribs && domNode.name === \"span\" && domNode.attribs.mappedchoicecode) {\r\n const choiceValue = domNode.attribs.mappedchoicecode;\r\n return (\r\n \r\n );\r\n }\r\n };\r\n\r\n return parse(highlightFormat, { replace });\r\n }\r\n\r\n function getOpenEndValue() {\r\n if (!selectedChoiceModels || selectedChoiceModels.length === 0) {\r\n return \"\";\r\n }\r\n\r\n const firstOpenEndValue = openEndValue[selectedChoiceModels[0].value];\r\n\r\n if (firstOpenEndValue === undefined) {\r\n return \"\";\r\n }\r\n\r\n for (let i = 1; i < selectedChoiceModels.length; i++) {\r\n if (openEndValue[selectedChoiceModels[i].value] !== firstOpenEndValue) {\r\n return \"\";\r\n }\r\n }\r\n\r\n return firstOpenEndValue;\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {parseHighlightFormat(FormatTemplate)}\r\n
    \r\n {showModal && (\r\n \r\n \r\n \r\n \r\n onOpenEndChange(undefined, e)}\r\n language={language}\r\n style={{ background: \"#F3F3F3\", borderRadius: 2 }}\r\n isClickEventPropagation={isClickEventPropagation}\r\n isMouseDownEventPropagation={isMouseDownEventPropagation}\r\n />\r\n \r\n {showDeleteButton && (\r\n // eslint-disable-next-line jsx-a11y/click-events-have-key-events\r\n {\r\n event.stopPropagation();\r\n onDeleteHighlight();\r\n }}\r\n dangerouslySetInnerHTML={{ __html: responsePopUpDelete }}\r\n />\r\n )}\r\n
    \r\n \r\n )}\r\n \r\n );\r\n}\r\n","/* eslint-disable react/no-access-state-in-setstate */\r\nimport { Dictionary } from \"lodash\";\r\nimport React from \"react\";\r\nimport { DispatchProp } from \"react-redux\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { ChoiceModel } from \"../../models/ChoiceModel\";\r\nimport { getSettingBoolean } from \"../../models/utilities/settingUtilities\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { getRendererProps } from \"../renderers/BaseRenderer\";\r\nimport TextHighlighterRenderer from \"../renderers/v2/TextHighlighterRenderer\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { ElementWithSettings } from \"../../models/ElementWithSettings\";\r\nimport { isQuestionValidatedServerSide } from \"../../models/utilities/validationUtilities\";\r\n\r\ninterface Props extends ControlProps, DispatchProp {}\r\ninterface State {\r\n highlightedWords: Dictionary;\r\n showModal: boolean;\r\n showDeleteButton: boolean;\r\n highlightedWordsByCategories: Dictionary;\r\n modalPositions?: DOMRect;\r\n selectedChoiceModels: ChoiceModel[];\r\n duplicateWords: string[];\r\n openEndValue: { [key: string]: any };\r\n isCategorySelected: boolean;\r\n isMouseDown: boolean;\r\n startButtonIndex: number;\r\n finalButtonIndex: number;\r\n selectedButtons: string[];\r\n historyOfHighlighted: any[];\r\n isDeleting: boolean;\r\n buttonsRef: any;\r\n modalRef: any;\r\n previousHighlightedWordsByCategories: {};\r\n previousOpenEndValue: {};\r\n}\r\n\r\nexport class TextHighlighterControl extends BaseControl {\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n highlightedWords: this.generateHighlightedWords(),\r\n showModal: false,\r\n selectedChoiceModels: [],\r\n highlightedWordsByCategories: this.generateHighlightedWordsByCategories(),\r\n modalPositions: undefined,\r\n showDeleteButton: false,\r\n duplicateWords: [],\r\n openEndValue: {},\r\n isCategorySelected: false,\r\n isMouseDown: false,\r\n startButtonIndex: null,\r\n finalButtonIndex: null,\r\n selectedButtons: [],\r\n historyOfHighlighted: [],\r\n isDeleting: false,\r\n buttonsRef: React.createRef(),\r\n modalRef: React.createRef(),\r\n previousHighlightedWordsByCategories: {},\r\n previousOpenEndValue: {},\r\n };\r\n }\r\n\r\n variables = this.props.question.variables.filter((variableItem) =>\r\n getSettingBoolean(variableItem, \"Visible\"),\r\n );\r\n\r\n choiceList = this.variables[0]?.choiceList;\r\n\r\n onReset = () => {\r\n return null;\r\n };\r\n\r\n onCloseModal = () => {\r\n Object.entries(this.state.highlightedWords).forEach(([key, value]) => {\r\n value.pop();\r\n });\r\n this.setState((prevState) => ({\r\n ...prevState,\r\n showModal: false,\r\n isCategorySelected: false,\r\n }));\r\n };\r\n\r\n onCancelModal = () => {\r\n if (this.state.isCategorySelected) {\r\n const isHighlightedWordsModified =\r\n JSON.stringify(this.state.previousHighlightedWordsByCategories) !==\r\n JSON.stringify(this.state.highlightedWordsByCategories);\r\n\r\n const isOpenEndValueModified =\r\n JSON.stringify(this.state.previousOpenEndValue) !==\r\n JSON.stringify(this.state.openEndValue);\r\n\r\n if (isHighlightedWordsModified || isOpenEndValueModified) {\r\n // Only save result if categories or open-end vlaues are modified.\r\n this.onSaveHighlight();\r\n }\r\n }\r\n this.onCloseModal();\r\n };\r\n\r\n onDeleteHighlight = () => {\r\n // Create a copy of the historyOfHighlighted array\r\n let updatedHistory = [...this.state.historyOfHighlighted];\r\n const updatedHighlightedWordsByCategories = { ...this.state.highlightedWordsByCategories };\r\n const updatedOpenEndValue = { ...this.state.openEndValue };\r\n\r\n this.state.selectedChoiceModels.forEach((selectedChoiceModel) => {\r\n // Modify the copy, not the state directly\r\n updatedHistory = updatedHistory\r\n .map((highlightedCollection) => {\r\n const modifiedCollection = {\r\n selectedButtons: highlightedCollection.selectedButtons,\r\n selectedChoiceModels: highlightedCollection.selectedChoiceModels.filter(\r\n (choiceModel) => choiceModel.value !== selectedChoiceModel.value,\r\n ),\r\n openEndValue: Object.keys(highlightedCollection.openEndValue).reduce(\r\n (acc, key) => {\r\n if (key !== selectedChoiceModel.value) {\r\n acc[key] = highlightedCollection.openEndValue[key];\r\n }\r\n return acc;\r\n },\r\n {},\r\n ),\r\n };\r\n return modifiedCollection;\r\n })\r\n .filter(\r\n (highlightedCollection) =>\r\n highlightedCollection.selectedChoiceModels.length !== 0,\r\n );\r\n\r\n // Modify highlightedWordsByCategories\r\n Object.entries(updatedHighlightedWordsByCategories).forEach(([key, value]) => {\r\n const choiceIndex = value.findIndex(\r\n (item) => selectedChoiceModel === item.choiceModel,\r\n );\r\n if (this.props.mentions[key]) {\r\n const mentionIndex = this.props.mentions[key].findIndex(\r\n (item) => selectedChoiceModel.value === item.value,\r\n );\r\n if (mentionIndex > -1) {\r\n this.props.mentions[key].splice(mentionIndex, 1);\r\n }\r\n }\r\n if (choiceIndex > -1) {\r\n updatedHighlightedWordsByCategories[key].splice(choiceIndex, 1);\r\n }\r\n });\r\n\r\n // Modify openEndValue\r\n delete updatedOpenEndValue[selectedChoiceModel.value];\r\n });\r\n\r\n this.setState(\r\n {\r\n historyOfHighlighted: updatedHistory,\r\n highlightedWordsByCategories: updatedHighlightedWordsByCategories,\r\n openEndValue: updatedOpenEndValue,\r\n isDeleting: true,\r\n },\r\n () => {\r\n this.onSaveHighlight();\r\n this.setState({\r\n isDeleting: false,\r\n });\r\n },\r\n );\r\n };\r\n\r\n toggleIsCategorySelected = (isSelected: boolean, enable: boolean) => {\r\n this.setState({ isCategorySelected: isSelected });\r\n };\r\n\r\n renderQuestion() {\r\n return (\r\n \r\n );\r\n }\r\n\r\n getWordPosition = (button: HTMLSpanElement) => {\r\n const positionStr = button.getAttribute(\"data-position\");\r\n if (!positionStr) {\r\n return null;\r\n }\r\n const position = parseInt(positionStr, 10);\r\n // eslint-disable-next-line no-restricted-globals\r\n if (isNaN(position)) {\r\n return null;\r\n }\r\n return position;\r\n };\r\n\r\n handleTouchStart = (e: TouchEvent) => {\r\n e.preventDefault();\r\n const touch = e.touches[0];\r\n const initialButton = document.elementFromPoint(\r\n touch.clientX,\r\n touch.clientY,\r\n ) as HTMLElement;\r\n\r\n if (initialButton instanceof HTMLSpanElement) {\r\n initialButton.setAttribute(\r\n \"data-start-index\",\r\n String(this.getWordPosition(initialButton)),\r\n );\r\n initialButton.setAttribute(\"data-selected\", \"true\");\r\n initialButton.style.backgroundColor = \"lightgrey\";\r\n }\r\n };\r\n\r\n handleTouchMove = (e: TouchEvent) => {\r\n const touch = e.touches[0];\r\n const currentButton = document.elementFromPoint(\r\n touch.clientX,\r\n touch.clientY,\r\n ) as HTMLElement;\r\n\r\n if (currentButton instanceof HTMLSpanElement) {\r\n e.preventDefault();\r\n const currentButtonIndex = this.getWordPosition(currentButton);\r\n const buttons = Array.from(\r\n this.state.buttonsRef.current.querySelectorAll(\"[data-position]\"),\r\n ) as HTMLElement[];\r\n\r\n // Retrieve the start index from the attribute we set during touch start\r\n const startButton = this.state.buttonsRef.current.querySelector(\"[data-start-index]\");\r\n const startButtonIndex = startButton\r\n ? Number(startButton.getAttribute(\"data-start-index\"))\r\n : null;\r\n\r\n if (startButtonIndex !== null) {\r\n const startIndex = Math.min(currentButtonIndex, startButtonIndex);\r\n const endIndex = Math.max(currentButtonIndex, startButtonIndex);\r\n\r\n for (let i = 0; i < buttons.length; i++) {\r\n const buttonPosition = this.getWordPosition(buttons[i]);\r\n if (buttonPosition >= startIndex && buttonPosition <= endIndex) {\r\n buttons[i].setAttribute(\"data-selected\", \"true\");\r\n const selectedChoiceValue = buttons[i].id.split(\"-\")[3];\r\n const selectedChoice = this.choiceList.find(\r\n (choice) => choice.value === selectedChoiceValue,\r\n );\r\n if (getSettingBoolean(selectedChoice, \"Highlightable\")) {\r\n buttons[i].style.backgroundColor = \"lightgrey\";\r\n }\r\n } else {\r\n buttons[i].removeAttribute(\"data-selected\");\r\n buttons[i].style.backgroundColor = \"\";\r\n }\r\n }\r\n }\r\n }\r\n };\r\n\r\n handleTouchEnd = (e: TouchEvent) => {\r\n e.preventDefault();\r\n // Get the array of all buttons\r\n const buttons = Array.from(\r\n this.state.buttonsRef.current.querySelectorAll(\"[data-position]\"),\r\n ) as HTMLElement[];\r\n\r\n // Get the id of all buttons with 'lightgrey' background color\r\n const selectedButtons = buttons.filter((button) => button.hasAttribute(\"data-selected\"));\r\n // Map selected buttons to their respective position indices\r\n const selectedButtonIndices = selectedButtons.map((button) => this.getWordPosition(button));\r\n\r\n // Get the id of the final button\r\n const finalButtonIndex = Math.max(...selectedButtonIndices);\r\n\r\n this.setState(\r\n {\r\n isMouseDown: false,\r\n startButtonIndex: null,\r\n finalButtonIndex,\r\n selectedButtons: selectedButtons.map((button) => button.id),\r\n },\r\n () => {\r\n if (selectedButtons.length > 0) {\r\n // Delay showing the modal to allow rendering to continue\r\n setTimeout(() => {\r\n this.onHighlight();\r\n }, 100);\r\n }\r\n },\r\n );\r\n\r\n // Reset color of all buttons\r\n // eslint-disable-next-line no-return-assign, no-param-reassign\r\n buttons.forEach((button) => (button.style.backgroundColor = \"\"));\r\n buttons.forEach((button) => button.removeAttribute(\"data-selected\"));\r\n\r\n // At the end of the touch event, remove the 'data-start-index' attribute from the initial button\r\n const startButton = this.state.buttonsRef.current.querySelector(\"[data-start-index]\");\r\n if (startButton) {\r\n startButton.removeAttribute(\"data-start-index\");\r\n }\r\n };\r\n\r\n handleMouseDown = (e: MouseEvent) => {\r\n const initialButton = e.target as HTMLSpanElement;\r\n this.setState({\r\n isMouseDown: true,\r\n startButtonIndex: this.getWordPosition(initialButton),\r\n finalButtonIndex: this.getWordPosition(initialButton),\r\n selectedButtons: [initialButton.id],\r\n });\r\n };\r\n\r\n handleMouseMove = (e: MouseEvent) => {\r\n if (!this.state.isMouseDown) {\r\n return;\r\n }\r\n\r\n const currentButton = e.target as HTMLSpanElement;\r\n const currentButtonIndex = this.getWordPosition(currentButton);\r\n const range = {\r\n start: Math.min(this.state.startButtonIndex, currentButtonIndex),\r\n end: Math.max(this.state.startButtonIndex, currentButtonIndex),\r\n };\r\n const selectedButtons = this.getButtonsInRange(range.start, range.end);\r\n this.setState({ selectedButtons, finalButtonIndex: currentButtonIndex });\r\n };\r\n\r\n handleMouseUp = () => {\r\n this.setState({ isMouseDown: false });\r\n this.setState({ startButtonIndex: null });\r\n if (this.state.selectedButtons.length > 0) {\r\n this.onHighlight();\r\n }\r\n };\r\n\r\n getButtonsInRange = (startIndex: number, endIndex: number): string[] => {\r\n const selectedButtons = [];\r\n const buttons = this.state.buttonsRef.current.querySelectorAll(\"[data-position]\");\r\n\r\n for (let i = 0; i < buttons.length; i++) {\r\n const button = buttons[i];\r\n // eslint-disable-next-line radix\r\n const position = parseInt(button.getAttribute(\"data-position\") || \"\");\r\n // eslint-disable-next-line no-restricted-globals\r\n if (!isNaN(position) && position >= startIndex && position <= endIndex) {\r\n selectedButtons.push(buttons[i].id);\r\n }\r\n }\r\n return selectedButtons;\r\n };\r\n\r\n handleOutsideButtonsClick = (e: MouseEvent) => {\r\n const targetElement = e.target as HTMLElement;\r\n if (targetElement) {\r\n if (!targetElement.id.startsWith(\"text-highlight-choice-\")) {\r\n this.setState({ selectedButtons: [] });\r\n }\r\n }\r\n };\r\n\r\n checkIfSubSelectionByMentions = () => {\r\n // this is used when user come back to text highlighter to modify their answer, but the status of history is not here.\r\n // need to investigate how to keep it in future\r\n const values = this.state.selectedChoiceModels.map((choice) => choice.value);\r\n return Object.values(this.props.mentions).some((mentionList) =>\r\n values.every((value) => mentionList.some((mention) => mention.value === value)),\r\n );\r\n };\r\n\r\n onHighlight = () => {\r\n if (this.state.showModal) {\r\n return;\r\n }\r\n\r\n const isChoiceAlreadyHighlightedArray = [];\r\n const modalPositionId = this.state.selectedButtons.find(\r\n (element) =>\r\n document.getElementById(element).getAttribute(\"data-position\") ===\r\n this.state.finalButtonIndex.toString(),\r\n );\r\n\r\n // if there still someting get selected\r\n if (this.state.selectedChoiceModels !== undefined) {\r\n this.setState({ selectedChoiceModels: [] });\r\n }\r\n\r\n Object.entries(this.state.selectedButtons).forEach(([index, buttonId]) => {\r\n const selectedChoiceValue = buttonId.split(\"-\")[3];\r\n this.state.highlightedWords[selectedChoiceValue].splice(0);\r\n const selectedChoice = this.choiceList.find(\r\n (choice) => choice.value === selectedChoiceValue,\r\n );\r\n\r\n // make selected choice model here\r\n if (getSettingBoolean(selectedChoice, \"Highlightable\")) {\r\n this.state.selectedChoiceModels.push(selectedChoice);\r\n const freeSelectionEnabled = this.choiceList.every(\r\n (choice) =>\r\n !getSettingBoolean(choice, \"Highlightable\") &&\r\n !getSettingBoolean(choice, \"IsGroup\"),\r\n );\r\n\r\n const choiceText = translate(selectedChoice, \"TEXT\", this.props.language);\r\n const isChoiceHighlighted = this.isChoiceAlreadyHighlighted(\r\n selectedChoice,\r\n undefined,\r\n );\r\n isChoiceAlreadyHighlightedArray.push(isChoiceHighlighted);\r\n\r\n if (\r\n !isChoiceHighlighted &&\r\n (getSettingBoolean(selectedChoice, \"Highlightable\") || freeSelectionEnabled)\r\n ) {\r\n this.state.highlightedWords[selectedChoice.value].push(choiceText);\r\n }\r\n }\r\n });\r\n const subsetSelection = this.state.historyOfHighlighted.some((highlightedSelection) => {\r\n const previousButtons = highlightedSelection.selectedChoiceModels;\r\n return (\r\n this.state.selectedChoiceModels.length <= previousButtons.length &&\r\n this.state.selectedChoiceModels.every((item) => previousButtons.includes(item))\r\n );\r\n });\r\n\r\n this.setState({\r\n showDeleteButton: isChoiceAlreadyHighlightedArray.includes(true),\r\n showModal: true,\r\n modalPositions: this.state.buttonsRef.current\r\n .querySelector(`#${modalPositionId}`)\r\n .getBoundingClientRect(),\r\n isCategorySelected: subsetSelection || this.checkIfSubSelectionByMentions(),\r\n });\r\n };\r\n\r\n /*\r\n Each Selection of Highlight (a sentence, a word) are will be at same group (rpsMatrix)\r\n */\r\n getMatrixIdByChoiceValue = (currentChoiceValue) => {\r\n const choiceGroupIndex = this.state.historyOfHighlighted.findIndex((highlightedGroup) =>\r\n highlightedGroup.selectedChoiceModels.some(\r\n (choice) => choice.value === currentChoiceValue,\r\n ),\r\n );\r\n let choiceOpenEndValue =\r\n this.state.historyOfHighlighted[choiceGroupIndex].openEndValue[currentChoiceValue];\r\n\r\n if (typeof choiceOpenEndValue === \"undefined\") {\r\n choiceOpenEndValue = null;\r\n }\r\n\r\n return [choiceGroupIndex + 1, choiceOpenEndValue];\r\n };\r\n\r\n removeMentionAcrossMatrices = (variableName, valueToRemove, newMatrixId) => {\r\n // Iterate over all matrices from 1 to newMatrixId and remove mentions with the provided value\r\n for (let matrixId = 1; matrixId < newMatrixId; matrixId++) {\r\n this.setMentions(\r\n this.props,\r\n variableName,\r\n (mentions) => mentions.pull(valueToRemove),\r\n matrixId, // Use the current matrixId in the loop\r\n true,\r\n );\r\n }\r\n };\r\n\r\n setChoicesAsMentions = (element: ElementWithSettings, choices: ChoiceModel[]) => {\r\n const values = choices.map((choice) => choice.value);\r\n if (values.length) {\r\n values.forEach((value) => {\r\n // For future\r\n // const [currentMatrixId, currentOpenEndValue] = this.getMatrixIdByChoiceValue(value);\r\n // this.removeMentionAcrossMatrices(element.name, value, currentMatrixId);\r\n const currentOpenEndValue = this.state.openEndValue[value];\r\n this.setMentions(\r\n this.props,\r\n element.name,\r\n (mentions) => mentions.pull(value).add(value, currentOpenEndValue),\r\n undefined,\r\n true,\r\n );\r\n });\r\n }\r\n };\r\n\r\n saveCurrentHighlight = () => {\r\n Object.entries(this.state.highlightedWordsByCategories).forEach(\r\n ([key, highlightedWords]) => {\r\n const variable = this.props.question.variables.find((x) => x.name === key);\r\n if (highlightedWords.length) {\r\n const values = highlightedWords\r\n .filter((item) => item.choiceModel !== undefined)\r\n .flatMap((item) => item.choiceModel);\r\n if (values.length) {\r\n this.setChoicesAsMentions(variable, values);\r\n } else {\r\n this.setMentions(this.props, variable.name, (m) => m.clear());\r\n }\r\n }\r\n },\r\n );\r\n };\r\n\r\n onSaveHighlight = () => {\r\n this.onCloseModal();\r\n Object.entries(this.state.highlightedWords).forEach(([key, value]) => {\r\n value.splice(0);\r\n });\r\n const previousHighlightedWordsByCategories = JSON.parse(\r\n JSON.stringify(this.state.highlightedWordsByCategories),\r\n );\r\n const previousOpenEndValue = JSON.parse(JSON.stringify(this.state.openEndValue));\r\n if (!this.state.isDeleting) {\r\n // Need to delete first to have new matrix Id\r\n let updatedHistory = [...this.state.historyOfHighlighted];\r\n this.state.selectedChoiceModels.forEach((selectedChoiceModel) => {\r\n // Modify the copy, not the state directly\r\n updatedHistory = updatedHistory\r\n .map((highlightedCollection) => {\r\n const modifiedCollection = {\r\n selectedButtons: highlightedCollection.selectedButtons,\r\n selectedChoiceModels: highlightedCollection.selectedChoiceModels.filter(\r\n (choiceModel) => choiceModel.value !== selectedChoiceModel.value,\r\n ),\r\n openEndValue: Object.keys(highlightedCollection.openEndValue).reduce(\r\n (acc, key) => {\r\n if (key !== selectedChoiceModel.value) {\r\n acc[key] = highlightedCollection.openEndValue[key];\r\n }\r\n return acc;\r\n },\r\n {},\r\n ),\r\n };\r\n return modifiedCollection;\r\n })\r\n .filter(\r\n (highlightedCollection) =>\r\n highlightedCollection.selectedChoiceModels.length !== 0,\r\n );\r\n });\r\n\r\n const selectedChoiceOpenEndValues = {};\r\n this.state.selectedChoiceModels.forEach((selectedChoiceModel) => {\r\n const choiceValue = selectedChoiceModel.value;\r\n const openEndValue = this.state.openEndValue[choiceValue];\r\n if (openEndValue !== undefined) {\r\n selectedChoiceOpenEndValues[choiceValue] = openEndValue;\r\n }\r\n });\r\n\r\n const newHighlightedSelection = {\r\n selectedButtons: [...this.state.selectedButtons],\r\n selectedChoiceModels: [...this.state.selectedChoiceModels],\r\n openEndValue: { ...selectedChoiceOpenEndValues },\r\n };\r\n\r\n // Create deep copies of the state objects\r\n const copiedSelectedButtons = [...newHighlightedSelection.selectedButtons];\r\n const copiedSelectedChoiceModels = [...newHighlightedSelection.selectedChoiceModels];\r\n const copiedOpenEndValue = { ...newHighlightedSelection.openEndValue };\r\n this.setState(\r\n () => ({\r\n selectedChoiceModels: [],\r\n historyOfHighlighted: [\r\n ...updatedHistory,\r\n {\r\n selectedButtons: copiedSelectedButtons,\r\n selectedChoiceModels: copiedSelectedChoiceModels,\r\n openEndValue: copiedOpenEndValue,\r\n },\r\n ],\r\n previousHighlightedWordsByCategories,\r\n previousOpenEndValue,\r\n }),\r\n () => {\r\n this.saveCurrentHighlight();\r\n },\r\n );\r\n } else {\r\n this.saveCurrentHighlight();\r\n }\r\n };\r\n\r\n getNumberOfHighlightedChoices = () => {\r\n return Object.values(this.props.mentions).reduce((acc, arr) => acc + arr.length, 0);\r\n };\r\n\r\n validate(): ValidationResultModel {\r\n const { question, useClientValidation, questionnaire } = this.props;\r\n\r\n if (isQuestionValidatedServerSide(question.type, useClientValidation)) {\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n const [variable] = question.variables;\r\n const required = this.isAnswerRequired(questionnaire, question);\r\n const numberOfHighlightedChoices = this.getNumberOfHighlightedChoices();\r\n\r\n if (required && numberOfHighlightedChoices === 0) {\r\n return new ValidationBuilder().fail(variable.name, \"IncompleteAnswer\").build();\r\n }\r\n\r\n if (numberOfHighlightedChoices > 0) {\r\n const min = this.minValue();\r\n const max = this.maxValue();\r\n\r\n // Test for minimum and maximum values.\r\n if (min !== null && min > 0 && numberOfHighlightedChoices < min) {\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"InvalidChoicesMin\", { min: String(min) })\r\n .build();\r\n }\r\n if (max !== null && max > 0 && numberOfHighlightedChoices > max) {\r\n return new ValidationBuilder()\r\n .fail(variable.name, \"InvalidChoicesMax\", { max: String(max) })\r\n .build();\r\n }\r\n }\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n onOpenEndChange = (answer: any, event: any) => {\r\n const { value } = event.target;\r\n if (this.state.isCategorySelected) {\r\n // Allow changing the open end value only if isCategorySelected is true\r\n Object.entries(this.state.selectedChoiceModels).forEach(([id, selectedChoiceModel]) => {\r\n this.setState((prevState) => {\r\n const newState = {\r\n ...prevState,\r\n openEndValue: {\r\n ...prevState.openEndValue,\r\n [selectedChoiceModel.value]: this.truncateOpenEnd(answer, value),\r\n },\r\n };\r\n return newState;\r\n });\r\n });\r\n }\r\n // is modal modifed true\r\n };\r\n\r\n onOpenEndBlur = (answer: any) => {\r\n return null;\r\n };\r\n\r\n generateHighlightedWordsByCategories(): Dictionary {\r\n const highlightedWordsModelList: Dictionary = {};\r\n this.variables.forEach((variable) => {\r\n highlightedWordsModelList[variable.name] = [\r\n { highlightedWord: new RegExp(\"^$\"), choiceModel: undefined },\r\n ];\r\n });\r\n return highlightedWordsModelList;\r\n }\r\n\r\n generateHighlightedWords(): Dictionary {\r\n const highlightedWordsModelList: Dictionary = {};\r\n if (this.choiceList) {\r\n this.choiceList.forEach((choice) => {\r\n highlightedWordsModelList[choice.value] = [new RegExp(\"^$\")];\r\n });\r\n }\r\n return highlightedWordsModelList;\r\n }\r\n\r\n isChoiceAlreadyHighlighted = (selectedChoice: ChoiceModel, variableName: string): boolean => {\r\n let result = false;\r\n if (variableName !== undefined) {\r\n result = this.state.highlightedWordsByCategories[variableName].some(\r\n (item) => item.choiceModel === selectedChoice,\r\n );\r\n } else {\r\n result = Object.entries(this.state.highlightedWordsByCategories).some(([key, value]) =>\r\n value.some((item) => item.choiceModel === selectedChoice),\r\n );\r\n }\r\n return result;\r\n };\r\n\r\n componentDidMount() {\r\n const { question } = this.props;\r\n if (question !== this.renderedQuestion) {\r\n this.questionFirstRender((this.renderedQuestion = question), this.props);\r\n }\r\n window.addEventListener(\"mouseup\", this.handleMouseUp);\r\n window.addEventListener(\"mousedown\", this.handleOutsideButtonsClick);\r\n window.addEventListener(\"touchmove\", this.handleTouchMove, { passive: false });\r\n }\r\n\r\n componentWillUnmount() {\r\n const { question } = this.props;\r\n this.finalizeQuestion(question, this.props);\r\n window.removeEventListener(\"mouseup\", this.handleMouseUp);\r\n window.removeEventListener(\"mousedown\", this.handleOutsideButtonsClick);\r\n window.removeEventListener(\"touchmove\", this.handleTouchMove);\r\n }\r\n}\r\n","export enum TimerLocation {\r\n Left,\r\n Center,\r\n Right,\r\n}\r\n","export enum TimerType {\r\n CountUp,\r\n CountDown,\r\n}\r\n","export enum TimerAction {\r\n None,\r\n EnableNavigation,\r\n AutoAdvance,\r\n DisplayMessage,\r\n TerminateSurvey,\r\n}\r\n","import React from \"react\";\r\nimport { DateTime } from \"luxon\";\r\nimport { DispatchProp, connect } from \"react-redux\";\r\nimport { isEmpty } from \"../../utils/lodash\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport {\r\n getSettingString,\r\n getSettingEnum,\r\n getSettingNumber,\r\n getSettingBoolean,\r\n hasSetting,\r\n} from \"../../models/utilities/settingUtilities\";\r\nimport { TimerLocation } from \"../../models/enums/TimerLocation\";\r\nimport { TimerType } from \"../../models/enums/TimerType\";\r\nimport { TimerAction } from \"../../models/enums/TimerAction\";\r\nimport { DispositionCode } from \"../../models/enums/DispositionCode\";\r\nimport { RecalledText } from \"../../containers/shared/RecalledText\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { NavigationType } from \"../../models/enums/NavigationType\";\r\nimport { translate } from \"../../models/utilities/translationUtilities\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\nimport { setNavigationEnabled, navigationQuit } from \"../../redux/actions\";\r\nimport { __getStore__ } from \"../../redux/store\";\r\nimport { Piping } from \"../../piping\";\r\nimport { StoreState } from \"../../models/states/StoreState\";\r\n\r\ninterface StateProps {\r\n navigationEnabled: boolean;\r\n}\r\n\r\ninterface Props extends ControlProps, StateProps, DispatchProp {}\r\n\r\ninterface State {\r\n displayText: string;\r\n displayMessage?: string | JSX.Element;\r\n totalTime: string;\r\n clickCount: string;\r\n firstClick: string;\r\n lastClick: string;\r\n navigationEnabled: boolean;\r\n}\r\n\r\nconst mapStateToProps = (state: StoreState): StateProps => ({\r\n navigationEnabled: !state.interview.navigation.disabled,\r\n});\r\n\r\nclass TimerControlImpl extends BaseControl {\r\n secondTimerId: number;\r\n actionTimerId: number;\r\n startTime: Date;\r\n firstClickTime: Date;\r\n lastClickTime: Date;\r\n clickCount = 0;\r\n moved = false;\r\n\r\n constructor(props: Props) {\r\n super(props);\r\n this.state = {\r\n displayText: \"\",\r\n totalTime: \"0\",\r\n clickCount: \"0\",\r\n firstClick: \"0\",\r\n lastClick: \"0\",\r\n navigationEnabled: true,\r\n };\r\n }\r\n\r\n totalTimeVar = (props: Props) => getSettingString(props.question, \"TotalTimeVariableName\");\r\n firstClickVar = (props: Props) => getSettingString(props.question, \"FirstClickVariableName\");\r\n lastClickVar = (props: Props) => getSettingString(props.question, \"LastClickVariableName\");\r\n clickCountVar = (props: Props) => getSettingString(props.question, \"ClickCountVariableName\");\r\n dateFormat = (props: Props) => getSettingString(props.question, \"TimeFormat\", \"hh:mm:ss\");\r\n secondToAction = (props: Props) => getSettingNumber(props.question, \"SecondToAction\", 0);\r\n timerType = (props: Props) => getSettingNumber(props.question, \"Type\");\r\n timerAction = (props: Props) => getSettingNumber(props.question, \"Action\");\r\n actionMessage = (props: Props) => translate(props.question, \"ActionMessage\", props.language);\r\n terminateSurveyActionUrl = (props: Props) =>\r\n translate(props.question, \"TerminateSurveyActionURL\", props.language);\r\n\r\n terminateSurveyActionDisposition = (props: Props) => {\r\n return getSettingEnum(props.question, DispositionCode, \"TerminateSurveyActionDisposition\");\r\n };\r\n\r\n terminateSurveyActionMessage = (props: Props) => {\r\n const message = translate(props.question, \"TerminateSurveyActionMessage\", props.language);\r\n if (!isEmpty(message)) {\r\n const { interview } = __getStore__().getState();\r\n return Piping.evaluateRecalls(interview, message);\r\n }\r\n return null;\r\n };\r\n\r\n initializeQuestion(question: QuestionModel, props: Props) {\r\n super.initializeQuestion(question, props);\r\n window.addEventListener(\"click\", this.onWindowClick, true);\r\n this.moved = false;\r\n this.startTime = new Date();\r\n this.onSecondTimer();\r\n if (this.secondToAction(props) > 0)\r\n this.actionTimerId = window.setTimeout(\r\n this.onActionTimeout,\r\n this.secondToAction(props) * 1000,\r\n );\r\n this.secondTimerId = window.setInterval(this.onSecondTimer, 1000);\r\n if (this.timerAction(props) === TimerAction.EnableNavigation) {\r\n this.setState({ navigationEnabled: false });\r\n props.dispatch(setNavigationEnabled(false));\r\n } else {\r\n this.setState({ navigationEnabled: true });\r\n }\r\n }\r\n\r\n componentDidUpdate() {\r\n if (this.props.navigationEnabled && !this.state.navigationEnabled) {\r\n this.props.dispatch(setNavigationEnabled(false));\r\n }\r\n }\r\n\r\n finalizeQuestion(question: QuestionModel, props: Props) {\r\n super.finalizeQuestion(question, props);\r\n window.removeEventListener(\"click\", this.onWindowClick, true);\r\n window.clearTimeout(this.actionTimerId);\r\n window.clearInterval(this.secondTimerId);\r\n if (this.timerAction(props) === TimerAction.EnableNavigation)\r\n props.dispatch(setNavigationEnabled(true));\r\n }\r\n\r\n setTimerVariables = (props: Props) => {\r\n this.setMentions(this.props, this.totalTimeVar(this.props), (mentions) =>\r\n mentions.set(this.state.totalTime),\r\n );\r\n this.setMentions(this.props, this.clickCountVar(this.props), (mentions) =>\r\n mentions.set(this.state.clickCount),\r\n );\r\n this.setMentions(this.props, this.firstClickVar(this.props), (mentions) =>\r\n mentions.set(this.state.firstClick),\r\n );\r\n this.setMentions(this.props, this.lastClickVar(this.props), (mentions) =>\r\n mentions.set(this.state.lastClick),\r\n );\r\n };\r\n\r\n onWindowClick = (event: any) => {\r\n const navBar = document.getElementsByClassName(\"navigationBar\")[0];\r\n if (navBar != null && navBar.contains(event.target)) return; // Prevent clicks on navigation bar buttons from registering as a page click.\r\n if (this.firstClickTime === undefined) this.firstClickTime = new Date();\r\n this.lastClickTime = new Date();\r\n this.clickCount++;\r\n this.setState((s, p) => {\r\n const newState = { ...s };\r\n newState.clickCount = this.clicks();\r\n newState.firstClick = this.firstClick();\r\n newState.lastClick = this.lastClick();\r\n return newState;\r\n });\r\n };\r\n\r\n onSecondTimer = () => {\r\n this.setState((s, p) => {\r\n const newState = { ...s };\r\n newState.totalTime = this.totalTime();\r\n newState.firstClick = this.firstClick();\r\n newState.lastClick = this.lastClick();\r\n return newState;\r\n });\r\n this.updateDisplay();\r\n };\r\n\r\n onActionTimeout = () => {\r\n switch (this.timerAction(this.props)) {\r\n case TimerAction.AutoAdvance: {\r\n if (this.props.onNavigation) this.props.onNavigation(NavigationType.Next);\r\n window.setTimeout(window.clearInterval, 200, this.secondTimerId);\r\n break;\r\n }\r\n case TimerAction.DisplayMessage: {\r\n this.setState({\r\n displayMessage: ,\r\n });\r\n break;\r\n }\r\n case TimerAction.EnableNavigation: {\r\n this.setState({ navigationEnabled: true }, () =>\r\n this.props.dispatch(setNavigationEnabled(true)),\r\n );\r\n break;\r\n }\r\n case TimerAction.TerminateSurvey: {\r\n const { id, settings } = this.props.question;\r\n const disposition = this.terminateSurveyActionDisposition(this.props);\r\n const redirectUrl = this.terminateSurveyActionUrl(this.props);\r\n const message = this.terminateSurveyActionMessage(this.props);\r\n const terminationSurveyAction = Number(settings.TerminateSurveyAction);\r\n\r\n this.props.dispatch(\r\n navigationQuit(disposition, {\r\n forcedQuit: true,\r\n questionId: id,\r\n redirectUrl,\r\n message,\r\n terminationSurveyAction,\r\n }),\r\n );\r\n break;\r\n }\r\n default:\r\n break;\r\n }\r\n };\r\n\r\n totalTime = () => this.dateDiffInSeconds([new Date(), this.startTime]);\r\n\r\n firstClick = () => this.dateDiffInSeconds([this.firstClickTime, this.startTime]);\r\n\r\n lastClick = () => this.dateDiffInSeconds([this.lastClickTime, this.startTime]);\r\n\r\n dateDiffInSeconds = (dates: Date[]) => {\r\n const [a, b] = dates.map((date) => DateTime.fromJSDate(date));\r\n return String(Math.trunc(a.diff(b, \"seconds\").seconds));\r\n };\r\n\r\n clicks = () => String(this.clickCount || \"\");\r\n\r\n updateDisplay() {\r\n const start = DateTime.fromJSDate(this.startTime);\r\n const now = DateTime.fromJSDate(new Date());\r\n const diff = now.diff(start);\r\n const dateFormat = this.dateFormat(this.props).replace(\"hh\", \"HH\");\r\n this.setState((s, p) => {\r\n const newState = { ...s };\r\n if (this.timerType(this.props) === TimerType.CountDown) {\r\n const timeToAction = Math.max(\r\n this.secondToAction(this.props) * 1000 - diff.milliseconds,\r\n 0,\r\n );\r\n newState.displayText = DateTime.fromMillis(timeToAction)\r\n .toUTC()\r\n .toFormat(dateFormat);\r\n } else {\r\n newState.displayText = DateTime.fromMillis(diff.milliseconds)\r\n .toUTC()\r\n .toFormat(dateFormat);\r\n }\r\n return newState;\r\n });\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n this.setTimerVariables(this.props);\r\n return new ValidationBuilder().build();\r\n }\r\n\r\n renderText(question: QuestionModel) {\r\n if (!hasSetting(question, \"Show\") || !getSettingBoolean(question, \"Show\")) return null;\r\n return (\r\n <>\r\n
    \r\n \r\n
    \r\n
    {this.state.displayText}
    \r\n \r\n );\r\n }\r\n\r\n renderQuestion(question: QuestionModel): JSX.Element | null {\r\n const align = getSettingNumber(question, \"Location\", TimerLocation.Left);\r\n let textAlign: \"center\" | \"left\" | \"right\" = \"center\";\r\n if (align === TimerLocation.Left) textAlign = \"left\";\r\n if (align === TimerLocation.Right) textAlign = \"right\";\r\n return (\r\n
    \r\n {this.renderText(question)}\r\n
    {this.state.displayMessage}
    \r\n
    \r\n );\r\n }\r\n}\r\n\r\nexport const TimerControl = connect(mapStateToProps)(TimerControlImpl);\r\n","import React from \"react\";\r\nimport { BaseControl, ControlProps } from \"./BaseControl\";\r\nimport { QuestionModel } from \"../../models/QuestionModel\";\r\nimport ErrorRenderer from \"../shared/ErrorRenderer\";\r\nimport { QuestionType } from \"../../models/enums/QuestionType\";\r\nimport { ValidationResultModel } from \"../../models/ValidationResultModel\";\r\nimport { ValidationBuilder } from \"../../models/builders/ValidationBuilder\";\r\nimport { ValidationOptionsModel } from \"../../models/ValidationOptionsModel\";\r\n\r\nexport class UndefinedControl extends BaseControl {\r\n initializeQuestion(question: QuestionModel, props: ControlProps): void {}\r\n\r\n renderQuestion(question: QuestionModel) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n validate(options?: ValidationOptionsModel): ValidationResultModel {\r\n return new ValidationBuilder().build();\r\n }\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n loading: {\r\n color: \"#919191\",\r\n textAlign: \"center\",\r\n padding: [[12, 0]],\r\n lineHeight: \"20px\",\r\n fontSize: \"11px\",\r\n fontWeight: 700,\r\n },\r\n});\r\n","import * as React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport useStyles from \"./LoadingEllipsis.styles\";\r\n\r\ninterface LoadingEllipsisProps {\r\n duration?: number;\r\n text?: string;\r\n}\r\n\r\nexport default function LoadingEllipsis({ duration = 1000, text }: LoadingEllipsisProps) {\r\n const classes = useStyles({});\r\n const [count, setCount] = React.useState(0);\r\n const { t } = useTranslation();\r\n\r\n React.useEffect(() => {\r\n const onTick = () => setCount((e) => (e + 1) % 3);\r\n const interval = window.setInterval(onTick, duration / 3);\r\n return () => window.clearInterval(interval);\r\n }, [duration]);\r\n\r\n return (\r\n
    \r\n {text || t(\"common.loading\")}\r\n \r\n {\".\".repeat(count + 1)}\r\n \r\n
    \r\n );\r\n}\r\n","import thunkMiddleware from \"redux-thunk\";\r\nimport { createStore, applyMiddleware, Store } from \"redux\";\r\nimport { flowController } from \"../redux/middleware/flowController\";\r\nimport { navigationNextPage } from \"../redux/actions\";\r\nimport { rootReducer } from \"../redux/reducers\";\r\nimport { PageModel } from \"../models/PageModel\";\r\nimport { StoreState } from \"../models/states/StoreState\";\r\n\r\nconst MAX_PAGES = 20; // This is the maximum number of pages we should simulate.\r\n\r\nconst pageSelector = (state: StoreState) => state.interview.navigation.currentPage;\r\n\r\nfunction createSimulatedStore(initialState: StoreState) {\r\n return createStore(rootReducer, initialState, applyMiddleware(thunkMiddleware, flowController));\r\n}\r\n\r\nfunction simulatePages(store: Store) {\r\n // Iterate until we get the same page twice.\r\n const pages = [];\r\n let lastPage: PageModel;\r\n let currentPage: PageModel;\r\n do {\r\n const previousPage = pageSelector(store.getState());\r\n store.dispatch(navigationNextPage());\r\n if (currentPage) pages.push(currentPage);\r\n lastPage = currentPage;\r\n currentPage = pageSelector(store.getState());\r\n if (currentPage === previousPage) break;\r\n if (pages.length >= MAX_PAGES) return pages;\r\n } while (lastPage !== currentPage);\r\n return pages;\r\n}\r\n\r\nexport async function startSimulationAsync(initialState: StoreState) {\r\n const store = createSimulatedStore(initialState);\r\n const pages = simulatePages(store);\r\n return pages;\r\n}\r\n","import * as React from \"react\";\r\nimport { AnyAction } from \"redux\";\r\nimport { useStore, useSelector } from \"react-redux\";\r\nimport { StoreState } from \"../models/states/StoreState\";\r\nimport { PageModel } from \"../models/PageModel\";\r\nimport { startSimulationAsync } from \"../simulator/simulatePages\";\r\n\r\nconst pageSelector = (state: StoreState) => state.interview.navigation.currentPage;\r\n\r\nexport default function useSimulatedPages() {\r\n const [simulating, setSimulating] = React.useState(true);\r\n const [simulatedPages, setSimulatedPages] = React.useState([]);\r\n const currentPage = useSelector(pageSelector);\r\n const store = useStore();\r\n\r\n React.useEffect(() => {\r\n setSimulatedPages([]);\r\n\r\n function onMessage({ data: { type, pages, error } }) {\r\n if (error) console.log(error);\r\n if (type === \"done\") setSimulatedPages(pages);\r\n setSimulating(false);\r\n }\r\n\r\n if (typeof Worker !== \"undefined\") {\r\n // If web workers are supported.\r\n setSimulating(true);\r\n\r\n const worker = new Worker(\"../simulator/worker.ts\");\r\n worker.addEventListener(\"message\", onMessage);\r\n worker.postMessage({ type: \"simulate\", initialState: store.getState() });\r\n\r\n return () => {\r\n worker.removeEventListener(\"message\", onMessage);\r\n };\r\n }\r\n\r\n // If web workers are not supported, use an async function instead.\r\n startSimulationAsync(store.getState())\r\n .catch((ex) => {\r\n if (ex) console.log(ex);\r\n })\r\n .then((pages: PageModel[]) => {\r\n setSimulatedPages(pages);\r\n setSimulating(false);\r\n });\r\n\r\n // If web workers are not supported, give up.\r\n setSimulating(false);\r\n return undefined;\r\n }, [store, currentPage]);\r\n\r\n return { simulatedPages, simulating };\r\n}\r\n","import React from \"react\";\r\n\r\ninterface Options {\r\n center?: boolean;\r\n}\r\n\r\nexport default function useScrollToActive(\r\n containerRef: React.MutableRefObject,\r\n options?: Options,\r\n) {\r\n const { center } = options || {};\r\n const activeElement = React.useRef();\r\n\r\n // On first render scroll to immediately.\r\n React.useEffect(() => {\r\n const el = containerRef.current?.querySelector(\"*[data-active=true]\");\r\n if (!el) return;\r\n if (typeof el.scrollIntoView === \"function\") {\r\n el.scrollIntoView({\r\n block: center ? \"center\" : undefined,\r\n });\r\n }\r\n activeElement.current = el;\r\n }, []);\r\n\r\n // On subsequent renders smoothly scroll.\r\n React.useEffect(() => {\r\n const el = containerRef.current?.querySelector(\"*[data-active=true]\");\r\n if (!el) return;\r\n if (el === activeElement.current) return;\r\n if (typeof el.scrollIntoView === \"function\") {\r\n el.scrollIntoView({\r\n behavior: activeElement.current ? \"smooth\" : \"auto\",\r\n block: center ? \"center\" : undefined,\r\n });\r\n }\r\n activeElement.current = el;\r\n });\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { darken, brighten } from \"../../../theme/Mixins\";\r\n\r\nconst questionColor = ({ selected, simulated, active }) => {\r\n let color = \"#117297\";\r\n if (simulated) color = \"#70bbd8\";\r\n if (active) color = \"#00A9E8\";\r\n if (selected) return darken(color, 0.7);\r\n return color;\r\n};\r\n\r\nexport default createUseStyles({\r\n blockStart: {\r\n margin: [[12, 0]],\r\n backgroundImage:\r\n \"url(data:image/gif;base64,R0lGODlhAQABAJEAAAAAAP///9/f3////yH/C05FVFNDQVBFMi4wAwEAAAAh+QQFAAADACwAAAAAAQABAAACAlQBADs=);\",\r\n backgroundPosition: \"center center\",\r\n backgroundRepeat: \"repeat-x\",\r\n textAlign: \"center\",\r\n\r\n \"& span\": {\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n padding: [[0, 15]],\r\n top: -1,\r\n lineHeight: \"20px\",\r\n fontSize: \"13px\",\r\n fontWeight: 900,\r\n maxWidth: \"60%\",\r\n background: \"white\",\r\n },\r\n },\r\n pageBreak: {\r\n margin: [[12, 0]],\r\n backgroundImage:\r\n \"url(data:image/gif;base64,R0lGODlhBQABAJEAAAAAAP///9/f3////yH/C05FVFNDQVBFMi4wAwEAAAAh+QQFAAADACwAAAAABQABAAACA5Q3BQA7)\",\r\n backgroundPosition: \"center center\",\r\n backgroundRepeat: \"repeat-x\",\r\n textAlign: \"center\",\r\n\r\n \"& span\": {\r\n color: \"#919191\",\r\n display: \"inline-block\",\r\n position: \"relative\",\r\n padding: [[0, 15]],\r\n top: -1,\r\n lineHeight: \"20px\",\r\n fontSize: \"11px\",\r\n fontWeight: 700,\r\n maxWidth: \"60%\",\r\n background: \"white\",\r\n },\r\n },\r\n flowQuestionContainer: {\r\n position: \"relative\",\r\n margin: [[6, 0]],\r\n paddingRight: 35,\r\n },\r\n flowQuestion: {\r\n composes: \"flow-question\",\r\n display: \"inline-block\",\r\n background: questionColor,\r\n color: \"white\",\r\n fontSize: \"13px\",\r\n padding: [[4, 12]],\r\n borderRadius: 5,\r\n wordBreak: \"break-word\",\r\n transition: \"background 200ms, color 200ms\",\r\n\r\n \"& .bg-color\": {\r\n questionColor,\r\n transition: \"color 200ms\",\r\n },\r\n },\r\n flowQuestionIcon: {\r\n marginRight: 12,\r\n fontSize: \"14px\",\r\n },\r\n flowQuestionActions: {\r\n position: \"absolute\",\r\n top: 0,\r\n right: -4,\r\n },\r\n flowQuestionAction: {\r\n padding: 4,\r\n paddingLeft: 2,\r\n fontSize: \"14px\",\r\n userSelect: \"none\",\r\n },\r\n flowQuestionActionButton: {\r\n cursor: \"pointer\",\r\n },\r\n flowQuestionActionActive: {\r\n color: \"#00A9E8\",\r\n },\r\n flowQuestionLogic: {\r\n borderRadius: 5,\r\n background: (props) => darken(questionColor(props), 0.5),\r\n transition: \"background 200ms, color 200ms\",\r\n padding: [[4, 8]],\r\n margin: [[4, 0]],\r\n fontSize: \"10px\",\r\n color: (props) => brighten(questionColor(props), 3),\r\n },\r\n flowQuestionLogicIcon: {\r\n marginRight: 6,\r\n },\r\n flowPage: {\r\n position: \"relative\",\r\n },\r\n flowPageSelectArea: {\r\n position: \"absolute\",\r\n top: 0,\r\n left: 0,\r\n right: 40,\r\n bottom: 0,\r\n cursor: \"pointer\",\r\n userSelect: \"none\",\r\n },\r\n questionConnector: {\r\n position: \"absolute\",\r\n bottom: \"100%\",\r\n left: 18,\r\n width: 4,\r\n height: 6,\r\n background: questionColor,\r\n transition: \"background 200ms\",\r\n },\r\n});\r\n","import * as React from \"react\";\r\nimport { FontAwesomeIcon } from \"../../shared/FontAwesome\";\r\nimport { QuestionType } from \"../../../models/enums/QuestionType\";\r\n\r\nexport default function QuestionTypeIcon({ type }) {\r\n switch (type) {\r\n case QuestionType.Description:\r\n return ;\r\n case QuestionType.RadioButton:\r\n return ;\r\n case QuestionType.CheckBox:\r\n return ;\r\n case QuestionType.OpenEndAnswer:\r\n return ;\r\n case QuestionType.TextAnswer:\r\n case QuestionType.AutoComplete:\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n case QuestionType.NumericAnswer:\r\n return (\r\n \r\n \r\n 0\r\n \r\n \r\n \r\n \r\n );\r\n case QuestionType.NumericRanking:\r\n return ;\r\n case QuestionType.DateTimeAnswer:\r\n return ;\r\n case QuestionType.DragDropRanking:\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n case QuestionType.CardSort:\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n case QuestionType.DropDownList:\r\n case QuestionType.DrillDown:\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n case QuestionType.EmailAddressAnswer:\r\n case QuestionType.RespondentEmail:\r\n return ;\r\n case QuestionType.HybridGrid:\r\n case QuestionType.ChoiceGrid:\r\n case QuestionType.RunningTotal:\r\n case QuestionType.LookupTable:\r\n return ;\r\n case QuestionType.ImageSelector:\r\n case QuestionType.ImageChoiceGrid:\r\n return ;\r\n case QuestionType.ImageAreaSelector:\r\n case QuestionType.ImageAreaEvaluator:\r\n return ;\r\n case QuestionType.RespondentPhone:\r\n return ;\r\n case QuestionType.RespondentLanguage:\r\n return ;\r\n case QuestionType.RespondentTimeZone:\r\n return ;\r\n case QuestionType.RespondentMetaData:\r\n return ;\r\n case QuestionType.Slider:\r\n return ;\r\n case QuestionType.StarRatingGrid:\r\n case QuestionType.NetPromoter:\r\n return ;\r\n case QuestionType.FileUpload:\r\n return ;\r\n case QuestionType.Timer:\r\n return ;\r\n case QuestionType.CustomQuestion:\r\n return ;\r\n default:\r\n return ;\r\n }\r\n}\r\n","import * as React from \"react\";\r\nimport { QuestionActionType } from \"../../../models/enums/QuestionActionType\";\r\nimport { FontAwesomeIcon } from \"../../shared/FontAwesome\";\r\n\r\nexport default function ActionTypeIcon({ type }) {\r\n switch (type) {\r\n case QuestionActionType.BranchTo:\r\n return ;\r\n case QuestionActionType.ComputeVariable:\r\n case QuestionActionType.SetVariableValue:\r\n return ;\r\n case QuestionActionType.ExitSurvey:\r\n return ;\r\n case QuestionActionType.MobileAudioRecording:\r\n return ;\r\n case QuestionActionType.Selection:\r\n return ;\r\n case QuestionActionType.SendEmail:\r\n return ;\r\n case QuestionActionType.SetLoopRow:\r\n return ;\r\n case QuestionActionType.SetPanelistData:\r\n return ;\r\n default:\r\n return null;\r\n }\r\n}\r\n","import * as React from \"react\";\r\nimport classNames from \"classnames\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { QuestionModel } from \"../../../models/QuestionModel\";\r\nimport useStyles from \"./FlowPanel.styles\";\r\nimport QuestionTypeIcon from \"../shared/QuestionTypeIcon\";\r\nimport { FontAwesomeIcon } from \"../../shared/FontAwesome\";\r\nimport { QuestionActionType } from \"../../../models/enums/QuestionActionType\";\r\nimport {\r\n getPropertyEnum,\r\n getPropertyString,\r\n getPropertyBoolean,\r\n} from \"../../../models/utilities/propertyUtilities\";\r\nimport { PropertyType } from \"../../../models/enums/PropertyType\";\r\nimport { DispositionCode } from \"../../../models/enums/DispositionCode\";\r\nimport { useThunkDispatch } from \"../../../redux/thunks\";\r\nimport { ActionModel } from \"../../../models/ActionModel\";\r\nimport { getExitUrl } from \"../../../models/utilities/actionUtilities\";\r\nimport { isNullOrEmpty } from \"../../../utils\";\r\nimport ActionTypeIcon from \"../shared/ActionTypeAction\";\r\nimport { evaluate } from \"../../../redux/thunks/evaluator\";\r\n\r\ninterface FlowQuestionProps {\r\n question: QuestionModel;\r\n firstOfPage: boolean;\r\n active?: boolean;\r\n simulated?: boolean;\r\n completed?: boolean;\r\n selected?: boolean;\r\n}\r\n\r\nexport default function FlowQuestion({\r\n question,\r\n firstOfPage,\r\n active,\r\n simulated,\r\n selected,\r\n completed,\r\n}: FlowQuestionProps) {\r\n const { t } = useTranslation();\r\n const { name, type, preLoadActions, postAnswerActions } = question;\r\n const [showLogic, setShowLogic] = React.useState(false);\r\n const ref = React.useRef();\r\n const dispatch = useThunkDispatch();\r\n const actions = [...preLoadActions, ...postAnswerActions];\r\n const classes = useStyles({ active, simulated, selected, completed });\r\n\r\n function getActionTitle(action: ActionModel) {\r\n switch (action.type) {\r\n case QuestionActionType.ExitSurvey: {\r\n const disposition = getPropertyEnum(action, DispositionCode, PropertyType.Status);\r\n return t(\"debug.panels.flow.exit\", { code: DispositionCode[disposition] });\r\n }\r\n case QuestionActionType.BranchTo: {\r\n const destination = getPropertyString(action, PropertyType.Question);\r\n const autoClean = getPropertyBoolean(action, PropertyType.AutoClean);\r\n const status = getPropertyEnum(action, DispositionCode, PropertyType.Status);\r\n const exitUrl = dispatch((d, getState) => getExitUrl(action, getState().interview));\r\n if (status > 0 && !isNullOrEmpty(exitUrl))\r\n return t(\"debug.panels.flow.branchToExitUrl\", {\r\n url: exitUrl,\r\n code: DispositionCode[status],\r\n });\r\n return t(\"debug.panels.flow.branchTo\", {\r\n destination,\r\n context: autoClean && \"autoclean\",\r\n });\r\n }\r\n case QuestionActionType.ComputeVariable: {\r\n const variable = getPropertyString(action, PropertyType.CalculatedVariableName);\r\n const value = getPropertyString(action, PropertyType.Value);\r\n return t(\"debug.panels.flow.computeVariable\", { variable, value });\r\n }\r\n case QuestionActionType.SetVariableValue: {\r\n const variable = getPropertyString(action, PropertyType.Variable);\r\n const matrix = getPropertyString(action, PropertyType.MatrixIndex);\r\n const value = getPropertyString(action, PropertyType.Value);\r\n return t(\"debug.panels.flow.setVariable\", {\r\n variable,\r\n value,\r\n matrix,\r\n context: isNullOrEmpty(matrix) && \"row\",\r\n });\r\n }\r\n case QuestionActionType.Selection:\r\n return t(\"debug.panels.flow.selection\");\r\n case QuestionActionType.SetLoopRow: {\r\n const block = getPropertyString(action, PropertyType.Block);\r\n const value = getPropertyString(action, PropertyType.Value);\r\n return t(\"debug.panels.flow.setRow\", { block, value });\r\n }\r\n case QuestionActionType.MobileAudioRecording: {\r\n const start = getPropertyBoolean(action, PropertyType.Mode, \"Start\");\r\n return t(\"debug.panels.flow.audioRecording\", { context: start ? \"start\" : \"stop\" });\r\n }\r\n case QuestionActionType.SendEmail:\r\n return t(\"debug.panels.flow.sendEmail\");\r\n case QuestionActionType.SetPanelistData:\r\n return t(\"debug.panels.flow.setPanelistData\");\r\n default:\r\n return null;\r\n }\r\n }\r\n\r\n function getActionConditionText(action: ActionModel) {\r\n if (!action.condition) return \"\";\r\n const evaluated = dispatch(evaluate(action.condition)).asBoolean();\r\n return (\r\n <>\r\n {getActionTitle(action)}\r\n {` ${evaluated ? \"\" : t(\"debug.panels.flow.conditionNotMet\")}`}\r\n \r\n );\r\n }\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n \r\n \r\n {name}\r\n {showLogic &&\r\n actions.map((action) => (\r\n
    \r\n \r\n \r\n \r\n {getActionConditionText(action)}\r\n
    \r\n ))}\r\n
    \r\n
    \r\n setShowLogic((s) => !s)}\r\n >\r\n {actions.length > 0 && (\r\n \r\n \r\n \r\n {actions.length}\r\n \r\n \r\n )}\r\n \r\n {completed && (\r\n \r\n \r\n \r\n )}\r\n
    \r\n {!firstOfPage &&
    }\r\n
    \r\n );\r\n}\r\n","import * as React from \"react\";\r\nimport { useSelector, useDispatch, useStore } from \"react-redux\";\r\nimport { PageModel } from \"../../../models/PageModel\";\r\nimport { StoreState } from \"../../../models/states/StoreState\";\r\nimport useStyles from \"./FlowPanel.styles\";\r\nimport FlowQuestion from \"./FlowQuestion\";\r\nimport { navigationBranchTo, navigationPreviousPage } from \"../../../redux/actions\";\r\n\r\ninterface Props {\r\n page: PageModel;\r\n showBlockName?: boolean;\r\n isFirst?: boolean;\r\n active?: boolean;\r\n simulated?: boolean;\r\n completed?: boolean;\r\n}\r\n\r\nexport default function FlowPage({\r\n page,\r\n showBlockName,\r\n isFirst,\r\n active,\r\n simulated,\r\n completed,\r\n}: Props) {\r\n const classes = useStyles({});\r\n const store = useStore();\r\n const dispatch = useDispatch();\r\n const blockName = useSelector(\r\n (state: StoreState) => state.interview.navigation?.randomizedBlocks[page.blockIndex]?.name,\r\n );\r\n const [hovered, setHovered] = React.useState(false);\r\n\r\n function navigateToPage() {\r\n if (simulated)\r\n dispatch(\r\n navigationBranchTo({\r\n destination: page.questions[0].name,\r\n isPreviewNavigation: true,\r\n }),\r\n );\r\n if (completed) {\r\n const { history } = store.getState().interview.navigation;\r\n const historyIndex = history.indexOf(page);\r\n if (historyIndex === -1) {\r\n return;\r\n }\r\n const pagesFromLast = history.length - historyIndex;\r\n for (let i = 0; i < pagesFromLast; i++) {\r\n dispatch(navigationPreviousPage());\r\n }\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n
    \r\n {showBlockName && (\r\n
    \r\n {blockName}\r\n
    \r\n )}\r\n {!isFirst && !showBlockName && (\r\n
    \r\n Page Break\r\n
    \r\n )}\r\n {page.questions.map((question, questionIndex) => (\r\n \r\n ))}\r\n {!active && (\r\n setHovered(true)}\r\n onMouseOut={() => setHovered(false)}\r\n onClick={navigateToPage}\r\n />\r\n )}\r\n
    \r\n \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n panelContainer: {\r\n height: \"100%\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n },\r\n title: {\r\n margin: 0,\r\n marginBottom: 10,\r\n fontSize: \"15px\",\r\n fontWeight: 700,\r\n color: \"#484848\",\r\n },\r\n sectionTitle: {\r\n margin: 0,\r\n marginTop: 20,\r\n marginBottom: 10,\r\n fontWeight: 700,\r\n fontSize: \"13px\",\r\n color: \"#484848\",\r\n },\r\n search: {\r\n background: \"#F3F3F3\",\r\n position: \"relative\",\r\n padding: [[8, 16]],\r\n marginBottom: 16,\r\n borderRadius: 30,\r\n },\r\n searchIcon: {\r\n color: \"#A2A2A2\",\r\n },\r\n searchInput: {\r\n width: \"100%\",\r\n position: \"absolute\",\r\n top: 0,\r\n left: 0,\r\n bottom: 0,\r\n right: 0,\r\n border: 0,\r\n background: \"none\",\r\n paddingLeft: 48,\r\n paddingRight: 16,\r\n fontSize: \"13px\",\r\n outline: \"none\",\r\n },\r\n scrollable: {\r\n flex: \"1\",\r\n overflowY: \"scroll\",\r\n overflowX: \"hidden\",\r\n paddingRight: 16,\r\n scrollbarWidth: \"18px\",\r\n scrollbarColor: \"red blue\",\r\n },\r\n});\r\n","import * as React from \"react\";\r\nimport useStyles from \"./WidgetPanel.styles\";\r\nimport { FontAwesomeIcon } from \"../../shared/FontAwesome\";\r\n\r\ninterface Props {\r\n title: string;\r\n searchable?: boolean;\r\n search?: string;\r\n setSearch?(value: string): void;\r\n searchPlaceholder?: string;\r\n containerRef: React.Ref;\r\n children: React.ReactNode;\r\n}\r\n\r\nexport default function WidgetPanel({\r\n title,\r\n searchable,\r\n search,\r\n setSearch,\r\n searchPlaceholder,\r\n containerRef,\r\n children,\r\n}: Props) {\r\n const classes = useStyles({});\r\n return (\r\n
    \r\n

    {title}

    \r\n {searchable && (\r\n
    \r\n \r\n \r\n \r\n setSearch(e.target.value)}\r\n type=\"search\"\r\n placeholder={searchPlaceholder}\r\n />\r\n
    \r\n )}\r\n
    \r\n {children}\r\n
    \r\n
    \r\n );\r\n}\r\n\r\ninterface SectionProps {\r\n title: string;\r\n children: React.ReactNode;\r\n}\r\n\r\nWidgetPanel.Section = function WidgetPanelSection({ title, children }: SectionProps) {\r\n const classes = useStyles({});\r\n return (\r\n <>\r\n

    {title}

    \r\n {children}\r\n \r\n );\r\n};\r\n","import * as React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport ReactTooltip from \"react-tooltip\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { StoreState } from \"../../../models/states/StoreState\";\r\nimport { PageModel } from \"../../../models/PageModel\";\r\nimport LoadingEllipsis from \"../shared/LoadingEllipsis\";\r\nimport useSimulatedPages from \"../../../hooks/useSimulatedPages\";\r\nimport useScrollToActive from \"../../../hooks/useScrollToActive\";\r\nimport FlowPage from \"./FlowPage\";\r\nimport WidgetPanel from \"./WidgetPanel\";\r\n\r\ninterface PageProps {\r\n active?: boolean;\r\n simulated?: boolean;\r\n completed?: boolean;\r\n}\r\n\r\nexport function FlowPanel() {\r\n const containerRef = React.useRef();\r\n const history = useSelector((state: StoreState) => state.interview.navigation?.history) || [];\r\n const currentPage = useSelector((state: StoreState) => state.interview.navigation?.currentPage);\r\n const { simulatedPages, simulating } = useSimulatedPages();\r\n const { t } = useTranslation();\r\n\r\n useScrollToActive(containerRef);\r\n\r\n let previousPageBlockIndex = -1;\r\n let pageIndex = -1;\r\n function renderPages(pages: PageModel[], props: PageProps = {}) {\r\n return pages.map((page) => {\r\n if (!page) return null;\r\n const showBlockName = previousPageBlockIndex !== page.blockIndex;\r\n previousPageBlockIndex = page.blockIndex;\r\n pageIndex += 1;\r\n return (\r\n \r\n );\r\n });\r\n }\r\n\r\n React.useEffect(() => {\r\n ReactTooltip.rebuild();\r\n }, [history, currentPage, simulatedPages]);\r\n\r\n return (\r\n \r\n {renderPages(history, { completed: true })}\r\n {renderPages([currentPage], { active: true })}\r\n {renderPages(simulatedPages, { simulated: true })}\r\n {currentPage && simulating && (\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n variableContainer: {\r\n fontSize: \"13px\",\r\n fontFamily: \"Open Sans\",\r\n borderBottom: \"1px solid #eee\",\r\n padding: [[10, 0]],\r\n },\r\n variablePanelHeader: {\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n flexWrap: \"nowrap\",\r\n justifyContent: \"flex-end\",\r\n },\r\n variablePanelHeaderTitle: {\r\n marginRight: \"auto\",\r\n },\r\n variableValue: {\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n flexWrap: \"nowrap\",\r\n alignItems: \"center\",\r\n justifyContent: \"flex-end\",\r\n },\r\n variableName: {\r\n marginRight: \"auto\",\r\n wordBreak: \"break-all\",\r\n },\r\n variableDetails: {\r\n paddingRight: 29,\r\n overflow: \"hidden\",\r\n boxSizing: \"border-box\",\r\n },\r\n variableInput: {\r\n width: \"100%\",\r\n background: \"#333E5B\",\r\n fontSize: \"12px\",\r\n outline: \"none\",\r\n color: \"white\",\r\n border: 0,\r\n borderRadius: 5,\r\n padding: [[6, 10]],\r\n boxSizing: \"border-box\",\r\n resize: \"none\",\r\n\r\n \"&:active, &:focus\": {\r\n color: \"#F68A5A\",\r\n },\r\n },\r\n variableInputSmall: {\r\n fontSize: \"12px\",\r\n width: 100,\r\n outline: \"none\",\r\n border: 0,\r\n background: \"#333E5B\",\r\n color: \"white\",\r\n textAlign: \"right\",\r\n padding: [[6, 10]],\r\n marginLeft: 5,\r\n marginRight: 6,\r\n borderRadius: 5,\r\n\r\n \"&:active, &:focus\": {\r\n color: \"#F68A5A\",\r\n },\r\n },\r\n variableText: {\r\n margin: [[5, 0]],\r\n fontWeight: 700,\r\n fontSize: \"10px\",\r\n },\r\n variableOpenEnd: {\r\n margin: [[5, 0]],\r\n marginTop: 10,\r\n fontWeight: 700,\r\n fontSize: \"10px\",\r\n },\r\n variableDetailsIcon: {\r\n fontSize: \"12px\",\r\n padding: 4,\r\n cursor: \"pointer\",\r\n userSelect: \"none\",\r\n },\r\n variableDetailsIconActive: {\r\n color: \"#00A9E8\",\r\n },\r\n variableTypeButton: {\r\n padding: [[0, 10]],\r\n cursor: \"pointer\",\r\n marginRight: \"auto\",\r\n },\r\n});\r\n","import * as React from \"react\";\r\nimport { useSelector } from \"react-redux\";\r\nimport { useSpring, animated } from \"react-spring\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { flatMap } from \"../../../utils/lodash\";\r\nimport useStyles from \"./VariablesPanel.styles\";\r\nimport { FontAwesomeIcon } from \"../../shared/FontAwesome\";\r\nimport { StoreState } from \"../../../models/states/StoreState\";\r\nimport { VariableType } from \"../../../models/enums/VariableType\";\r\nimport WidgetPanel from \"./WidgetPanel\";\r\n\r\ninterface VariableProps {\r\n variable: string;\r\n value: string;\r\n text: string;\r\n openEnd?: string;\r\n type?: VariableType;\r\n}\r\n\r\nconst getFilteredVariableKeys = (variables, filter) =>\r\n Object.keys(variables).filter((key) => key.toLowerCase().includes(filter));\r\n\r\nfunction Variable({ variable, value, text, openEnd, type }: VariableProps) {\r\n const isSystemVariable = type === VariableType.System;\r\n const [showDetails, setShowDetails] = React.useState(false);\r\n const props = useSpring({\r\n height: showDetails ? 152 : 0,\r\n opacity: showDetails ? 1 : 0,\r\n });\r\n const classes = useStyles({ isSystemVariable });\r\n const { t } = useTranslation();\r\n return (\r\n
    \r\n
    \r\n {variable}\r\n =\r\n \r\n setShowDetails((s) => !s)}\r\n >\r\n \r\n
    \r\n
    \r\n \r\n
    \r\n
    {t(\"debug.panels.variables.text\")}
    \r\n \r\n
    \r\n
    \r\n
    \r\n {t(\"debug.panels.variables.openEnd\")}\r\n
    \r\n \r\n {openEnd}\r\n \r\n
    \r\n
    \r\n
    \r\n );\r\n}\r\n\r\nexport function VariablesPanel() {\r\n const containerRef = React.useRef();\r\n const [search, setSearch] = React.useState(\"\");\r\n const [showSystemVariables] = React.useState(false);\r\n const lowerCaseSearch = search.toLowerCase();\r\n const { t } = useTranslation();\r\n\r\n const system = useSelector((state: StoreState) => state.interview.variables.system);\r\n const blocks = useSelector((state: StoreState) => state.interview.questionnaire.blocks);\r\n const mentions = useSelector(\r\n (state: StoreState) => state.interview.variables.mentionsByVariableName,\r\n );\r\n\r\n const systemVariables = getFilteredVariableKeys(system, lowerCaseSearch).map((key) => (\r\n \r\n ));\r\n\r\n const filteredVariableKeys = getFilteredVariableKeys(mentions, lowerCaseSearch);\r\n const orderedVariableKeys = flatMap(\r\n flatMap(blocks, \"questions\"),\r\n \"variableNames\",\r\n ).filter((key) => filteredVariableKeys.includes(key));\r\n\r\n const questionVariables = flatMap(orderedVariableKeys, (key) =>\r\n mentions[key].map((mention) => (\r\n \r\n )),\r\n );\r\n\r\n return (\r\n \r\n {showSystemVariables && systemVariables}\r\n {questionVariables}\r\n \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n question: {\r\n borderRadius: 12,\r\n padding: [[4, 16]],\r\n margin: [[2, 0]],\r\n cursor: \"pointer\",\r\n fontSize: \"13px\",\r\n\r\n \"&:hover\": {\r\n background: \"#F3F3F3\",\r\n color: \"black\",\r\n },\r\n },\r\n questionSelected: {\r\n background: \"#00A9E8\",\r\n color: \"white\",\r\n\r\n \"&:hover\": {\r\n background: \"#00A9E8\",\r\n color: \"white\",\r\n },\r\n },\r\n});\r\n","import * as React from \"react\";\r\nimport { useSelector, useDispatch } from \"react-redux\";\r\nimport classNames from \"classnames\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { flatMap } from \"../../../utils/lodash\";\r\nimport useStyles from \"./GoToQuestionPanel.styles\";\r\nimport { StoreState } from \"../../../models/states/StoreState\";\r\nimport { navigationBranchTo } from \"../../../redux/actions\";\r\nimport useScrollToActive from \"../../../hooks/useScrollToActive\";\r\nimport WidgetPanel from \"./WidgetPanel\";\r\nimport { QuestionType } from \"../../../models/enums/QuestionType\";\r\n\r\nexport function GoToQuestionPanel() {\r\n const containerRef = React.useRef();\r\n const classes = useStyles({});\r\n const dispatch = useDispatch();\r\n const blocks = useSelector((state: StoreState) => state.interview.questionnaire?.blocks);\r\n const pageQuestions = useSelector(\r\n (state: StoreState) => state.interview.navigation.currentPage?.questions,\r\n );\r\n const questions = React.useMemo(() => flatMap(blocks, (b) => b.questions) || [], [blocks]);\r\n const [search, setSearch] = React.useState(\"\");\r\n const firstQuestion = pageQuestions && pageQuestions[0];\r\n const filteredQuestions = React.useMemo(() => {\r\n if (!search.length) return questions;\r\n const lowerCaseSearch = search.toLowerCase();\r\n return questions.filter((q) =>\r\n q.name.toLowerCase().includes(lowerCaseSearch.toLowerCase()),\r\n );\r\n }, [questions, search]);\r\n\r\n const { t } = useTranslation();\r\n\r\n useScrollToActive(containerRef, { center: true });\r\n return (\r\n \r\n {filteredQuestions\r\n .filter((q) => q.type != QuestionType.SecuredTemporaryVariable)\r\n .map(({ name }) => (\r\n \r\n dispatch(\r\n navigationBranchTo({\r\n destination: name,\r\n isPreviewNavigation: true,\r\n }),\r\n )\r\n }\r\n className={classNames(\r\n classes.question,\r\n firstQuestion?.name === name && classes.questionSelected,\r\n )}\r\n >\r\n {name}\r\n
    \r\n ))}\r\n \r\n );\r\n}\r\n","import { createUseStyles } from \"react-jss\";\r\n\r\nexport default createUseStyles({\r\n setting: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n fontSize: \"12px\",\r\n },\r\n settingLabel: {\r\n flex: 1,\r\n },\r\n settingValue: {\r\n display: \"flex\",\r\n margin: [[0, -4]],\r\n },\r\n});\r\n","import { createUseStyles } from \"react-jss\";\r\nimport { darken } from \"../../../theme/Mixins\";\r\n\r\nexport default createUseStyles({\r\n button: {\r\n background: ({ active, hover }) => darken(active ? \"#00A9E8\" : \"#F3F3F3\", hover ? 0.7 : 0),\r\n color: ({ active }) => (active ? \"#fff\" : \"#484848\"),\r\n margin: [[0, 4]],\r\n borderRadius: 5,\r\n padding: ({ layout }) => (layout === \"vertical\" ? [[8, 12]] : [[4, 16]]),\r\n minWidth: 64,\r\n cursor: \"pointer\",\r\n fontSize: \"12px\",\r\n transition: \"background 200ms, color 200ms\",\r\n display: \"flex\",\r\n flexDirection: ({ layout }) => (layout === \"vertical\" ? \"column\" : \"row\"),\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n textAlign: \"center\",\r\n boxSizing: \"border-box\",\r\n },\r\n buttonIcon: {\r\n fontSize: \"18px\",\r\n },\r\n});\r\n","import * as React from \"react\";\r\nimport { IconProp } from \"@fortawesome/fontawesome-svg-core\";\r\nimport useStyles from \"./Button.styles\";\r\nimport { FontAwesomeIcon } from \"../../shared/FontAwesome\";\r\n\r\ninterface Props {\r\n active?: boolean;\r\n text?: string;\r\n layout?: \"vertical\" | \"horizontal\";\r\n icon?: () => any | IconProp;\r\n}\r\n\r\nexport default function Button({\r\n active,\r\n text,\r\n icon,\r\n layout,\r\n ...otherProps\r\n}: Props & React.HTMLAttributes) {\r\n const [hover, setHover] = React.useState(false);\r\n const classes = useStyles({ active, hover, layout });\r\n\r\n return (\r\n setHover(true)}\r\n onMouseOut={() => setHover(false)}\r\n {...otherProps}\r\n >\r\n {icon && (\r\n
    \r\n {typeof icon === \"function\" ? icon() : }\r\n
    \r\n )}\r\n {text}\r\n \r\n );\r\n}\r\n","import * as React from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport Button from \"./Button\";\r\n\r\ninterface Props {\r\n value: boolean;\r\n onChange(value: boolean): void;\r\n}\r\n\r\nexport default function ToggleButton({ value, onChange }: Props) {\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <>\r\n