survey-react 1.9.133 → 1.9.134

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/survey.react.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.133
2
+ * surveyjs - Survey JavaScript library v1.9.134
3
3
  * Copyright (c) 2015-2024 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1075,6 +1075,7 @@ var Action = /** @class */ (function (_super) {
1075
1075
  return this._component;
1076
1076
  };
1077
1077
  Action.prototype.dispose = function () {
1078
+ this.updateCallback = undefined;
1078
1079
  this.action = undefined;
1079
1080
  _super.prototype.dispose.call(this);
1080
1081
  if (this.popupModel) {
@@ -5970,6 +5971,7 @@ var defaultV2Css = {
5970
5971
  chooseFileAsIcon: "sd-file__choose-btn--icon",
5971
5972
  chooseFileIconId: "icon-choosefile",
5972
5973
  disabled: "sd-file__choose-btn--disabled",
5974
+ controlDisabled: "sd-file__choose-file-btn--disabled",
5973
5975
  //todo: remove it in v2
5974
5976
  removeButton: "sd-context-btn--negative",
5975
5977
  removeButtonBottom: "",
@@ -6881,11 +6883,13 @@ var DragDropCore = /** @class */ (function () {
6881
6883
  configurable: true
6882
6884
  });
6883
6885
  DragDropCore.prototype.startDrag = function (event, draggedElement, parentElement, draggedElementNode, preventSaveTargetNode) {
6884
- var _a;
6885
6886
  if (preventSaveTargetNode === void 0) { preventSaveTargetNode = false; }
6886
- this.domAdapter.rootContainer = (_a = this.survey) === null || _a === void 0 ? void 0 : _a.rootElement;
6887
+ this.domAdapter.rootContainer = this.getRootElement(this.survey, this.creator);
6887
6888
  this.domAdapter.startDrag(event, draggedElement, parentElement, draggedElementNode, preventSaveTargetNode);
6888
6889
  };
6890
+ DragDropCore.prototype.getRootElement = function (survey, creator) {
6891
+ return creator ? creator.rootElement : survey.rootElement;
6892
+ };
6889
6893
  DragDropCore.prototype.dragInit = function (event, draggedElement, parentElement, draggedElementNode) {
6890
6894
  this.draggedElement = draggedElement;
6891
6895
  this.parentElement = parentElement;
@@ -7685,15 +7689,12 @@ var DragDropRankingSelectToRank = /** @class */ (function (_super) {
7685
7689
  if (dragOverNode.dataset.ranking === "from-container" || dragOverNode.dataset.ranking === "to-container") {
7686
7690
  return dragOverNode;
7687
7691
  }
7688
- if (this.parentElement.rankingChoices.length === 0 ||
7689
- this.parentElement.unRankingChoices.length === 0) {
7690
- var toContainer = dragOverNode.closest("[data-ranking='to-container']");
7691
- var fromContainer = dragOverNode.closest("[data-ranking='from-container']");
7692
- if (!!toContainer)
7693
- return toContainer;
7694
- if (!!fromContainer)
7695
- return fromContainer;
7696
- }
7692
+ var toContainer = dragOverNode.closest("[data-ranking='to-container']");
7693
+ var fromContainer = dragOverNode.closest("[data-ranking='from-container']");
7694
+ if (this.parentElement.unRankingChoices.length === 0 && fromContainer)
7695
+ return fromContainer;
7696
+ if (this.parentElement.rankingChoices.length === 0 && toContainer)
7697
+ return toContainer;
7697
7698
  return _super.prototype.findDropTargetNodeByDragOverNode.call(this, dragOverNode);
7698
7699
  };
7699
7700
  DragDropRankingSelectToRank.prototype.getDropTargetByDataAttributeValue = function (dataAttributeValue) {
@@ -9071,7 +9072,7 @@ __webpack_require__.r(__webpack_exports__);
9071
9072
  /*!*************************************!*\
9072
9073
  !*** ./src/entries/chunks/model.ts ***!
9073
9074
  \*************************************/
9074
- /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank */
9075
+ /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, InputMaskBase, InputMaskPattern, InputMaskNumeric, InputMaskDateTime, InputMaskCurrency, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank */
9075
9076
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9076
9077
 
9077
9078
  "use strict";
@@ -9528,32 +9529,47 @@ __webpack_require__.r(__webpack_exports__);
9528
9529
 
9529
9530
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sanitizeEditableContent", function() { return _utils_utils__WEBPACK_IMPORTED_MODULE_83__["sanitizeEditableContent"]; });
9530
9531
 
9531
- /* harmony import */ var _utils_cssClassBuilder__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(/*! ../../utils/cssClassBuilder */ "./src/utils/cssClassBuilder.ts");
9532
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CssClassBuilder", function() { return _utils_cssClassBuilder__WEBPACK_IMPORTED_MODULE_84__["CssClassBuilder"]; });
9532
+ /* harmony import */ var _mask_mask_base__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(/*! ../../mask/mask_base */ "./src/mask/mask_base.ts");
9533
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskBase", function() { return _mask_mask_base__WEBPACK_IMPORTED_MODULE_84__["InputMaskBase"]; });
9534
+
9535
+ /* harmony import */ var _mask_mask_pattern__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(/*! ../../mask/mask_pattern */ "./src/mask/mask_pattern.ts");
9536
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskPattern", function() { return _mask_mask_pattern__WEBPACK_IMPORTED_MODULE_85__["InputMaskPattern"]; });
9537
+
9538
+ /* harmony import */ var _mask_mask_numeric__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(/*! ../../mask/mask_numeric */ "./src/mask/mask_numeric.ts");
9539
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskNumeric", function() { return _mask_mask_numeric__WEBPACK_IMPORTED_MODULE_86__["InputMaskNumeric"]; });
9540
+
9541
+ /* harmony import */ var _mask_mask_datetime__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(/*! ../../mask/mask_datetime */ "./src/mask/mask_datetime.ts");
9542
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskDateTime", function() { return _mask_mask_datetime__WEBPACK_IMPORTED_MODULE_87__["InputMaskDateTime"]; });
9533
9543
 
9534
- /* harmony import */ var _defaultCss_defaultV2Css__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(/*! ../../defaultCss/defaultV2Css */ "./src/defaultCss/defaultV2Css.ts");
9535
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "surveyCss", function() { return _defaultCss_defaultV2Css__WEBPACK_IMPORTED_MODULE_85__["surveyCss"]; });
9544
+ /* harmony import */ var _mask_mask_currency__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(/*! ../../mask/mask_currency */ "./src/mask/mask_currency.ts");
9545
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskCurrency", function() { return _mask_mask_currency__WEBPACK_IMPORTED_MODULE_88__["InputMaskCurrency"]; });
9536
9546
 
9537
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "defaultV2Css", function() { return _defaultCss_defaultV2Css__WEBPACK_IMPORTED_MODULE_85__["defaultV2Css"]; });
9547
+ /* harmony import */ var _utils_cssClassBuilder__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(/*! ../../utils/cssClassBuilder */ "./src/utils/cssClassBuilder.ts");
9548
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CssClassBuilder", function() { return _utils_cssClassBuilder__WEBPACK_IMPORTED_MODULE_89__["CssClassBuilder"]; });
9538
9549
 
9539
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "defaultV2ThemeName", function() { return _defaultCss_defaultV2Css__WEBPACK_IMPORTED_MODULE_85__["defaultV2ThemeName"]; });
9550
+ /* harmony import */ var _defaultCss_defaultV2Css__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(/*! ../../defaultCss/defaultV2Css */ "./src/defaultCss/defaultV2Css.ts");
9551
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "surveyCss", function() { return _defaultCss_defaultV2Css__WEBPACK_IMPORTED_MODULE_90__["surveyCss"]; });
9540
9552
 
9541
- /* harmony import */ var _dragdrop_core__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(/*! ../../dragdrop/core */ "./src/dragdrop/core.ts");
9542
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DragDropCore", function() { return _dragdrop_core__WEBPACK_IMPORTED_MODULE_86__["DragDropCore"]; });
9553
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "defaultV2Css", function() { return _defaultCss_defaultV2Css__WEBPACK_IMPORTED_MODULE_90__["defaultV2Css"]; });
9543
9554
 
9544
- /* harmony import */ var _dragdrop_choices__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(/*! ../../dragdrop/choices */ "./src/dragdrop/choices.ts");
9545
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DragDropChoices", function() { return _dragdrop_choices__WEBPACK_IMPORTED_MODULE_87__["DragDropChoices"]; });
9555
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "defaultV2ThemeName", function() { return _defaultCss_defaultV2Css__WEBPACK_IMPORTED_MODULE_90__["defaultV2ThemeName"]; });
9546
9556
 
9547
- /* harmony import */ var _dragdrop_ranking_select_to_rank__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(/*! ../../dragdrop/ranking-select-to-rank */ "./src/dragdrop/ranking-select-to-rank.ts");
9548
- /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DragDropRankingSelectToRank", function() { return _dragdrop_ranking_select_to_rank__WEBPACK_IMPORTED_MODULE_88__["DragDropRankingSelectToRank"]; });
9557
+ /* harmony import */ var _dragdrop_core__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(/*! ../../dragdrop/core */ "./src/dragdrop/core.ts");
9558
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DragDropCore", function() { return _dragdrop_core__WEBPACK_IMPORTED_MODULE_91__["DragDropCore"]; });
9559
+
9560
+ /* harmony import */ var _dragdrop_choices__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(/*! ../../dragdrop/choices */ "./src/dragdrop/choices.ts");
9561
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DragDropChoices", function() { return _dragdrop_choices__WEBPACK_IMPORTED_MODULE_92__["DragDropChoices"]; });
9562
+
9563
+ /* harmony import */ var _dragdrop_ranking_select_to_rank__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(/*! ../../dragdrop/ranking-select-to-rank */ "./src/dragdrop/ranking-select-to-rank.ts");
9564
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "DragDropRankingSelectToRank", function() { return _dragdrop_ranking_select_to_rank__WEBPACK_IMPORTED_MODULE_93__["DragDropRankingSelectToRank"]; });
9549
9565
 
9550
9566
  // styles
9551
9567
  // import "../../main.scss";
9552
9568
  //import "../../modern.scss";
9553
9569
  var Version;
9554
9570
  var ReleaseDate;
9555
- Version = "" + "1.9.133";
9556
- ReleaseDate = "" + "2024-03-05";
9571
+ Version = "" + "1.9.134";
9572
+ ReleaseDate = "" + "2024-03-13";
9557
9573
  function checkLibraryVersion(ver, libraryName) {
9558
9574
  if (Version != ver) {
9559
9575
  var str = "survey-core has version '" + Version + "' and " + libraryName
@@ -9713,6 +9729,11 @@ function checkPrefix(prefix) {
9713
9729
 
9714
9730
 
9715
9731
 
9732
+
9733
+
9734
+
9735
+
9736
+
9716
9737
 
9717
9738
 
9718
9739
  //Uncomment to include the "date" question type.
@@ -9728,7 +9749,7 @@ function checkPrefix(prefix) {
9728
9749
  /*!**************************************!*\
9729
9750
  !*** ./src/entries/core-wo-model.ts ***!
9730
9751
  \**************************************/
9731
- /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper */
9752
+ /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, InputMaskBase, InputMaskPattern, InputMaskNumeric, InputMaskDateTime, InputMaskCurrency, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper */
9732
9753
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9733
9754
 
9734
9755
  "use strict";
@@ -10108,6 +10129,16 @@ __webpack_require__.r(__webpack_exports__);
10108
10129
 
10109
10130
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sanitizeEditableContent", function() { return _chunks_model__WEBPACK_IMPORTED_MODULE_0__["sanitizeEditableContent"]; });
10110
10131
 
10132
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskBase", function() { return _chunks_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskBase"]; });
10133
+
10134
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskPattern", function() { return _chunks_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskPattern"]; });
10135
+
10136
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskNumeric", function() { return _chunks_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskNumeric"]; });
10137
+
10138
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskDateTime", function() { return _chunks_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskDateTime"]; });
10139
+
10140
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskCurrency", function() { return _chunks_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskCurrency"]; });
10141
+
10111
10142
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CssClassBuilder", function() { return _chunks_model__WEBPACK_IMPORTED_MODULE_0__["CssClassBuilder"]; });
10112
10143
 
10113
10144
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "surveyCss", function() { return _chunks_model__WEBPACK_IMPORTED_MODULE_0__["surveyCss"]; });
@@ -10197,7 +10228,7 @@ __webpack_require__.r(__webpack_exports__);
10197
10228
  /*!*****************************!*\
10198
10229
  !*** ./src/entries/core.ts ***!
10199
10230
  \*****************************/
10200
- /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper, Model */
10231
+ /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, InputMaskBase, InputMaskPattern, InputMaskNumeric, InputMaskDateTime, InputMaskCurrency, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper, Model */
10201
10232
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10202
10233
 
10203
10234
  "use strict";
@@ -10577,6 +10608,16 @@ __webpack_require__.r(__webpack_exports__);
10577
10608
 
10578
10609
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sanitizeEditableContent", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["sanitizeEditableContent"]; });
10579
10610
 
10611
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskBase", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskBase"]; });
10612
+
10613
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskPattern", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskPattern"]; });
10614
+
10615
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskNumeric", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskNumeric"]; });
10616
+
10617
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskDateTime", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskDateTime"]; });
10618
+
10619
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskCurrency", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["InputMaskCurrency"]; });
10620
+
10580
10621
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CssClassBuilder", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["CssClassBuilder"]; });
10581
10622
 
10582
10623
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "surveyCss", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["surveyCss"]; });
@@ -11058,7 +11099,7 @@ __webpack_require__.r(__webpack_exports__);
11058
11099
  /*!******************************!*\
11059
11100
  !*** ./src/entries/react.ts ***!
11060
11101
  \******************************/
11061
- /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper, Model, bootstrapThemeName, bootstrapThemeColors, bootstrapThemeCssRules, bootstrapMaterialThemeName, bootstrapMaterialThemeColors, bootstrapMaterialThemeCssRules, defaultBootstrapCss, defaultBootstrapMaterialCss, Survey, attachKey2click, ReactSurveyElementsWrapper, SurveyNavigationBase, SurveyTimerPanel, SurveyPage, SurveyRow, SurveyPanel, SurveyFlowPanel, SurveyQuestion, SurveyElementErrors, SurveyQuestionAndErrorsCell, ReactSurveyElement, SurveyElementBase, SurveyQuestionElementBase, SurveyQuestionCommentItem, SurveyQuestionComment, SurveyQuestionCheckbox, SurveyQuestionCheckboxItem, SurveyQuestionRanking, SurveyQuestionRankingItem, RatingItem, RatingItemStar, RatingItemSmiley, RatingDropdownItem, TagboxFilterString, SurveyQuestionOptionItem, SurveyQuestionDropdownBase, SurveyQuestionDropdown, SurveyQuestionTagboxItem, SurveyQuestionTagbox, SurveyQuestionDropdownSelect, SurveyQuestionMatrix, SurveyQuestionMatrixRow, SurveyQuestionMatrixCell, SurveyQuestionHtml, SurveyQuestionFile, SurveyFileChooseButton, SurveyFilePreview, SurveyQuestionMultipleText, SurveyQuestionRadiogroup, SurveyQuestionRadioItem, SurveyQuestionText, SurveyQuestionBoolean, SurveyQuestionBooleanCheckbox, SurveyQuestionBooleanRadio, SurveyQuestionEmpty, SurveyQuestionMatrixDropdownCell, SurveyQuestionMatrixDropdownBase, SurveyQuestionMatrixDropdown, SurveyQuestionMatrixDynamic, SurveyQuestionMatrixDynamicAddButton, SurveyQuestionPanelDynamic, SurveyProgress, SurveyProgressButtons, SurveyProgressToc, SurveyQuestionRating, SurveyQuestionRatingDropdown, SurveyQuestionExpression, PopupSurvey, SurveyWindow, ReactQuestionFactory, ReactElementFactory, SurveyQuestionImagePicker, SurveyQuestionImage, SurveyQuestionSignaturePad, SurveyQuestionButtonGroup, SurveyQuestionCustom, SurveyQuestionComposite, Popup, List, TitleActions, TitleElement, SurveyActionBar, LogoImage, SurveyHeader, SvgIcon, SurveyQuestionMatrixDynamicRemoveButton, SurveyQuestionMatrixDetailButton, SurveyQuestionMatrixDynamicDragDropIcon, SurveyQuestionPanelDynamicAddButton, SurveyQuestionPanelDynamicRemoveButton, SurveyQuestionPanelDynamicPrevButton, SurveyQuestionPanelDynamicNextButton, SurveyQuestionPanelDynamicProgressText, SurveyNavigationButton, MatrixRow, Skeleton, NotifierComponent, ComponentsContainer, CharacterCounterComponent, HeaderMobile, HeaderCell, Header, SurveyLocStringViewer, SurveyLocStringEditor, LoadingIndicatorComponent, SvgBundleComponent */
11102
+ /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, InputMaskBase, InputMaskPattern, InputMaskNumeric, InputMaskDateTime, InputMaskCurrency, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper, Model, bootstrapThemeName, bootstrapThemeColors, bootstrapThemeCssRules, bootstrapMaterialThemeName, bootstrapMaterialThemeColors, bootstrapMaterialThemeCssRules, defaultBootstrapCss, defaultBootstrapMaterialCss, Survey, attachKey2click, ReactSurveyElementsWrapper, SurveyNavigationBase, SurveyTimerPanel, SurveyPage, SurveyRow, SurveyPanel, SurveyFlowPanel, SurveyQuestion, SurveyElementErrors, SurveyQuestionAndErrorsCell, ReactSurveyElement, SurveyElementBase, SurveyQuestionElementBase, SurveyQuestionCommentItem, SurveyQuestionComment, SurveyQuestionCheckbox, SurveyQuestionCheckboxItem, SurveyQuestionRanking, SurveyQuestionRankingItem, RatingItem, RatingItemStar, RatingItemSmiley, RatingDropdownItem, TagboxFilterString, SurveyQuestionOptionItem, SurveyQuestionDropdownBase, SurveyQuestionDropdown, SurveyQuestionTagboxItem, SurveyQuestionTagbox, SurveyQuestionDropdownSelect, SurveyQuestionMatrix, SurveyQuestionMatrixRow, SurveyQuestionMatrixCell, SurveyQuestionHtml, SurveyQuestionFile, SurveyFileChooseButton, SurveyFilePreview, SurveyQuestionMultipleText, SurveyQuestionRadiogroup, SurveyQuestionRadioItem, SurveyQuestionText, SurveyQuestionBoolean, SurveyQuestionBooleanCheckbox, SurveyQuestionBooleanRadio, SurveyQuestionEmpty, SurveyQuestionMatrixDropdownCell, SurveyQuestionMatrixDropdownBase, SurveyQuestionMatrixDropdown, SurveyQuestionMatrixDynamic, SurveyQuestionMatrixDynamicAddButton, SurveyQuestionPanelDynamic, SurveyProgress, SurveyProgressButtons, SurveyProgressToc, SurveyQuestionRating, SurveyQuestionRatingDropdown, SurveyQuestionExpression, PopupSurvey, SurveyWindow, ReactQuestionFactory, ReactElementFactory, SurveyQuestionImagePicker, SurveyQuestionImage, SurveyQuestionSignaturePad, SurveyQuestionButtonGroup, SurveyQuestionCustom, SurveyQuestionComposite, Popup, List, TitleActions, TitleElement, SurveyActionBar, LogoImage, SurveyHeader, SvgIcon, SurveyQuestionMatrixDynamicRemoveButton, SurveyQuestionMatrixDetailButton, SurveyQuestionMatrixDynamicDragDropIcon, SurveyQuestionPanelDynamicAddButton, SurveyQuestionPanelDynamicRemoveButton, SurveyQuestionPanelDynamicPrevButton, SurveyQuestionPanelDynamicNextButton, SurveyQuestionPanelDynamicProgressText, SurveyNavigationButton, MatrixRow, Skeleton, NotifierComponent, ComponentsContainer, CharacterCounterComponent, HeaderMobile, HeaderCell, Header, SurveyLocStringViewer, SurveyLocStringEditor, LoadingIndicatorComponent, SvgBundleComponent */
11062
11103
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
11063
11104
 
11064
11105
  "use strict";
@@ -11438,6 +11479,16 @@ __webpack_require__.r(__webpack_exports__);
11438
11479
 
11439
11480
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "sanitizeEditableContent", function() { return _core__WEBPACK_IMPORTED_MODULE_0__["sanitizeEditableContent"]; });
11440
11481
 
11482
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskBase", function() { return _core__WEBPACK_IMPORTED_MODULE_0__["InputMaskBase"]; });
11483
+
11484
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskPattern", function() { return _core__WEBPACK_IMPORTED_MODULE_0__["InputMaskPattern"]; });
11485
+
11486
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskNumeric", function() { return _core__WEBPACK_IMPORTED_MODULE_0__["InputMaskNumeric"]; });
11487
+
11488
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskDateTime", function() { return _core__WEBPACK_IMPORTED_MODULE_0__["InputMaskDateTime"]; });
11489
+
11490
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "InputMaskCurrency", function() { return _core__WEBPACK_IMPORTED_MODULE_0__["InputMaskCurrency"]; });
11491
+
11441
11492
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "CssClassBuilder", function() { return _core__WEBPACK_IMPORTED_MODULE_0__["CssClassBuilder"]; });
11442
11493
 
11443
11494
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "surveyCss", function() { return _core__WEBPACK_IMPORTED_MODULE_0__["surveyCss"]; });
@@ -29692,6 +29743,1209 @@ _jsonobject__WEBPACK_IMPORTED_MODULE_2__["Serializer"].addClass("matrixbase", [
29692
29743
  ], undefined, "question");
29693
29744
 
29694
29745
 
29746
+ /***/ }),
29747
+
29748
+ /***/ "./src/mask/input_element_adapter.ts":
29749
+ /*!*******************************************!*\
29750
+ !*** ./src/mask/input_element_adapter.ts ***!
29751
+ \*******************************************/
29752
+ /*! exports provided: InputElementAdapter */
29753
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
29754
+
29755
+ "use strict";
29756
+ __webpack_require__.r(__webpack_exports__);
29757
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InputElementAdapter", function() { return InputElementAdapter; });
29758
+ var InputElementAdapter = /** @class */ (function () {
29759
+ function InputElementAdapter(inputMaskInstance, inputElement, value) {
29760
+ var _this = this;
29761
+ if (value === void 0) { value = ""; }
29762
+ this.inputMaskInstance = inputMaskInstance;
29763
+ this.inputElement = inputElement;
29764
+ this.prevUnmaskedValue = undefined;
29765
+ this.inputMaskInstancePropertyChangedHandler = function (sender, options) {
29766
+ if (options.name !== "saveMaskedValue") {
29767
+ var maskedValue = _this.inputMaskInstance.getMaskedValue(_this.prevUnmaskedValue);
29768
+ _this.inputElement.value = maskedValue;
29769
+ }
29770
+ };
29771
+ this.beforeInputHandler = function (event) {
29772
+ var args = _this.createArgs(event);
29773
+ var result = _this.inputMaskInstance.processInput(args);
29774
+ _this.inputElement.value = result.value;
29775
+ _this.inputElement.setSelectionRange(result.caretPosition, result.caretPosition);
29776
+ if (!result.cancelPreventDefault) {
29777
+ event.preventDefault();
29778
+ }
29779
+ };
29780
+ this.blurInputHandler = function (event) {
29781
+ var unmaskedValue = _this.inputMaskInstance.getUnmaskedValue(event.target.value);
29782
+ _this.prevUnmaskedValue = unmaskedValue;
29783
+ var maskedValue = _this.inputMaskInstance.getMaskedValue(unmaskedValue);
29784
+ _this.inputElement.value = maskedValue;
29785
+ };
29786
+ this.inputElement.value = inputMaskInstance.getMaskedValue(value);
29787
+ this.prevUnmaskedValue = value;
29788
+ inputMaskInstance.onPropertyChanged.add(this.inputMaskInstancePropertyChangedHandler);
29789
+ this.addInputEventListener();
29790
+ }
29791
+ InputElementAdapter.prototype.createArgs = function (event) {
29792
+ var args = {
29793
+ insertedChars: event.data,
29794
+ selectionStart: event.target.selectionStart,
29795
+ selectionEnd: event.target.selectionEnd,
29796
+ prevValue: event.target.value,
29797
+ inputDirection: "forward"
29798
+ };
29799
+ if (event.inputType === "deleteContentBackward") {
29800
+ args.inputDirection = "backward";
29801
+ if (args.selectionStart === args.selectionEnd) {
29802
+ args.selectionStart = Math.max(args.selectionStart - 1, 0);
29803
+ }
29804
+ }
29805
+ if (event.inputType === "deleteContentForward" && args.selectionStart === args.selectionEnd) {
29806
+ args.selectionEnd += 1;
29807
+ }
29808
+ return args;
29809
+ };
29810
+ InputElementAdapter.prototype.addInputEventListener = function () {
29811
+ if (!!this.inputElement) {
29812
+ this.inputElement.addEventListener("beforeinput", this.beforeInputHandler);
29813
+ this.inputElement.addEventListener("blur", this.blurInputHandler);
29814
+ }
29815
+ };
29816
+ InputElementAdapter.prototype.removeInputEventListener = function () {
29817
+ if (!!this.inputElement) {
29818
+ this.inputElement.removeEventListener("beforeinput", this.beforeInputHandler);
29819
+ this.inputElement.removeEventListener("blur", this.blurInputHandler);
29820
+ }
29821
+ };
29822
+ InputElementAdapter.prototype.dispose = function () {
29823
+ this.removeInputEventListener();
29824
+ this.inputMaskInstance.onPropertyChanged.remove(this.inputMaskInstancePropertyChangedHandler);
29825
+ };
29826
+ return InputElementAdapter;
29827
+ }());
29828
+
29829
+
29830
+
29831
+ /***/ }),
29832
+
29833
+ /***/ "./src/mask/mask_base.ts":
29834
+ /*!*******************************!*\
29835
+ !*** ./src/mask/mask_base.ts ***!
29836
+ \*******************************/
29837
+ /*! exports provided: InputMaskBase */
29838
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
29839
+
29840
+ "use strict";
29841
+ __webpack_require__.r(__webpack_exports__);
29842
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InputMaskBase", function() { return InputMaskBase; });
29843
+ /* harmony import */ var _base__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../base */ "./src/base.ts");
29844
+ /* harmony import */ var _jsonobject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../jsonobject */ "./src/jsonobject.ts");
29845
+ var __extends = (undefined && undefined.__extends) || (function () {
29846
+ var extendStatics = function (d, b) {
29847
+ extendStatics = Object.setPrototypeOf ||
29848
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
29849
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
29850
+ return extendStatics(d, b);
29851
+ };
29852
+ return function (d, b) {
29853
+ if (typeof b !== "function" && b !== null)
29854
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
29855
+ extendStatics(d, b);
29856
+ function __() { this.constructor = d; }
29857
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
29858
+ };
29859
+ })();
29860
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
29861
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
29862
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
29863
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
29864
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
29865
+ };
29866
+
29867
+
29868
+ var InputMaskBase = /** @class */ (function (_super) {
29869
+ __extends(InputMaskBase, _super);
29870
+ function InputMaskBase() {
29871
+ return _super !== null && _super.apply(this, arguments) || this;
29872
+ }
29873
+ InputMaskBase.prototype.getType = function () {
29874
+ return "masksettings";
29875
+ };
29876
+ InputMaskBase.prototype.setData = function (json) {
29877
+ var _this = this;
29878
+ var properties = _jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].getProperties(this.getType());
29879
+ properties.forEach(function (property) {
29880
+ var currentValue = json[property.name];
29881
+ _this[property.name] = currentValue !== undefined ? currentValue : property.defaultValue;
29882
+ });
29883
+ };
29884
+ InputMaskBase.prototype.getData = function () {
29885
+ var _this = this;
29886
+ var res = {};
29887
+ var properties = _jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].getProperties(this.getType());
29888
+ properties.forEach(function (property) {
29889
+ var currentValue = _this[property.name];
29890
+ if (!property.isDefaultValue(currentValue)) {
29891
+ res[property.name] = currentValue;
29892
+ }
29893
+ });
29894
+ return res;
29895
+ };
29896
+ // public get maskedInputValue(): string {
29897
+ // return this.input.value;
29898
+ // }
29899
+ // public get unmaskedInputValue(): string {
29900
+ // return this.getUnmaskedValue(this.input.value, true);
29901
+ // }
29902
+ InputMaskBase.prototype.processInput = function (args) {
29903
+ return { value: args.prevValue, caretPosition: args.selectionEnd, cancelPreventDefault: false };
29904
+ };
29905
+ InputMaskBase.prototype.getUnmaskedValue = function (src) { return src; };
29906
+ InputMaskBase.prototype.getMaskedValue = function (src) { return src; };
29907
+ __decorate([
29908
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_1__["property"])()
29909
+ ], InputMaskBase.prototype, "saveMaskedValue", void 0);
29910
+ return InputMaskBase;
29911
+ }(_base__WEBPACK_IMPORTED_MODULE_0__["Base"]));
29912
+
29913
+ _jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].addClass("masksettings", [
29914
+ {
29915
+ name: "saveMaskedValue:boolean",
29916
+ visibleIf: function (obj) {
29917
+ if (!obj)
29918
+ return false;
29919
+ return obj.getType() !== "masksettings";
29920
+ },
29921
+ },
29922
+ ], function () {
29923
+ return new InputMaskBase();
29924
+ });
29925
+
29926
+
29927
+ /***/ }),
29928
+
29929
+ /***/ "./src/mask/mask_currency.ts":
29930
+ /*!***********************************!*\
29931
+ !*** ./src/mask/mask_currency.ts ***!
29932
+ \***********************************/
29933
+ /*! exports provided: InputMaskCurrency */
29934
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
29935
+
29936
+ "use strict";
29937
+ __webpack_require__.r(__webpack_exports__);
29938
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InputMaskCurrency", function() { return InputMaskCurrency; });
29939
+ /* harmony import */ var _jsonobject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsonobject */ "./src/jsonobject.ts");
29940
+ /* harmony import */ var _mask_numeric__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mask_numeric */ "./src/mask/mask_numeric.ts");
29941
+ var __extends = (undefined && undefined.__extends) || (function () {
29942
+ var extendStatics = function (d, b) {
29943
+ extendStatics = Object.setPrototypeOf ||
29944
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
29945
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
29946
+ return extendStatics(d, b);
29947
+ };
29948
+ return function (d, b) {
29949
+ if (typeof b !== "function" && b !== null)
29950
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
29951
+ extendStatics(d, b);
29952
+ function __() { this.constructor = d; }
29953
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
29954
+ };
29955
+ })();
29956
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
29957
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
29958
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
29959
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
29960
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
29961
+ };
29962
+
29963
+
29964
+ var InputMaskCurrency = /** @class */ (function (_super) {
29965
+ __extends(InputMaskCurrency, _super);
29966
+ function InputMaskCurrency() {
29967
+ return _super !== null && _super.apply(this, arguments) || this;
29968
+ }
29969
+ InputMaskCurrency.prototype.getType = function () {
29970
+ return "currencymask";
29971
+ };
29972
+ InputMaskCurrency.prototype.wrapText = function (str) {
29973
+ var prefixValue = this.prefix || "";
29974
+ var suffixValue = this.suffix || "";
29975
+ var result = str;
29976
+ if (!result)
29977
+ return result;
29978
+ if (result.indexOf(prefixValue) === -1) {
29979
+ result = prefixValue + result;
29980
+ }
29981
+ if (result.indexOf(suffixValue) === -1) {
29982
+ result += suffixValue;
29983
+ }
29984
+ return result;
29985
+ };
29986
+ InputMaskCurrency.prototype.unwrapInputArgs = function (args) {
29987
+ var result = args.prevValue;
29988
+ if (!result)
29989
+ return;
29990
+ if (this.prefix && result.indexOf(this.prefix) !== -1) {
29991
+ result = result.slice(result.indexOf(this.prefix) + this.prefix.length);
29992
+ var preffixPadding = (this.prefix || "").length;
29993
+ args.selectionStart = Math.max((args.selectionStart - preffixPadding), 0);
29994
+ args.selectionEnd -= preffixPadding;
29995
+ }
29996
+ if (this.suffix && result.indexOf(this.suffix) !== -1) {
29997
+ result = result.slice(0, result.indexOf(this.suffix));
29998
+ }
29999
+ args.prevValue = result;
30000
+ };
30001
+ InputMaskCurrency.prototype.processInput = function (args) {
30002
+ this.unwrapInputArgs(args);
30003
+ var result = _super.prototype.processInput.call(this, args);
30004
+ var preffixPadding = (this.prefix || "").length;
30005
+ if (!!result.value) {
30006
+ result.caretPosition += preffixPadding;
30007
+ }
30008
+ result.value = this.wrapText(result.value);
30009
+ return result;
30010
+ };
30011
+ InputMaskCurrency.prototype.getMaskedValue = function (src) {
30012
+ var result = _super.prototype.getMaskedValue.call(this, src);
30013
+ return this.wrapText(result);
30014
+ };
30015
+ __decorate([
30016
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30017
+ ], InputMaskCurrency.prototype, "prefix", void 0);
30018
+ __decorate([
30019
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30020
+ ], InputMaskCurrency.prototype, "suffix", void 0);
30021
+ return InputMaskCurrency;
30022
+ }(_mask_numeric__WEBPACK_IMPORTED_MODULE_1__["InputMaskNumeric"]));
30023
+
30024
+ _jsonobject__WEBPACK_IMPORTED_MODULE_0__["Serializer"].addClass("currencymask", [
30025
+ { name: "prefix" },
30026
+ { name: "suffix" },
30027
+ ], function () {
30028
+ return new InputMaskCurrency();
30029
+ }, "numericmask");
30030
+
30031
+
30032
+ /***/ }),
30033
+
30034
+ /***/ "./src/mask/mask_datetime.ts":
30035
+ /*!***********************************!*\
30036
+ !*** ./src/mask/mask_datetime.ts ***!
30037
+ \***********************************/
30038
+ /*! exports provided: getDateTimeLexems, InputMaskDateTime */
30039
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
30040
+
30041
+ "use strict";
30042
+ __webpack_require__.r(__webpack_exports__);
30043
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getDateTimeLexems", function() { return getDateTimeLexems; });
30044
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InputMaskDateTime", function() { return InputMaskDateTime; });
30045
+ /* harmony import */ var _jsonobject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsonobject */ "./src/jsonobject.ts");
30046
+ /* harmony import */ var _mask_pattern__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mask_pattern */ "./src/mask/mask_pattern.ts");
30047
+ /* harmony import */ var _mask_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mask_utils */ "./src/mask/mask_utils.ts");
30048
+ var __extends = (undefined && undefined.__extends) || (function () {
30049
+ var extendStatics = function (d, b) {
30050
+ extendStatics = Object.setPrototypeOf ||
30051
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30052
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30053
+ return extendStatics(d, b);
30054
+ };
30055
+ return function (d, b) {
30056
+ if (typeof b !== "function" && b !== null)
30057
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30058
+ extendStatics(d, b);
30059
+ function __() { this.constructor = d; }
30060
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30061
+ };
30062
+ })();
30063
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
30064
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
30065
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
30066
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
30067
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
30068
+ };
30069
+
30070
+
30071
+
30072
+ function getMaxCountLexem(currentLexemType, count) {
30073
+ switch (currentLexemType) {
30074
+ case ("day"):
30075
+ case ("month"): {
30076
+ return 2;
30077
+ }
30078
+ case ("year"): {
30079
+ return count;
30080
+ }
30081
+ default: {
30082
+ return 1;
30083
+ }
30084
+ }
30085
+ }
30086
+ function trimDatePart(lexem, data) {
30087
+ var result = data;
30088
+ if (lexem.count < lexem.maxCount && ((lexem.type === "day" && parseInt(data[0]) === 0) || (lexem.type === "month" && parseInt(data[0]) === 0))) {
30089
+ result = data.slice(1, data.length);
30090
+ }
30091
+ return result;
30092
+ }
30093
+ function getDefaultYearForValidation(minYear, maxYear) {
30094
+ var defaultVal = 2000;
30095
+ if (defaultVal > maxYear) {
30096
+ defaultVal = parseInt(maxYear.toString().slice(0, maxYear.toString().length - 2)) * 100;
30097
+ }
30098
+ if (defaultVal < minYear) {
30099
+ var middle = (maxYear - minYear) / 2 + minYear;
30100
+ defaultVal = parseInt(middle.toString().slice(0, middle.toString().length - 1)) * 10;
30101
+ }
30102
+ if (defaultVal >= minYear && defaultVal <= maxYear) {
30103
+ return defaultVal;
30104
+ }
30105
+ return minYear;
30106
+ }
30107
+ function getDateTimeLexems(pattern) {
30108
+ var result = [];
30109
+ var prevLexemType;
30110
+ var createOrUpdateLexem = function (currentLexemType, currentChar) {
30111
+ if (!!prevLexemType && prevLexemType === currentLexemType) {
30112
+ result[result.length - 1].count++;
30113
+ var maxCount = getMaxCountLexem(currentLexemType, result[result.length - 1].count);
30114
+ result[result.length - 1].maxCount = maxCount;
30115
+ }
30116
+ else {
30117
+ var maxCount = getMaxCountLexem(currentLexemType, 1);
30118
+ // result.push({ type: currentLexemType, value: currentChar, count: 1, data: { value: "", isCompleted: false, isCorrect: false }, maxCount: maxCount });
30119
+ result.push({ type: currentLexemType, value: currentChar, count: 1, maxCount: maxCount });
30120
+ }
30121
+ };
30122
+ for (var index = 0; index < pattern.length; index++) {
30123
+ var currentChar = pattern[index];
30124
+ switch (currentChar) {
30125
+ case "m":
30126
+ createOrUpdateLexem("month", "m");
30127
+ break;
30128
+ case "d":
30129
+ createOrUpdateLexem("day", "d");
30130
+ break;
30131
+ case "y":
30132
+ createOrUpdateLexem("year", "y");
30133
+ break;
30134
+ default:
30135
+ result.push({ type: "separator", value: currentChar, count: 1, maxCount: 1 });
30136
+ break;
30137
+ }
30138
+ prevLexemType = result[result.length - 1].type;
30139
+ }
30140
+ return result;
30141
+ }
30142
+ var InputMaskDateTime = /** @class */ (function (_super) {
30143
+ __extends(InputMaskDateTime, _super);
30144
+ function InputMaskDateTime() {
30145
+ var _this = _super !== null && _super.apply(this, arguments) || this;
30146
+ _this.turnOfTheCentury = 68;
30147
+ _this.lexems = [];
30148
+ _this.inputDateTimeData = [];
30149
+ return _this;
30150
+ }
30151
+ InputMaskDateTime.prototype.getType = function () {
30152
+ return "datetimemask";
30153
+ };
30154
+ InputMaskDateTime.prototype.updateLiterals = function () {
30155
+ this.lexems = getDateTimeLexems(this.pattern || "");
30156
+ };
30157
+ InputMaskDateTime.prototype.leaveOnlyNumbers = function (input) {
30158
+ var result = "";
30159
+ for (var index = 0; index < input.length; index++) {
30160
+ if (input[index].match(_mask_utils__WEBPACK_IMPORTED_MODULE_2__["numberDefinition"])) {
30161
+ result += input[index];
30162
+ }
30163
+ }
30164
+ return result;
30165
+ };
30166
+ InputMaskDateTime.prototype.getMaskedStrFromISO = function (str) {
30167
+ var _this = this;
30168
+ var date = new Date(str);
30169
+ this.initInputDateTimeData();
30170
+ if (!isNaN(date)) {
30171
+ this.lexems.forEach(function (lexem, index) {
30172
+ var inputData = _this.inputDateTimeData[index];
30173
+ inputData.isCompleted = true;
30174
+ switch (lexem.type) {
30175
+ case ("day"): {
30176
+ inputData.value = date.getDate().toString();
30177
+ break;
30178
+ }
30179
+ case ("month"): {
30180
+ inputData.value = (date.getMonth() + 1).toString();
30181
+ break;
30182
+ }
30183
+ case ("year"): {
30184
+ var year = date.getFullYear();
30185
+ if (lexem.count == 2)
30186
+ year = year % 100;
30187
+ inputData.value = year.toString();
30188
+ break;
30189
+ }
30190
+ default: {
30191
+ break;
30192
+ }
30193
+ }
30194
+ });
30195
+ }
30196
+ return this.getFormatedString(true);
30197
+ };
30198
+ InputMaskDateTime.prototype.initInputDateTimeData = function () {
30199
+ var _this = this;
30200
+ this.inputDateTimeData = [];
30201
+ this.lexems.forEach(function (lexem) {
30202
+ _this.inputDateTimeData.push({ lexem: lexem, isCompleted: false, value: undefined });
30203
+ });
30204
+ };
30205
+ InputMaskDateTime.prototype.getISO_8601Format = function (dateTime) {
30206
+ if (dateTime.year === undefined || dateTime.month === undefined || dateTime.day === undefined)
30207
+ return "";
30208
+ var year = this.getPlaceholder(4, dateTime.year.toString(), "0") + dateTime.year;
30209
+ var month = this.getPlaceholder(2, dateTime.month.toString(), "0") + dateTime.month;
30210
+ var day = this.getPlaceholder(2, dateTime.day.toString(), "0") + dateTime.day;
30211
+ return [year, month, day].join("-");
30212
+ };
30213
+ InputMaskDateTime.prototype.isYearValid = function (dateTime) {
30214
+ if (dateTime.min === undefined && dateTime.max === undefined)
30215
+ return false;
30216
+ var data = dateTime.year.toString();
30217
+ var minYearPart = dateTime.min.toISOString().slice(0, data.length);
30218
+ var maxYearPart = dateTime.max.toISOString().slice(0, data.length);
30219
+ return dateTime.year >= parseInt(minYearPart) && dateTime.year <= parseInt(maxYearPart);
30220
+ };
30221
+ InputMaskDateTime.prototype.isDateValid = function (dateTime) {
30222
+ var min = dateTime.min;
30223
+ var max = dateTime.max;
30224
+ var year = dateTime.year !== undefined ? dateTime.year : getDefaultYearForValidation(min.getFullYear(), max.getFullYear());
30225
+ var month = dateTime.month !== undefined ? dateTime.month : 1;
30226
+ var day = dateTime.day !== undefined ? dateTime.day : 1;
30227
+ var date = new Date(this.getISO_8601Format({ year: year, month: month, day: day }));
30228
+ var monthIndex = month - 1;
30229
+ return !isNaN(date) &&
30230
+ date.getDate() === day &&
30231
+ date.getMonth() === monthIndex &&
30232
+ date.getFullYear() === year &&
30233
+ date >= dateTime.min && date <= dateTime.max;
30234
+ };
30235
+ InputMaskDateTime.prototype.getPlaceholder = function (lexemLength, str, char) {
30236
+ var paddingsLength = lexemLength - (str || "").length;
30237
+ var paddings = paddingsLength > 0 ? char.repeat(paddingsLength) : "";
30238
+ return paddings;
30239
+ };
30240
+ InputMaskDateTime.prototype.updateInputDateTimeData = function (newItem, dateTime) {
30241
+ var data = newItem.value;
30242
+ if (!data)
30243
+ return;
30244
+ var propertyName = newItem.lexem.type;
30245
+ dateTime[propertyName] = parseInt(data);
30246
+ if (data.length === newItem.lexem.maxCount) {
30247
+ if (this.isDateValid(dateTime)) {
30248
+ newItem.isCompleted = true;
30249
+ }
30250
+ else {
30251
+ data = data.slice(0, data.length - 1);
30252
+ }
30253
+ }
30254
+ else if (propertyName === "year" && !this.isYearValid(dateTime)) {
30255
+ data = data.slice(0, data.length - 1);
30256
+ }
30257
+ else if ((propertyName === "day" && parseInt(data[0]) > 3) || (propertyName === "month" && parseInt(data[0]) > 1)) {
30258
+ newItem.isCompleted = true;
30259
+ }
30260
+ newItem.value = data;
30261
+ dateTime[propertyName] = parseInt(data) > 0 ? parseInt(data) : undefined;
30262
+ };
30263
+ InputMaskDateTime.prototype.getCorrectDatePartFormat = function (inputData, matchWholeMask) {
30264
+ var lexem = inputData.lexem;
30265
+ var dataStr = inputData.value || "";
30266
+ if (!!dataStr && inputData.isCompleted) {
30267
+ dataStr = parseInt(dataStr).toString();
30268
+ }
30269
+ if (!!dataStr && inputData.isCompleted) {
30270
+ var zeroPaddings = this.getPlaceholder(lexem.count, dataStr, "0");
30271
+ dataStr = zeroPaddings + dataStr;
30272
+ }
30273
+ else {
30274
+ // !!!
30275
+ dataStr = trimDatePart(lexem, dataStr);
30276
+ if (matchWholeMask) {
30277
+ dataStr += this.getPlaceholder(lexem.count, dataStr, lexem.value);
30278
+ }
30279
+ }
30280
+ return dataStr;
30281
+ };
30282
+ InputMaskDateTime.prototype.createIDateTimeComposition = function () {
30283
+ var tempDateTime = {
30284
+ day: undefined,
30285
+ month: undefined,
30286
+ year: undefined,
30287
+ min: new Date(this.min || "0001-01-01"),
30288
+ max: new Date(this.max || "9999-12-31")
30289
+ };
30290
+ return tempDateTime;
30291
+ };
30292
+ InputMaskDateTime.prototype.parseTwoDigitYear = function (data) {
30293
+ var inputData = data.value;
30294
+ if (data.lexem.type !== "year" || data.lexem.count > 2)
30295
+ return inputData;
30296
+ if (!!this.max && this.max.length >= 4) {
30297
+ this.turnOfTheCentury = parseInt(this.max.slice(2, 4));
30298
+ }
30299
+ var year = parseInt(inputData);
30300
+ var result = (year > this.turnOfTheCentury ? "19" : "20") + inputData;
30301
+ return result;
30302
+ };
30303
+ InputMaskDateTime.prototype.getFormatedString = function (matchWholeMask) {
30304
+ var result = "";
30305
+ var prevSeparator = "";
30306
+ var prevIsCompleted = false;
30307
+ for (var index = 0; index < this.inputDateTimeData.length; index++) {
30308
+ var inputData = this.inputDateTimeData[index];
30309
+ switch (inputData.lexem.type) {
30310
+ case "day":
30311
+ case "month":
30312
+ case "year":
30313
+ if (inputData.value === undefined && !matchWholeMask) {
30314
+ result += (prevIsCompleted ? prevSeparator : "");
30315
+ return result;
30316
+ }
30317
+ else {
30318
+ var data = this.getCorrectDatePartFormat(inputData, matchWholeMask);
30319
+ result += (prevSeparator + data);
30320
+ prevIsCompleted = inputData.isCompleted;
30321
+ }
30322
+ break;
30323
+ case "separator":
30324
+ prevSeparator = inputData.lexem.value;
30325
+ break;
30326
+ }
30327
+ }
30328
+ return result;
30329
+ };
30330
+ InputMaskDateTime.prototype.setInputDateTimeData = function (numberParts) {
30331
+ var _this = this;
30332
+ var numberPartsArrayIndex = 0;
30333
+ this.initInputDateTimeData();
30334
+ this.lexems.forEach(function (lexem, index) {
30335
+ if (lexem.type !== "separator" && numberParts.length > 0 && numberPartsArrayIndex < numberParts.length) {
30336
+ var inputData = _this.inputDateTimeData[index];
30337
+ var currentPart = numberParts[numberPartsArrayIndex];
30338
+ var _data = _this.leaveOnlyNumbers(currentPart);
30339
+ inputData.value = _data.slice(0, lexem.maxCount);
30340
+ numberPartsArrayIndex++;
30341
+ }
30342
+ });
30343
+ };
30344
+ InputMaskDateTime.prototype._getMaskedValue = function (src, matchWholeMask) {
30345
+ var _this = this;
30346
+ if (matchWholeMask === void 0) { matchWholeMask = true; }
30347
+ var input = (src === undefined || src === null) ? "" : src.toString();
30348
+ var inputParts = this.getParts(input);
30349
+ this.setInputDateTimeData(inputParts);
30350
+ var tempDateTime = this.createIDateTimeComposition();
30351
+ this.inputDateTimeData.forEach(function (itemData) { return _this.updateInputDateTimeData(itemData, tempDateTime); });
30352
+ var result = this.getFormatedString(matchWholeMask);
30353
+ return result;
30354
+ };
30355
+ InputMaskDateTime.prototype.getPartsOld = function (input) {
30356
+ var inputParts = [];
30357
+ var separatorLexems = this.lexems.filter(function (l) { return l.type === "separator"; });
30358
+ var separatorLexemsIndex = 0;
30359
+ do {
30360
+ if (!separatorLexems[separatorLexemsIndex]) {
30361
+ if (!!input) {
30362
+ inputParts.push(input);
30363
+ input = "";
30364
+ }
30365
+ break;
30366
+ }
30367
+ var separatorCharIndex = input.indexOf(separatorLexems[separatorLexemsIndex].value);
30368
+ if (separatorCharIndex !== -1) {
30369
+ var part = input.slice(0, separatorCharIndex);
30370
+ if (!!part) {
30371
+ inputParts.push(part);
30372
+ }
30373
+ input = input.slice(separatorCharIndex + 1);
30374
+ }
30375
+ else {
30376
+ }
30377
+ separatorLexemsIndex++;
30378
+ } while (!!input);
30379
+ return inputParts;
30380
+ };
30381
+ InputMaskDateTime.prototype.getParts = function (input) {
30382
+ var inputParts = [];
30383
+ var lexemsWithValue = this.lexems.filter(function (l) { return l.type !== "separator"; });
30384
+ var separators = this.lexems.filter(function (l) { return l.type === "separator"; }).map(function (s) { return s.value; });
30385
+ var curPart = "";
30386
+ var foundSeparator = false;
30387
+ var foundPseudoSeparator = false;
30388
+ for (var i = 0; i < input.length; i++) {
30389
+ var inputChar = input[i];
30390
+ if (inputChar.match(_mask_utils__WEBPACK_IMPORTED_MODULE_2__["numberDefinition"]) || inputChar === lexemsWithValue[inputParts.length].value) {
30391
+ foundSeparator = false;
30392
+ foundPseudoSeparator = false;
30393
+ curPart += inputChar;
30394
+ }
30395
+ else {
30396
+ if (separators.indexOf(inputChar) !== -1) {
30397
+ if (!foundPseudoSeparator) {
30398
+ foundSeparator = true;
30399
+ inputParts.push(curPart);
30400
+ curPart = "";
30401
+ }
30402
+ }
30403
+ else {
30404
+ if (!foundSeparator) {
30405
+ foundPseudoSeparator = true;
30406
+ inputParts.push(curPart);
30407
+ curPart = "";
30408
+ }
30409
+ }
30410
+ }
30411
+ if (inputParts.length >= lexemsWithValue.length) {
30412
+ foundSeparator = false;
30413
+ break;
30414
+ }
30415
+ }
30416
+ if (curPart != "" || foundSeparator) {
30417
+ inputParts.push(curPart);
30418
+ }
30419
+ return inputParts;
30420
+ };
30421
+ InputMaskDateTime.prototype.getUnmaskedValue = function (src) {
30422
+ var _this = this;
30423
+ var input = (src === undefined || src === null) ? "" : src.toString();
30424
+ var inputParts = this.getParts(input);
30425
+ this.setInputDateTimeData(inputParts);
30426
+ var tempDateTime = this.createIDateTimeComposition();
30427
+ this.inputDateTimeData.forEach(function (inputData) {
30428
+ var str = inputData.value;
30429
+ if (!str || str.length < inputData.lexem.count)
30430
+ return undefined;
30431
+ tempDateTime[inputData.lexem.type] = parseInt(_this.parseTwoDigitYear(inputData));
30432
+ });
30433
+ return this.getISO_8601Format(tempDateTime);
30434
+ };
30435
+ InputMaskDateTime.prototype.getMaskedValue = function (src) {
30436
+ if (this.saveMaskedValue) {
30437
+ return this._getMaskedValue(src);
30438
+ }
30439
+ else {
30440
+ return this.getMaskedStrFromISO(src);
30441
+ }
30442
+ };
30443
+ InputMaskDateTime.prototype.processInput = function (args) {
30444
+ var result = { value: args.prevValue, caretPosition: args.selectionEnd, cancelPreventDefault: false };
30445
+ var leftPart = args.prevValue.slice(0, args.selectionStart);
30446
+ var rightPart = args.prevValue.slice(args.selectionEnd);
30447
+ result.value = this._getMaskedValue(leftPart + (args.insertedChars || "") + rightPart);
30448
+ if (!args.insertedChars && args.inputDirection === "backward") {
30449
+ result.caretPosition = args.selectionStart;
30450
+ }
30451
+ else {
30452
+ result.caretPosition = this._getMaskedValue(leftPart + (args.insertedChars || ""), false).length;
30453
+ }
30454
+ return result;
30455
+ };
30456
+ __decorate([
30457
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30458
+ ], InputMaskDateTime.prototype, "min", void 0);
30459
+ __decorate([
30460
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30461
+ ], InputMaskDateTime.prototype, "max", void 0);
30462
+ return InputMaskDateTime;
30463
+ }(_mask_pattern__WEBPACK_IMPORTED_MODULE_1__["InputMaskPattern"]));
30464
+
30465
+ _jsonobject__WEBPACK_IMPORTED_MODULE_0__["Serializer"].addClass("datetimemask", [
30466
+ {
30467
+ name: "min",
30468
+ type: "datetime",
30469
+ enableIf: function (obj) {
30470
+ return !!obj.pattern;
30471
+ }
30472
+ },
30473
+ {
30474
+ name: "max",
30475
+ type: "datetime",
30476
+ enableIf: function (obj) {
30477
+ return !!obj.pattern;
30478
+ }
30479
+ }
30480
+ ], function () {
30481
+ return new InputMaskDateTime();
30482
+ }, "patternmask");
30483
+
30484
+
30485
+ /***/ }),
30486
+
30487
+ /***/ "./src/mask/mask_numeric.ts":
30488
+ /*!**********************************!*\
30489
+ !*** ./src/mask/mask_numeric.ts ***!
30490
+ \**********************************/
30491
+ /*! exports provided: splitString, InputMaskNumeric */
30492
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
30493
+
30494
+ "use strict";
30495
+ __webpack_require__.r(__webpack_exports__);
30496
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "splitString", function() { return splitString; });
30497
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InputMaskNumeric", function() { return InputMaskNumeric; });
30498
+ /* harmony import */ var _jsonobject__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsonobject */ "./src/jsonobject.ts");
30499
+ /* harmony import */ var _mask_base__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mask_base */ "./src/mask/mask_base.ts");
30500
+ /* harmony import */ var _mask_utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mask_utils */ "./src/mask/mask_utils.ts");
30501
+ var __extends = (undefined && undefined.__extends) || (function () {
30502
+ var extendStatics = function (d, b) {
30503
+ extendStatics = Object.setPrototypeOf ||
30504
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30505
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30506
+ return extendStatics(d, b);
30507
+ };
30508
+ return function (d, b) {
30509
+ if (typeof b !== "function" && b !== null)
30510
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30511
+ extendStatics(d, b);
30512
+ function __() { this.constructor = d; }
30513
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30514
+ };
30515
+ })();
30516
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
30517
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
30518
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
30519
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
30520
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
30521
+ };
30522
+
30523
+
30524
+
30525
+ function splitString(str, reverse, n) {
30526
+ if (reverse === void 0) { reverse = true; }
30527
+ if (n === void 0) { n = 3; }
30528
+ var arr = [];
30529
+ if (reverse) {
30530
+ for (var i = str.length - n; i > -n; i -= n) {
30531
+ arr.push(str.substring(i, i + n));
30532
+ }
30533
+ arr = arr.reverse();
30534
+ }
30535
+ else {
30536
+ for (var i = 0; i < str.length; i += n) {
30537
+ arr.push(str.substring(i, i + n));
30538
+ }
30539
+ }
30540
+ return arr;
30541
+ }
30542
+ var InputMaskNumeric = /** @class */ (function (_super) {
30543
+ __extends(InputMaskNumeric, _super);
30544
+ function InputMaskNumeric() {
30545
+ return _super !== null && _super.apply(this, arguments) || this;
30546
+ }
30547
+ InputMaskNumeric.prototype.calccaretPosition = function (leftPart, args, maskedValue) {
30548
+ var leftPartMaskedLength = !!leftPart ? this.displayNumber(this.parseNumber(leftPart), false).length : 0;
30549
+ var validCharIndex = 0;
30550
+ var result = args.selectionStart;
30551
+ // let result = 0;
30552
+ var isDeleteKeyOperation = !args.insertedChars && args.inputDirection === "forward";
30553
+ for (var index = 0; index < maskedValue.length; index++) {
30554
+ var currentChar = maskedValue[index];
30555
+ if (currentChar !== this.thousandsSeparator) {
30556
+ validCharIndex++;
30557
+ }
30558
+ if (validCharIndex === (leftPartMaskedLength + (isDeleteKeyOperation ? 1 : 0))) {
30559
+ if (isDeleteKeyOperation) {
30560
+ result = index;
30561
+ }
30562
+ else {
30563
+ result = index + 1;
30564
+ }
30565
+ break;
30566
+ }
30567
+ // if (validCharIndex === leftPartMaskedLength) {
30568
+ // result = index + 1;
30569
+ // break;
30570
+ // }
30571
+ }
30572
+ return result;
30573
+ };
30574
+ InputMaskNumeric.prototype.displayNumber = function (parsedNumber, insertThousandsSeparator, matchWholeMask) {
30575
+ if (insertThousandsSeparator === void 0) { insertThousandsSeparator = true; }
30576
+ if (matchWholeMask === void 0) { matchWholeMask = false; }
30577
+ var displayIntegralPart = parsedNumber.integralPart;
30578
+ if (insertThousandsSeparator && !!displayIntegralPart) {
30579
+ displayIntegralPart = splitString(displayIntegralPart).join(this.thousandsSeparator);
30580
+ }
30581
+ var displayFractionalPart = parsedNumber.fractionalPart;
30582
+ var minusSign = parsedNumber.isNegative ? "-" : "";
30583
+ if (displayFractionalPart === "") {
30584
+ if (matchWholeMask) {
30585
+ return (!displayIntegralPart || displayIntegralPart === "0") ? displayIntegralPart : minusSign + displayIntegralPart;
30586
+ }
30587
+ else {
30588
+ var displayDecimalSeparator = parsedNumber.hasDecimalSeparator && !matchWholeMask ? this.decimalSeparator : "";
30589
+ var src = displayIntegralPart + displayDecimalSeparator;
30590
+ return src === "0" ? src : minusSign + src;
30591
+ }
30592
+ }
30593
+ else {
30594
+ displayIntegralPart = displayIntegralPart || "0";
30595
+ displayFractionalPart = displayFractionalPart.substring(0, this.precision);
30596
+ return [minusSign + displayIntegralPart, displayFractionalPart].join(this.decimalSeparator);
30597
+ }
30598
+ };
30599
+ InputMaskNumeric.prototype.convertNumber = function (parsedNumber) {
30600
+ var value;
30601
+ var minusSign = parsedNumber.isNegative ? "-" : "";
30602
+ if (!!parsedNumber.fractionalPart) {
30603
+ value = parseFloat(minusSign + (parsedNumber.integralPart || "0") + "." + parsedNumber.fractionalPart.substring(0, this.precision));
30604
+ }
30605
+ else {
30606
+ value = parseInt(minusSign + parsedNumber.integralPart || "0");
30607
+ }
30608
+ return value;
30609
+ };
30610
+ InputMaskNumeric.prototype.validateNumber = function (number) {
30611
+ var min = this.min || Number.MIN_SAFE_INTEGER;
30612
+ var max = this.max || Number.MAX_SAFE_INTEGER;
30613
+ if (this.min !== undefined || this.max !== undefined) {
30614
+ var value = this.convertNumber(number);
30615
+ if (Number.isNaN(value)) {
30616
+ return true;
30617
+ }
30618
+ return value >= min && value <= max;
30619
+ }
30620
+ return true;
30621
+ };
30622
+ InputMaskNumeric.prototype.parseNumber = function (src) {
30623
+ var result = { integralPart: "", fractionalPart: "", hasDecimalSeparator: false, isNegative: false };
30624
+ var input = (src === undefined || src === null) ? "" : src.toString();
30625
+ if (typeof src === "number") {
30626
+ input = src.toString().replace(".", this.decimalSeparator);
30627
+ }
30628
+ var minusCharCount = 0;
30629
+ for (var inputIndex = 0; inputIndex < input.length; inputIndex++) {
30630
+ var currentChar = input[inputIndex];
30631
+ switch (currentChar) {
30632
+ case "-": {
30633
+ if (this.allowNegativeValues) {
30634
+ minusCharCount++;
30635
+ }
30636
+ break;
30637
+ }
30638
+ case this.decimalSeparator: {
30639
+ if (this.precision > 0) {
30640
+ result.hasDecimalSeparator = true;
30641
+ }
30642
+ break;
30643
+ }
30644
+ case this.thousandsSeparator: {
30645
+ break;
30646
+ }
30647
+ default: {
30648
+ if (currentChar.match(_mask_utils__WEBPACK_IMPORTED_MODULE_2__["numberDefinition"])) {
30649
+ if (result.hasDecimalSeparator) {
30650
+ result.fractionalPart += currentChar;
30651
+ }
30652
+ else {
30653
+ result.integralPart += currentChar;
30654
+ }
30655
+ }
30656
+ }
30657
+ }
30658
+ }
30659
+ result.isNegative = minusCharCount % 2 !== 0;
30660
+ if (result.integralPart.length > 1 && result.integralPart[0] === "0") {
30661
+ result.integralPart = result.integralPart.slice(1);
30662
+ }
30663
+ return result;
30664
+ };
30665
+ InputMaskNumeric.prototype.getNumberMaskedValue = function (src, matchWholeMask) {
30666
+ if (matchWholeMask === void 0) { matchWholeMask = false; }
30667
+ var input = (src === undefined || src === null) ? "" : src;
30668
+ var parsedNumber = this.parseNumber(input);
30669
+ var displayText = this.displayNumber(parsedNumber, true, matchWholeMask);
30670
+ return displayText;
30671
+ };
30672
+ InputMaskNumeric.prototype.getNumberUnmaskedValue = function (str) {
30673
+ var parsedNumber = this.parseNumber(str);
30674
+ return this.convertNumber(parsedNumber);
30675
+ };
30676
+ InputMaskNumeric.prototype.getMaskedValue = function (src) {
30677
+ return this.getNumberMaskedValue(src, true);
30678
+ };
30679
+ InputMaskNumeric.prototype.getUnmaskedValue = function (src) {
30680
+ return this.getNumberUnmaskedValue(src);
30681
+ };
30682
+ InputMaskNumeric.prototype.processInput = function (args) {
30683
+ var result = { value: args.prevValue, caretPosition: args.selectionEnd, cancelPreventDefault: false };
30684
+ var leftPart = args.prevValue.slice(0, args.selectionStart) + (args.insertedChars || "");
30685
+ var rightPart = args.prevValue.slice(args.selectionEnd);
30686
+ var src = leftPart + rightPart;
30687
+ var parsedNumber = this.parseNumber(src);
30688
+ if (!this.validateNumber(parsedNumber)) {
30689
+ return result;
30690
+ }
30691
+ var maskedValue = this.getNumberMaskedValue(src);
30692
+ var caretPosition = this.calccaretPosition(leftPart, args, maskedValue);
30693
+ result.value = maskedValue;
30694
+ result.caretPosition = caretPosition;
30695
+ return result;
30696
+ };
30697
+ InputMaskNumeric.prototype.getType = function () {
30698
+ return "numericmask";
30699
+ };
30700
+ InputMaskNumeric.prototype.isPropertyEmpty = function (value) {
30701
+ return value === "" || value === undefined || value === null;
30702
+ };
30703
+ __decorate([
30704
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30705
+ ], InputMaskNumeric.prototype, "allowNegativeValues", void 0);
30706
+ __decorate([
30707
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30708
+ ], InputMaskNumeric.prototype, "decimalSeparator", void 0);
30709
+ __decorate([
30710
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30711
+ ], InputMaskNumeric.prototype, "precision", void 0);
30712
+ __decorate([
30713
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30714
+ ], InputMaskNumeric.prototype, "thousandsSeparator", void 0);
30715
+ __decorate([
30716
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30717
+ ], InputMaskNumeric.prototype, "min", void 0);
30718
+ __decorate([
30719
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_0__["property"])()
30720
+ ], InputMaskNumeric.prototype, "max", void 0);
30721
+ return InputMaskNumeric;
30722
+ }(_mask_base__WEBPACK_IMPORTED_MODULE_1__["InputMaskBase"]));
30723
+
30724
+ _jsonobject__WEBPACK_IMPORTED_MODULE_0__["Serializer"].addClass("numericmask", [
30725
+ { name: "allowNegativeValues:boolean", default: true },
30726
+ { name: "decimalSeparator", default: ".", maxLength: 1 },
30727
+ { name: "thousandsSeparator", default: ",", maxLength: 1 },
30728
+ { name: "precision:number", default: 2, minValue: 0 },
30729
+ { name: "min:number" },
30730
+ { name: "max:number" },
30731
+ ], function () {
30732
+ return new InputMaskNumeric();
30733
+ }, "masksettings");
30734
+
30735
+
30736
+ /***/ }),
30737
+
30738
+ /***/ "./src/mask/mask_pattern.ts":
30739
+ /*!**********************************!*\
30740
+ !*** ./src/mask/mask_pattern.ts ***!
30741
+ \**********************************/
30742
+ /*! exports provided: getLiterals, getMaskedValueByPattern, getUnmaskedValueByPattern, InputMaskPattern */
30743
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
30744
+
30745
+ "use strict";
30746
+ __webpack_require__.r(__webpack_exports__);
30747
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getLiterals", function() { return getLiterals; });
30748
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getMaskedValueByPattern", function() { return getMaskedValueByPattern; });
30749
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getUnmaskedValueByPattern", function() { return getUnmaskedValueByPattern; });
30750
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "InputMaskPattern", function() { return InputMaskPattern; });
30751
+ /* harmony import */ var _settings__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../settings */ "./src/settings.ts");
30752
+ /* harmony import */ var _jsonobject__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../jsonobject */ "./src/jsonobject.ts");
30753
+ /* harmony import */ var _mask_base__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mask_base */ "./src/mask/mask_base.ts");
30754
+ var __extends = (undefined && undefined.__extends) || (function () {
30755
+ var extendStatics = function (d, b) {
30756
+ extendStatics = Object.setPrototypeOf ||
30757
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
30758
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
30759
+ return extendStatics(d, b);
30760
+ };
30761
+ return function (d, b) {
30762
+ if (typeof b !== "function" && b !== null)
30763
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
30764
+ extendStatics(d, b);
30765
+ function __() { this.constructor = d; }
30766
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30767
+ };
30768
+ })();
30769
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
30770
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
30771
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
30772
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
30773
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
30774
+ };
30775
+
30776
+
30777
+
30778
+ function getLiterals(pattern) {
30779
+ var result = [];
30780
+ var prevCharIsEscaped = false;
30781
+ var definitionsKeys = Object.keys(_settings__WEBPACK_IMPORTED_MODULE_0__["settings"].maskSettings.patternDefinitions);
30782
+ for (var index = 0; index < pattern.length; index++) {
30783
+ var currentChar = pattern[index];
30784
+ if (currentChar === _settings__WEBPACK_IMPORTED_MODULE_0__["settings"].maskSettings.patternEscapeChar) {
30785
+ prevCharIsEscaped = true;
30786
+ }
30787
+ else if (prevCharIsEscaped) {
30788
+ prevCharIsEscaped = false;
30789
+ result.push({ type: "fixed", value: currentChar });
30790
+ }
30791
+ else {
30792
+ result.push({ type: definitionsKeys.indexOf(currentChar) !== -1 ? "regex" : "const", value: currentChar });
30793
+ }
30794
+ }
30795
+ return result;
30796
+ }
30797
+ function getFirstMatch(str, strIndex, literal) {
30798
+ var currentDefinition = _settings__WEBPACK_IMPORTED_MODULE_0__["settings"].maskSettings.patternDefinitions[literal.value];
30799
+ while (strIndex < str.length) {
30800
+ if (str[strIndex].match(currentDefinition)) {
30801
+ return strIndex;
30802
+ }
30803
+ strIndex++;
30804
+ }
30805
+ return strIndex;
30806
+ }
30807
+ function getMaskedValueByPattern(src, pattern, matchWholeMask) {
30808
+ var input = (src === undefined || src === null) ? "" : src;
30809
+ var result = "";
30810
+ var strIndex = 0;
30811
+ var literals = (typeof pattern === "string") ? getLiterals(pattern) : pattern;
30812
+ for (var maskIndex = 0; maskIndex < literals.length; maskIndex++) {
30813
+ switch (literals[maskIndex].type) {
30814
+ case "regex":
30815
+ if (strIndex < input.length) {
30816
+ strIndex = getFirstMatch(input, strIndex, literals[maskIndex]);
30817
+ }
30818
+ if (strIndex < input.length) {
30819
+ result += input[strIndex];
30820
+ }
30821
+ else if (matchWholeMask) {
30822
+ result += _settings__WEBPACK_IMPORTED_MODULE_0__["settings"].maskSettings.patternPlaceholderChar;
30823
+ }
30824
+ else {
30825
+ return result;
30826
+ }
30827
+ strIndex++;
30828
+ break;
30829
+ case "const":
30830
+ case "fixed":
30831
+ result += literals[maskIndex].value;
30832
+ if (literals[maskIndex].value === input[strIndex]) {
30833
+ strIndex++;
30834
+ }
30835
+ break;
30836
+ }
30837
+ }
30838
+ return result;
30839
+ }
30840
+ function getUnmaskedValueByPattern(str, pattern, matchWholeMask, skipFixedChar) {
30841
+ if (skipFixedChar === void 0) { skipFixedChar = false; }
30842
+ var result = "";
30843
+ if (!str)
30844
+ return result;
30845
+ var literals = (typeof pattern === "string") ? getLiterals(pattern) : pattern;
30846
+ for (var index = 0; index < literals.length; index++) {
30847
+ if (literals[index].type === "fixed" && !skipFixedChar) {
30848
+ result += literals[index].value;
30849
+ }
30850
+ if (literals[index].type === "regex") {
30851
+ var currentDefinition = _settings__WEBPACK_IMPORTED_MODULE_0__["settings"].maskSettings.patternDefinitions[literals[index].value];
30852
+ if (!!str[index] && str[index].match(currentDefinition)) {
30853
+ result += str[index];
30854
+ }
30855
+ else if (matchWholeMask) {
30856
+ result = "";
30857
+ break;
30858
+ }
30859
+ else {
30860
+ break;
30861
+ }
30862
+ }
30863
+ }
30864
+ return result;
30865
+ }
30866
+ var InputMaskPattern = /** @class */ (function (_super) {
30867
+ __extends(InputMaskPattern, _super);
30868
+ function InputMaskPattern() {
30869
+ var _this = _super !== null && _super.apply(this, arguments) || this;
30870
+ _this.literals = [];
30871
+ return _this;
30872
+ }
30873
+ InputMaskPattern.prototype.updateLiterals = function () {
30874
+ this.literals = getLiterals(this.pattern || "");
30875
+ };
30876
+ InputMaskPattern.prototype.onPropertyValueChanged = function (name, oldValue, newValue) {
30877
+ if (name === "pattern") {
30878
+ this.updateLiterals();
30879
+ }
30880
+ };
30881
+ InputMaskPattern.prototype.getType = function () {
30882
+ return "patternmask";
30883
+ };
30884
+ InputMaskPattern.prototype.fromJSON = function (json, options) {
30885
+ _super.prototype.fromJSON.call(this, json, options);
30886
+ this.updateLiterals();
30887
+ };
30888
+ InputMaskPattern.prototype._getMaskedValue = function (src, matchWholeMask) {
30889
+ if (matchWholeMask === void 0) { matchWholeMask = false; }
30890
+ var input = (src === undefined || src === null) ? "" : src;
30891
+ return getMaskedValueByPattern(input, this.literals, matchWholeMask);
30892
+ };
30893
+ InputMaskPattern.prototype._getUnmaskedValue = function (src, matchWholeMask) {
30894
+ if (matchWholeMask === void 0) { matchWholeMask = false; }
30895
+ var input = (src === undefined || src === null) ? "" : src;
30896
+ return getUnmaskedValueByPattern(input, this.literals, matchWholeMask);
30897
+ };
30898
+ InputMaskPattern.prototype.processInput = function (args) {
30899
+ var result = { value: args.prevValue, caretPosition: args.selectionEnd, cancelPreventDefault: false };
30900
+ if (!args.insertedChars && args.selectionStart === args.selectionEnd) {
30901
+ return result;
30902
+ }
30903
+ var leftPart = args.prevValue.slice(0, args.selectionStart) + (args.insertedChars || "");
30904
+ var leftPartUnmasked = getUnmaskedValueByPattern(args.prevValue.slice(0, args.selectionStart), this.literals.slice(0, args.selectionStart), false);
30905
+ var rightPartUnmasked = getUnmaskedValueByPattern(args.prevValue.slice(args.selectionEnd), this.literals.slice(args.selectionEnd), false, true);
30906
+ result.value = this._getMaskedValue(leftPartUnmasked + (args.insertedChars || "") + rightPartUnmasked, true);
30907
+ if (!args.insertedChars && args.inputDirection === "backward") {
30908
+ result.caretPosition = args.selectionStart;
30909
+ }
30910
+ else {
30911
+ result.caretPosition = this._getMaskedValue(leftPart).length;
30912
+ }
30913
+ return result;
30914
+ };
30915
+ InputMaskPattern.prototype.getMaskedValue = function (src) {
30916
+ return this._getMaskedValue(src, true);
30917
+ };
30918
+ InputMaskPattern.prototype.getUnmaskedValue = function (src) {
30919
+ return this._getUnmaskedValue(src, true);
30920
+ };
30921
+ __decorate([
30922
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_1__["property"])()
30923
+ ], InputMaskPattern.prototype, "pattern", void 0);
30924
+ return InputMaskPattern;
30925
+ }(_mask_base__WEBPACK_IMPORTED_MODULE_2__["InputMaskBase"]));
30926
+
30927
+ _jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].addClass("patternmask", [
30928
+ { name: "pattern" },
30929
+ ], function () {
30930
+ return new InputMaskPattern();
30931
+ }, "masksettings");
30932
+
30933
+
30934
+ /***/ }),
30935
+
30936
+ /***/ "./src/mask/mask_utils.ts":
30937
+ /*!********************************!*\
30938
+ !*** ./src/mask/mask_utils.ts ***!
30939
+ \********************************/
30940
+ /*! exports provided: numberDefinition */
30941
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
30942
+
30943
+ "use strict";
30944
+ __webpack_require__.r(__webpack_exports__);
30945
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "numberDefinition", function() { return numberDefinition; });
30946
+ var numberDefinition = /[0-9]/;
30947
+
30948
+
29695
30949
  /***/ }),
29696
30950
 
29697
30951
  /***/ "./src/multiSelectListModel.ts":
@@ -40590,7 +41844,7 @@ var QuestionSelectBase = /** @class */ (function (_super) {
40590
41844
  vals.push(!onGetValueCallback ? value[i] : onGetValueCallback(i));
40591
41845
  }
40592
41846
  if (_helpers__WEBPACK_IMPORTED_MODULE_8__["Helpers"].isTwoValueEquals(this.value, vals)) {
40593
- this.getMultipleSelectedItems().forEach(function (item) { return strs.push(_this.getItemDisplayValue(item)); });
41847
+ this.getMultipleSelectedItems().forEach(function (item, index) { return strs.push(_this.getItemDisplayValue(item, vals[index])); });
40594
41848
  }
40595
41849
  if (strs.length === 0) {
40596
41850
  for (var i = 0; i < vals.length; i++) {
@@ -40602,9 +41856,15 @@ var QuestionSelectBase = /** @class */ (function (_super) {
40602
41856
  }
40603
41857
  return strs.join(", ");
40604
41858
  };
40605
- QuestionSelectBase.prototype.getItemDisplayValue = function (item) {
40606
- if (item === this.otherItem && this.comment)
40607
- return this.comment;
41859
+ QuestionSelectBase.prototype.getItemDisplayValue = function (item, val) {
41860
+ if (item === this.otherItem) {
41861
+ if (this.hasOther && this.showCommentArea && !!val) {
41862
+ return val;
41863
+ }
41864
+ if (this.comment) {
41865
+ return this.comment;
41866
+ }
41867
+ }
40608
41868
  return item.locText.textOrHtml;
40609
41869
  };
40610
41870
  QuestionSelectBase.prototype.getFilteredChoices = function () {
@@ -40844,7 +42104,9 @@ var QuestionSelectBase = /** @class */ (function (_super) {
40844
42104
  newValue = this.setOtherValueIntoValue(newValue);
40845
42105
  }
40846
42106
  else {
40847
- newComment = this.data.getComment(this.getValueName());
42107
+ if (this.data) {
42108
+ newComment = this.data.getComment(this.getValueName());
42109
+ }
40848
42110
  }
40849
42111
  }
40850
42112
  _super.prototype.updateValueFromSurvey.call(this, newValue, clearData);
@@ -45795,6 +47057,7 @@ var QuestionFileModel = /** @class */ (function (_super) {
45795
47057
  id: "sv-file-choose-file",
45796
47058
  iconSize: "auto",
45797
47059
  data: { question: _this },
47060
+ enabledIf: function () { return !_this.isInputReadOnly; },
45798
47061
  component: "sv-file-choose-btn"
45799
47062
  });
45800
47063
  _this.startCameraAction = new _actions_action__WEBPACK_IMPORTED_MODULE_8__["Action"]({
@@ -61859,6 +63122,7 @@ __webpack_require__.r(__webpack_exports__);
61859
63122
  /* harmony import */ var _error__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./error */ "./src/error.ts");
61860
63123
  /* harmony import */ var _settings__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./settings */ "./src/settings.ts");
61861
63124
  /* harmony import */ var _question_textbase__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./question_textbase */ "./src/question_textbase.ts");
63125
+ /* harmony import */ var _mask_input_element_adapter__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./mask/input_element_adapter */ "./src/mask/input_element_adapter.ts");
61862
63126
  var __extends = (undefined && undefined.__extends) || (function () {
61863
63127
  var extendStatics = function (d, b) {
61864
63128
  extendStatics = Object.setPrototypeOf ||
@@ -61874,6 +63138,13 @@ var __extends = (undefined && undefined.__extends) || (function () {
61874
63138
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
61875
63139
  };
61876
63140
  })();
63141
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
63142
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
63143
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
63144
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
63145
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
63146
+ };
63147
+
61877
63148
 
61878
63149
 
61879
63150
 
@@ -61923,7 +63194,8 @@ var QuestionTextModel = /** @class */ (function (_super) {
61923
63194
  _this.onTextKeyDownHandler(event);
61924
63195
  };
61925
63196
  _this.onChange = function (event) {
61926
- if (event.target === _settings__WEBPACK_IMPORTED_MODULE_6__["settings"].environment.root.activeElement) {
63197
+ var elementIsFocused = event.target === _settings__WEBPACK_IMPORTED_MODULE_6__["settings"].environment.root.activeElement;
63198
+ if (elementIsFocused) {
61927
63199
  if (_this.isInputTextUpdate) {
61928
63200
  _this.updateValueOnEvent(event);
61929
63201
  }
@@ -61942,6 +63214,7 @@ var QuestionTextModel = /** @class */ (function (_super) {
61942
63214
  };
61943
63215
  _this.createLocalizableString("minErrorText", _this, true, "minError");
61944
63216
  _this.createLocalizableString("maxErrorText", _this, true, "maxError");
63217
+ _this.setNewMaskSettingsProperty();
61945
63218
  _this.locDataListValue = new _localizablestring__WEBPACK_IMPORTED_MODULE_2__["LocalizableStrings"](_this);
61946
63219
  _this.locDataListValue.onValueChanged = function (oldValue, newValue) {
61947
63220
  _this.propertyValueChanged("dataList", oldValue, newValue);
@@ -61955,6 +63228,57 @@ var QuestionTextModel = /** @class */ (function (_super) {
61955
63228
  });
61956
63229
  return _this;
61957
63230
  }
63231
+ QuestionTextModel.prototype.createMaskAdapter = function () {
63232
+ if (!!this.input && !this.maskTypeIsEmpty) {
63233
+ this.maskInputAdapter = new _mask_input_element_adapter__WEBPACK_IMPORTED_MODULE_8__["InputElementAdapter"](this.maskInstance, this.input, this.value);
63234
+ }
63235
+ };
63236
+ QuestionTextModel.prototype.deleteMaskAdapter = function () {
63237
+ if (this.maskInputAdapter) {
63238
+ this.maskInputAdapter.dispose();
63239
+ this.maskInputAdapter = undefined;
63240
+ }
63241
+ };
63242
+ QuestionTextModel.prototype.updateMaskAdapter = function () {
63243
+ this.deleteMaskAdapter();
63244
+ this.createMaskAdapter();
63245
+ };
63246
+ QuestionTextModel.prototype.onSetMaskType = function (newValue) {
63247
+ this.setNewMaskSettingsProperty();
63248
+ this.updateMaskAdapter();
63249
+ };
63250
+ Object.defineProperty(QuestionTextModel.prototype, "maskTypeIsEmpty", {
63251
+ get: function () {
63252
+ return this.maskType === "none";
63253
+ },
63254
+ enumerable: false,
63255
+ configurable: true
63256
+ });
63257
+ Object.defineProperty(QuestionTextModel.prototype, "maskSettings", {
63258
+ get: function () {
63259
+ return this.getPropertyValue("maskSettings");
63260
+ },
63261
+ set: function (val) {
63262
+ if (!val)
63263
+ return;
63264
+ this.setNewMaskSettingsProperty();
63265
+ this.maskSettings.fromJSON(val.toJSON());
63266
+ this.updateMaskAdapter();
63267
+ },
63268
+ enumerable: false,
63269
+ configurable: true
63270
+ });
63271
+ QuestionTextModel.prototype.setNewMaskSettingsProperty = function () {
63272
+ this.setPropertyValue("maskSettings", this.createMaskSettings());
63273
+ };
63274
+ QuestionTextModel.prototype.createMaskSettings = function () {
63275
+ var maskClassName = (!this.maskType || this.maskType === "none") ? "masksettings" : (this.maskType + "mask");
63276
+ if (!_jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].findClass(maskClassName)) {
63277
+ maskClassName = "masksettings";
63278
+ }
63279
+ var inputMask = _jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].createClass(maskClassName);
63280
+ return inputMask;
63281
+ };
61958
63282
  QuestionTextModel.prototype.isTextValue = function () {
61959
63283
  return ["text", "number", "password"].indexOf(this.inputType) > -1;
61960
63284
  };
@@ -62201,6 +63525,30 @@ var QuestionTextModel = /** @class */ (function (_super) {
62201
63525
  enumerable: false,
62202
63526
  configurable: true
62203
63527
  });
63528
+ Object.defineProperty(QuestionTextModel.prototype, "maskInstance", {
63529
+ get: function () {
63530
+ return this.maskSettings;
63531
+ },
63532
+ enumerable: false,
63533
+ configurable: true
63534
+ });
63535
+ Object.defineProperty(QuestionTextModel.prototype, "inputValue", {
63536
+ get: function () {
63537
+ return !this.maskTypeIsEmpty ? this.maskInstance.getMaskedValue(this.value) : this.value;
63538
+ },
63539
+ set: function (val) {
63540
+ var value = val;
63541
+ if (!this.maskTypeIsEmpty) {
63542
+ value = this.maskInstance.getUnmaskedValue(val);
63543
+ if (!!value && this.maskSettings.saveMaskedValue) {
63544
+ value = this.maskInstance.getMaskedValue(value);
63545
+ }
63546
+ }
63547
+ this.value = value;
63548
+ },
63549
+ enumerable: false,
63550
+ configurable: true
63551
+ });
62204
63552
  QuestionTextModel.prototype.onCheckForErrors = function (errors, isOnValueChanged) {
62205
63553
  var _this = this;
62206
63554
  _super.prototype.onCheckForErrors.call(this, errors, isOnValueChanged);
@@ -62399,9 +63747,24 @@ var QuestionTextModel = /** @class */ (function (_super) {
62399
63747
  QuestionTextModel.prototype.updateValueOnEvent = function (event) {
62400
63748
  var newValue = event.target.value;
62401
63749
  if (!this.isTwoValueEquals(this.value, newValue)) {
62402
- this.value = newValue;
63750
+ this.inputValue = newValue;
63751
+ }
63752
+ };
63753
+ QuestionTextModel.prototype.afterRenderQuestionElement = function (el) {
63754
+ if (!!el) {
63755
+ this.input = el instanceof HTMLInputElement ? el : el.querySelector("input");
63756
+ this.createMaskAdapter();
62403
63757
  }
63758
+ _super.prototype.afterRenderQuestionElement.call(this, el);
62404
63759
  };
63760
+ QuestionTextModel.prototype.beforeDestroyQuestionElement = function (el) {
63761
+ this.deleteMaskAdapter();
63762
+ };
63763
+ __decorate([
63764
+ Object(_jsonobject__WEBPACK_IMPORTED_MODULE_1__["property"])({
63765
+ onSet: function (newValue, target) { target.onSetMaskType(newValue); }
63766
+ })
63767
+ ], QuestionTextModel.prototype, "maskType", void 0);
62405
63768
  return QuestionTextModel;
62406
63769
  }(_question_textbase__WEBPACK_IMPORTED_MODULE_7__["QuestionTextBase"]));
62407
63770
 
@@ -62565,6 +63928,30 @@ _jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].addClass("text", [
62565
63928
  return isMinMaxType(obj);
62566
63929
  },
62567
63930
  },
63931
+ {
63932
+ name: "maskType:masktype",
63933
+ default: "none",
63934
+ visibleIndex: 0,
63935
+ dependsOn: "inputType",
63936
+ visibleIf: function (obj) {
63937
+ return obj.inputType === "text";
63938
+ }
63939
+ },
63940
+ {
63941
+ name: "maskSettings:masksettings",
63942
+ className: "masksettings",
63943
+ visibleIndex: 1,
63944
+ dependsOn: "inputType",
63945
+ visibleIf: function (obj) {
63946
+ return obj.inputType === "text";
63947
+ },
63948
+ onGetValue: function (obj) {
63949
+ return obj.maskSettings.getData();
63950
+ },
63951
+ onSetValue: function (obj, value) {
63952
+ obj.maskSettings.setData(value);
63953
+ },
63954
+ },
62568
63955
  {
62569
63956
  name: "step:number",
62570
63957
  dependsOn: "inputType",
@@ -63656,6 +65043,19 @@ var SurveyActionBar = /** @class */ (function (_super) {
63656
65043
  this.model.resetResponsivityManager();
63657
65044
  }
63658
65045
  };
65046
+ SurveyActionBar.prototype.componentDidUpdate = function (prevProps, prevState) {
65047
+ _super.prototype.componentDidUpdate.call(this, prevProps, prevState);
65048
+ if (prevProps.model == this.props.model) {
65049
+ return;
65050
+ }
65051
+ if (!!this.model.hasActions) {
65052
+ this.model.resetResponsivityManager();
65053
+ var container = this.rootRef.current;
65054
+ if (!!container) {
65055
+ this.model.initResponsivityManager(container, function (callback) { setTimeout(callback); });
65056
+ }
65057
+ }
65058
+ };
63659
65059
  SurveyActionBar.prototype.getStateElement = function () {
63660
65060
  return this.model;
63661
65061
  };
@@ -72266,7 +73666,7 @@ var SurveyQuestionText = /** @class */ (function (_super) {
72266
73666
  var inputClass = this.question.getControlClass();
72267
73667
  var placeholder = this.question.renderedPlaceholder;
72268
73668
  if (this.question.isReadOnlyRenderDiv()) {
72269
- return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", null, this.question.value);
73669
+ return react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", null, this.question.inputValue);
72270
73670
  }
72271
73671
  var counter = !!this.question.getMaxLength() ? (react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_components_character_counter__WEBPACK_IMPORTED_MODULE_3__["CharacterCounterComponent"], { counter: this.question.characterCounter, remainingCharacterCounter: this.question.cssClasses.remainingCharacterCounter })) : null;
72272
73672
  return (react__WEBPACK_IMPORTED_MODULE_0__["createElement"](react__WEBPACK_IMPORTED_MODULE_0__["Fragment"], null,
@@ -72282,6 +73682,12 @@ var SurveyQuestionText = /** @class */ (function (_super) {
72282
73682
  this.renderDataList()) :
72283
73683
  this.renderInput());
72284
73684
  };
73685
+ SurveyQuestionText.prototype.setValueCore = function (newValue) {
73686
+ this.question.inputValue = newValue;
73687
+ };
73688
+ SurveyQuestionText.prototype.getValueCore = function () {
73689
+ return this.question.inputValue;
73690
+ };
72285
73691
  SurveyQuestionText.prototype.renderDataList = function () {
72286
73692
  if (!this.question.dataListId)
72287
73693
  return null;
@@ -73870,7 +75276,16 @@ var settings = {
73870
75276
  "impp",
73871
75277
  ]
73872
75278
  },
73873
- legacyProgressBarView: false
75279
+ legacyProgressBarView: false,
75280
+ maskSettings: {
75281
+ patternPlaceholderChar: "_",
75282
+ patternEscapeChar: "\\",
75283
+ patternDefinitions: {
75284
+ "9": /[0-9]/,
75285
+ "a": /[a-zA-Z]/,
75286
+ "#": /[a-zA-Z0-9]/
75287
+ }
75288
+ }
73874
75289
  };
73875
75290
 
73876
75291
 
@@ -74533,13 +75948,25 @@ var SurveyElement = /** @class */ (function (_super) {
74533
75948
  if (!elementId || typeof root === "undefined")
74534
75949
  return false;
74535
75950
  var el = root.getElementById(elementId);
75951
+ return SurveyElement.ScrollElementToViewCore(el, false, scrollIfVisible);
75952
+ };
75953
+ SurveyElement.ScrollElementToViewCore = function (el, checkLeft, scrollIfVisible) {
74536
75954
  if (!el || !el.scrollIntoView)
74537
75955
  return false;
74538
- var elemTop = scrollIfVisible ? -1 : el.getBoundingClientRect().top;
74539
- var needScroll = elemTop < 0;
74540
- if (!needScroll && !!window) {
75956
+ var elTop = scrollIfVisible ? -1 : el.getBoundingClientRect().top;
75957
+ var needScroll = elTop < 0;
75958
+ var elLeft = -1;
75959
+ if (!needScroll && checkLeft) {
75960
+ elLeft = el.getBoundingClientRect().left;
75961
+ needScroll = elLeft < 0;
75962
+ }
75963
+ if (!!window && !needScroll) {
74541
75964
  var height = window.innerHeight;
74542
- needScroll = height > 0 && height < elemTop;
75965
+ needScroll = height > 0 && height < elTop;
75966
+ if (!needScroll && checkLeft) {
75967
+ var width = window.innerWidth;
75968
+ needScroll = width > 0 && width < elLeft;
75969
+ }
74543
75970
  }
74544
75971
  if (needScroll) {
74545
75972
  el.scrollIntoView();
@@ -74582,6 +76009,7 @@ var SurveyElement = /** @class */ (function (_super) {
74582
76009
  var el = root.getElementById(elementId);
74583
76010
  // https://stackoverflow.com/questions/19669786/check-if-element-is-visible-in-dom
74584
76011
  if (el && !el["disabled"] && el.style.display !== "none" && el.offsetParent !== null) {
76012
+ SurveyElement.ScrollElementToViewCore(el, true, false);
74585
76013
  el.focus();
74586
76014
  return true;
74587
76015
  }
@@ -78959,6 +80387,9 @@ var SurveyModel = /** @class */ (function (_super) {
78959
80387
  this.onEditingObjPropertyChanged = function (sender, options) {
78960
80388
  if (!_jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].hasOriginalProperty(_this.editingObj, options.name))
78961
80389
  return;
80390
+ if (options.name === "locale") {
80391
+ _this.setDataCore({});
80392
+ }
78962
80393
  _this.updateOnSetValue(options.name, _this.editingObj[options.name], options.oldValue);
78963
80394
  };
78964
80395
  this.editingObj.onPropertyChanged.add(this.onEditingObjPropertyChanged);
@@ -80364,7 +81795,7 @@ var SurveyModel = /** @class */ (function (_super) {
80364
81795
  return;
80365
81796
  if (this.isShowingPreview) {
80366
81797
  this.runningPages = this.pages.slice(0, this.pages.length);
80367
- this.setupPagesForPageModes(true);
81798
+ this.setupPagesForPageModes(true, false);
80368
81799
  }
80369
81800
  else {
80370
81801
  if (this.runningPages) {
@@ -80391,7 +81822,8 @@ var SurveyModel = /** @class */ (function (_super) {
80391
81822
  }
80392
81823
  }
80393
81824
  };
80394
- SurveyModel.prototype.onQuestionsOnPageModeChanged = function (oldValue) {
81825
+ SurveyModel.prototype.onQuestionsOnPageModeChanged = function (oldValue, isFirstLoad) {
81826
+ if (isFirstLoad === void 0) { isFirstLoad = false; }
80395
81827
  if (this.isShowingPreview)
80396
81828
  return;
80397
81829
  if (this.questionsOnPageMode == "standard" || this.isDesignMode) {
@@ -80404,7 +81836,7 @@ var SurveyModel = /** @class */ (function (_super) {
80404
81836
  if (!oldValue || oldValue == "standard") {
80405
81837
  this.originalPages = this.pages.slice(0, this.pages.length);
80406
81838
  }
80407
- this.setupPagesForPageModes(this.isSinglePage);
81839
+ this.setupPagesForPageModes(this.isSinglePage, isFirstLoad);
80408
81840
  }
80409
81841
  this.runConditions();
80410
81842
  this.updateVisibleIndexes();
@@ -80421,9 +81853,9 @@ var SurveyModel = /** @class */ (function (_super) {
80421
81853
  SurveyModel.prototype.getPageStartIndex = function () {
80422
81854
  return this.firstPageIsStarted && this.pages.length > 0 ? 1 : 0;
80423
81855
  };
80424
- SurveyModel.prototype.setupPagesForPageModes = function (isSinglePage) {
81856
+ SurveyModel.prototype.setupPagesForPageModes = function (isSinglePage, isFirstLoad) {
80425
81857
  this.questionHashesClear();
80426
- this.isCreatingPagesForPreview = true;
81858
+ this.isLockingUpdateOnPageModes = !isFirstLoad;
80427
81859
  var startIndex = this.getPageStartIndex();
80428
81860
  _super.prototype.startLoadingFromJson.call(this);
80429
81861
  var newPages = this.createPagesForQuestionOnPageMode(isSinglePage, startIndex);
@@ -80438,7 +81870,7 @@ var SurveyModel = /** @class */ (function (_super) {
80438
81870
  }
80439
81871
  this.doElementsOnLoad();
80440
81872
  this.updateCurrentPage();
80441
- this.isCreatingPagesForPreview = false;
81873
+ this.isLockingUpdateOnPageModes = false;
80442
81874
  };
80443
81875
  SurveyModel.prototype.createPagesForQuestionOnPageMode = function (isSinglePage, startIndex) {
80444
81876
  if (isSinglePage) {
@@ -82310,7 +83742,7 @@ var SurveyModel = /** @class */ (function (_super) {
82310
83742
  SurveyModel.prototype.endLoadingFromJson = function () {
82311
83743
  this.isEndLoadingFromJson = "processing";
82312
83744
  this.onFirstPageIsStartedChanged();
82313
- this.onQuestionsOnPageModeChanged("standard");
83745
+ this.onQuestionsOnPageModeChanged("standard", true);
82314
83746
  _super.prototype.endLoadingFromJson.call(this);
82315
83747
  if (this.hasCookie) {
82316
83748
  this.isCompletedBefore = true;
@@ -82639,7 +84071,7 @@ var SurveyModel = /** @class */ (function (_super) {
82639
84071
  SurveyModel.prototype.setValue = function (name, newQuestionValue, locNotification, allowNotifyValueChanged, questionName) {
82640
84072
  if (locNotification === void 0) { locNotification = false; }
82641
84073
  if (allowNotifyValueChanged === void 0) { allowNotifyValueChanged = true; }
82642
- if (this.isCreatingPagesForPreview)
84074
+ if (this.isLockingUpdateOnPageModes)
82643
84075
  return;
82644
84076
  var newValue = newQuestionValue;
82645
84077
  if (allowNotifyValueChanged) {