{"version":3,"sources":["webpack:///./node_modules/devextreme/esm/ui/validation_summary.js","webpack:///./node_modules/devextreme/esm/ui/validation/default_adapter.js","webpack:///./node_modules/devextreme/esm/ui/validator.js","webpack:///./node_modules/devextreme/esm/ui/validation_group.js","webpack:///./node_modules/devextreme/esm/ui/number_box/utils.js","webpack:///./node_modules/devextreme/esm/ui/number_box/number_box.caret.js","webpack:///./node_modules/devextreme/esm/ui/number_box/number_box.spin.js","webpack:///./node_modules/devextreme/esm/ui/number_box/number_box.spins.js","webpack:///./node_modules/devextreme/esm/ui/number_box/number_box.base.js","webpack:///./node_modules/devextreme/esm/ui/number_box/number_box.mask.js","webpack:///./node_modules/devextreme/esm/ui/number_box/number_box.js","webpack:///./node_modules/devextreme/esm/ui/number_box.js"],"names":["VALIDATION_SUMMARY_CLASS","ITEM_CLASS","ITEM_DATA_KEY","ValidationSummary","inherit","this","callBase","focusStateEnabled","noDataText","_optionsByReference","validationGroup","_initGroupRegistration","$element","group","option","findGroup","_modelByElement","groupConfig","addGroup","_unsubscribeGroup","_groupWasInit","_validationGroup","groupSubscription","_groupValidationHandler","bind","on","getGroupConfig","off","validators","items","orderedItems","_","validator","foundItems","item","length","concat","params","_getOrderedItems","brokenRules","rule","text","message","index","_validationSummary","handler","_itemValidationHandler","_ref","isValid","itemsChanged","itemIndex","_loop","foundRule","splice","foundItem","push","addClass","args","name","_itemClass","_itemDataKey","itemElement","itemData","focus","DefaultAdapter","editor","validationRequestsCallbacks","forEach","validationRequest","add","remove","validationErrors","validationStatus","status","reset","VALIDATOR_CLASS","VALIDATION_STATUS_VALID","VALIDATION_STATUS_INVALID","VALIDATION_STATUS_PENDING","Validator","_initOptions","options","apply","arguments","initValidationOptions","extend","validationRules","focused","_initAdapter","_validationInfo","result","deferred","skipValidation","_findGroup","removeRegisteredValidator","component","registerValidatorInGroup","element","dxStandardEditor","_getEditor","adapter","validate","Error","callbacks","isRtl","_this$option$editor$o","_this$option","_this$option$editor","rtlEnabled","_toggleAccessibilityAttributes","rules","isRequired","some","type","isInitialized","setAria","visible","_resetValidationRules","synchronizeValidationOptions","_validationRules","bypass","value","getValue","currentError","getCurrentValidationError","_getValidationRules","currentResult","editorSpecific","brokenRule","id","toString","_applyValidationResult","complete","then","res","pendingRules","prop","validatedAction","_createActionByOption","excludeValidators","_updateValidationResult","applyValidationResults","promise","_eventsStrategy","fireEvent","resolve","_useTemplates","VALIDATION_ENGINE_CLASS","ValidationGroup","super","_getDefaultOptions","_init","find","each","validatorContainer","getInstance","summaryContainer","_initMarkup","validateGroup","resetGroup","removeGroup","removeClass","_dispose","getRealSeparatorIndex","str","quoteBalance","separatorCount","i","occurrence","getNthOccurrence","c","n","indexOf","splitByIndex","slice","adjustPercentValue","rawValue","precision","getCaretBoundaries","format","signParts","split","sign","getSign","replace","map","join","substr","prefixStubLength","exec","postfixStubLength","start","end","_getDigitCountBeforeIndex","decimalSeparator","getDecimalSeparator","regExp","RegExp","textBeforePosition","_reverseText","reverse","_getDigitPositionByIndex","digitIndex","counter","_trimNonNumericCharsFromEnd","getCaretWithOffset","caret","offset","getCaretAfterFormat","formatted","point","isSeparatorBasedText","isSeparatorBasedString","realSeparatorOccurrenceIndex","pointPosition","newPointPosition","textParts","formattedParts","isCaretOnFloat","relativeIndex","digitsBefore","newPosition","getCaretInBoundaries","formattedIntPart","positionFromEnd","digitsFromEnd","newPositionFromEnd","newPositionFromBegin","match","isCaretInBoundaries","boundaries","adjustedCaret","getCaretOffset","previousText","newText","previousBoundaries","newBoundaries","SPIN_CLASS","SPIN_BUTTON_CLASS","SPIN_HOLD_DELAY","NUMBER_BOX","POINTERUP_EVENT_NAME","pointer","up","POINTERCANCEL_EVENT_NAME","cancel","SpinButton","direction","onChange","activeStateEnabled","hoverStateEnabled","_spinIcon","appendTo","_render","eventName","down","NAME","_spinDownHandler","_spinChangeHandler","e","preventDefault","_clearTimer","hold","_feedBackDeferred","event","_holdTimer","setInterval","document","getDocument","clearInterval","_optionChanged","_invalidate","SPIN_CONTAINER_CLASS","SPIN_TOUCH_FRIENDLY_CLASS","instance","$spinContainer","$spinContainerChildren","children","pointerDownAction","_createAction","_spinButtonsPointerDownHandler","eq","_spinUpChangeHandler","_spinDownChangeHandler","$spinUp","$spinDown","_getOptions","_addToContainer","_createComponent","_legacyRender","_isTouchFriendly","_isVisible","disabled","$editor","isTouchFriendly","isVisible","toggleClass","shouldUpdate","update","$spinButtons","spinUp","spinDown","Math","WIDGET_CLASS","FIREFOX_CONTROL_KEYS","FORCE_VALUECHANGE_EVENT_NAMESPACE","NumberBoxBase","_supportedKeys","upArrow","stopPropagation","downArrow","enter","min","max","step","showSpinButtons","useLargeSpinButtons","mode","invalidValueMessage","buttons","_getDefaultButtons","Ctor","_isSupportInputMode","version","parseFloat","browser","chrome","safari","_defaultOptionsRules","device","devices","real","generic","isSimulator","deviceType","_renderSubmitElement","_getDefaultAttributes","attributes","inputmode","_renderContentImpl","_validateValue","_$submitElement","attr","_setSubmitValue","_getSubmitElement","val","_keyPressHandler","char","isInputCharValid","test","keyName","_keyPressed","_onMouseWheel","dxEvent","delta","_spinValueChange","_renderValue","inputValue","_input","Number","_forceValueRender","_toggleEmptinessEventHandler","valueText","valuenow","valuetext","_updateButtons","number","formattedValue","isNaN","_applyDisplayValueFormatter","_renderDisplayText","_renderProps","valuemin","valuemax","$input","getActiveElement","trigger","_normalizeInputValue","_correctRounding","_saveValueChangeEvent","regex","isFloatValue","isFloatStep","valueAccuracy","stepAccuracy","accuracy","_round","multiplier","pow","round","_renderValueChangeEvent","forceValueChangeEvent","_forceRefreshInputValue","_valueChangeEventHandler","_normalizeText","_parseValue","valueHasDigits","_isValueValid","_applyValueBoundaries","fire","parsedValue","isValueIncomplete","_isValueIncomplete","isValueCorrect","_isValueInRange","_replaceCommaWithPoint","_inputIsInvalid","isNumberMode","validityState","get","validity","badInput","_isNumber","isValueValid","isNumber","validationError","trim","_clearValue","_resumeValueChangeAction","NUMBER_FORMATTER_NAMESPACE","MOVE_FORWARD","MOVE_BACKWARD","MINUS","MINUS_KEY","INPUT_EVENT","CARET_TIMEOUT_DURATION","NumberBoxMask","useMaskBehavior","_isDeleteKey","key","_useMaskBehavior","minus","_revertSign","del","_removeHandler","backspace","leftArrow","_arrowHandler","rightArrow","home","_moveCaretToBoundaryEventHandler","_updateFormattedValue","_getTextSeparatorIndex","_focusInHandler","_preventNestedFocusEvent","clearCaretTimeout","_caretTimeout","setTimeout","_caret","_getInputVal","decimalSeparatorIndex","_focusOutHandler","shouldHandleEvent","_focusOutOccurs","_getFormatPattern","_format","_hasValueBeenChanged","_updateParsedValue","_adjustParsedValue","_setTextByParsedValue","_parsedValue","nextCaret","_moveCaretToBoundary","newCaret","shiftKey","_shouldMoveCaret","isDecimalSeparatorNext","charAt","moveToFloat","_lastKey","convertDigits","_keyboardHandler","_lastKeyName","_shouldHandleKey","originalEvent","normalizedText","enteredChar","newValue","_tryParse","_moveCaret","isDeleteKey","isBackspaceKey","caretPosition","canDelete","_isStub","editedText","_replaceSelectedText","noDigits","search","valueAfterRemoving","_isNonStubAfter","_isPercentFormat","noEscapedFormat","_parse","formatOption","isCustomParser","parser","parse","integerPartStartIndex","formatPointIndex","textPointIndex","formatIntegerPartLength","textIntegerPartLength","_removeStubs","customFormatter","formatter","_currentFormat","_updateFormat","isLDMLPattern","_getFormatForSign","_sign","excludeComma","thousandsSeparator","getThousandsSeparator","stubs","_getStubs","prefixStubs","postfixRegex","decoratorsRegex","regExpResult","pattern","stub","_truncateToPrecision","maxPrecision","strValue","selection","isTextSelected","_getParsedValue","_getPrecisionLimits","isValueChanged","isDecimalPointRestricted","isUselessCharRestricted","abs","parsedValueSign","parsedValueWithSign","pointIndex","floatLength","isPrecisionInRange","endsWithZero","_setInputText","_formattedValue","_renderInputType","isNumberType","isDesktop","_setInputType","_isChar","isSpecialChar","altKey","isMinusKey","_renderInput","_renderFormatter","_clearCache","_detachFormatterEvents","_attachFormatterEvents","_isInputFromPaste","inputType","_isValuePasted","_formatValue","clearTimeout","isString","escapedDecimalSeparator","regExpString","stubRegExp","currentFormat","realSeparatorIndex","floatPart","minPrecision","_applyRevertedSign","preserveSelectedText","currentText","caretInBoundaries","_removeMinusFromText","isMinusPressed","parsed","textWithoutMinus","wasMinusRemoved","textWasChanged","clearedText","_refreshValueChangeEvent","_refreshEvents","_clean"],"mappings":"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","file":"js/chunk-5a2375d0.c76d614e.js","sourcesContent":["/**\r\n * DevExtreme (esm/ui/validation_summary.js)\r\n * Version: 21.2.5\r\n * Build date: Mon Jan 17 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport registerComponent from \"../core/component_registrator\";\r\nimport eventsEngine from \"../events/core/events_engine\";\r\nimport {\r\n grep\r\n} from \"../core/utils/common\";\r\nimport {\r\n extend\r\n} from \"../core/utils/extend\";\r\nimport {\r\n each,\r\n map\r\n} from \"../core/utils/iterator\";\r\nimport ValidationEngine from \"./validation_engine\";\r\nimport CollectionWidget from \"./collection/ui.collection_widget.edit\";\r\nvar VALIDATION_SUMMARY_CLASS = \"dx-validationsummary\";\r\nvar ITEM_CLASS = VALIDATION_SUMMARY_CLASS + \"-item\";\r\nvar ITEM_DATA_KEY = VALIDATION_SUMMARY_CLASS + \"-item-data\";\r\nvar ValidationSummary = CollectionWidget.inherit({\r\n _getDefaultOptions() {\r\n return extend(this.callBase(), {\r\n focusStateEnabled: false,\r\n noDataText: null\r\n })\r\n },\r\n _setOptionsByReference() {\r\n this.callBase();\r\n extend(this._optionsByReference, {\r\n validationGroup: true\r\n })\r\n },\r\n _init() {\r\n this.callBase();\r\n this._initGroupRegistration()\r\n },\r\n _initGroupRegistration() {\r\n var $element = this.$element();\r\n var group = this.option(\"validationGroup\") || ValidationEngine.findGroup($element, this._modelByElement($element));\r\n var groupConfig = ValidationEngine.addGroup(group);\r\n this._unsubscribeGroup();\r\n this._groupWasInit = true;\r\n this._validationGroup = group;\r\n this.groupSubscription = this._groupValidationHandler.bind(this);\r\n groupConfig.on(\"validated\", this.groupSubscription)\r\n },\r\n _unsubscribeGroup() {\r\n var groupConfig = ValidationEngine.getGroupConfig(this._validationGroup);\r\n groupConfig && groupConfig.off(\"validated\", this.groupSubscription)\r\n },\r\n _getOrderedItems(validators, items) {\r\n var orderedItems = [];\r\n each(validators, (function(_, validator) {\r\n var foundItems = grep(items, (function(item) {\r\n if (item.validator === validator) {\r\n return true\r\n }\r\n }));\r\n if (foundItems.length) {\r\n orderedItems = orderedItems.concat(foundItems)\r\n }\r\n }));\r\n return orderedItems\r\n },\r\n _groupValidationHandler(params) {\r\n var items = this._getOrderedItems(params.validators, map(params.brokenRules, (function(rule) {\r\n return {\r\n text: rule.message,\r\n validator: rule.validator,\r\n index: rule.index\r\n }\r\n })));\r\n this.validators = params.validators;\r\n each(this.validators, (_, validator) => {\r\n if (validator._validationSummary !== this) {\r\n var handler = this._itemValidationHandler.bind(this);\r\n validator.on(\"validated\", handler);\r\n validator.on(\"disposing\", (function() {\r\n validator.off(\"validated\", handler);\r\n validator._validationSummary = null;\r\n handler = null\r\n }));\r\n validator._validationSummary = this\r\n }\r\n });\r\n this.option(\"items\", items)\r\n },\r\n _itemValidationHandler(_ref) {\r\n var {\r\n isValid: isValid,\r\n validator: validator,\r\n brokenRules: brokenRules\r\n } = _ref;\r\n var items = this.option(\"items\");\r\n var itemsChanged = false;\r\n var itemIndex = 0;\r\n var _loop = function() {\r\n var item = items[itemIndex];\r\n if (item.validator === validator) {\r\n var foundRule = grep(brokenRules || [], (function(rule) {\r\n return rule.index === item.index\r\n }))[0];\r\n if (isValid || !foundRule) {\r\n items.splice(itemIndex, 1);\r\n itemsChanged = true;\r\n return \"continue\"\r\n }\r\n if (foundRule.message !== item.text) {\r\n item.text = foundRule.message;\r\n itemsChanged = true\r\n }\r\n }\r\n itemIndex++\r\n };\r\n while (itemIndex < items.length) {\r\n var _ret = _loop();\r\n if (\"continue\" === _ret) {\r\n continue\r\n }\r\n }\r\n each(brokenRules, (function(_, rule) {\r\n var foundItem = grep(items, (function(item) {\r\n return item.validator === validator && item.index === rule.index\r\n }))[0];\r\n if (!foundItem) {\r\n items.push({\r\n text: rule.message,\r\n validator: validator,\r\n index: rule.index\r\n });\r\n itemsChanged = true\r\n }\r\n }));\r\n if (itemsChanged) {\r\n items = this._getOrderedItems(this.validators, items);\r\n this.option(\"items\", items)\r\n }\r\n },\r\n _initMarkup() {\r\n this.$element().addClass(VALIDATION_SUMMARY_CLASS);\r\n this.callBase()\r\n },\r\n _optionChanged(args) {\r\n switch (args.name) {\r\n case \"validationGroup\":\r\n this._initGroupRegistration();\r\n break;\r\n default:\r\n this.callBase(args)\r\n }\r\n },\r\n _itemClass: () => ITEM_CLASS,\r\n _itemDataKey: () => ITEM_DATA_KEY,\r\n _postprocessRenderItem(params) {\r\n eventsEngine.on(params.itemElement, \"click\", (function() {\r\n params.itemData.validator && params.itemData.validator.focus && params.itemData.validator.focus()\r\n }))\r\n },\r\n _dispose() {\r\n this.callBase();\r\n this._unsubscribeGroup()\r\n }\r\n});\r\nregisterComponent(\"dxValidationSummary\", ValidationSummary);\r\nexport default ValidationSummary;\r\n","/**\r\n * DevExtreme (esm/ui/validation/default_adapter.js)\r\n * Version: 21.2.5\r\n * Build date: Mon Jan 17 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport Class from \"../../core/class\";\r\nvar DefaultAdapter = Class.inherit({\r\n ctor(editor, validator) {\r\n this.editor = editor;\r\n this.validator = validator;\r\n this.validationRequestsCallbacks = [];\r\n var handler = args => {\r\n this.validationRequestsCallbacks.forEach(item => item(args))\r\n };\r\n editor.validationRequest.add(handler);\r\n editor.on(\"disposing\", (function() {\r\n editor.validationRequest.remove(handler)\r\n }))\r\n },\r\n getValue() {\r\n return this.editor.option(\"value\")\r\n },\r\n getCurrentValidationError() {\r\n return this.editor.option(\"validationError\")\r\n },\r\n bypass() {\r\n return this.editor.option(\"disabled\")\r\n },\r\n applyValidationResults(params) {\r\n this.editor.option({\r\n validationErrors: params.brokenRules,\r\n validationStatus: params.status\r\n })\r\n },\r\n reset() {\r\n this.editor.reset()\r\n },\r\n focus() {\r\n this.editor.focus()\r\n }\r\n});\r\nexport default DefaultAdapter;\r\n","/**\r\n * DevExtreme (esm/ui/validator.js)\r\n * Version: 21.2.5\r\n * Build date: Mon Jan 17 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n data as elementData\r\n} from \"../core/element_data\";\r\nimport Callbacks from \"../core/utils/callbacks\";\r\nimport errors from \"./widget/ui.errors\";\r\nimport DOMComponent from \"../core/dom_component\";\r\nimport {\r\n extend\r\n} from \"../core/utils/extend\";\r\nimport {\r\n map\r\n} from \"../core/utils/iterator\";\r\nimport ValidationEngine from \"./validation_engine\";\r\nimport DefaultAdapter from \"./validation/default_adapter\";\r\nimport registerComponent from \"../core/component_registrator\";\r\nimport {\r\n Deferred\r\n} from \"../core/utils/deferred\";\r\nimport Guid from \"../core/guid\";\r\nvar VALIDATOR_CLASS = \"dx-validator\";\r\nvar VALIDATION_STATUS_VALID = \"valid\";\r\nvar VALIDATION_STATUS_INVALID = \"invalid\";\r\nvar VALIDATION_STATUS_PENDING = \"pending\";\r\nvar Validator = DOMComponent.inherit({\r\n _initOptions: function(options) {\r\n this.callBase.apply(this, arguments);\r\n this.option(ValidationEngine.initValidationOptions(options))\r\n },\r\n _getDefaultOptions() {\r\n return extend(this.callBase(), {\r\n validationRules: []\r\n })\r\n },\r\n _init() {\r\n this.callBase();\r\n this._initGroupRegistration();\r\n this.focused = Callbacks();\r\n this._initAdapter();\r\n this._validationInfo = {\r\n result: null,\r\n deferred: null,\r\n skipValidation: false\r\n }\r\n },\r\n _initGroupRegistration() {\r\n var group = this._findGroup();\r\n if (!this._groupWasInit) {\r\n this.on(\"disposing\", (function(args) {\r\n ValidationEngine.removeRegisteredValidator(args.component._validationGroup, args.component)\r\n }))\r\n }\r\n if (!this._groupWasInit || this._validationGroup !== group) {\r\n ValidationEngine.removeRegisteredValidator(this._validationGroup, this);\r\n this._groupWasInit = true;\r\n this._validationGroup = group;\r\n ValidationEngine.registerValidatorInGroup(group, this)\r\n }\r\n },\r\n _setOptionsByReference() {\r\n this.callBase();\r\n extend(this._optionsByReference, {\r\n validationGroup: true\r\n })\r\n },\r\n _getEditor() {\r\n var element = this.$element()[0];\r\n return elementData(element, \"dx-validation-target\")\r\n },\r\n _initAdapter() {\r\n var dxStandardEditor = this._getEditor();\r\n var adapter = this.option(\"adapter\");\r\n if (!adapter) {\r\n if (dxStandardEditor) {\r\n adapter = new DefaultAdapter(dxStandardEditor, this);\r\n adapter.validationRequestsCallbacks.push(args => {\r\n if (this._validationInfo.skipValidation) {\r\n return\r\n }\r\n this.validate(args)\r\n });\r\n this.option(\"adapter\", adapter);\r\n return\r\n }\r\n throw errors.Error(\"E0120\")\r\n }\r\n var callbacks = adapter.validationRequestsCallbacks;\r\n if (callbacks) {\r\n callbacks.push(args => {\r\n this.validate(args)\r\n })\r\n }\r\n },\r\n _toggleRTLDirection(isRtl) {\r\n var _this$option$editor$o, _this$option, _this$option$editor;\r\n var rtlEnabled = null !== (_this$option$editor$o = null === (_this$option = this.option(\"adapter\")) || void 0 === _this$option ? void 0 : null === (_this$option$editor = _this$option.editor) || void 0 === _this$option$editor ? void 0 : _this$option$editor.option(\"rtlEnabled\")) && void 0 !== _this$option$editor$o ? _this$option$editor$o : isRtl;\r\n this.callBase(rtlEnabled)\r\n },\r\n _initMarkup() {\r\n this.$element().addClass(VALIDATOR_CLASS);\r\n this.callBase()\r\n },\r\n _render() {\r\n this.callBase();\r\n this._toggleAccessibilityAttributes()\r\n },\r\n _toggleAccessibilityAttributes() {\r\n var dxStandardEditor = this._getEditor();\r\n if (dxStandardEditor) {\r\n var rules = this.option(\"validationRules\") || [];\r\n var isRequired = rules.some(_ref => {\r\n var {\r\n type: type\r\n } = _ref;\r\n return \"required\" === type\r\n }) || null;\r\n if (dxStandardEditor.isInitialized()) {\r\n dxStandardEditor.setAria(\"required\", isRequired)\r\n }\r\n dxStandardEditor.option(\"_onMarkupRendered\", () => {\r\n dxStandardEditor.setAria(\"required\", isRequired)\r\n })\r\n }\r\n },\r\n _visibilityChanged(visible) {\r\n if (visible) {\r\n this._initGroupRegistration()\r\n }\r\n },\r\n _optionChanged(args) {\r\n switch (args.name) {\r\n case \"validationGroup\":\r\n this._initGroupRegistration();\r\n return;\r\n case \"validationRules\":\r\n this._resetValidationRules();\r\n this._toggleAccessibilityAttributes();\r\n void 0 !== this.option(\"isValid\") && this.validate();\r\n return;\r\n case \"adapter\":\r\n this._initAdapter();\r\n break;\r\n case \"isValid\":\r\n case \"validationStatus\":\r\n this.option(ValidationEngine.synchronizeValidationOptions(args, this.option()));\r\n break;\r\n default:\r\n this.callBase(args)\r\n }\r\n },\r\n _getValidationRules() {\r\n if (!this._validationRules) {\r\n this._validationRules = map(this.option(\"validationRules\"), (rule, index) => extend({}, rule, {\r\n validator: this,\r\n index: index\r\n }))\r\n }\r\n return this._validationRules\r\n },\r\n _findGroup() {\r\n var $element = this.$element();\r\n return this.option(\"validationGroup\") || ValidationEngine.findGroup($element, this._modelByElement($element))\r\n },\r\n _resetValidationRules() {\r\n delete this._validationRules\r\n },\r\n validate(args) {\r\n var adapter = this.option(\"adapter\");\r\n var name = this.option(\"name\");\r\n var bypass = adapter.bypass && adapter.bypass();\r\n var value = args && void 0 !== args.value ? args.value : adapter.getValue();\r\n var currentError = adapter.getCurrentValidationError && adapter.getCurrentValidationError();\r\n var rules = this._getValidationRules();\r\n var currentResult = this._validationInfo && this._validationInfo.result;\r\n if (currentResult && currentResult.status === VALIDATION_STATUS_PENDING && currentResult.value === value) {\r\n return extend({}, currentResult)\r\n }\r\n var result;\r\n if (bypass) {\r\n result = {\r\n isValid: true,\r\n status: VALIDATION_STATUS_VALID\r\n }\r\n } else if (currentError && currentError.editorSpecific) {\r\n currentError.validator = this;\r\n result = {\r\n isValid: false,\r\n status: VALIDATION_STATUS_INVALID,\r\n brokenRule: currentError,\r\n brokenRules: [currentError]\r\n }\r\n } else {\r\n result = ValidationEngine.validate(value, rules, name)\r\n }\r\n result.id = (new Guid).toString();\r\n this._applyValidationResult(result, adapter);\r\n result.complete && result.complete.then(res => {\r\n if (res.id === this._validationInfo.result.id) {\r\n this._applyValidationResult(res, adapter)\r\n }\r\n });\r\n return extend({}, this._validationInfo.result)\r\n },\r\n reset() {\r\n var adapter = this.option(\"adapter\");\r\n var result = {\r\n id: null,\r\n isValid: true,\r\n brokenRule: null,\r\n brokenRules: null,\r\n pendingRules: null,\r\n status: VALIDATION_STATUS_VALID,\r\n complete: null\r\n };\r\n this._validationInfo.skipValidation = true;\r\n adapter.reset();\r\n this._validationInfo.skipValidation = false;\r\n this._resetValidationRules();\r\n this._applyValidationResult(result, adapter)\r\n },\r\n _updateValidationResult(result) {\r\n if (!this._validationInfo.result || this._validationInfo.result.id !== result.id) {\r\n var complete = this._validationInfo.deferred && this._validationInfo.result.complete;\r\n this._validationInfo.result = extend({}, result, {\r\n complete: complete\r\n })\r\n } else {\r\n for (var prop in result) {\r\n if (\"id\" !== prop && \"complete\" !== prop) {\r\n this._validationInfo.result[prop] = result[prop]\r\n }\r\n }\r\n }\r\n },\r\n _applyValidationResult(result, adapter) {\r\n var validatedAction = this._createActionByOption(\"onValidated\", {\r\n excludeValidators: [\"readOnly\"]\r\n });\r\n result.validator = this;\r\n this._updateValidationResult(result);\r\n adapter.applyValidationResults && adapter.applyValidationResults(this._validationInfo.result);\r\n this.option({\r\n validationStatus: this._validationInfo.result.status\r\n });\r\n if (this._validationInfo.result.status === VALIDATION_STATUS_PENDING) {\r\n if (!this._validationInfo.deferred) {\r\n this._validationInfo.deferred = new Deferred;\r\n this._validationInfo.result.complete = this._validationInfo.deferred.promise()\r\n }\r\n this._eventsStrategy.fireEvent(\"validating\", [this._validationInfo.result]);\r\n return\r\n }\r\n if (this._validationInfo.result.status !== VALIDATION_STATUS_PENDING) {\r\n validatedAction(result);\r\n if (this._validationInfo.deferred) {\r\n this._validationInfo.deferred.resolve(result);\r\n this._validationInfo.deferred = null\r\n }\r\n }\r\n },\r\n focus() {\r\n var adapter = this.option(\"adapter\");\r\n adapter && adapter.focus && adapter.focus()\r\n },\r\n _useTemplates: function() {\r\n return false\r\n }\r\n});\r\nregisterComponent(\"dxValidator\", Validator);\r\nexport default Validator;\r\n","/**\r\n * DevExtreme (esm/ui/validation_group.js)\r\n * Version: 21.2.5\r\n * Build date: Mon Jan 17 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../core/renderer\";\r\nimport registerComponent from \"../core/component_registrator\";\r\nimport DOMComponent from \"../core/dom_component\";\r\nimport ValidationSummary from \"./validation_summary\";\r\nimport ValidationEngine from \"./validation_engine\";\r\nimport Validator from \"./validator\";\r\nvar VALIDATION_ENGINE_CLASS = \"dx-validationgroup\";\r\nvar VALIDATOR_CLASS = \"dx-validator\";\r\nvar VALIDATION_SUMMARY_CLASS = \"dx-validationsummary\";\r\nclass ValidationGroup extends DOMComponent {\r\n _getDefaultOptions() {\r\n return super._getDefaultOptions()\r\n }\r\n _init() {\r\n super._init();\r\n ValidationEngine.addGroup(this)\r\n }\r\n _initMarkup() {\r\n var $element = this.$element();\r\n $element.addClass(VALIDATION_ENGINE_CLASS);\r\n $element.find(\".\".concat(VALIDATOR_CLASS)).each((function(_, validatorContainer) {\r\n Validator.getInstance($(validatorContainer))._initGroupRegistration()\r\n }));\r\n $element.find(\".\".concat(VALIDATION_SUMMARY_CLASS)).each((function(_, summaryContainer) {\r\n ValidationSummary.getInstance($(summaryContainer))._initGroupRegistration()\r\n }));\r\n super._initMarkup()\r\n }\r\n validate() {\r\n return ValidationEngine.validateGroup(this)\r\n }\r\n reset() {\r\n return ValidationEngine.resetGroup(this)\r\n }\r\n _dispose() {\r\n ValidationEngine.removeGroup(this);\r\n this.$element().removeClass(VALIDATION_ENGINE_CLASS);\r\n super._dispose()\r\n }\r\n _useTemplates() {\r\n return false\r\n }\r\n}\r\nregisterComponent(\"dxValidationGroup\", ValidationGroup);\r\nexport default ValidationGroup;\r\n","/**\r\n * DevExtreme (esm/ui/number_box/utils.js)\r\n * Version: 21.2.5\r\n * Build date: Mon Jan 17 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n adjust\r\n} from \"../../core/utils/math\";\r\nvar getRealSeparatorIndex = function(str) {\r\n var quoteBalance = 0;\r\n var separatorCount = 0;\r\n for (var i = 0; i < str.length; ++i) {\r\n if (\"'\" === str[i]) {\r\n quoteBalance++\r\n }\r\n if (\".\" === str[i]) {\r\n ++separatorCount;\r\n if (quoteBalance % 2 === 0) {\r\n return {\r\n occurrence: separatorCount,\r\n index: i\r\n }\r\n }\r\n }\r\n }\r\n return {\r\n occurrence: 1,\r\n index: -1\r\n }\r\n};\r\nvar getNthOccurrence = function(str, c, n) {\r\n var i = -1;\r\n while (n-- && i++ < str.length) {\r\n i = str.indexOf(c, i)\r\n }\r\n return i\r\n};\r\nvar splitByIndex = function(str, index) {\r\n if (-1 === index) {\r\n return [str]\r\n }\r\n return [str.slice(0, index), str.slice(index + 1)]\r\n};\r\nvar adjustPercentValue = function(rawValue, precision) {\r\n return rawValue && adjust(rawValue / 100, precision)\r\n};\r\nexport {\r\n getRealSeparatorIndex,\r\n getNthOccurrence,\r\n splitByIndex,\r\n adjustPercentValue\r\n};\r\n","/**\r\n * DevExtreme (esm/ui/number_box/number_box.caret.js)\r\n * Version: 21.2.5\r\n * Build date: Mon Jan 17 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport {\r\n fitIntoRange\r\n} from \"../../core/utils/math\";\r\nimport {\r\n escapeRegExp\r\n} from \"../../core/utils/common\";\r\nimport number from \"../../localization/number\";\r\nimport {\r\n getRealSeparatorIndex,\r\n getNthOccurrence,\r\n splitByIndex\r\n} from \"./utils\";\r\nexport var getCaretBoundaries = function(text, format) {\r\n if (\"string\" === typeof format) {\r\n var signParts = format.split(\";\");\r\n var sign = number.getSign(text, format);\r\n signParts[1] = signParts[1] || \"-\" + signParts[0];\r\n format = signParts[sign < 0 ? 1 : 0];\r\n format = (str = format, str.replace(/'([^']*)'/g, str => str.split(\"\").map(() => \" \").join(\"\").substr(2)));\r\n var prefixStubLength = /^[^#0.,]*/.exec(format)[0].length;\r\n var postfixStubLength = /[^#0.,]*$/.exec(format)[0].length;\r\n return {\r\n start: prefixStubLength,\r\n end: text.length - postfixStubLength\r\n }\r\n } else {\r\n return {\r\n start: 0,\r\n end: text.length\r\n }\r\n }\r\n var str\r\n};\r\nvar _getDigitCountBeforeIndex = function(index, text) {\r\n var decimalSeparator = number.getDecimalSeparator();\r\n var regExp = new RegExp(\"[^0-9\" + escapeRegExp(decimalSeparator) + \"]\", \"g\");\r\n var textBeforePosition = text.slice(0, index);\r\n return textBeforePosition.replace(regExp, \"\").length\r\n};\r\nvar _reverseText = function(text) {\r\n return text.split(\"\").reverse().join(\"\")\r\n};\r\nvar _getDigitPositionByIndex = function(digitIndex, text) {\r\n if (!digitIndex) {\r\n return -1\r\n }\r\n var regExp = /[0-9]/g;\r\n var counter = 1;\r\n var index = null;\r\n var result = regExp.exec(text);\r\n while (result) {\r\n index = result.index;\r\n if (counter >= digitIndex) {\r\n return index\r\n }\r\n counter++;\r\n result = regExp.exec(text)\r\n }\r\n return null === index ? text.length : index\r\n};\r\nvar _trimNonNumericCharsFromEnd = function(text) {\r\n return text.replace(/[^0-9e]+$/, \"\")\r\n};\r\nexport var getCaretWithOffset = function(caret, offset) {\r\n if (void 0 === caret.start) {\r\n caret = {\r\n start: caret,\r\n end: caret\r\n }\r\n }\r\n return {\r\n start: caret.start + offset,\r\n end: caret.end + offset\r\n }\r\n};\r\nexport var getCaretAfterFormat = function(text, formatted, caret, format) {\r\n caret = getCaretWithOffset(caret, 0);\r\n var point = number.getDecimalSeparator();\r\n var isSeparatorBasedText = isSeparatorBasedString(text);\r\n var realSeparatorOccurrenceIndex = getRealSeparatorIndex(format).occurrence;\r\n var pointPosition = isSeparatorBasedText ? 0 : getNthOccurrence(text, point, realSeparatorOccurrenceIndex);\r\n var newPointPosition = getNthOccurrence(formatted, point, realSeparatorOccurrenceIndex);\r\n var textParts = splitByIndex(text, pointPosition);\r\n var formattedParts = splitByIndex(formatted, newPointPosition);\r\n var isCaretOnFloat = -1 !== pointPosition && caret.start > pointPosition;\r\n if (isCaretOnFloat) {\r\n var relativeIndex = caret.start - pointPosition - 1;\r\n var digitsBefore = _getDigitCountBeforeIndex(relativeIndex, textParts[1]);\r\n var newPosition = formattedParts[1] ? newPointPosition + 1 + _getDigitPositionByIndex(digitsBefore, formattedParts[1]) + 1 : formatted.length;\r\n return getCaretInBoundaries(newPosition, formatted, format)\r\n } else {\r\n var formattedIntPart = _trimNonNumericCharsFromEnd(formattedParts[0]);\r\n var positionFromEnd = textParts[0].length - caret.start;\r\n var digitsFromEnd = _getDigitCountBeforeIndex(positionFromEnd, _reverseText(textParts[0]));\r\n var newPositionFromEnd = _getDigitPositionByIndex(digitsFromEnd, _reverseText(formattedIntPart));\r\n var newPositionFromBegin = formattedIntPart.length - (newPositionFromEnd + 1);\r\n return getCaretInBoundaries(newPositionFromBegin, formatted, format)\r\n }\r\n};\r\n\r\nfunction isSeparatorBasedString(text) {\r\n return 1 === text.length && !!text.match(/^[,.][0-9]*$/g)\r\n}\r\nexport var isCaretInBoundaries = function(caret, text, format) {\r\n caret = getCaretWithOffset(caret, 0);\r\n var boundaries = getCaretInBoundaries(caret, text, format);\r\n return caret.start >= boundaries.start && caret.end <= boundaries.end\r\n};\r\nexport function getCaretInBoundaries(caret, text, format) {\r\n caret = getCaretWithOffset(caret, 0);\r\n var boundaries = getCaretBoundaries(text, format);\r\n var adjustedCaret = {\r\n start: fitIntoRange(caret.start, boundaries.start, boundaries.end),\r\n end: fitIntoRange(caret.end, boundaries.start, boundaries.end)\r\n };\r\n return adjustedCaret\r\n}\r\nexport var getCaretOffset = function(previousText, newText, format) {\r\n var previousBoundaries = getCaretBoundaries(previousText, format);\r\n var newBoundaries = getCaretBoundaries(newText, format);\r\n return newBoundaries.start - previousBoundaries.start\r\n};\r\n","/**\r\n * DevExtreme (esm/ui/number_box/number_box.spin.js)\r\n * Version: 21.2.5\r\n * Build date: Mon Jan 17 2022\r\n *\r\n * Copyright (c) 2012 - 2022 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\nimport $ from \"../../core/renderer\";\r\nimport domAdapter from \"../../core/dom_adapter\";\r\nimport eventsEngine from \"../../events/core/events_engine\";\r\nimport Widget from \"../widget/ui.widget\";\r\nimport {\r\n extend\r\n} from \"../../core/utils/extend\";\r\nimport {\r\n addNamespace\r\n} from \"../../events/utils/index\";\r\nimport pointerEvents from \"../../events/pointer\";\r\nimport {\r\n lock\r\n} from \"../../events/core/emitter.feedback\";\r\nimport holdEvent from \"../../events/hold\";\r\nimport {\r\n Deferred\r\n} from \"../../core/utils/deferred\";\r\nvar SPIN_CLASS = \"dx-numberbox-spin\";\r\nvar SPIN_BUTTON_CLASS = \"dx-numberbox-spin-button\";\r\nvar SPIN_HOLD_DELAY = 100;\r\nvar NUMBER_BOX = \"dxNumberBox\";\r\nvar POINTERUP_EVENT_NAME = addNamespace(pointerEvents.up, NUMBER_BOX);\r\nvar POINTERCANCEL_EVENT_NAME = addNamespace(pointerEvents.cancel, NUMBER_BOX);\r\nvar SpinButton = Widget.inherit({\r\n _getDefaultOptions: function() {\r\n return extend(this.callBase(), {\r\n direction: \"up\",\r\n onChange: null,\r\n activeStateEnabled: true,\r\n hoverStateEnabled: true\r\n })\r\n },\r\n _initMarkup: function() {\r\n this.callBase();\r\n var direction = SPIN_CLASS + \"-\" + this.option(\"direction\");\r\n this.$element().addClass(SPIN_BUTTON_CLASS).addClass(direction);\r\n this._spinIcon = $(\"