{"version":3,"sources":["webpack:///./node_modules/devextreme-vue/core/strategy/vue2/configuration.js","webpack:///./node_modules/devextreme/core/options/index.js","webpack:///./node_modules/devextreme/events/pointer/mspointer.js","webpack:///./node_modules/devextreme/core/utils/view_port.js","webpack:///./node_modules/devextreme/core/utils/public_component.js","webpack:///./node_modules/devextreme/core/events_strategy.js","webpack:///./node_modules/devextreme/core/component_registrator.js","webpack:///./node_modules/devextreme/ui/widget/ui.errors.js","webpack:///./node_modules/devextreme-vue/core/extension-component.js","webpack:///./node_modules/devextreme-vue/core/children-processing.js","webpack:///./node_modules/devextreme/events/visibility_change.js","webpack:///./node_modules/devextreme/events/core/event_registrator.js","webpack:///./node_modules/devextreme/events/utils/index.js","webpack:///./node_modules/base64-js/index.js","webpack:///./node_modules/devextreme/events/utils/add_namespace.js","webpack:///./node_modules/devextreme-vue/core/index.js","webpack:///./node_modules/devextreme/events/drag.js","webpack:///./node_modules/devextreme/core/devices.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/templates-manager.js","webpack:///./node_modules/devextreme/ui/resizable.js","webpack:///./node_modules/devextreme/events/pointer/touch.js","webpack:///./node_modules/devextreme/core/templates/template_base.js","webpack:///./node_modules/devextreme/core/templates/empty_template.js","webpack:///./node_modules/devextreme/core/polyfills/promise.js","webpack:///./node_modules/devextreme/core/postponed_operations.js","webpack:///./node_modules/devextreme/core/dom_component.js","webpack:///./node_modules/devextreme/events/pointer.js","webpack:///./node_modules/devextreme/events/short.js","webpack:///./node_modules/devextreme/core/action.js","webpack:///./node_modules/devextreme/events/pointer/mouse_and_touch.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue3/index.js","webpack:///./src/helpers/formHelper.js","webpack:///./node_modules/devextreme/events/core/keyboard_processor.js","webpack:///./node_modules/devextreme/events/click.js","webpack:///./node_modules/devextreme/core/utils/version.js","webpack:///./node_modules/devextreme/core/utils/position.js","webpack:///./node_modules/devextreme/animation/translator.js","webpack:///./node_modules/devextreme/core/options/utils.js","webpack:///./node_modules/devextreme-vue/core/helpers.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/errors.js","webpack:///./node_modules/devextreme/events/core/emitter_registrator.js","webpack:///./node_modules/devextreme/core/utils/support.js","webpack:///./node_modules/devextreme/animation/frame.js","webpack:///./node_modules/devextreme/core/utils/template_manager.js","webpack:///./node_modules/devextreme/core/templates/function_template.js","webpack:///./node_modules/devextreme/core/remove_event.js","webpack:///./node_modules/devextreme/mobile/hide_callback.js","webpack:///./node_modules/devextreme/ui/widget/selectors.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/config.js","webpack:///./node_modules/devextreme/events/core/emitter.feedback.js","webpack:///./node_modules/devextreme/animation/fx.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/templates-discovering.js","webpack:///./node_modules/devextreme-vue/core/configuration.js","webpack:///./node_modules/devextreme-vue/core/version.js","webpack:///./node_modules/devextreme/core/templates/template_engine_registry.js","webpack:///./node_modules/ieee754/index.js","webpack:///./node_modules/devextreme/events/core/emitter.js","webpack:///./node_modules/devextreme-vue/core/templates-manager.js","webpack:///./node_modules/devextreme/core/templates/child_default_template.js","webpack:///./node_modules/devextreme/core/element.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/children-processing.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/helpers.js","webpack:///./node_modules/devextreme-vue/core/constants.js","webpack:///./node_modules/devextreme/core/options/option_manager.js","webpack:///./node_modules/devextreme/core/templates/template.js","webpack:///./node_modules/devextreme/events/hover.js","webpack:///./node_modules/devextreme/core/template_manager.js","webpack:///./node_modules/devextreme/events/index.js","webpack:///./node_modules/devextreme/ui/overlay/z_index.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/component.js","webpack:///./node_modules/devextreme/core/utils/comparator.js","webpack:///./node_modules/devextreme-vue/core/templates-discovering.js","webpack:///./node_modules/devextreme/ui/overlay/ui.overlay.js","webpack:///./node_modules/buffer/index.js","webpack:///./node_modules/devextreme/events/core/wheel.js","webpack:///./node_modules/devextreme/ui/overlay.js","webpack:///./node_modules/devextreme/core/utils/browser.js","webpack:///./node_modules/devextreme/core/component.js","webpack:///./node_modules/devextreme/events/pointer/observer.js","webpack:///./node_modules/devextreme/core/templates/template_engines.js","webpack:///./node_modules/devextreme/animation/position.js","webpack:///./node_modules/devextreme/core/utils/dom.js","webpack:///./node_modules/devextreme/events/pointer/base.js","webpack:///./node_modules/devextreme/core/utils/ready_callbacks.js","webpack:///./node_modules/devextreme/events/pointer/mouse.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/extension-component.js","webpack:///./node_modules/devextreme/core/utils/storage.js","webpack:///./node_modules/devextreme/ui/themes_callback.js","webpack:///./node_modules/devextreme/ui/widget/ui.widget.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/index.js","webpack:///./node_modules/devextreme-vue/core/component.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/configuration-component.js","webpack:///./node_modules/devextreme/events/gesture/emitter.gesture.js","webpack:///./node_modules/devextreme-vue/core/strategy/vue2/constants.js","webpack:///./node_modules/devextreme-vue/core/vue-helper.js","webpack:///./node_modules/isarray/index.js","webpack:///./node_modules/devextreme/ui/widget/swatch_container.js","webpack:///./node_modules/devextreme-vue/core/configuration-component.js","webpack:///./node_modules/devextreme/animation/easing.js","webpack:///./node_modules/devextreme/ui/themes.js","webpack:///./node_modules/devextreme/core/component_registrator_callbacks.js","webpack:///./node_modules/devextreme/core/utils/resize_callbacks.js"],"names":["__assign","this","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","defineProperty","exports","value","helpers_1","Configuration","updateFunc","name","initialValues","expectedChildren","isCollectionItem","collectionItemIndex","ownerConfig","_updateFunc","_name","_initialValues","_nestedConfigurations","_isCollectionItem","_collectionItemIndex","_expectedChildren","_ownerConfig","_componentChanges","updateValue","bind","get","enumerable","configurable","cleanComponentsCountChanged","fullPath","fullName","_options","_prevNestedConfigOptions","init","options","set","handler","_emitOptionChanged","setPrevNestedOptions","onOptionChanged","args","isEqual","previousValue","_onOptionChanged","split","cleanNested","createNested","expected","actualName","actualIsCollectionItem","optionName","filter","c","configuration","push","nestedName","join","getNestedOptionValues","values","forEach","o","nestedValue","arr","Array","isArray","getOptionsToWatch","blackList","optionRelPath","optionInfo","getOptionInfo","isCollection","nestedConfig","_getNestedConfig","slice","_tryEmitOptionChanged","component","option","_i","_a","bindOptionWatchers","config","vueInstance","innerChanges","targets","$watch","setEmitOptionChangedFunc","emitOptionChanged","$props","$emit","default","Options","_type","_common","_option_manager","_object","_utils","_extend","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","descriptor","writable","key","_createClass","protoProps","staticProps","defaultOptions","optionsByReference","deprecatedOptions","_this","_deprecatedCallback","_startChangeCallback","_endChangeCallback","_default","_deprecated","_deprecatedNames","_initDeprecatedNames","_optionManager","OptionManager","onRelevantNamesPrepared","silent","_setRelevantNames","_cachedOptions","_rules","rules","concat","convertRulesToOptions","info","normalizedName","_normalizeName","_setField","_clearField","fieldName","fieldObject","getFieldName","getParentName","previousFieldName","deprecate","_notifyDeprecated","alias","_getByRules","noop","dispose","callBack","onChanging","onChanged","initialValue","initial","areFunctions","isFunction","toString","equalByValue","getNestedOptionValue","_initial","isGetter","type","_this2","replace","reduce","field","defaultValue","isObject","clone","_this3","keys","aliasName","extend","_initialOptions","rulesOptions","_setByReference","_base","_interopRequireDefault","_observer","obj","__esModule","observer","eventMap","dxpointerdown","dxpointermove","dxpointerup","dxpointercancel","dxpointerover","dxpointerout","dxpointerenter","dxpointerleave","activated","activateStrategy","a","b","pointerId","e","isPrimary","reset","MsPointerStrategy","inherit","ctor","callBase","_fireEvent","pointers","originalEvent","map","resetObserver","module","originalViewPort","changeCallback","_renderer","_ready_callbacks","_callbacks","ready","add","$originalViewPort","$current","element","$element","isNewViewportFound","prevViewPort","fire","attachInstanceToElement","getInstanceByElement","_element_data","_events_engine","_weak_map","_remove_event","COMPONENT_NAMES_DATA_KEY","ANONYMOUS_COMPONENT_DATA_KEY","componentNames","nextAnonymousComponent","getName","componentClass","newName","isDefined","has","generatedName","componentInstance","disposeFn","data","constructor","one","EventsStrategy","_iterator","owner","_events","_owner","eventName","callbacks","eventArgs","fireWith","eventHandler","isPlainObject","each","h","on","addFn","originalAdd","remove","empty","event","strategy","_component_registrator_callbacks","_errors","_public_component","registerComponent","namespace","registerRendererComponent","fn","result","isMemberInvoke","memberName","memberArgs","getInstance","Error","member","memberValue","_error","ERROR_MESSAGES","E1001","E1002","E1003","E1004","E1005","E1006","E1007","E1010","E1011","E1012","E1016","E1018","E1019","E1020","E1021","E1022","E1023","E1025","E1026","E1030","E1031","E1032","E1033","E1034","E1035","E1037","E1038","E1039","E1040","E1041","E1042","E1043","E1044","E1045","E1046","E1047","E1048","E1049","E1050","E1051","E1052","E1053","E1054","E1055","E1056","E1058","E1059","E1060","W1001","W1002","W1003","W1004","W1005","W1006","W1007","W1008","W1009","W1010","W1011","W1012","W1013","W1014","W1015","initDxExtensionComponent","vue_1","component_1","vue_helper_1","defineComponent","extends","initBaseComponent","created","nodeOptions","getNodeOptions","$_isExtension","$_attachTo","attachTo","mounted","$el","setAttribute","componentOptions","$_hasOwner","methods","$_createWidget","pullAllChildren","isFragment","directChildren","allChildren","pullConfigComponents","node","patchFlag","children","nodes","componentInfo","getComponentInfo","$_optionName","componentChildren","configurationChildren","$_predefinedProps","getNormalizedProps","$_isCollectionItem","$_expectedChildren","$_config","$_innerChanges","triggerResizeEvent","triggerHidingEvent","triggerShownEvent","triggerVisibilityChangeEvent","VISIBILITY_CHANGE_SELECTOR","changeHandlers","find","triggerHandler","_event_registrator_callbacks","registerEvent","eventObject","noBubble","bindType","delegateType","_","methodName","unshift","addNamespace","getChar","normalizeKeyName","fireEvent","createEvent","setEventFixMethod","needSkipEvent","stopEventsSkipping","forceSkipEvents","hasTouches","eventDelta","eventData","isFakeClickEvent","isKeyboardEvent","isTouchEvent","isDxMouseWheelEvent","isMouseEvent","isPointerEvent","eventSource","_add_namespace","_selectors","KEY_MAP","backspace","tab","enter","escape","pageup","pagedown","end","home","arrowleft","arrowup","arrowright","arrowdown","f","alt","control","shift","left","up","right","down","multiply","spacebar","del","subtract","esc","LEGACY_KEY_CODES","8","9","13","27","33","34","35","36","37","38","39","40","46","32","70","65","106","109","189","173","16","17","18","EVENT_SOURCES_REGEX","dx","mouse","touch","keyboard","pointer","fixMethod","copyEvent","Event","isDxEvent","isNativeMouseEvent","isNativeTouchEvent","_ref","test","pointerType","_ref2","screenX","offsetX","pageX","_ref3","pageY","timeStamp","x","y","time","from","to","touches","skipEvents","$target","touchInInput","is","isTextArea","hasClass","isContentEditable","hasAttribute","isInputFocused","which","focused","func","delegateTarget","trigger","_ref4","isKeySupported","toLowerCase","String","fromCharCode","_ref5","byteLength","toByteArray","fromByteArray","lookup","revLookup","Arr","Uint8Array","code","len","charCodeAt","getLens","b64","validLen","indexOf","placeHoldersLen","lens","_byteLength","tmp","curByte","tripletToBase64","num","encodeChunk","uint8","start","output","extraBytes","parts","maxChunkLength","len2","eventNames","createExtensionComponent","createConfigurationComponent","createComponent","vue2Stategy","vue3Stategy","version_1","isVue3","_typeof","Symbol","iterator","drop","leave","move","_array","iteratorUtils","_interopRequireWildcard","_dom","_event_registrator","_index","_emitter","_emitter_registrator","_getRequireWildcardCache","WeakMap","cache","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","desc","DRAG_START_EVENT","DRAG_EVENT","DRAG_END_EVENT","DRAG_ENTER_EVENT","DRAG_LEAVE_EVENT","DROP_EVENT","DX_DRAG_EVENTS_COUNT_KEY","knownDropTargets","knownDropTargetSelectors","knownDropTargetConfigs","dropTargetRegistration","setup","knownDropTarget","inArray","handleObj","index","updateEventsCounter","selector","eventsCount","Math","max","teardown","handlersCount","splice","removeData","getItemDelegatedTargets","dropTargetIndex","dropTargetSelectors","$delegatedTargets","getItemConfig","getItemPosition","dropTargetConfig","itemPositionFunc","offset","getItemSize","itemSizeFunc","width","getBoundingClientRect","height","DragEmitter","direction","_init","_initEvent","_start","_maxLeftOffset","maxLeftOffset","_maxRightOffset","maxRightOffset","_maxTopOffset","maxTopOffset","_maxBottomOffset","maxBottomOffset","dropTargets","wrapToArray","targetElements","_dropTargets","_move","dragOffset","_calculateOffset","_processDropTargets","_cancelPreventDefault","preventDefault","_calculateXOffset","_calculateYOffset","_startEventData","_fitOffset","minOffset","maxOffset","min","_findDropTarget","sameTarget","_currentDropTarget","_fireDropTargetEvent","draggingElement","_$element","that","_checkDropTargetActive","delegatedTarget","$delegatedTarget","_checkDropTarget","active","activeTarget","contains","$prevTarget","isDraggingElement","targetPosition","top","targetSize","closest","checkDropTarget","_end","emitter","events","_window","_resize_callbacks","_events_strategy","_storage","_view_port","_config","navigator","getNavigator","window","getWindow","KNOWN_UA_TABLE","iPhone","iPhone5","iPhone6","iPhone6plus","iPad","iPadMini","androidPhone","androidTablet","msSurface","desktop","DEFAULT_DEVICE","deviceType","platform","version","phone","tablet","android","ios","generic","grade","mac","uaParsers","userAgent","isPhone","match","isTablet","isDesktop","isMac","matches","parseInt","isIPhone4","screen","worseThan4_4","Devices","_realDevice","_getDevice","_currentDevice","_currentOrientation","_eventsStrategy","changed","hasWindow","_recalculateOrientation","deviceOrName","_forced","_getDeviceOrNameFromWindowScope","_getDeviceNameFromSessionStorage","forceDevice","tinyHippos","device","realDevice","current","isSimulator","rtlEnabled","_deviceClasses","_getCssClasses","addClass","removeClass","_isSimulator","self","isRippleEmulator","deviceName","_fromConfig","ua","_fromUA","sessionStorage","getItem","JSON","parse","ex","shortcuts","parser","$window","orientation","windowWidth","_currentWidth","_changeOrientation","off","devices","viewPort","prevViewport","detachCssClasses","attachCssClasses","config_1","templates_discovering_1","domAdapter","constants_1","TemplatesManager","_slots","_templates","_isDirty","_component","discover","slots","allKeysAreEqual","_prepareTemplates","resetDirtyFlag","name_1","createDxTemplate","render","scopeData","getOption","model","container","placeholder","document","createElement","appendChild","mountedTemplate","mountTemplate","setClass","DX_TEMPLATE_WRAPPER_CLASS","nodeType","Node","TEXT_NODE","removalListener","nodeName","style","display","DX_REMOVE_EVENT","$destroy","_translator","_component_registrator","_dom_component","_math","_drag","_position","_visibility_change","RESIZABLE","RESIZABLE_CLASS","RESIZABLE_RESIZING_CLASS","RESIZABLE_HANDLE_CLASS","RESIZABLE_HANDLE_TOP_CLASS","RESIZABLE_HANDLE_BOTTOM_CLASS","RESIZABLE_HANDLE_LEFT_CLASS","RESIZABLE_HANDLE_RIGHT_CLASS","RESIZABLE_HANDLE_CORNER_CLASS","DRAGSTART_START_EVENT_NAME","DRAGSTART_EVENT_NAME","DRAGSTART_END_EVENT_NAME","SIDE_BORDER_WIDTH_STYLES","bottom","Resizable","_getDefaultOptions","handles","step","stepPrecision","area","minWidth","maxWidth","minHeight","maxHeight","onResizeStart","onResize","onResizeEnd","roundStepValue","_initMarkup","_renderHandles","_render","_renderActions","_resizeStartAction","_createActionByOption","_resizeEndAction","_resizeAction","_handles","directions","handleName","_renderHandle","_attachEventHandlers","$handle","appendTo","handlers","_dragStartHandler","_dragHandler","_dragEndHandler","handleElement","immediate","_detachEventHandlers","_toggleEventHandlers","shouldAttachEvents","cancel","_toggleResizingClass","_movingSides","_getMovingSides","_elementLocation","locate","elementRect","getBoundingRect","_elementSize","_renderDragOffsets","toggleClass","_getArea","handleWidth","outerWidth","handleHeight","outerHeight","handleOffset","areaOffset","scrollOffset","_getAreaScrollOffset","scrollX","scrollY","_getBorderWidth","isWindow","borderWidth","css","sides","location","size","_getOffset","_renderWidth","_renderHeight","offsetTop","offsetLeft","steps","pairToObject","strictPrecision","_getStrictOffset","_getSimpleOffset","v","xPos","yPos","newXShift","newYShift","sign","isNaN","separatorOffset","isSmallOffset","abs","newOffsetX","newOffsetY","hasCornerTopLeftClass","hasCornerTopRightClass","hasCornerBottomLeftClass","hasCornerBottomRightClass","_getAreaFromObject","_getAreaFromElement","isElement","areaElement","pageXOffset","pageYOffset","_correctAreaGeometry","$area","innerWidth","innerHeight","areaBorderLeft","areaBorderTop","fitIntoRange","_optionChanged","_invalidate","_clean","_useTemplates","_devices","normalizeTouchEvent","identifier","changedTouches","skipTouchWithSameIdentifier","pointerEvent","real","TouchStrategy","_pointerId","_handler","_eventName","normalize","TemplateBase","renderedCallbacks","_dom_adapter","syncStrategy","onRendered","$result","_renderCore","_ensureResultInContainer","$container","resultInContainer","append","resultInBody","getBody","EmptyTemplate","_template_base","_inherits","subClass","superClass","create","_setPrototypeOf","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","Super","_getPrototypeOf","NewTarget","Reflect","construct","_possibleConstructorReturn","_assertThisInitialized","ReferenceError","sham","Proxy","Date","getPrototypeOf","_TemplateBase","_super","_deferred","promise","Promise","resolver","d","Deferred","resolve","reject","val","all","promises","when","then","PostponedOperations","_toConsumableArray","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","minLen","_arrayLikeToArray","iter","arr2","_postponedOperations","postponedPromise","completePromise","operation","done","_template_manager","_element","_short","abstract","DOMComponent","elementAttr","disabled","integrationOptions","TemplateManager","createDefaultOptions","_createElement","_dispose","_getSynchronizableOptionsForCreateComponent","_visibilityChanged","_dimensionChanged","_attachWindowResizeCallback","_initTemplateManager","_setOptionsByDevice","instanceCustomRules","_classCustomRules","_isInitialOptionValue","isCustomOption","_convertRulesToOptions","_isDimensionChangeSupported","windowResizeCallBack","_windowResizeCallBack","_renderComponent","_renderElementAttributes","_toggleRTLDirection","_renderVisibilityChange","_renderDimensions","_attachVisibilityChangeHandlers","attributes","classNames","class","attr","_attachDimensionChangeHandlers","_isVisibilityChangeSupported","_getOptionValue","_isCssUpdateRequired","NAME","resize","_isHidden","_isVisible","visibility","_checkVisibilityChanged","action","isVisible","_modelByElement","_this$option","modelByElement","_isUpdateAllowed","_requireRefresh","_refresh","_templateManager","_detachWindowResizeCallback","rtl","_createComponent","synchronizableOptions","grep","_this$option2","_this$option3","nestedComponentOptions","nestedComponentConfig","_extendConfig","isString","optionChangedHandler","extendConfig","_defaultActionConfig","context","_defaultActionArgs","_removeAttributes","attrs","removeAttribute","_removeClasses","className","cssClass","lastIndexOf","_updateDOMComponent","renderRequired","endUpdate","_isInitializingRequired","getPublicElement","cleanDataRecursive","textContent","resetOption","initialOption","_getAnonymousTemplateName","_this$option4","_this$option4$integra","createTemplate","_initTemplates","_this4","_this$_templateManage","extractTemplates","templates","anonymousTemplateMeta","anonymousTemplate","template","_getTemplateByOption","_getTemplate","templateSource","isAsyncTemplate","skipTemplates","getTemplate","_saveTemplate","_setOptionWithoutOptionChange","_createTemplate","rule","support","_browser","_touch","_mspointer","_mouse","_mouse_and_touch","getStrategy","browser","pointerEvents","msie","EventStrategy","originalEvents","over","out","click","dxClick","focus","hover","_keyboard_processor","executeAction","execute","inactive","opts","showTimeout","hideTimeout","timeout","currentTarget","shown","hiding","_ref6","_ref7","focusIn","focusOut","_ref8","isFocusable","hasDocumentProperty","_ref9","_ref10","_ref11","_ref12","_ref13","keyboardProcessors","generateListenerId","focusTarget","listenerId","_getProcessor","Action","_action","_context","_beforeExecute","beforeExecute","_afterExecute","afterExecute","_validatingTargetName","validatingTargetName","excludeValidators","_excludeValidators","handled","argsBag","_validateAction","_executeAction","executors","_executor$validate","executor","validate","_executor$execute","registerExecutor","_len","_key","createValidatorByTargetElement","condition","readOnly","undefined","activate","MouseAndTouchStrategy","EVENT_LOCK_TIMEOUT","isMouse","_skipNextEvents","_mouseLocked","clearTimeout","_unlockMouseTimer","setTimeout","normalizer","configuration_component_1","extension_component_1","initDxComponent","initDxConfiguration","errorHandler","formInstance","errors","hasUnknownError","hasError","error","extensions","errorType","unknownErrorMessage","$t","i18n","errorMessage","$refs","setErrors","validateField","valid","_class","COMPOSITION_START_EVENT","COMPOSITION_END_EVENT","KEYDOWN_EVENT","NAMESPACE","KeyboardProcessor","_keydown","_compositionStart","_compositionEnd","_focusTarget","_processFunction","isNotFocusTarget","shouldSkipProcessing","_isComposingJustFinished","_isComposing","process","_toggleProcessingWithContext","toggleProcessing","keyName","ctrl","ctrlKey","metaKey","shiftKey","altKey","_frame","_pointer","_version","CLICK_EVENT_NAME","TOUCH_BOUNDARY","isInput","misc","requestAnimationFrame","cancelAnimationFrame","ClickEmitter","_makeElementClickable","_blurPrevented","isDefaultPrevented","_startTarget","_eventOutOfElement","getElement","_cancel","resetActiveElement","_accept","_clickAnimationFrame","_fireClickEvent","targetChanged","gestureDelta","boundsExceeded","closestCommonParent","useNativeClick","compare","NATIVE_CLICK_CLASS","isNativeClickEvent","prevented","lastFiredEvent","clickHandler","eventAlreadyFired","DXCLICK_FIRED","leftButton","configure","useNative","desktopDevice","startTarget","blurPrevented","pointerDownHandler","NATIVE_CLICK_FIXER_NAMESPACE","getDocument","subscribeGlobal","bubble","maxLevel","normalizeArg","isFinite","xItem","yItem","getDefaultAlignment","isRtlEnabled","rect","parseTranslate","resetPosition","getTranslate","getTranslateCss","clearCache","TRANSLATOR_DATA_KEY","TRANSFORM_MATRIX_REGEX","TRANSLATE_REGEX","translate","isPercentValue","cacheTranslate","xValueString","yValueString","transformValue","matrix","is3D","parseFloat","z","position","transform","finishTransition","originalTransition","stylesConfig","transition","offsetHeight","translateString","createDefaultOptionRules","deviceMatch","normalizeOptions","_data","_defineProperty","cachedGetters","currentDevice","ruleOptions","deviceFilter","isEmptyObject","findBestMatches","substr","optionsObject","compileGetter","functionsAsIs","uppercaseFirst","toUpperCase","lowercaseFirst","camelize","toComparable","getTime","value1","value2","forEachChildNode","el","callback","childNodes","obj1","obj2","obj1Keys","obj1Keys_1","getOptionValue","optionPath","Number","TEMPLATE_MULTIPLE_ROOTS_ERROR","_wheel","MANAGER_EVENT","EMITTER_DATA","EventManager","_attachHandlers","_proxiedCancelHandler","_cancelHandler","_proxiedAcceptHandler","_acceptHandler","_pointerDownHandler","_pointerMoveHandler","_pointerUpHandler","_mouseWheelHandler","_eachEmitter","activeEmitters","_activeEmitters","_applyToEmitters","method","arg","resetEmitter","_updateEmitters","_isSetChanged","_cleanEmitters","_fetchEmitters","currentSet","_closestEmitter","previousSet","_emittersSet","setChanged","handleEmitter","validatePointers","addCancelCallback","addAcceptCallback","emitters","parent","acceptedEmitter","_cancelEmitter","canceledEmitter","removeCancelCallback","removeAcceptCallback","emitterIndex","_allowInterruptionByMouseWheel","_adjustWheelEvent","allowInterruption","allowInterruptionByMouseWheel","closestGestureEmitter","gesture","getDirection","verticalGestureDirection","prop","delta","isActive","eventManager","EMITTER_SUBSCRIPTION_DATA","registerEmitter","emitterConfig","emitterClass","emitterName","emitterEvents","subscriptions","delegateSelector","disposeEmitter","_style","stylePropPrefix","styleProp","nativeScrolling","animation","transitionEndEventName","inputType","supportProp","touchEvents","_call_once","_getNavigator","maxTouchPoints","msMaxTouchPoints","pointerEnabled","transitionEndEventNames","webkitTransition","MozTransition","OTransition","msTransition","isNativeScrollingSupported","_devices$real","isObsoleteAndroid","isNativeScrollDevice","input","detectTouchEvents","hasWindowProperty","detectPointerEvent","isPointerEnabled","ensureDefined","canUsePointerEvent","hasProperty","touchPointersPresent","FRAME_ANIMATION_STEP_TIME","request","requestID","setAnimationFrameMethods","nativeRequest","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","msRequestAnimationFrame","nativeCancel","webkitCancelAnimationFrame","mozCancelAnimationFrame","oCancelAnimationFrame","msCancelAnimationFrame","canceledRequests","requestId","acquireTemplate","acquireIntegrationTemplate","defaultCreateElement","templateKey","validateTemplateSource","getNormalizedTemplateArgs","addOneRenderedCall","suitableTemplatesByName","findTemplates","_child_default_template","_empty_template","_template","optionsAttributeName","contents","optionsString","optionsParser","rawTemplates","templatesMap","groupBy","_findBestMatches$","suitableTemplate","templateResult","normalizeTemplateElement","isRenderer","Template","integrationTemplate","defaultTemplates","ChildDefaultTemplate","FunctionTemplate","eventPropName","beforeCleanData","elements","hideCallback","indexOfCallback","pop","hasCallback","tabbable","focusable","focusableFn","tabIndex","visible","isTabIndexNotNaN","isDisabled","isDefaultFocus","isHyperlink","href","parents","getActiveElement","useLegacyTemplateEngine","setOptions","lock","ACTIVE_EVENT_NAME","INACTIVE_EVENT_NAME","activeFeedback","ACTIVE_TIMEOUT","INACTIVE_TIMEOUT","FeedbackEvent","_timeout","_fire","_schedule","force","stop","_timer","_fired","fired","FeedbackEmitter","_active","_inactive","activeTimeout","inactiveTimeout","activeChildExists","childJustActivated","_initEvents","eventTarget","_getEmitterTarget","mouseEvent","deferFeedback","skipTimers","lockInactive","deferred","_easing","_support","removeEventName","RELATIVE_VALUE_REGEX","ANIM_DATA_KEY","ANIM_QUEUE_KEY","TRANSFORM_PROP","TransitionAnimationStrategy","initAnimation","transitionProperty","setProps","cleanupWhen","transitionAnimation","finish","_finishTransition","always","_cleanup","resolveWith","_completeAnimationCallback","fail","rejectWith","duration","animate","_startAnimation","simulatedEndEventTimer","startTime","now","delay","transitionEndFired","simulatedTransitionEndFired","transitionEndEventFullName","cleanup","waitForJSCompleteTimer","fx","_simulatedTransitionEndDelay","transitionDelay","transitionDuration","transitionTimingFunction","easing","jumpToEnd","FrameAnimationStrategy","_normalizeValue","_parseTransform","frameAnimation","currentValue","convertTransitionTimingFuncToEasing","valueOf","draw","animationFrameId","delayTimeout","_animationStep","transformString","part","translateData","scaleData","rotateData","scale","_calcStepValue","currentDuration","calcValueRecursively","calcEasedValue","propName","getEasing","endPropValue","numericValue","FallbackToNoAnimationStrategy","isSynchronous","getAnimationStrategy","animationStrategies","frame","noAnimation","baseConfigValidator","animationType","typeMessage","isObjectConfigValidator","isStringConfigValidator","CustomAnimationConfigurator","CssAnimationConfigurator","validateConfig","positionAliases","my","at","SlideAnimationConfigurator","positioningConfig","of","setupPosition","_setUpConfig","_initNewPosition","relativeValue","_getRelativeValue","exec","FadeAnimationConfigurator","toOpacity","fromOpacity","skipElementInitialStyles","opacity","PopAnimationConfigurator","fromScale","toScale","_getCssTransform","animationConfigurators","custom","slide","slideIn","slideOut","fade","fadeIn","fadeOut","getAnimationConfigurator","defaultJSConfig","complete","defaultCssConfig","setupAnimationOnElement","configurator","onElementAnimationComplete","startAnimationOnElement","isStarted","stopAnimationOnElement","startTimeout","scopedRemoveEvent","subscribeToRemoveEvent","createAnimation","initialConfig","defaultConfig","pushInAnimationQueue","queueData","getAnimQueueData","writeAnimQueueData","isAnimating","shiftFromAnimationQueue","destroyAnimQueueData","executeAnimation","win","calculate","currentPosition","scrollTop","scrollLeft","animationTypes","VueType","errors_1","TEMPLATE_PROP","Vue","asConfigurable","$vnode","hasTemplate","scopedSlots","slotName","$scopedSlots","$slots","slot","$children","childComponent","defaultSlot","templateName","getSlot","inject","eventBus","$on","$forceUpdate","content","destroyed","$off","getVueVersion","currentVersion","registerTemplateEngine","setTemplateEngine","getCurrentTemplateEngine","currentTemplateEngine","templateEngines","templateEngine","read","buffer","isLE","mLen","nBytes","m","eLen","eMax","eBias","nBits","NaN","Infinity","pow","write","rt","floor","log","LN2","Emitter","_cancelCallback","_acceptCallback","_requestAccept","_acceptRequestEvent","_forgetAccept","params","rendered","counter","$","appContext","app","unmount","setPublicElementWrapper","newStrategy","configComponent","Ctor","propsData","_comparator","cachedSetters","_optionsByReference","_changingCallback","_changedCallback","_namePreparedCallbacks","merge","equals","path","compileSetter","unwrapObservables","valueName","_prepareRelevantNames","_setPreparedValue","_template_engine_registry","compile","transclude","_compiledTemplate","HOVERSTART_NAMESPACE","HOVERSTART","POINTERENTER_NAMESPACED_EVENT_NAME","HOVEREND_NAMESPACE","HOVEREND","POINTERLEAVE_NAMESPACED_EVENT_NAME","Hover","_handlerArrayKeyPath","_eventNamespace","_originalEventName","guid","HoverStart","HoverEnd","_function_template","ANONYMOUS_TEMPLATE_NAME","TEMPLATE_OPTIONS_NAME","TEMPLATE_WRAPPER_CLASS","DX_POLYMORPH_WIDGET_TEMPLATE","widgetName","widget","widgetElement","widgetOptions","anonymousTemplateName","_tempTemplates","_defaultTemplates","_anonymousTemplateName","_createTemplateIfNeeded","tempTemplate","_extractTemplates","_extractAnonymousTemplate","suitableTemplates","detach","$anonymousTemplate","$notJunkTemplateContent","isTextNode","isEmptyText","text","trim","cachedTemplate","source","templateSourceResult","watchMethod","skipImmediate","useDeferUpdateForTemplates","clearStack","base","baseZIndex","zIndexStack","ZIndex","baseIndex","zIndex","children_processing_1","configuration_1","templates_manager_1","BaseComponent","inheritAttrs","provide","$_processChildren","id","$attrs","beforeUpdate","updated","child","initOptionChangedFunc","getConfig","getInnerChanges","$_templatesManager","$_instance","beginUpdate","isDirty","_b","_c","$_pendingOptions","name_2","$_applyConfigurationChanges","beforeDestroy","$options","componentsCountChanged","removed","thisComponent","$_getIntegrationOptions","$_WidgetClass","$_createEmitters","$_getWatchMethod","$_getExtraIntegrationOptions","name_3","valueGetter","valueChangeCallback","newValue","oldValue","deep","_children","$listeners","listenerName","cleanWidgetNode","removedNodes","childNode","parentNode","isExtension","removeChild","restoreNodes","DxComponent","onInitializing","childExtension","hasNegation","oldValueIsNaN","newValueIsNaN","isElementNode","configurationTemplate","namedTeplates","declaredTemplates","getChildren","componentChildren_1","configurationDefaultTemplate","clearConfiguration","newContent","item","getConfigurationOptions","mount","$_updatedHandler","unmounted","_fx","_hide_callback","_resizable","_swatch_container","_ui","zIndexPool","viewPortChanged","OVERLAY_CLASS","OVERLAY_WRAPPER_CLASS","OVERLAY_CONTENT_CLASS","OVERLAY_SHADER_CLASS","OVERLAY_MODAL_CLASS","INNER_OVERLAY_CLASS","INVISIBLE_STATE_CLASS","RTL_DIRECTION_CLASS","ACTIONS","OVERLAY_STACK","DISABLED_STATE_CLASS","PREVENT_SAFARI_SCROLLING_CLASS","TAB_KEY","POSITION_ALIASES","center","realVersion","firefoxDesktop","mozilla","iOS","hasSafariAddressBar","safari","android4_0nativeBrowser","forceRepaint","$parents","inScrollView","_proxiedDocumentDownHandler","Overlay","_supportedKeys","offsetSize","stopPropagation","allowedOffsets","_allowedOffsets","_changePosition","hide","upArrow","downArrow","leftArrow","rightArrow","activeStateEnabled","deferRendering","shading","shadingColor","show","closeOnOutsideClick","onShowing","onShown","onHiding","onHidden","contentTemplate","dragEnabled","resizeEnabled","innerOverlay","hideTopOverlayHandler","closeOnTargetScroll","onPositioned","boundaryOffset","propagateOutsideClick","ignoreChildEvents","_checkParentVisibility","_defaultOptionsRules","realPlatform","_setOptionsByReference","_wrapper","_$wrapper","_container","_$content","_eventBindingTarget","_initActions","_initCloseOnOutsideClickHandler","_initTabTerminatorHandler","_initInnerOverlayClass","_toggleViewPortSubscription","_initHideTopOverlayHandler","_initOptions","_initTarget","_initContainer","pathParts","first","_$container","_hideTopOverlayHandler","_actions","_documentDownHandler","_showAnimationProcessing","_stopAnimation","isAttachedTarget","isInnerOverlay","outsideClick","_outsideClickHandler","addDefaultTemplates","_isTopOverlay","overlayStack","_overlayStack","tabbableElements","_findTabbableBounds","last","_zIndexInitValue","toggle","_viewPortChangeHandle","_viewPortChangeHandler","_renderVisibilityAnimate","_show","_hide","_normalizePosition","_getAnimationConfig","_parentHidden","_isParentHidden","_currentVisible","_isShown","showAnimation","_normalizeAnimation","startShowAnimation","completeShowAnimation","_isHidingActionCanceled","_renderVisibility","_isShowingActionCanceled","_animate","_toggleSafariScrolling","_stopShowTimer","_asyncShowTimeout","hideAnimation","startHideAnimation","completeHideAnimation","hidingArgs","_forceFocusLost","_toggleShading","_toggleSubscriptions","_that$_actions","activeElement","shouldResetActiveElement","completeCallback","startCallback","_toggleVisibility","_updateZIndexStackPosition","_renderContent","showingArgs","_moveFromContainer","_moveToContainer","_renderGeometry","pushToStack","_zIndex","_toggleTabTerminator","_proxiedTabTerminatorHandler","_tabKeyHandler","enabled","$elements","elementsCount","eq","$firstTabbable","$lastTabbable","isTabOnLast","isShiftTabOnFirst","isEmptyTabList","isOutsideTarget","$focusElement","_toggleHideTopOverlayCallback","_toggleParentsScrollSubscription","subscribe","closeOnScroll","scrollEvent","_proxiedTargetParentsScrollHandler","_targetParentsScrollHandler","_$prevTargetParents","closeHandled","_appendContentToElement","shouldDeferRendering","isParentHidden","_contentAlreadyRendered","$parent","isHidden","_renderContentImpl","_this5","whenContentRendered","contentTemplateOption","$content","noModel","_renderDrag","_renderResize","_renderScrollTerminator","$dragTarget","_getDragTarget","startEventName","updateEventName","_dragUpdateHandler","_resizeEndHandler","_getDragResizeContainer","_positionChangeHandled","$scrollTerminator","terminatorEventName","_toggleGestureCover","_toggleGestureCoverImpl","_clearSelection","isNative","cancelable","_prevOffset","isContainerDefined","_deltaSize","contentWidth","contentHeight","containerWidth","containerHeight","_isWindow","fullPageHeight","fullPageWidth","prevOffset","targetOffset","deltaSize","isAllowedDrag","shaderOffset","_getContainer","_detachWrapperToContainer","_attachWrapperToContainer","containerDefined","renderContainer","getSwatchContainer","_fixHeightAfterSafariAddressBarResizing","isDimensionChanged","_renderGeometryImpl","_renderWrapper","resultPosition","_renderPosition","_fixWrapperPosition","_useFixedPosition","_bodyScrollTop","scrollingEnabled","body","scrollTo","_renderWrapperDimensions","_renderWrapperPosition","wrapperWidth","wrapperHeight","positionOf","isEvent","_renderOverlayBoundaryOffset","_transformStringPosition","onPositioning","_attachKeyboardEvents","_this6","_keyboardListenerId","_keyboardHandler","_cleanFocusState","_deferShowTimer","_toggleDisabledState","Boolean","_this7","_animateDeferred","showing","_this8","animateDeferred","repaint","base64","ieee754","typedArraySupport","foo","subarray","kMaxLength","Buffer","TYPED_ARRAY_SUPPORT","createBuffer","RangeError","encodingOrOffset","allocUnsafe","ArrayBuffer","fromArrayBuffer","fromString","fromObject","assertSize","alloc","fill","encoding","checked","string","isEncoding","actual","fromArrayLike","array","byteOffset","isBuffer","copy","isnan","SlowBuffer","isView","loweredCase","utf8ToBytes","base64ToBytes","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","bidirectionalIndexOf","dir","arrayIndexOf","indexSize","arrLength","valLength","buf","readUInt16BE","foundIndex","found","j","hexWrite","remaining","strLen","parsed","utf8Write","blitBuffer","asciiWrite","asciiToBytes","latin1Write","base64Write","ucs2Write","utf16leToBytes","res","secondByte","thirdByte","fourthByte","tempCodePoint","firstByte","codePoint","bytesPerSequence","decodeCodePointsArray","INSPECT_MAX_BYTES","global","poolSize","_augment","species","allocUnsafeSlow","_isBuffer","list","pos","swap16","swap32","swap64","inspect","str","thisStart","thisEnd","thisCopy","targetCopy","includes","toJSON","_arr","MAX_ARGUMENTS_LENGTH","codePoints","ret","toHex","bytes","checkOffset","ext","checkInt","objectWriteUInt16","littleEndian","objectWriteUInt32","checkIEEE754","writeFloat","noAssert","writeDouble","newBuf","sliceLen","readUIntLE","mul","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","maxBytes","writeUIntBE","writeUInt8","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","limit","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","INVALID_BASE64_RE","base64clean","stringtrim","units","leadSurrogate","byteArray","hi","lo","src","dst","EVENT_NAME","EVENT_NAMESPACE","NATIVE_EVENT_NAME","PIXEL_MODE","DELTA_MUTLIPLIER","wheel","_wheelHandler","_e$originalEvent","deltaMode","deltaY","deltaX","deltaZ","_normalizeDelta","webkitRegExp","ieRegExp","ie11RegExp","msEdge","mozillaRegExp","browserFromUA","browserName","browserVersion","webkit","_postponed_operations","getEventName","actionName","charAt","isInnerOption","Component","_setDeprecatedOptions","_deprecatedOptions","_getDeprecatedOptions","onInitialized","onDisposing","defaultOptionsRules","applyRules","isInitial","_getOptionsByReference","_optionChangedCallbacks","_disposingCallbacks","eventsStrategy","_updateLockCount","postponedOperations","_createOptions","_initialized","_optionChanging","onDeprecated","_logDeprecatedOptionWarning","_notifyOptionChanged","onStartChange","onEndChange","addRules","_createOptionChangedAction","message","since","_logDeprecatedComponentWarning","_optionChangedAction","_createDisposingAction","_disposingAction","_disposed","_lockUpdate","_unlockUpdate","_initializing","_commitUpdate","callPostponedOperations","_initializeComponent","optionNames","getAliasesByName","_cancelOptionChange","_createAction","actionSource","actionValue","actionFunc","hasEvent","_len2","_key2","wrapActionsBeforeExecute","beforeActionExecute","wrappedAction","onActionCreated","hasActionSubscription","isOptionDeprecated","isDeprecated","_this$_options","addEventsListener","listen","Observer","pointerEquals","onPointerAdding","getPointerIndex","addPointer","removePointer","updatePointer","extractTemplateMarkup","jQuery","tmpl","jsrender","Mustache","Hogan","Handlebars","doT","scrollbarWidth","horzRe","vertRe","collisionRe","IS_SAFARI","normalizeAlign","raw","pair","splitPair","w","normalizeOffset","normalizeCollision","getAlignFactor","align","inverseAlign","calculateOversize","bounds","oversize","myLocation","collisionSide","initMyLocation","atLocation","atAlign","atSize","myAlign","mySize","collisionResolvers","fit","flip","inverseData","flipfit","none","calculateScrollbarWidth","$scrollDiv","overflow","offsetWidth","clientWidth","defaultPositionResult","calculatePosition","what","$what","currentOffset","collision","boundary","visualViewport","ofRect","getOffsetWithoutScale","windowHeight","documentElement","getDocumentElement","hZoomLevel","vZoomLevel","clientHeight","boundaryWidth","boundaryHeight","$boundary","boundaryPosition","preciser","number","precise","round","$startElement","$currentElement","currentElement","createTextElementHiddenCopy","clipboardText","clearSelection","blur","selection","getSelection","removeAllRanges","endTarget","$startTarget","$endTarget","$startParents","$endParents","startingParent","templateTag","$node","html","clipboard","clipboardData","getData","setData","isDocument","compareDocumentPosition","DOCUMENT_POSITION_CONTAINS","elementStyles","getComputedStyle","includePaddings","fontStyle","fontVariant","fontWeight","fontSize","fontFamily","letterSpacing","border","paddingTop","paddingRight","paddingBottom","paddingLeft","whiteSpace","POINTER_EVENTS_NAMESPACE","BaseStrategy","_originalEvents","_handlerCount","_isNoBubble","_getDelegateTarget","_setSelector","_selector","_getSelector","_dependency_injector","isReady","getReadyState","doScroll","subscribeReady","removeListener","readyCallbacks","windowExists","normalizeMouseEvent","MouseStrategy","DxExtensionComponent","getSessionStorage","themeReadyCallback","_extend2","Widget","_feedbackHideTimeout","_feedbackShowTimeout","hoveredElement","hint","onContentReady","hoverStateEnabled","focusStateEnabled","accessKey","onFocusIn","onFocusOut","onKeyboardHandled","ignoreParentReadOnly","_initContentReadyAction","_innerWidgetOptionChanged","innerWidget","getOptionsFromContainer","_bindInnerWidgetOptions","optionsContainer","syncOptions","_getAriaTarget","_contentReadyAction","_renderHint","_isFocusable","_renderFocusTarget","_renderFocusState","_attachFeedbackEvents","_attachHoverEvents","_toggleIndependentState","deferRender","_fireContentReadyAction","deferRenderer","_detachKeyboardEvents","_resetActiveState","_toggleActiveState","setAria","_attachFocusEvents","_renderAccessKey","stopImmediatePropagation","_getActiveElement","_activeStateUnit","not","_this$option5","_keyboardEventBindingTarget","_refreshFocusEvent","_detachFocusEvents","_focusEventTarget","_focusInHandler","_updateFocusState","_focusOutHandler","isFocused","_toggleFocusClass","$focusTarget","_hasFocusClass","_isFocused","_getKeyboardListeners","_this$option6","hasChildListeners","hasKeyboardEventHandler","shouldAttach","onlyChildProcessing","keyboardListeners","_this$option7","listener","_refreshFocusState","removeAttr","_this$option8","_hoverStartHandler","_hoverEndHandler","_this$option9","_this9","_updatedHover","_hover","_findHoverTarget","$previous","_this$option10","newHoveredElement","_setWidgetOption","_this10","widgetOptionMap","_this$option11","_ready","_isReady","registerKeyHandler","currentKeys","DxConfiguration","CreateCallback","defaultSlots","getComponentInstance","beforeUnmount","getComponentProps","templatesRenderAsynchronously","childExtenton","parentPath","beforeMount","SLEEP","INITED","STARTED","IMMEDIATE_TOUCH_BOUNDARY","IMMEDIATE_TIMEOUT","supportPointerEvents","setGestureCover","GESTURE_COVER_CLASS","$cover","cursor","gestureCover","gestureCoverStrategy","GestureEmitter","_stage","_needSkipEvent","_startEvent","_setupImmediateTimer","_immediateTimer","_immediateAccepted","_directionConfirmed","_resetActiveElement","_adjustStartEvent","touchBoundary","_getTouchBoundary","horizontalMove","_validateMove","verticalMove","bothAccepted","horizontalAccepted","verticalAccepted","mainAxis","crossAxis","_stop","initialTouchBoundary","newBoundary","getNodeTypeOfComponent","saveComponentInstance","usedConfigurationProps","hasChildren","subTree","$_componentInstance","findConfigurationComponents","hasInlineTemplate","createApp","vnode","isConfiguration","SWATCH_CONTAINER_CLASS_PREFIX","swatchContainer","viewport","swatchClassRegex","RegExp","swatchClass","viewportSwatchContainer","setEasing","CSS_TRANSITION_EASING_REGEX","TransitionTimingFuncMap","linear","swing","ease","polynomBezier","x1","y1","x2","y2","Cx","Bx","Ax","Cy","By","Ay","bezierX","bezierY","derivativeX","findXFor","cssTransitionEasing","forceName","coeffs","easingName","waitForThemeLoad","isMaterial","isGeneric","isDark","isWebFontLoaded","waitWebFont","themeReady","resetTheme","initialized","setDefaultTimeout","_promise","_html_parser","_themes_callback","$activeThemeLink","knownThemes","currentThemeName","pendingThemeName","themeClasses","initDeferred","DX_LINK_SELECTOR","THEME_ATTR","ACTIVE_ATTR","DX_HAIRLINES_CLASS","ANY_THEME","defaultTimeout","THEME_MARKER_PREFIX","readThemeMarker","themeName","waitStartTime","timerId","intervalCleared","handleLoaded","clearInterval","isPendingThemeLoaded","setInterval","isLoaded","isTimeout","anyThemePending","state","themeMarker","processMarkup","$allThemeLinks","parseHTML","link","fullThemeName","url","after","resolveFullThemeName","desiredThemeName","desiredThemeParts","knownThemeName","themeData","knownThemeParts","initContext","newContext","theme","currentThemeData","isAutoInit","_autoInit","loadCallback","_forceTimeout","getCssClasses","themeNameParts","activateHairlines","pixelRatio","devicePixelRatio","$tester","isTheme","themeRegExp","testedFont","etalonFont","testElement","innerHTML","etalonFontWidth","testedFontWidth","interval","check","clear","intervalId","timeoutId","autoInit","_memorized_callbacks","resizeCallbacks","prevSize","originalCallbacksAdd","originalCallbacksRemove","formatSize","handleResize","changedDimension","setPrevSize"],"mappings":"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","file":"js/chunk-29a9acce.2cf8d7d9.js","sourcesContent":["/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar helpers_1 = require(\"./helpers\");\nvar Configuration = /** @class */ (function () {\n function Configuration(updateFunc, name, initialValues, expectedChildren, isCollectionItem, collectionItemIndex, ownerConfig) {\n this._updateFunc = updateFunc;\n this._name = name;\n this._initialValues = initialValues ? initialValues : {};\n this._nestedConfigurations = [];\n this._isCollectionItem = !!isCollectionItem;\n this._collectionItemIndex = collectionItemIndex;\n this._expectedChildren = expectedChildren || {};\n this._ownerConfig = ownerConfig;\n this._componentChanges = [];\n this.updateValue = this.updateValue.bind(this);\n }\n Object.defineProperty(Configuration.prototype, \"name\", {\n get: function () {\n return this._name;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"fullName\", {\n get: function () {\n return this._name && this._isCollectionItem\n ? this._name + \"[\" + this._collectionItemIndex + \"]\"\n : this._name;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"componentsCountChanged\", {\n get: function () {\n return this._componentChanges;\n },\n enumerable: true,\n configurable: true\n });\n Configuration.prototype.cleanComponentsCountChanged = function () {\n this._componentChanges = [];\n };\n Object.defineProperty(Configuration.prototype, \"fullPath\", {\n get: function () {\n return this._ownerConfig && this._ownerConfig.fullPath\n ? this._ownerConfig.fullPath + \".\" + this.fullName\n : this.fullName;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"ownerConfig\", {\n get: function () {\n return this._ownerConfig;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"options\", {\n get: function () {\n return this._options;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"initialValues\", {\n get: function () {\n return this._initialValues;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"expectedChildren\", {\n get: function () {\n return this._expectedChildren;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"nested\", {\n get: function () {\n return this._nestedConfigurations;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"prevNestedOptions\", {\n get: function () {\n return this._prevNestedConfigOptions;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"collectionItemIndex\", {\n get: function () {\n return this._collectionItemIndex;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"isCollectionItem\", {\n get: function () {\n return this._isCollectionItem;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"updateFunc\", {\n get: function () {\n return this._updateFunc;\n },\n enumerable: true,\n configurable: true\n });\n Configuration.prototype.init = function (options) {\n this._options = options ? options : [];\n };\n Object.defineProperty(Configuration.prototype, \"emitOptionChanged\", {\n set: function (handler) {\n this._emitOptionChanged = handler;\n },\n enumerable: true,\n configurable: true\n });\n Configuration.prototype.setPrevNestedOptions = function (value) {\n this._prevNestedConfigOptions = value;\n };\n Configuration.prototype.onOptionChanged = function (args) {\n if (helpers_1.isEqual(args.value, args.previousValue)) {\n return;\n }\n this._onOptionChanged(args.fullName.split(\".\"), args);\n };\n Configuration.prototype.cleanNested = function () {\n this._nestedConfigurations = [];\n };\n Configuration.prototype.createNested = function (name, initialValues, isCollectionItem, expectedChildren) {\n var expected = this._expectedChildren[name];\n var actualName = name;\n var actualIsCollectionItem = isCollectionItem;\n if (expected) {\n actualIsCollectionItem = expected.isCollectionItem;\n if (expected.optionName) {\n actualName = expected.optionName;\n }\n }\n var collectionItemIndex = -1;\n if (actualIsCollectionItem && actualName) {\n collectionItemIndex = this._nestedConfigurations.filter(function (c) { return c._name && c._name === actualName; }).length;\n }\n var configuration = new Configuration(this._updateFunc, actualName, initialValues, expectedChildren, actualIsCollectionItem, collectionItemIndex, this);\n this._nestedConfigurations.push(configuration);\n return configuration;\n };\n Configuration.prototype.updateValue = function (nestedName, value) {\n var fullName = [this.fullPath, nestedName].filter(function (n) { return n; }).join(\".\");\n this._updateFunc(fullName, value);\n };\n Configuration.prototype.getNestedOptionValues = function () {\n var values = {};\n this._nestedConfigurations.forEach(function (o) {\n if (!o._name) {\n return;\n }\n var nestedValue = __assign(__assign({}, o.initialValues), o.getNestedOptionValues());\n if (!nestedValue) {\n return;\n }\n if (!o._isCollectionItem) {\n values[o._name] = nestedValue;\n }\n else {\n var arr = values[o._name];\n if (!arr || !Array.isArray(arr)) {\n arr = [];\n values[o._name] = arr;\n }\n arr.push(nestedValue);\n }\n });\n return values;\n };\n Configuration.prototype.getOptionsToWatch = function () {\n var blackList = {};\n this._nestedConfigurations.forEach(function (c) { return c._name && (blackList[c._name] = true); });\n return this._options.filter(function (o) { return !blackList[o]; });\n };\n Configuration.prototype._onOptionChanged = function (optionRelPath, args) {\n if (optionRelPath.length === 0) {\n return;\n }\n var optionInfo = helpers_1.getOptionInfo(optionRelPath[0]);\n if (optionInfo.isCollection || optionRelPath.length > 1) {\n var nestedConfig = this._getNestedConfig(optionInfo.fullName);\n if (nestedConfig) {\n nestedConfig._onOptionChanged(optionRelPath.slice(1), args);\n return;\n }\n this._tryEmitOptionChanged(optionInfo.name, args.component.option(this.fullPath ? this.fullPath + \".\" + optionInfo.name : optionInfo.name));\n }\n else {\n this._tryEmitOptionChanged(optionInfo.name, args.value);\n }\n };\n Configuration.prototype._getNestedConfig = function (fullName) {\n for (var _i = 0, _a = this._nestedConfigurations; _i < _a.length; _i++) {\n var nestedConfig = _a[_i];\n if (nestedConfig.fullName === fullName) {\n return nestedConfig;\n }\n }\n return undefined;\n };\n Configuration.prototype._tryEmitOptionChanged = function (name, value) {\n if (this._emitOptionChanged) {\n this._emitOptionChanged(name, value);\n }\n };\n return Configuration;\n}());\nfunction bindOptionWatchers(config, vueInstance, innerChanges) {\n var targets = config.getOptionsToWatch();\n if (targets) {\n targets.forEach(function (optionName) {\n vueInstance.$watch(optionName, function (value) {\n if (innerChanges[optionName] !== value) {\n config.updateValue(optionName, value);\n }\n delete innerChanges[optionName];\n });\n });\n }\n}\nexports.bindOptionWatchers = bindOptionWatchers;\nfunction setEmitOptionChangedFunc(config, vueInstance, innerChanges) {\n config.emitOptionChanged = function (name, value) {\n if (!helpers_1.isEqual(value, vueInstance.$props[name])) {\n innerChanges[name] = value;\n vueInstance.$emit(\"update:\" + name, value);\n }\n };\n}\nexports.setEmitOptionChangedFunc = setEmitOptionChangedFunc;\nexports.default = Configuration;\n","/**\r\n * DevExtreme (core/options/index.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.Options = void 0;\r\nvar _type = require(\"../utils/type\");\r\nvar _common = require(\"../utils/common\");\r\nvar _option_manager = require(\"./option_manager\");\r\nvar _object = require(\"../utils/object\");\r\nvar _utils = require(\"./utils\");\r\nvar _extend = require(\"../utils/extend\");\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\nvar Options = function() {\r\n function Options(options, defaultOptions, optionsByReference, deprecatedOptions) {\r\n var _this = this;\r\n _classCallCheck(this, Options);\r\n this._deprecatedCallback;\r\n this._startChangeCallback;\r\n this._endChangeCallback;\r\n this._default = defaultOptions;\r\n this._deprecated = deprecatedOptions;\r\n this._deprecatedNames = [];\r\n this._initDeprecatedNames();\r\n this._optionManager = new _option_manager.OptionManager(options, optionsByReference);\r\n this._optionManager.onRelevantNamesPrepared(function(options, name, value, silent) {\r\n return _this._setRelevantNames(options, name, value, silent)\r\n });\r\n this._cachedOptions = {};\r\n this._rules = []\r\n }\r\n _createClass(Options, [{\r\n key: \"_initDeprecatedNames\",\r\n value: function() {\r\n for (var optionName in this._deprecated) {\r\n this._deprecatedNames.push(optionName)\r\n }\r\n }\r\n }, {\r\n key: \"_getByRules\",\r\n value: function(rules) {\r\n rules = Array.isArray(rules) ? this._rules.concat(rules) : this._rules;\r\n return (0, _utils.convertRulesToOptions)(rules)\r\n }\r\n }, {\r\n key: \"_notifyDeprecated\",\r\n value: function(option) {\r\n var info = this._deprecated[option];\r\n if (info) {\r\n this._deprecatedCallback(option, info)\r\n }\r\n }\r\n }, {\r\n key: \"_setRelevantNames\",\r\n value: function(options, name, value, silent) {\r\n if (name) {\r\n var normalizedName = this._normalizeName(name, silent);\r\n if (normalizedName && normalizedName !== name) {\r\n this._setField(options, normalizedName, value);\r\n this._clearField(options, name)\r\n }\r\n }\r\n }\r\n }, {\r\n key: \"_setField\",\r\n value: function(options, fullName, value) {\r\n var fieldName = \"\";\r\n var fieldObject = null;\r\n do {\r\n fieldName = fieldName ? \".\".concat(fieldName) : \"\";\r\n fieldName = (0, _utils.getFieldName)(fullName) + fieldName;\r\n fullName = (0, _utils.getParentName)(fullName);\r\n fieldObject = fullName ? this._optionManager.get(options, fullName, false) : options\r\n } while (!fieldObject);\r\n fieldObject[fieldName] = value\r\n }\r\n }, {\r\n key: \"_clearField\",\r\n value: function(options, name) {\r\n delete options[name];\r\n var previousFieldName = (0, _utils.getParentName)(name);\r\n var fieldObject = previousFieldName ? this._optionManager.get(options, previousFieldName, false) : options;\r\n if (fieldObject) {\r\n delete fieldObject[(0, _utils.getFieldName)(name)]\r\n }\r\n }\r\n }, {\r\n key: \"_normalizeName\",\r\n value: function(name, silent) {\r\n if (this._deprecatedNames.length && name) {\r\n for (var i = 0; i < this._deprecatedNames.length; i++) {\r\n if (this._deprecatedNames[i] === name) {\r\n var deprecate = this._deprecated[name];\r\n if (deprecate) {\r\n !silent && this._notifyDeprecated(name);\r\n return deprecate.alias || name\r\n }\r\n }\r\n }\r\n }\r\n return name\r\n }\r\n }, {\r\n key: \"addRules\",\r\n value: function(rules) {\r\n this._rules = rules.concat(this._rules)\r\n }\r\n }, {\r\n key: \"applyRules\",\r\n value: function(rules) {\r\n var options = this._getByRules(rules);\r\n this.silent(options)\r\n }\r\n }, {\r\n key: \"dispose\",\r\n value: function() {\r\n this._deprecatedCallback = _common.noop;\r\n this._startChangeCallback = _common.noop;\r\n this._endChangeCallback = _common.noop;\r\n this._optionManager.dispose()\r\n }\r\n }, {\r\n key: \"onChanging\",\r\n value: function(callBack) {\r\n this._optionManager.onChanging(callBack)\r\n }\r\n }, {\r\n key: \"onChanged\",\r\n value: function(callBack) {\r\n this._optionManager.onChanged(callBack)\r\n }\r\n }, {\r\n key: \"onDeprecated\",\r\n value: function(callBack) {\r\n this._deprecatedCallback = callBack\r\n }\r\n }, {\r\n key: \"onStartChange\",\r\n value: function(callBack) {\r\n this._startChangeCallback = callBack\r\n }\r\n }, {\r\n key: \"onEndChange\",\r\n value: function(callBack) {\r\n this._endChangeCallback = callBack\r\n }\r\n }, {\r\n key: \"isInitial\",\r\n value: function(name) {\r\n var value = this.silent(name);\r\n var initialValue = this.initial(name);\r\n var areFunctions = (0, _type.isFunction)(value) && (0, _type.isFunction)(initialValue);\r\n return areFunctions ? value.toString() === initialValue.toString() : (0, _common.equalByValue)(value, initialValue)\r\n }\r\n }, {\r\n key: \"initial\",\r\n value: function(name) {\r\n return (0, _utils.getNestedOptionValue)(this._initial, name)\r\n }\r\n }, {\r\n key: \"option\",\r\n value: function(options, value) {\r\n var isGetter = arguments.length < 2 && \"object\" !== (0, _type.type)(options);\r\n if (isGetter) {\r\n return this._optionManager.get(void 0, this._normalizeName(options))\r\n } else {\r\n this._startChangeCallback();\r\n try {\r\n this._optionManager.set(options, value)\r\n } finally {\r\n this._endChangeCallback()\r\n }\r\n }\r\n }\r\n }, {\r\n key: \"silent\",\r\n value: function(options, value) {\r\n var isGetter = arguments.length < 2 && \"object\" !== (0, _type.type)(options);\r\n if (isGetter) {\r\n return this._optionManager.get(void 0, options, void 0, true)\r\n } else {\r\n this._optionManager.set(options, value, void 0, true)\r\n }\r\n }\r\n }, {\r\n key: \"reset\",\r\n value: function(name) {\r\n var _this2 = this;\r\n if (name) {\r\n var fullPath = name.replace(/\\[([^\\]])\\]/g, \".$1\").split(\".\");\r\n var value = fullPath.reduce(function(value, field) {\r\n return value ? value[field] : _this2.initial(field)\r\n }, null);\r\n var defaultValue = (0, _type.isObject)(value) ? (0, _object.clone)(value) : value;\r\n this._optionManager.set(name, defaultValue, false)\r\n }\r\n }\r\n }, {\r\n key: \"getAliasesByName\",\r\n value: function(name) {\r\n var _this3 = this;\r\n return Object.keys(this._deprecated).filter(function(aliasName) {\r\n return name === _this3._deprecated[aliasName].alias\r\n })\r\n }\r\n }, {\r\n key: \"isDeprecated\",\r\n value: function(name) {\r\n return Object.prototype.hasOwnProperty.call(this._deprecated, name)\r\n }\r\n }, {\r\n key: \"cache\",\r\n value: function(name, options) {\r\n var isGetter = arguments.length < 2;\r\n if (isGetter) {\r\n return this._cachedOptions[name]\r\n } else {\r\n this._cachedOptions[name] = (0, _extend.extend)(this._cachedOptions[name], options)\r\n }\r\n }\r\n }, {\r\n key: \"_initial\",\r\n set: function(value) {\r\n this._initialOptions = value\r\n },\r\n get: function() {\r\n if (!this._initialOptions) {\r\n var rulesOptions = this._getByRules(this.silent(\"defaultOptionsRules\"));\r\n this._initialOptions = this._default;\r\n this._optionManager._setByReference(this._initialOptions, rulesOptions)\r\n }\r\n return this._initialOptions\r\n }\r\n }]);\r\n return Options\r\n}();\r\nexports.Options = Options;\r\n","/**\r\n * DevExtreme (events/pointer/mspointer.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _base = _interopRequireDefault(require(\"./base\"));\r\nvar _observer = _interopRequireDefault(require(\"./observer\"));\r\nvar _extend = require(\"../../core/utils/extend\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar eventMap = {\r\n dxpointerdown: \"pointerdown\",\r\n dxpointermove: \"pointermove\",\r\n dxpointerup: \"pointerup\",\r\n dxpointercancel: \"pointercancel\",\r\n dxpointerover: \"pointerover\",\r\n dxpointerout: \"pointerout\",\r\n dxpointerenter: \"pointerenter\",\r\n dxpointerleave: \"pointerleave\"\r\n};\r\nvar observer;\r\nvar activated = false;\r\nvar activateStrategy = function() {\r\n if (activated) {\r\n return\r\n }\r\n observer = new _observer.default(eventMap, function(a, b) {\r\n return a.pointerId === b.pointerId\r\n }, function(e) {\r\n if (e.isPrimary) {\r\n observer.reset()\r\n }\r\n });\r\n activated = true\r\n};\r\nvar MsPointerStrategy = _base.default.inherit({\r\n ctor: function() {\r\n this.callBase.apply(this, arguments);\r\n activateStrategy()\r\n },\r\n _fireEvent: function(args) {\r\n return this.callBase((0, _extend.extend)({\r\n pointers: observer.pointers(),\r\n pointerId: args.originalEvent.pointerId\r\n }, args))\r\n }\r\n});\r\nMsPointerStrategy.map = eventMap;\r\nMsPointerStrategy.resetObserver = function() {\r\n observer.reset()\r\n};\r\nvar _default = MsPointerStrategy;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/utils/view_port.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.originalViewPort = originalViewPort;\r\nexports.changeCallback = exports.value = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../renderer\"));\r\nvar _ready_callbacks = _interopRequireDefault(require(\"./ready_callbacks\"));\r\nvar _callbacks = _interopRequireDefault(require(\"./callbacks\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar ready = _ready_callbacks.default.add;\r\nvar changeCallback = (0, _callbacks.default)();\r\nexports.changeCallback = changeCallback;\r\nvar $originalViewPort = (0, _renderer.default)();\r\nvar value = function() {\r\n var $current;\r\n return function(element) {\r\n if (!arguments.length) {\r\n return $current\r\n }\r\n var $element = (0, _renderer.default)(element);\r\n $originalViewPort = $element;\r\n var isNewViewportFound = !!$element.length;\r\n var prevViewPort = value();\r\n $current = isNewViewportFound ? $element : (0, _renderer.default)(\"body\");\r\n changeCallback.fire(isNewViewportFound ? value() : (0, _renderer.default)(), prevViewPort)\r\n }\r\n}();\r\nexports.value = value;\r\nready(function() {\r\n value(\".dx-viewport\")\r\n});\r\n\r\nfunction originalViewPort() {\r\n return $originalViewPort\r\n}\r\n","/**\r\n * DevExtreme (core/utils/public_component.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.attachInstanceToElement = attachInstanceToElement;\r\nexports.getInstanceByElement = getInstanceByElement;\r\nexports.name = void 0;\r\nvar _element_data = require(\"../../core/element_data\");\r\nvar _events_engine = _interopRequireDefault(require(\"../../events/core/events_engine\"));\r\nvar _weak_map = _interopRequireDefault(require(\"../polyfills/weak_map\"));\r\nvar _type = require(\"./type\");\r\nvar _remove_event = _interopRequireDefault(require(\"../remove_event\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar COMPONENT_NAMES_DATA_KEY = \"dxComponents\";\r\nvar ANONYMOUS_COMPONENT_DATA_KEY = \"dxPrivateComponent\";\r\nvar componentNames = new _weak_map.default;\r\nvar nextAnonymousComponent = 0;\r\nvar getName = function(componentClass, newName) {\r\n if ((0, _type.isDefined)(newName)) {\r\n componentNames.set(componentClass, newName);\r\n return\r\n }\r\n if (!componentNames.has(componentClass)) {\r\n var generatedName = ANONYMOUS_COMPONENT_DATA_KEY + nextAnonymousComponent++;\r\n componentNames.set(componentClass, generatedName);\r\n return generatedName\r\n }\r\n return componentNames.get(componentClass)\r\n};\r\nexports.name = getName;\r\n\r\nfunction attachInstanceToElement($element, componentInstance, disposeFn) {\r\n var data = (0, _element_data.data)($element.get(0));\r\n var name = getName(componentInstance.constructor);\r\n data[name] = componentInstance;\r\n if (disposeFn) {\r\n _events_engine.default.one($element, _remove_event.default, function() {\r\n disposeFn.call(componentInstance)\r\n })\r\n }\r\n if (!data[COMPONENT_NAMES_DATA_KEY]) {\r\n data[COMPONENT_NAMES_DATA_KEY] = []\r\n }\r\n data[COMPONENT_NAMES_DATA_KEY].push(name)\r\n}\r\n\r\nfunction getInstanceByElement($element, componentClass) {\r\n var name = getName(componentClass);\r\n return (0, _element_data.data)($element.get(0), name)\r\n}\r\n","/**\r\n * DevExtreme (core/events_strategy.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.EventsStrategy = void 0;\r\nvar _callbacks = _interopRequireDefault(require(\"./utils/callbacks\"));\r\nvar _iterator = require(\"./utils/iterator\");\r\nvar _type = require(\"./utils/type\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\nvar EventsStrategy = function() {\r\n function EventsStrategy(owner) {\r\n _classCallCheck(this, EventsStrategy);\r\n this._events = {};\r\n this._owner = owner\r\n }\r\n _createClass(EventsStrategy, [{\r\n key: \"hasEvent\",\r\n value: function(eventName) {\r\n var callbacks = this._events[eventName];\r\n return callbacks ? callbacks.has() : false\r\n }\r\n }, {\r\n key: \"fireEvent\",\r\n value: function(eventName, eventArgs) {\r\n var callbacks = this._events[eventName];\r\n if (callbacks) {\r\n callbacks.fireWith(this._owner, eventArgs)\r\n }\r\n return this._owner\r\n }\r\n }, {\r\n key: \"on\",\r\n value: function(eventName, eventHandler) {\r\n var _this = this;\r\n if ((0, _type.isPlainObject)(eventName)) {\r\n (0, _iterator.each)(eventName, function(e, h) {\r\n _this.on(e, h)\r\n })\r\n } else {\r\n var callbacks = this._events[eventName];\r\n if (!callbacks) {\r\n callbacks = (0, _callbacks.default)();\r\n this._events[eventName] = callbacks\r\n }\r\n var addFn = callbacks.originalAdd || callbacks.add;\r\n addFn.call(callbacks, eventHandler)\r\n }\r\n }\r\n }, {\r\n key: \"off\",\r\n value: function(eventName, eventHandler) {\r\n var callbacks = this._events[eventName];\r\n if (callbacks) {\r\n if ((0, _type.isFunction)(eventHandler)) {\r\n callbacks.remove(eventHandler)\r\n } else {\r\n callbacks.empty()\r\n }\r\n }\r\n }\r\n }, {\r\n key: \"dispose\",\r\n value: function() {\r\n (0, _iterator.each)(this._events, function(eventName, event) {\r\n event.empty()\r\n })\r\n }\r\n }], [{\r\n key: \"create\",\r\n value: function(owner, strategy) {\r\n if (strategy) {\r\n return (0, _type.isFunction)(strategy) ? strategy(owner) : strategy\r\n } else {\r\n return new EventsStrategy(owner)\r\n }\r\n }\r\n }]);\r\n return EventsStrategy\r\n}();\r\nexports.EventsStrategy = EventsStrategy;\r\n","/**\r\n * DevExtreme (core/component_registrator.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"./renderer\"));\r\nvar _component_registrator_callbacks = _interopRequireDefault(require(\"./component_registrator_callbacks\"));\r\nvar _errors = _interopRequireDefault(require(\"./errors\"));\r\nvar _public_component = require(\"./utils/public_component\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar registerComponent = function(name, namespace, componentClass) {\r\n if (!componentClass) {\r\n componentClass = namespace\r\n } else {\r\n namespace[name] = componentClass\r\n }(0, _public_component.name)(componentClass, name);\r\n _component_registrator_callbacks.default.fire(name, componentClass)\r\n};\r\nvar registerRendererComponent = function(name, componentClass) {\r\n _renderer.default.fn[name] = function(options) {\r\n var isMemberInvoke = \"string\" === typeof options;\r\n var result;\r\n if (isMemberInvoke) {\r\n var memberName = options;\r\n var memberArgs = [].slice.call(arguments).slice(1);\r\n this.each(function() {\r\n var instance = componentClass.getInstance(this);\r\n if (!instance) {\r\n throw _errors.default.Error(\"E0009\", name)\r\n }\r\n var member = instance[memberName];\r\n var memberValue = member.apply(instance, memberArgs);\r\n if (void 0 === result) {\r\n result = memberValue\r\n }\r\n })\r\n } else {\r\n this.each(function() {\r\n var instance = componentClass.getInstance(this);\r\n if (instance) {\r\n instance.option(options)\r\n } else {\r\n new componentClass(this, options)\r\n }\r\n });\r\n result = this\r\n }\r\n return result\r\n }\r\n};\r\n_component_registrator_callbacks.default.add(registerRendererComponent);\r\nvar _default = registerComponent;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\nmodule.exports.default = module.exports;\r\n","/**\r\n * DevExtreme (ui/widget/ui.errors.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _error = _interopRequireDefault(require(\"../../core/utils/error\"));\r\nvar _errors = _interopRequireDefault(require(\"../../core/errors\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar _default = (0, _error.default)(_errors.default.ERROR_MESSAGES, {\r\n E1001: \"Module '{0}'. Controller '{1}' is already registered\",\r\n E1002: \"Module '{0}'. Controller '{1}' does not inherit from DevExpress.ui.dxDataGrid.Controller\",\r\n E1003: \"Module '{0}'. View '{1}' is already registered\",\r\n E1004: \"Module '{0}'. View '{1}' does not inherit from DevExpress.ui.dxDataGrid.View\",\r\n E1005: \"Public method '{0}' is already registered\",\r\n E1006: \"Public method '{0}.{1}' does not exist\",\r\n E1007: \"State storing cannot be provided due to the restrictions of the browser\",\r\n E1010: \"The template does not contain the TextBox widget\",\r\n E1011: 'Items cannot be deleted from the List. Implement the \"remove\" function in the data store',\r\n E1012: \"Editing type '{0}' with the name '{1}' is unsupported\",\r\n E1016: \"Unexpected type of data source is provided for a lookup column\",\r\n E1018: \"The 'collapseAll' method cannot be called if you use a remote data source\",\r\n E1019: \"Search mode '{0}' is unavailable\",\r\n E1020: \"The type cannot be changed after initialization\",\r\n E1021: \"{0} '{1}' you are trying to remove does not exist\",\r\n E1022: 'The \"markers\" option is given an invalid value. Assign an array instead',\r\n E1023: 'The \"routes\" option is given an invalid value. Assign an array instead',\r\n E1025: \"This layout is too complex to render\",\r\n E1026: 'The \"calculateCustomSummary\" function is missing from a field whose \"summaryType\" option is set to \"custom\"',\r\n E1030: \"Unknown ScrollView refresh strategy: '{0}'\",\r\n E1031: \"Unknown subscription in the Scheduler widget: '{0}'\",\r\n E1032: \"Unknown start date in an appointment: '{0}'\",\r\n E1033: \"Unknown step in the date navigator: '{0}'\",\r\n E1034: \"The browser does not implement an API for saving files\",\r\n E1035: \"The editor cannot be created because of an internal error: {0}\",\r\n E1037: \"Invalid structure of grouped data\",\r\n E1038: \"The browser does not support local storages for local web pages\",\r\n E1039: \"A cell's position cannot be calculated\",\r\n E1040: \"The '{0}' key value is not unique within the data array\",\r\n E1041: \"The '{0}' script is referenced after the DevExtreme scripts or not referenced at all\",\r\n E1042: \"{0} requires the key field to be specified\",\r\n E1043: \"Changes cannot be processed due to the incorrectly set key\",\r\n E1044: \"The key field specified by the keyExpr option does not match the key field specified in the data store\",\r\n E1045: \"Editing requires the key field to be specified in the data store\",\r\n E1046: \"The '{0}' key field is not found in data objects\",\r\n E1047: 'The \"{0}\" field is not found in the fields array',\r\n E1048: 'The \"{0}\" operation is not found in the filterOperations array',\r\n E1049: \"Column '{0}': filtering is allowed but the 'dataField' or 'name' option is not specified\",\r\n E1050: \"The validationRules option does not apply to third-party editors defined in the editCellTemplate\",\r\n E1051: 'HtmlEditor\\'s valueType is \"{0}\", but the {0} converter was not imported.',\r\n E1052: '{0} should have the \"dataSource\" option specified',\r\n E1053: 'The \"buttons\" option accepts an array that contains only objects or string values',\r\n E1054: \"All text editor buttons must have names\",\r\n E1055: 'One or several text editor buttons have invalid or non-unique \"name\" values',\r\n E1056: 'The {0} widget does not support buttons of the \"{1}\" type',\r\n E1058: 'The \"startDayHour\" must be earlier than the \"endDayHour\"',\r\n E1059: \"All column names must be different\",\r\n E1060: \"All editable columns must have names\",\r\n W1001: 'The \"key\" option cannot be modified after initialization',\r\n W1002: \"An item with the key '{0}' does not exist\",\r\n W1003: \"A group with the key '{0}' in which you are trying to select items does not exist\",\r\n W1004: \"The item '{0}' you are trying to select in the group '{1}' does not exist\",\r\n W1005: \"Due to column data types being unspecified, data has been loaded twice in order to apply initial filter settings. To resolve this issue, specify data types for all grid columns.\",\r\n W1006: \"The map service returned the following error: '{0}'\",\r\n W1007: \"No item with key {0} was found in the data source, but this key was used as the parent key for item {1}\",\r\n W1008: \"Cannot scroll to the '{0}' date because it does not exist on the current view\",\r\n W1009: \"Searching works only if data is specified using the dataSource option\",\r\n W1010: \"The capability to select all items works with source data of plain structure only\",\r\n W1011: 'The \"keyExpr\" option is not applied when dataSource is not an array',\r\n W1012: \"The '{0}' key field is not found in data objects\",\r\n W1013: 'The \"message\" field in the dialog component was renamed to \"messageHtml\". Change your code correspondingly. In addition, if you used HTML code in the message, make sure that it is secure',\r\n W1014: \"The Floating Action Button exceeds the recommended speed dial action count. If you need to display more speed dial actions, increase the maxSpeedDialActionCount option value in the global config.\",\r\n W1015: 'The \"cellDuration\" should divide the range from the \"startDayHour\" to the \"endDayHour\" into even intervals'\r\n});\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.initDxExtensionComponent = void 0;\nvar vue_1 = require(\"vue\");\nvar component_1 = require(\"./component\");\nvar vue_helper_1 = require(\"./vue-helper\");\nfunction initDxExtensionComponent() {\n return vue_1.defineComponent({\n extends: component_1.initBaseComponent(),\n created: function () {\n var nodeOptions = vue_helper_1.getNodeOptions(this);\n nodeOptions.$_isExtension = true;\n nodeOptions.$_attachTo = this.attachTo.bind(this);\n },\n mounted: function () {\n this.$el.setAttribute(\"isExtension\", \"true\");\n var componentOptions = vue_helper_1.getNodeOptions(this);\n if (componentOptions && componentOptions.$_hasOwner) {\n return;\n }\n this.attachTo(this.$el);\n },\n methods: {\n attachTo: function (element) {\n this.$_createWidget(element);\n }\n }\n });\n}\nexports.initDxExtensionComponent = initDxExtensionComponent;\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.pullAllChildren = exports.isFragment = void 0;\nvar vue_helper_1 = require(\"./vue-helper\");\nfunction pullAllChildren(directChildren, allChildren, config) {\n if (!directChildren || directChildren.length === 0) {\n return;\n }\n pullConfigComponents(directChildren, allChildren, config);\n}\nexports.pullAllChildren = pullAllChildren;\nfunction isFragment(node) {\n return node.patchFlag === 128 /* KEYED_FRAGMENT */;\n}\nexports.isFragment = isFragment;\nfunction pullConfigComponents(children, nodes, ownerConfig) {\n children.forEach(function (node) {\n if (isFragment(node) && Array.isArray(node.children)) {\n pullConfigComponents(node.children, nodes, ownerConfig);\n }\n if (!isFragment(node)) {\n nodes.push(node);\n }\n if (!node) {\n return;\n }\n var componentInfo = vue_helper_1.getComponentInfo(node);\n if (!componentInfo || !componentInfo.$_optionName) {\n return;\n }\n var componentChildren = vue_helper_1.configurationChildren(node);\n var initialValues = __assign(__assign({}, componentInfo.$_predefinedProps), vue_helper_1.getNormalizedProps(node.props || {}));\n var config = ownerConfig.createNested(componentInfo.$_optionName, initialValues, componentInfo.$_isCollectionItem, componentInfo.$_expectedChildren);\n node.$_config = config;\n node.$_innerChanges = {};\n if (componentChildren) {\n pullConfigComponents(componentChildren, nodes, config);\n }\n });\n}\n","/**\r\n * DevExtreme (events/visibility_change.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.triggerResizeEvent = exports.triggerHidingEvent = exports.triggerShownEvent = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _events_engine = _interopRequireDefault(require(\"./core/events_engine\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar triggerVisibilityChangeEvent = function(eventName) {\r\n var VISIBILITY_CHANGE_SELECTOR = \".dx-visibility-change-handler\";\r\n return function(element) {\r\n var $element = (0, _renderer.default)(element || \"body\");\r\n var changeHandlers = $element.filter(VISIBILITY_CHANGE_SELECTOR).add($element.find(VISIBILITY_CHANGE_SELECTOR));\r\n for (var i = 0; i < changeHandlers.length; i++) {\r\n _events_engine.default.triggerHandler(changeHandlers[i], eventName)\r\n }\r\n }\r\n};\r\nvar triggerShownEvent = triggerVisibilityChangeEvent(\"dxshown\");\r\nexports.triggerShownEvent = triggerShownEvent;\r\nvar triggerHidingEvent = triggerVisibilityChangeEvent(\"dxhiding\");\r\nexports.triggerHidingEvent = triggerHidingEvent;\r\nvar triggerResizeEvent = triggerVisibilityChangeEvent(\"dxresize\");\r\nexports.triggerResizeEvent = triggerResizeEvent;\r\n","/**\r\n * DevExtreme (events/core/event_registrator.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _iterator = require(\"../../core/utils/iterator\");\r\nvar _event_registrator_callbacks = _interopRequireDefault(require(\"./event_registrator_callbacks\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar registerEvent = function(name, eventObject) {\r\n var strategy = {};\r\n if (\"noBubble\" in eventObject) {\r\n strategy.noBubble = eventObject.noBubble\r\n }\r\n if (\"bindType\" in eventObject) {\r\n strategy.bindType = eventObject.bindType\r\n }\r\n if (\"delegateType\" in eventObject) {\r\n strategy.delegateType = eventObject.delegateType\r\n }(0, _iterator.each)([\"setup\", \"teardown\", \"add\", \"remove\", \"trigger\", \"handle\", \"_default\", \"dispose\"], function(_, methodName) {\r\n if (!eventObject[methodName]) {\r\n return\r\n }\r\n strategy[methodName] = function() {\r\n var args = [].slice.call(arguments);\r\n args.unshift(this);\r\n return eventObject[methodName].apply(eventObject, args)\r\n }\r\n });\r\n _event_registrator_callbacks.default.fire(name, strategy)\r\n};\r\nregisterEvent.callbacks = _event_registrator_callbacks.default;\r\nvar _default = registerEvent;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (events/utils/index.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.addNamespace = exports.getChar = exports.normalizeKeyName = exports.fireEvent = exports.createEvent = exports.setEventFixMethod = exports.needSkipEvent = exports.stopEventsSkipping = exports.forceSkipEvents = exports.hasTouches = exports.eventDelta = exports.eventData = exports.isFakeClickEvent = exports.isKeyboardEvent = exports.isTouchEvent = exports.isDxMouseWheelEvent = exports.isMouseEvent = exports.isPointerEvent = exports.eventSource = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _add_namespace = _interopRequireDefault(require(\"./add_namespace\"));\r\nvar _events_engine = _interopRequireDefault(require(\"../core/events_engine\"));\r\nvar _iterator = require(\"../../core/utils/iterator\");\r\nvar _extend = require(\"../../core/utils/extend\");\r\nvar _selectors = require(\"../../ui/widget/selectors\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar KEY_MAP = {\r\n backspace: \"backspace\",\r\n tab: \"tab\",\r\n enter: \"enter\",\r\n escape: \"escape\",\r\n pageup: \"pageUp\",\r\n pagedown: \"pageDown\",\r\n end: \"end\",\r\n home: \"home\",\r\n arrowleft: \"leftArrow\",\r\n arrowup: \"upArrow\",\r\n arrowright: \"rightArrow\",\r\n arrowdown: \"downArrow\",\r\n \"delete\": \"del\",\r\n \" \": \"space\",\r\n f: \"F\",\r\n a: \"A\",\r\n \"*\": \"asterisk\",\r\n \"-\": \"minus\",\r\n alt: \"alt\",\r\n control: \"control\",\r\n shift: \"shift\",\r\n left: \"leftArrow\",\r\n up: \"upArrow\",\r\n right: \"rightArrow\",\r\n down: \"downArrow\",\r\n multiply: \"asterisk\",\r\n spacebar: \"space\",\r\n del: \"del\",\r\n subtract: \"minus\",\r\n esc: \"escape\"\r\n};\r\nvar LEGACY_KEY_CODES = {\r\n 8: \"backspace\",\r\n 9: \"tab\",\r\n 13: \"enter\",\r\n 27: \"escape\",\r\n 33: \"pageUp\",\r\n 34: \"pageDown\",\r\n 35: \"end\",\r\n 36: \"home\",\r\n 37: \"leftArrow\",\r\n 38: \"upArrow\",\r\n 39: \"rightArrow\",\r\n 40: \"downArrow\",\r\n 46: \"del\",\r\n 32: \"space\",\r\n 70: \"F\",\r\n 65: \"A\",\r\n 106: \"asterisk\",\r\n 109: \"minus\",\r\n 189: \"minus\",\r\n 173: \"minus\",\r\n 16: \"shift\",\r\n 17: \"control\",\r\n 18: \"alt\"\r\n};\r\nvar EVENT_SOURCES_REGEX = {\r\n dx: /^dx/i,\r\n mouse: /(mouse|wheel)/i,\r\n touch: /^touch/i,\r\n keyboard: /^key/i,\r\n pointer: /^(ms)?pointer/i\r\n};\r\nvar fixMethod = function(e) {\r\n return e\r\n};\r\nvar copyEvent = function(originalEvent) {\r\n return fixMethod(_events_engine.default.Event(originalEvent, originalEvent), originalEvent)\r\n};\r\nvar isDxEvent = function(e) {\r\n return \"dx\" === eventSource(e)\r\n};\r\nvar isNativeMouseEvent = function(e) {\r\n return \"mouse\" === eventSource(e)\r\n};\r\nvar isNativeTouchEvent = function(e) {\r\n return \"touch\" === eventSource(e)\r\n};\r\nvar eventSource = function(_ref) {\r\n var type = _ref.type;\r\n var result = \"other\";\r\n (0, _iterator.each)(EVENT_SOURCES_REGEX, function(key) {\r\n if (this.test(type)) {\r\n result = key;\r\n return false\r\n }\r\n });\r\n return result\r\n};\r\nexports.eventSource = eventSource;\r\nvar isPointerEvent = function(e) {\r\n return \"pointer\" === eventSource(e)\r\n};\r\nexports.isPointerEvent = isPointerEvent;\r\nvar isMouseEvent = function(e) {\r\n return isNativeMouseEvent(e) || (isPointerEvent(e) || isDxEvent(e)) && \"mouse\" === e.pointerType\r\n};\r\nexports.isMouseEvent = isMouseEvent;\r\nvar isDxMouseWheelEvent = function(e) {\r\n return e && \"dxmousewheel\" === e.type\r\n};\r\nexports.isDxMouseWheelEvent = isDxMouseWheelEvent;\r\nvar isTouchEvent = function(e) {\r\n return isNativeTouchEvent(e) || (isPointerEvent(e) || isDxEvent(e)) && \"touch\" === e.pointerType\r\n};\r\nexports.isTouchEvent = isTouchEvent;\r\nvar isKeyboardEvent = function(e) {\r\n return \"keyboard\" === eventSource(e)\r\n};\r\nexports.isKeyboardEvent = isKeyboardEvent;\r\nvar isFakeClickEvent = function(_ref2) {\r\n var screenX = _ref2.screenX,\r\n offsetX = _ref2.offsetX,\r\n pageX = _ref2.pageX;\r\n return 0 === screenX && !offsetX && 0 === pageX\r\n};\r\nexports.isFakeClickEvent = isFakeClickEvent;\r\nvar eventData = function(_ref3) {\r\n var pageX = _ref3.pageX,\r\n pageY = _ref3.pageY,\r\n timeStamp = _ref3.timeStamp;\r\n return {\r\n x: pageX,\r\n y: pageY,\r\n time: timeStamp\r\n }\r\n};\r\nexports.eventData = eventData;\r\nvar eventDelta = function(from, to) {\r\n return {\r\n x: to.x - from.x,\r\n y: to.y - from.y,\r\n time: to.time - from.time || 1\r\n }\r\n};\r\nexports.eventDelta = eventDelta;\r\nvar hasTouches = function(e) {\r\n var originalEvent = e.originalEvent,\r\n pointers = e.pointers;\r\n if (isNativeTouchEvent(e)) {\r\n return (originalEvent.touches || []).length\r\n }\r\n if (isDxEvent(e)) {\r\n return (pointers || []).length\r\n }\r\n return 0\r\n};\r\nexports.hasTouches = hasTouches;\r\nvar skipEvents = false;\r\nvar forceSkipEvents = function() {\r\n return skipEvents = true\r\n};\r\nexports.forceSkipEvents = forceSkipEvents;\r\nvar stopEventsSkipping = function() {\r\n return skipEvents = false\r\n};\r\nexports.stopEventsSkipping = stopEventsSkipping;\r\nvar needSkipEvent = function(e) {\r\n if (skipEvents) {\r\n return true\r\n }\r\n var target = e.target;\r\n var $target = (0, _renderer.default)(target);\r\n var touchInInput = $target.is(\"input, textarea, select\");\r\n if ($target.is(\".dx-skip-gesture-event *, .dx-skip-gesture-event\")) {\r\n return true\r\n }\r\n if (isDxMouseWheelEvent(e)) {\r\n var isTextArea = $target.is(\"textarea\") && $target.hasClass(\"dx-texteditor-input\");\r\n if (isTextArea) {\r\n return false\r\n }\r\n var isContentEditable = target.isContentEditable || target.hasAttribute(\"contenteditable\");\r\n if (isContentEditable) {\r\n return false\r\n }\r\n var isInputFocused = $target.is(\"input[type='number'], textarea, select\") && $target.is(\":focus\");\r\n return isInputFocused\r\n }\r\n if (isMouseEvent(e)) {\r\n return touchInInput || e.which > 1\r\n }\r\n if (isTouchEvent(e)) {\r\n return touchInInput && (0, _selectors.focused)($target)\r\n }\r\n};\r\nexports.needSkipEvent = needSkipEvent;\r\nvar setEventFixMethod = function(func) {\r\n return fixMethod = func\r\n};\r\nexports.setEventFixMethod = setEventFixMethod;\r\nvar createEvent = function(originalEvent, args) {\r\n var event = copyEvent(originalEvent);\r\n args && (0, _extend.extend)(event, args);\r\n return event\r\n};\r\nexports.createEvent = createEvent;\r\nvar fireEvent = function(props) {\r\n var originalEvent = props.originalEvent,\r\n delegateTarget = props.delegateTarget;\r\n var event = createEvent(originalEvent, props);\r\n _events_engine.default.trigger(delegateTarget || event.target, event);\r\n return event\r\n};\r\nexports.fireEvent = fireEvent;\r\nvar normalizeKeyName = function(_ref4) {\r\n var key = _ref4.key,\r\n which = _ref4.which;\r\n var isKeySupported = !!key;\r\n key = isKeySupported ? key : which;\r\n if (key) {\r\n if (isKeySupported) {\r\n key = KEY_MAP[key.toLowerCase()] || key\r\n } else {\r\n key = LEGACY_KEY_CODES[key] || String.fromCharCode(key)\r\n }\r\n return key\r\n }\r\n};\r\nexports.normalizeKeyName = normalizeKeyName;\r\nvar getChar = function(_ref5) {\r\n var key = _ref5.key,\r\n which = _ref5.which;\r\n return key || String.fromCharCode(which)\r\n};\r\nexports.getChar = getChar;\r\nvar addNamespace = _add_namespace.default;\r\nexports.addNamespace = addNamespace;\r\n","'use strict'\n\nexports.byteLength = byteLength\nexports.toByteArray = toByteArray\nexports.fromByteArray = fromByteArray\n\nvar lookup = []\nvar revLookup = []\nvar Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array\n\nvar code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'\nfor (var i = 0, len = code.length; i < len; ++i) {\n lookup[i] = code[i]\n revLookup[code.charCodeAt(i)] = i\n}\n\n// Support decoding URL-safe base64 strings, as Node.js does.\n// See: https://en.wikipedia.org/wiki/Base64#URL_applications\nrevLookup['-'.charCodeAt(0)] = 62\nrevLookup['_'.charCodeAt(0)] = 63\n\nfunction getLens (b64) {\n var len = b64.length\n\n if (len % 4 > 0) {\n throw new Error('Invalid string. Length must be a multiple of 4')\n }\n\n // Trim off extra bytes after placeholder bytes are found\n // See: https://github.com/beatgammit/base64-js/issues/42\n var validLen = b64.indexOf('=')\n if (validLen === -1) validLen = len\n\n var placeHoldersLen = validLen === len\n ? 0\n : 4 - (validLen % 4)\n\n return [validLen, placeHoldersLen]\n}\n\n// base64 is 4/3 + up to two characters of the original data\nfunction byteLength (b64) {\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction _byteLength (b64, validLen, placeHoldersLen) {\n return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen\n}\n\nfunction toByteArray (b64) {\n var tmp\n var lens = getLens(b64)\n var validLen = lens[0]\n var placeHoldersLen = lens[1]\n\n var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))\n\n var curByte = 0\n\n // if there are placeholders, only get up to the last complete 4 chars\n var len = placeHoldersLen > 0\n ? validLen - 4\n : validLen\n\n var i\n for (i = 0; i < len; i += 4) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 18) |\n (revLookup[b64.charCodeAt(i + 1)] << 12) |\n (revLookup[b64.charCodeAt(i + 2)] << 6) |\n revLookup[b64.charCodeAt(i + 3)]\n arr[curByte++] = (tmp >> 16) & 0xFF\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 2) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 2) |\n (revLookup[b64.charCodeAt(i + 1)] >> 4)\n arr[curByte++] = tmp & 0xFF\n }\n\n if (placeHoldersLen === 1) {\n tmp =\n (revLookup[b64.charCodeAt(i)] << 10) |\n (revLookup[b64.charCodeAt(i + 1)] << 4) |\n (revLookup[b64.charCodeAt(i + 2)] >> 2)\n arr[curByte++] = (tmp >> 8) & 0xFF\n arr[curByte++] = tmp & 0xFF\n }\n\n return arr\n}\n\nfunction tripletToBase64 (num) {\n return lookup[num >> 18 & 0x3F] +\n lookup[num >> 12 & 0x3F] +\n lookup[num >> 6 & 0x3F] +\n lookup[num & 0x3F]\n}\n\nfunction encodeChunk (uint8, start, end) {\n var tmp\n var output = []\n for (var i = start; i < end; i += 3) {\n tmp =\n ((uint8[i] << 16) & 0xFF0000) +\n ((uint8[i + 1] << 8) & 0xFF00) +\n (uint8[i + 2] & 0xFF)\n output.push(tripletToBase64(tmp))\n }\n return output.join('')\n}\n\nfunction fromByteArray (uint8) {\n var tmp\n var len = uint8.length\n var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes\n var parts = []\n var maxChunkLength = 16383 // must be multiple of 3\n\n // go through the array every three bytes, we'll deal with trailing stuff later\n for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {\n parts.push(encodeChunk(\n uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)\n ))\n }\n\n // pad the end with zeros, but make sure to not forget the extra bytes\n if (extraBytes === 1) {\n tmp = uint8[len - 1]\n parts.push(\n lookup[tmp >> 2] +\n lookup[(tmp << 4) & 0x3F] +\n '=='\n )\n } else if (extraBytes === 2) {\n tmp = (uint8[len - 2] << 8) + uint8[len - 1]\n parts.push(\n lookup[tmp >> 10] +\n lookup[(tmp >> 4) & 0x3F] +\n lookup[(tmp << 2) & 0x3F] +\n '='\n )\n }\n\n return parts.join('')\n}\n","/**\r\n * DevExtreme (events/utils/add_namespace.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _errors = _interopRequireDefault(require(\"../../core/errors\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar addNamespace = function addNamespace(eventNames, namespace) {\r\n if (!namespace) {\r\n throw _errors.default.Error(\"E0017\")\r\n }\r\n if (Array.isArray(eventNames)) {\r\n return eventNames.map(function(eventName) {\r\n return addNamespace(eventName, namespace)\r\n }).join(\" \")\r\n }\r\n if (eventNames.indexOf(\" \") !== -1) {\r\n return addNamespace(eventNames.split(/\\s+/g), namespace)\r\n }\r\n return \"\".concat(eventNames, \".\").concat(namespace)\r\n};\r\nvar _default = addNamespace;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createExtensionComponent = exports.createConfigurationComponent = exports.createComponent = void 0;\nvar vue2Stategy = require(\"./strategy/vue2/index\");\nvar vue3Stategy = require(\"./strategy/vue3/index\");\nvar version_1 = require(\"./version\");\nvar strategy = version_1.isVue3() ? vue3Stategy : vue2Stategy;\nexports.createComponent = strategy.createComponent;\nexports.createConfigurationComponent = strategy.createConfigurationComponent;\nexports.createExtensionComponent = strategy.createExtensionComponent;\n","/**\r\n * DevExtreme (events/drag.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\nexports.drop = exports.leave = exports.enter = exports.end = exports.start = exports.move = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _element_data = require(\"../core/element_data\");\r\nvar _array = require(\"../core/utils/array\");\r\nvar iteratorUtils = _interopRequireWildcard(require(\"../core/utils/iterator\"));\r\nvar _dom = require(\"../core/utils/dom\");\r\nvar _event_registrator = _interopRequireDefault(require(\"./core/event_registrator\"));\r\nvar _index = require(\"./utils/index\");\r\nvar _emitter = _interopRequireDefault(require(\"./gesture/emitter.gesture\"));\r\nvar _emitter_registrator = _interopRequireDefault(require(\"./core/emitter_registrator\"));\r\n\r\nfunction _getRequireWildcardCache() {\r\n if (\"function\" !== typeof WeakMap) {\r\n return null\r\n }\r\n var cache = new WeakMap;\r\n _getRequireWildcardCache = function() {\r\n return cache\r\n };\r\n return cache\r\n}\r\n\r\nfunction _interopRequireWildcard(obj) {\r\n if (obj && obj.__esModule) {\r\n return obj\r\n }\r\n if (null === obj || \"object\" !== _typeof(obj) && \"function\" !== typeof obj) {\r\n return {\r\n \"default\": obj\r\n }\r\n }\r\n var cache = _getRequireWildcardCache();\r\n if (cache && cache.has(obj)) {\r\n return cache.get(obj)\r\n }\r\n var newObj = {};\r\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\r\n for (var key in obj) {\r\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\r\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\r\n if (desc && (desc.get || desc.set)) {\r\n Object.defineProperty(newObj, key, desc)\r\n } else {\r\n newObj[key] = obj[key]\r\n }\r\n }\r\n }\r\n newObj.default = obj;\r\n if (cache) {\r\n cache.set(obj, newObj)\r\n }\r\n return newObj\r\n}\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar DRAG_START_EVENT = \"dxdragstart\";\r\nexports.start = DRAG_START_EVENT;\r\nvar DRAG_EVENT = \"dxdrag\";\r\nexports.move = DRAG_EVENT;\r\nvar DRAG_END_EVENT = \"dxdragend\";\r\nexports.end = DRAG_END_EVENT;\r\nvar DRAG_ENTER_EVENT = \"dxdragenter\";\r\nexports.enter = DRAG_ENTER_EVENT;\r\nvar DRAG_LEAVE_EVENT = \"dxdragleave\";\r\nexports.leave = DRAG_LEAVE_EVENT;\r\nvar DROP_EVENT = \"dxdrop\";\r\nexports.drop = DROP_EVENT;\r\nvar DX_DRAG_EVENTS_COUNT_KEY = \"dxDragEventsCount\";\r\nvar knownDropTargets = [];\r\nvar knownDropTargetSelectors = [];\r\nvar knownDropTargetConfigs = [];\r\nvar dropTargetRegistration = {\r\n setup: function(element, data) {\r\n var knownDropTarget = (0, _array.inArray)(element, knownDropTargets) !== -1;\r\n if (!knownDropTarget) {\r\n knownDropTargets.push(element);\r\n knownDropTargetSelectors.push([]);\r\n knownDropTargetConfigs.push(data || {})\r\n }\r\n },\r\n add: function(element, handleObj) {\r\n var index = (0, _array.inArray)(element, knownDropTargets);\r\n this.updateEventsCounter(element, handleObj.type, 1);\r\n var selector = handleObj.selector;\r\n if ((0, _array.inArray)(selector, knownDropTargetSelectors[index]) === -1) {\r\n knownDropTargetSelectors[index].push(selector)\r\n }\r\n },\r\n updateEventsCounter: function(element, event, value) {\r\n if ([DRAG_ENTER_EVENT, DRAG_LEAVE_EVENT, DROP_EVENT].indexOf(event) > -1) {\r\n var eventsCount = (0, _element_data.data)(element, DX_DRAG_EVENTS_COUNT_KEY) || 0;\r\n (0, _element_data.data)(element, DX_DRAG_EVENTS_COUNT_KEY, Math.max(0, eventsCount + value))\r\n }\r\n },\r\n remove: function(element, handleObj) {\r\n this.updateEventsCounter(element, handleObj.type, -1)\r\n },\r\n teardown: function(element) {\r\n var handlersCount = (0, _element_data.data)(element, DX_DRAG_EVENTS_COUNT_KEY);\r\n if (!handlersCount) {\r\n var index = (0, _array.inArray)(element, knownDropTargets);\r\n knownDropTargets.splice(index, 1);\r\n knownDropTargetSelectors.splice(index, 1);\r\n knownDropTargetConfigs.splice(index, 1);\r\n (0, _element_data.removeData)(element, DX_DRAG_EVENTS_COUNT_KEY)\r\n }\r\n }\r\n};\r\n(0, _event_registrator.default)(DRAG_ENTER_EVENT, dropTargetRegistration);\r\n(0, _event_registrator.default)(DRAG_LEAVE_EVENT, dropTargetRegistration);\r\n(0, _event_registrator.default)(DROP_EVENT, dropTargetRegistration);\r\nvar getItemDelegatedTargets = function($element) {\r\n var dropTargetIndex = (0, _array.inArray)($element.get(0), knownDropTargets);\r\n var dropTargetSelectors = knownDropTargetSelectors[dropTargetIndex].filter(function(selector) {\r\n return selector\r\n });\r\n var $delegatedTargets = $element.find(dropTargetSelectors.join(\", \"));\r\n if ((0, _array.inArray)(void 0, knownDropTargetSelectors[dropTargetIndex]) !== -1) {\r\n $delegatedTargets = $delegatedTargets.add($element)\r\n }\r\n return $delegatedTargets\r\n};\r\nvar getItemConfig = function($element) {\r\n var dropTargetIndex = (0, _array.inArray)($element.get(0), knownDropTargets);\r\n return knownDropTargetConfigs[dropTargetIndex]\r\n};\r\nvar getItemPosition = function(dropTargetConfig, $element) {\r\n if (dropTargetConfig.itemPositionFunc) {\r\n return dropTargetConfig.itemPositionFunc($element)\r\n } else {\r\n return $element.offset()\r\n }\r\n};\r\nvar getItemSize = function(dropTargetConfig, $element) {\r\n if (dropTargetConfig.itemSizeFunc) {\r\n return dropTargetConfig.itemSizeFunc($element)\r\n }\r\n return {\r\n width: $element.get(0).getBoundingClientRect().width,\r\n height: $element.get(0).getBoundingClientRect().height\r\n }\r\n};\r\nvar DragEmitter = _emitter.default.inherit({\r\n ctor: function(element) {\r\n this.callBase(element);\r\n this.direction = \"both\"\r\n },\r\n _init: function(e) {\r\n this._initEvent = e\r\n },\r\n _start: function(e) {\r\n e = this._fireEvent(DRAG_START_EVENT, this._initEvent);\r\n this._maxLeftOffset = e.maxLeftOffset;\r\n this._maxRightOffset = e.maxRightOffset;\r\n this._maxTopOffset = e.maxTopOffset;\r\n this._maxBottomOffset = e.maxBottomOffset;\r\n var dropTargets = (0, _array.wrapToArray)(e.targetElements || (null === e.targetElements ? [] : knownDropTargets));\r\n this._dropTargets = iteratorUtils.map(dropTargets, function(element) {\r\n return (0, _renderer.default)(element).get(0)\r\n })\r\n },\r\n _move: function(e) {\r\n var eventData = (0, _index.eventData)(e);\r\n var dragOffset = this._calculateOffset(eventData);\r\n e = this._fireEvent(DRAG_EVENT, e, {\r\n offset: dragOffset\r\n });\r\n this._processDropTargets(e);\r\n if (!e._cancelPreventDefault) {\r\n e.preventDefault()\r\n }\r\n },\r\n _calculateOffset: function(eventData) {\r\n return {\r\n x: this._calculateXOffset(eventData),\r\n y: this._calculateYOffset(eventData)\r\n }\r\n },\r\n _calculateXOffset: function(eventData) {\r\n if (\"vertical\" !== this.direction) {\r\n var offset = eventData.x - this._startEventData.x;\r\n return this._fitOffset(offset, this._maxLeftOffset, this._maxRightOffset)\r\n }\r\n return 0\r\n },\r\n _calculateYOffset: function(eventData) {\r\n if (\"horizontal\" !== this.direction) {\r\n var offset = eventData.y - this._startEventData.y;\r\n return this._fitOffset(offset, this._maxTopOffset, this._maxBottomOffset)\r\n }\r\n return 0\r\n },\r\n _fitOffset: function(offset, minOffset, maxOffset) {\r\n if (null != minOffset) {\r\n offset = Math.max(offset, -minOffset)\r\n }\r\n if (null != maxOffset) {\r\n offset = Math.min(offset, maxOffset)\r\n }\r\n return offset\r\n },\r\n _processDropTargets: function(e) {\r\n var target = this._findDropTarget(e);\r\n var sameTarget = target === this._currentDropTarget;\r\n if (!sameTarget) {\r\n this._fireDropTargetEvent(e, DRAG_LEAVE_EVENT);\r\n this._currentDropTarget = target;\r\n this._fireDropTargetEvent(e, DRAG_ENTER_EVENT)\r\n }\r\n },\r\n _fireDropTargetEvent: function(event, eventName) {\r\n if (!this._currentDropTarget) {\r\n return\r\n }\r\n var eventData = {\r\n type: eventName,\r\n originalEvent: event,\r\n draggingElement: this._$element.get(0),\r\n target: this._currentDropTarget\r\n };\r\n (0, _index.fireEvent)(eventData)\r\n },\r\n _findDropTarget: function(e) {\r\n var that = this;\r\n var result;\r\n iteratorUtils.each(knownDropTargets, function(_, target) {\r\n if (!that._checkDropTargetActive(target)) {\r\n return\r\n }\r\n var $target = (0, _renderer.default)(target);\r\n iteratorUtils.each(getItemDelegatedTargets($target), function(_, delegatedTarget) {\r\n var $delegatedTarget = (0, _renderer.default)(delegatedTarget);\r\n if (that._checkDropTarget(getItemConfig($target), $delegatedTarget, (0, _renderer.default)(result), e)) {\r\n result = delegatedTarget\r\n }\r\n })\r\n });\r\n return result\r\n },\r\n _checkDropTargetActive: function(target) {\r\n var active = false;\r\n iteratorUtils.each(this._dropTargets, function(_, activeTarget) {\r\n active = active || activeTarget === target || (0, _dom.contains)(activeTarget, target);\r\n return !active\r\n });\r\n return active\r\n },\r\n _checkDropTarget: function(config, $target, $prevTarget, e) {\r\n var isDraggingElement = $target.get(0) === (0, _renderer.default)(e.target).get(0);\r\n if (isDraggingElement) {\r\n return false\r\n }\r\n var targetPosition = getItemPosition(config, $target);\r\n if (e.pageX < targetPosition.left) {\r\n return false\r\n }\r\n if (e.pageY < targetPosition.top) {\r\n return false\r\n }\r\n var targetSize = getItemSize(config, $target);\r\n if (e.pageX > targetPosition.left + targetSize.width) {\r\n return false\r\n }\r\n if (e.pageY > targetPosition.top + targetSize.height) {\r\n return false\r\n }\r\n if ($prevTarget.length && $prevTarget.closest($target).length) {\r\n return false\r\n }\r\n if (config.checkDropTarget && !config.checkDropTarget($target, e)) {\r\n return false\r\n }\r\n return $target\r\n },\r\n _end: function(e) {\r\n var eventData = (0, _index.eventData)(e);\r\n this._fireEvent(DRAG_END_EVENT, e, {\r\n offset: this._calculateOffset(eventData)\r\n });\r\n this._fireDropTargetEvent(e, DROP_EVENT);\r\n delete this._currentDropTarget\r\n }\r\n});\r\n(0, _emitter_registrator.default)({\r\n emitter: DragEmitter,\r\n events: [DRAG_START_EVENT, DRAG_EVENT, DRAG_END_EVENT]\r\n});\r\n","/**\r\n * DevExtreme (core/devices.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _window = require(\"./utils/window\");\r\nvar _extend = require(\"./utils/extend\");\r\nvar _type = require(\"./utils/type\");\r\nvar _iterator = require(\"./utils/iterator\");\r\nvar _errors = _interopRequireDefault(require(\"./errors\"));\r\nvar _callbacks = _interopRequireDefault(require(\"./utils/callbacks\"));\r\nvar _ready_callbacks = _interopRequireDefault(require(\"./utils/ready_callbacks\"));\r\nvar _resize_callbacks = _interopRequireDefault(require(\"./utils/resize_callbacks\"));\r\nvar _events_strategy = require(\"./events_strategy\");\r\nvar _storage = require(\"./utils/storage\");\r\nvar _view_port = require(\"./utils/view_port\");\r\nvar _config = _interopRequireDefault(require(\"./config\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\nvar navigator = (0, _window.getNavigator)();\r\nvar window = (0, _window.getWindow)();\r\nvar KNOWN_UA_TABLE = {\r\n iPhone: \"iPhone\",\r\n iPhone5: \"iPhone\",\r\n iPhone6: \"iPhone\",\r\n iPhone6plus: \"iPhone\",\r\n iPad: \"iPad\",\r\n iPadMini: \"iPad Mini\",\r\n androidPhone: \"Android Mobile\",\r\n androidTablet: \"Android\",\r\n msSurface: \"Windows ARM Tablet PC\",\r\n desktop: \"desktop\"\r\n};\r\nvar DEFAULT_DEVICE = {\r\n deviceType: \"desktop\",\r\n platform: \"generic\",\r\n version: [],\r\n phone: false,\r\n tablet: false,\r\n android: false,\r\n ios: false,\r\n generic: true,\r\n grade: \"A\",\r\n mac: false\r\n};\r\nvar uaParsers = {\r\n generic: function(userAgent) {\r\n var isPhone = /windows phone/i.test(userAgent) || userAgent.match(/WPDesktop/);\r\n var isTablet = !isPhone && /Windows(.*)arm(.*)Tablet PC/i.test(userAgent);\r\n var isDesktop = !isPhone && !isTablet && /msapphost/i.test(userAgent);\r\n var isMac = /((intel|ppc) mac os x)/.test(userAgent.toLowerCase());\r\n if (!(isPhone || isTablet || isDesktop || isMac)) {\r\n return\r\n }\r\n return {\r\n deviceType: isPhone ? \"phone\" : isTablet ? \"tablet\" : \"desktop\",\r\n platform: \"generic\",\r\n version: [],\r\n grade: \"A\",\r\n mac: isMac\r\n }\r\n },\r\n ios: function(userAgent) {\r\n if (!/ip(hone|od|ad)/i.test(userAgent)) {\r\n return\r\n }\r\n var isPhone = /ip(hone|od)/i.test(userAgent);\r\n var matches = userAgent.match(/os (\\d+)_(\\d+)_?(\\d+)?/i);\r\n var version = matches ? [parseInt(matches[1], 10), parseInt(matches[2], 10), parseInt(matches[3] || 0, 10)] : [];\r\n var isIPhone4 = 480 === window.screen.height;\r\n var grade = isIPhone4 ? \"B\" : \"A\";\r\n return {\r\n deviceType: isPhone ? \"phone\" : \"tablet\",\r\n platform: \"ios\",\r\n version: version,\r\n grade: grade\r\n }\r\n },\r\n android: function(userAgent) {\r\n if (!/android|htc_|silk/i.test(userAgent)) {\r\n return\r\n }\r\n var isPhone = /mobile/i.test(userAgent);\r\n var matches = userAgent.match(/android (\\d+)\\.?(\\d+)?\\.?(\\d+)?/i);\r\n var version = matches ? [parseInt(matches[1], 10), parseInt(matches[2] || 0, 10), parseInt(matches[3] || 0, 10)] : [];\r\n var worseThan4_4 = version.length > 1 && (version[0] < 4 || 4 === version[0] && version[1] < 4);\r\n var grade = worseThan4_4 ? \"B\" : \"A\";\r\n return {\r\n deviceType: isPhone ? \"phone\" : \"tablet\",\r\n platform: \"android\",\r\n version: version,\r\n grade: grade\r\n }\r\n }\r\n};\r\nvar Devices = function() {\r\n function Devices(options) {\r\n _classCallCheck(this, Devices);\r\n this._window = (null === options || void 0 === options ? void 0 : options.window) || window;\r\n this._realDevice = this._getDevice();\r\n this._currentDevice = void 0;\r\n this._currentOrientation = void 0;\r\n this._eventsStrategy = new _events_strategy.EventsStrategy(this);\r\n this.changed = (0, _callbacks.default)();\r\n if ((0, _window.hasWindow)()) {\r\n _ready_callbacks.default.add(this._recalculateOrientation.bind(this));\r\n _resize_callbacks.default.add(this._recalculateOrientation.bind(this))\r\n }\r\n }\r\n _createClass(Devices, [{\r\n key: \"current\",\r\n value: function(deviceOrName) {\r\n if (deviceOrName) {\r\n this._currentDevice = this._getDevice(deviceOrName);\r\n this._forced = true;\r\n this.changed.fire();\r\n return\r\n }\r\n if (!this._currentDevice) {\r\n deviceOrName = void 0;\r\n try {\r\n deviceOrName = this._getDeviceOrNameFromWindowScope()\r\n } catch (e) {\r\n deviceOrName = this._getDeviceNameFromSessionStorage()\r\n } finally {\r\n if (!deviceOrName) {\r\n deviceOrName = this._getDeviceNameFromSessionStorage()\r\n }\r\n if (deviceOrName) {\r\n this._forced = true\r\n }\r\n }\r\n this._currentDevice = this._getDevice(deviceOrName)\r\n }\r\n return this._currentDevice\r\n }\r\n }, {\r\n key: \"real\",\r\n value: function(forceDevice) {\r\n return (0, _extend.extend)({}, this._realDevice)\r\n }\r\n }, {\r\n key: \"orientation\",\r\n value: function() {\r\n return this._currentOrientation\r\n }\r\n }, {\r\n key: \"isForced\",\r\n value: function() {\r\n return this._forced\r\n }\r\n }, {\r\n key: \"isRippleEmulator\",\r\n value: function() {\r\n return !!this._window.tinyHippos\r\n }\r\n }, {\r\n key: \"_getCssClasses\",\r\n value: function(device) {\r\n var result = [];\r\n var realDevice = this._realDevice;\r\n device = device || this.current();\r\n if (device.deviceType) {\r\n result.push(\"dx-device-\".concat(device.deviceType));\r\n if (\"desktop\" !== device.deviceType) {\r\n result.push(\"dx-device-mobile\")\r\n }\r\n }\r\n result.push(\"dx-device-\".concat(realDevice.platform));\r\n if (realDevice.version && realDevice.version.length) {\r\n result.push(\"dx-device-\".concat(realDevice.platform, \"-\").concat(realDevice.version[0]))\r\n }\r\n if (this.isSimulator()) {\r\n result.push(\"dx-simulator\")\r\n }\r\n if ((0, _config.default)().rtlEnabled) {\r\n result.push(\"dx-rtl\")\r\n }\r\n return result\r\n }\r\n }, {\r\n key: \"attachCssClasses\",\r\n value: function(element, device) {\r\n this._deviceClasses = this._getCssClasses(device).join(\" \");\r\n (0, _renderer.default)(element).addClass(this._deviceClasses)\r\n }\r\n }, {\r\n key: \"detachCssClasses\",\r\n value: function(element) {\r\n (0, _renderer.default)(element).removeClass(this._deviceClasses)\r\n }\r\n }, {\r\n key: \"isSimulator\",\r\n value: function() {\r\n try {\r\n return this._isSimulator || (0, _window.hasWindow)() && this._window.top !== this._window.self && this._window.top[\"dx-force-device\"] || this.isRippleEmulator()\r\n } catch (e) {\r\n return false\r\n }\r\n }\r\n }, {\r\n key: \"forceSimulator\",\r\n value: function() {\r\n this._isSimulator = true\r\n }\r\n }, {\r\n key: \"_getDevice\",\r\n value: function(deviceName) {\r\n if (\"genericPhone\" === deviceName) {\r\n deviceName = {\r\n deviceType: \"phone\",\r\n platform: \"generic\",\r\n generic: true\r\n }\r\n }\r\n if ((0, _type.isPlainObject)(deviceName)) {\r\n return this._fromConfig(deviceName)\r\n } else {\r\n var ua;\r\n if (deviceName) {\r\n ua = KNOWN_UA_TABLE[deviceName];\r\n if (!ua) {\r\n throw _errors.default.Error(\"E0005\")\r\n }\r\n } else {\r\n ua = navigator.userAgent\r\n }\r\n return this._fromUA(ua)\r\n }\r\n }\r\n }, {\r\n key: \"_getDeviceOrNameFromWindowScope\",\r\n value: function() {\r\n var result;\r\n if ((0, _window.hasWindow)() && (this._window.top[\"dx-force-device-object\"] || this._window.top[\"dx-force-device\"])) {\r\n result = this._window.top[\"dx-force-device-object\"] || this._window.top[\"dx-force-device\"]\r\n }\r\n return result\r\n }\r\n }, {\r\n key: \"_getDeviceNameFromSessionStorage\",\r\n value: function() {\r\n var sessionStorage = (0, _storage.sessionStorage)();\r\n if (!sessionStorage) {\r\n return\r\n }\r\n var deviceOrName = sessionStorage.getItem(\"dx-force-device\");\r\n try {\r\n return JSON.parse(deviceOrName)\r\n } catch (ex) {\r\n return deviceOrName\r\n }\r\n }\r\n }, {\r\n key: \"_fromConfig\",\r\n value: function(config) {\r\n var result = (0, _extend.extend)({}, DEFAULT_DEVICE, this._currentDevice, config);\r\n var shortcuts = {\r\n phone: \"phone\" === result.deviceType,\r\n tablet: \"tablet\" === result.deviceType,\r\n android: \"android\" === result.platform,\r\n ios: \"ios\" === result.platform,\r\n generic: \"generic\" === result.platform\r\n };\r\n return (0, _extend.extend)(result, shortcuts)\r\n }\r\n }, {\r\n key: \"_fromUA\",\r\n value: function(ua) {\r\n var config;\r\n (0, _iterator.each)(uaParsers, function(platform, parser) {\r\n config = parser(ua);\r\n return !config\r\n });\r\n if (config) {\r\n return this._fromConfig(config)\r\n }\r\n return DEFAULT_DEVICE\r\n }\r\n }, {\r\n key: \"_changeOrientation\",\r\n value: function() {\r\n var $window = (0, _renderer.default)(this._window);\r\n var orientation = $window.height() > $window.width() ? \"portrait\" : \"landscape\";\r\n if (this._currentOrientation === orientation) {\r\n return\r\n }\r\n this._currentOrientation = orientation;\r\n this._eventsStrategy.fireEvent(\"orientationChanged\", [{\r\n orientation: orientation\r\n }])\r\n }\r\n }, {\r\n key: \"_recalculateOrientation\",\r\n value: function() {\r\n var windowWidth = (0, _renderer.default)(this._window).width();\r\n if (this._currentWidth === windowWidth) {\r\n return\r\n }\r\n this._currentWidth = windowWidth;\r\n this._changeOrientation()\r\n }\r\n }, {\r\n key: \"on\",\r\n value: function(eventName, eventHandler) {\r\n this._eventsStrategy.on(eventName, eventHandler);\r\n return this\r\n }\r\n }, {\r\n key: \"off\",\r\n value: function(eventName, eventHandler) {\r\n this._eventsStrategy.off(eventName, eventHandler);\r\n return this\r\n }\r\n }]);\r\n return Devices\r\n}();\r\nvar devices = new Devices;\r\n_view_port.changeCallback.add(function(viewPort, prevViewport) {\r\n devices.detachCssClasses(prevViewport);\r\n devices.attachCssClasses(viewPort)\r\n});\r\nvar _default = devices;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\nmodule.exports.default = module.exports;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar config_1 = require(\"./config\");\nvar templates_discovering_1 = require(\"./templates-discovering\");\nvar domAdapter = require(\"devextreme/core/dom_adapter\");\nvar events = require(\"devextreme/events\");\nvar constants_1 = require(\"./constants\");\nvar helpers_1 = require(\"./helpers\");\nvar TemplatesManager = /** @class */ (function () {\n function TemplatesManager(component) {\n this._slots = {};\n this._templates = {};\n this._isDirty = false;\n this._component = component;\n this.discover();\n }\n TemplatesManager.prototype.discover = function () {\n var slots = templates_discovering_1.discover(this._component);\n this._slots = __assign(__assign({}, this._slots), slots);\n if (!helpers_1.allKeysAreEqual(this._templates, slots)) {\n this._prepareTemplates();\n }\n };\n Object.defineProperty(TemplatesManager.prototype, \"templates\", {\n get: function () {\n return this._templates;\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(TemplatesManager.prototype, \"isDirty\", {\n get: function () {\n return this._isDirty;\n },\n enumerable: true,\n configurable: true\n });\n TemplatesManager.prototype.resetDirtyFlag = function () {\n this._isDirty = false;\n };\n TemplatesManager.prototype._prepareTemplates = function () {\n this._templates = {};\n for (var _i = 0, _a = Object.keys(this._slots); _i < _a.length; _i++) {\n var name_1 = _a[_i];\n this._templates[name_1] = this.createDxTemplate(name_1);\n }\n this._isDirty = true;\n };\n TemplatesManager.prototype.createDxTemplate = function (name) {\n var _this = this;\n return {\n render: function (data) {\n var scopeData = config_1.getOption(\"useLegacyTemplateEngine\")\n ? data.model\n : { data: data.model, index: data.index };\n var container = data.container.get ? data.container.get(0) : data.container;\n var placeholder = document.createElement(\"div\");\n container.appendChild(placeholder);\n var mountedTemplate = templates_discovering_1.mountTemplate(function () { return _this._slots[name]; }, _this._component, scopeData, name, placeholder);\n var element = mountedTemplate.$el;\n domAdapter.setClass(element, constants_1.DX_TEMPLATE_WRAPPER_CLASS, true);\n if (element.nodeType === Node.TEXT_NODE) {\n var removalListener = document.createElement(container.nodeName === \"TABLE\" ? \"tbody\" : \"span\");\n removalListener.style.display = \"none\";\n container.appendChild(removalListener);\n events.one(removalListener, constants_1.DX_REMOVE_EVENT, mountedTemplate.$destroy.bind(mountedTemplate));\n }\n else {\n events.one(element, constants_1.DX_REMOVE_EVENT, mountedTemplate.$destroy.bind(mountedTemplate));\n }\n return element;\n }\n };\n };\n return TemplatesManager;\n}());\nexports.TemplatesManager = TemplatesManager;\n","/**\r\n * DevExtreme (ui/resizable.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _translator = require(\"../animation/translator\");\r\nvar _component_registrator = _interopRequireDefault(require(\"../core/component_registrator\"));\r\nvar _dom_component = _interopRequireDefault(require(\"../core/dom_component\"));\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _array = require(\"../core/utils/array\");\r\nvar _common = require(\"../core/utils/common\");\r\nvar _extend = require(\"../core/utils/extend\");\r\nvar _iterator = require(\"../core/utils/iterator\");\r\nvar _math = require(\"../core/utils/math\");\r\nvar _type = require(\"../core/utils/type\");\r\nvar _window = require(\"../core/utils/window\");\r\nvar _events_engine = _interopRequireDefault(require(\"../events/core/events_engine\"));\r\nvar _drag = require(\"../events/drag\");\r\nvar _position = require(\"../core/utils/position\");\r\nvar _index = require(\"../events/utils/index\");\r\nvar _visibility_change = require(\"../events/visibility_change\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar RESIZABLE = \"dxResizable\";\r\nvar RESIZABLE_CLASS = \"dx-resizable\";\r\nvar RESIZABLE_RESIZING_CLASS = \"dx-resizable-resizing\";\r\nvar RESIZABLE_HANDLE_CLASS = \"dx-resizable-handle\";\r\nvar RESIZABLE_HANDLE_TOP_CLASS = \"dx-resizable-handle-top\";\r\nvar RESIZABLE_HANDLE_BOTTOM_CLASS = \"dx-resizable-handle-bottom\";\r\nvar RESIZABLE_HANDLE_LEFT_CLASS = \"dx-resizable-handle-left\";\r\nvar RESIZABLE_HANDLE_RIGHT_CLASS = \"dx-resizable-handle-right\";\r\nvar RESIZABLE_HANDLE_CORNER_CLASS = \"dx-resizable-handle-corner\";\r\nvar DRAGSTART_START_EVENT_NAME = (0, _index.addNamespace)(_drag.start, RESIZABLE);\r\nvar DRAGSTART_EVENT_NAME = (0, _index.addNamespace)(_drag.move, RESIZABLE);\r\nvar DRAGSTART_END_EVENT_NAME = (0, _index.addNamespace)(_drag.end, RESIZABLE);\r\nvar SIDE_BORDER_WIDTH_STYLES = {\r\n left: \"borderLeftWidth\",\r\n top: \"borderTopWidth\",\r\n right: \"borderRightWidth\",\r\n bottom: \"borderBottomWidth\"\r\n};\r\nvar Resizable = _dom_component.default.inherit({\r\n _getDefaultOptions: function() {\r\n return (0, _extend.extend)(this.callBase(), {\r\n handles: \"all\",\r\n step: \"1\",\r\n stepPrecision: \"simple\",\r\n area: void 0,\r\n minWidth: 30,\r\n maxWidth: 1 / 0,\r\n minHeight: 30,\r\n maxHeight: 1 / 0,\r\n onResizeStart: null,\r\n onResize: null,\r\n onResizeEnd: null,\r\n roundStepValue: true\r\n })\r\n },\r\n _init: function() {\r\n this.callBase();\r\n this.$element().addClass(RESIZABLE_CLASS)\r\n },\r\n _initMarkup: function() {\r\n this.callBase();\r\n this._renderHandles()\r\n },\r\n _render: function() {\r\n this.callBase();\r\n this._renderActions()\r\n },\r\n _renderActions: function() {\r\n this._resizeStartAction = this._createActionByOption(\"onResizeStart\");\r\n this._resizeEndAction = this._createActionByOption(\"onResizeEnd\");\r\n this._resizeAction = this._createActionByOption(\"onResize\")\r\n },\r\n _renderHandles: function() {\r\n var _this = this;\r\n this._handles = [];\r\n var handles = this.option(\"handles\");\r\n if (\"none\" === handles) {\r\n return\r\n }\r\n var directions = \"all\" === handles ? [\"top\", \"bottom\", \"left\", \"right\"] : handles.split(\" \");\r\n (0, _iterator.each)(directions, function(index, handleName) {\r\n _this._renderHandle(handleName)\r\n });\r\n (0, _array.inArray)(\"bottom\", directions) + 1 && (0, _array.inArray)(\"right\", directions) + 1 && this._renderHandle(\"corner-bottom-right\");\r\n (0, _array.inArray)(\"bottom\", directions) + 1 && (0, _array.inArray)(\"left\", directions) + 1 && this._renderHandle(\"corner-bottom-left\");\r\n (0, _array.inArray)(\"top\", directions) + 1 && (0, _array.inArray)(\"right\", directions) + 1 && this._renderHandle(\"corner-top-right\");\r\n (0, _array.inArray)(\"top\", directions) + 1 && (0, _array.inArray)(\"left\", directions) + 1 && this._renderHandle(\"corner-top-left\");\r\n this._attachEventHandlers()\r\n },\r\n _renderHandle: function(handleName) {\r\n var $handle = (0, _renderer.default)(\"
\").addClass(RESIZABLE_HANDLE_CLASS).addClass(RESIZABLE_HANDLE_CLASS + \"-\" + handleName).appendTo(this.$element());\r\n this._handles.push($handle)\r\n },\r\n _attachEventHandlers: function() {\r\n if (this.option(\"disabled\")) {\r\n return\r\n }\r\n var handlers = {};\r\n handlers[DRAGSTART_START_EVENT_NAME] = this._dragStartHandler.bind(this);\r\n handlers[DRAGSTART_EVENT_NAME] = this._dragHandler.bind(this);\r\n handlers[DRAGSTART_END_EVENT_NAME] = this._dragEndHandler.bind(this);\r\n this._handles.forEach(function(handleElement) {\r\n _events_engine.default.on(handleElement, handlers, {\r\n direction: \"both\",\r\n immediate: true\r\n })\r\n })\r\n },\r\n _detachEventHandlers: function() {\r\n this._handles.forEach(function(handleElement) {\r\n _events_engine.default.off(handleElement)\r\n })\r\n },\r\n _toggleEventHandlers: function(shouldAttachEvents) {\r\n shouldAttachEvents ? this._attachEventHandlers() : this._detachEventHandlers()\r\n },\r\n _dragStartHandler: function(e) {\r\n var $element = this.$element();\r\n if ($element.is(\".dx-state-disabled, .dx-state-disabled *\")) {\r\n e.cancel = true;\r\n return\r\n }\r\n this._toggleResizingClass(true);\r\n this._movingSides = this._getMovingSides(e);\r\n this._elementLocation = (0, _translator.locate)($element);\r\n var elementRect = (0, _position.getBoundingRect)($element.get(0));\r\n this._elementSize = {\r\n width: elementRect.width,\r\n height: elementRect.height\r\n };\r\n this._renderDragOffsets(e);\r\n this._resizeStartAction({\r\n event: e,\r\n width: this._elementSize.width,\r\n height: this._elementSize.height,\r\n handles: this._movingSides\r\n });\r\n e.targetElements = null\r\n },\r\n _toggleResizingClass: function(value) {\r\n this.$element().toggleClass(RESIZABLE_RESIZING_CLASS, value)\r\n },\r\n _renderDragOffsets: function(e) {\r\n var area = this._getArea();\r\n if (!area) {\r\n return\r\n }\r\n var $handle = (0, _renderer.default)(e.target).closest(\".\" + RESIZABLE_HANDLE_CLASS);\r\n var handleWidth = $handle.outerWidth();\r\n var handleHeight = $handle.outerHeight();\r\n var handleOffset = $handle.offset();\r\n var areaOffset = area.offset;\r\n var scrollOffset = this._getAreaScrollOffset();\r\n e.maxLeftOffset = handleOffset.left - areaOffset.left - scrollOffset.scrollX;\r\n e.maxRightOffset = areaOffset.left + area.width - handleOffset.left - handleWidth + scrollOffset.scrollX;\r\n e.maxTopOffset = handleOffset.top - areaOffset.top - scrollOffset.scrollY;\r\n e.maxBottomOffset = areaOffset.top + area.height - handleOffset.top - handleHeight + scrollOffset.scrollY\r\n },\r\n _getBorderWidth: function($element, direction) {\r\n if ((0, _type.isWindow)($element.get(0))) {\r\n return 0\r\n }\r\n var borderWidth = $element.css(SIDE_BORDER_WIDTH_STYLES[direction]);\r\n return parseInt(borderWidth) || 0\r\n },\r\n _dragHandler: function(e) {\r\n var $element = this.$element();\r\n var sides = this._movingSides;\r\n var location = this._elementLocation;\r\n var size = this._elementSize;\r\n var offset = this._getOffset(e);\r\n var width = size.width + offset.x * (sides.left ? -1 : 1);\r\n var height = size.height + offset.y * (sides.top ? -1 : 1);\r\n if (offset.x || \"strict\" === this.option(\"stepPrecision\")) {\r\n this._renderWidth(width)\r\n }\r\n if (offset.y || \"strict\" === this.option(\"stepPrecision\")) {\r\n this._renderHeight(height)\r\n }\r\n var elementRect = (0, _position.getBoundingRect)($element.get(0));\r\n var offsetTop = offset.y - ((elementRect.height || height) - height);\r\n var offsetLeft = offset.x - ((elementRect.width || width) - width);\r\n (0, _translator.move)($element, {\r\n top: location.top + (sides.top ? offsetTop : 0),\r\n left: location.left + (sides.left ? offsetLeft : 0)\r\n });\r\n this._resizeAction({\r\n event: e,\r\n width: this.option(\"width\") || width,\r\n height: this.option(\"height\") || height,\r\n handles: this._movingSides\r\n });\r\n (0, _visibility_change.triggerResizeEvent)($element)\r\n },\r\n _getOffset: function(e) {\r\n var offset = e.offset;\r\n var steps = (0, _common.pairToObject)(this.option(\"step\"), !this.option(\"roundStepValue\"));\r\n var sides = this._getMovingSides(e);\r\n var strictPrecision = \"strict\" === this.option(\"stepPrecision\");\r\n if (!sides.left && !sides.right) {\r\n offset.x = 0\r\n }\r\n if (!sides.top && !sides.bottom) {\r\n offset.y = 0\r\n }\r\n return strictPrecision ? this._getStrictOffset(offset, steps, sides) : this._getSimpleOffset(offset, steps)\r\n },\r\n _getSimpleOffset: function(offset, steps) {\r\n return {\r\n x: offset.x - offset.x % steps.h,\r\n y: offset.y - offset.y % steps.v\r\n }\r\n },\r\n _getStrictOffset: function(offset, steps, sides) {\r\n var location = this._elementLocation;\r\n var size = this._elementSize;\r\n var xPos = sides.left ? location.left : location.left + size.width;\r\n var yPos = sides.top ? location.top : location.top + size.height;\r\n var newXShift = (xPos + offset.x) % steps.h;\r\n var newYShift = (yPos + offset.y) % steps.v;\r\n var sign = Math.sign || function(x) {\r\n x = +x;\r\n if (0 === x || isNaN(x)) {\r\n return x\r\n }\r\n return x > 0 ? 1 : -1\r\n };\r\n var separatorOffset = function(steps, offset) {\r\n return (1 + .2 * sign(offset)) % 1 * steps\r\n };\r\n var isSmallOffset = function(offset, steps) {\r\n return Math.abs(offset) < .2 * steps\r\n };\r\n var newOffsetX = offset.x - newXShift;\r\n var newOffsetY = offset.y - newYShift;\r\n if (newXShift > separatorOffset(steps.h, offset.x)) {\r\n newOffsetX += steps.h\r\n }\r\n if (newYShift > separatorOffset(steps.v, offset.y)) {\r\n newOffsetY += steps.v\r\n }\r\n return {\r\n x: (sides.left || sides.right) && !isSmallOffset(offset.x, steps.h) ? newOffsetX : 0,\r\n y: (sides.top || sides.bottom) && !isSmallOffset(offset.y, steps.v) ? newOffsetY : 0\r\n }\r\n },\r\n _getMovingSides: function(e) {\r\n var $target = (0, _renderer.default)(e.target);\r\n var hasCornerTopLeftClass = $target.hasClass(RESIZABLE_HANDLE_CORNER_CLASS + \"-top-left\");\r\n var hasCornerTopRightClass = $target.hasClass(RESIZABLE_HANDLE_CORNER_CLASS + \"-top-right\");\r\n var hasCornerBottomLeftClass = $target.hasClass(RESIZABLE_HANDLE_CORNER_CLASS + \"-bottom-left\");\r\n var hasCornerBottomRightClass = $target.hasClass(RESIZABLE_HANDLE_CORNER_CLASS + \"-bottom-right\");\r\n return {\r\n top: $target.hasClass(RESIZABLE_HANDLE_TOP_CLASS) || hasCornerTopLeftClass || hasCornerTopRightClass,\r\n left: $target.hasClass(RESIZABLE_HANDLE_LEFT_CLASS) || hasCornerTopLeftClass || hasCornerBottomLeftClass,\r\n bottom: $target.hasClass(RESIZABLE_HANDLE_BOTTOM_CLASS) || hasCornerBottomLeftClass || hasCornerBottomRightClass,\r\n right: $target.hasClass(RESIZABLE_HANDLE_RIGHT_CLASS) || hasCornerTopRightClass || hasCornerBottomRightClass\r\n }\r\n },\r\n _getArea: function() {\r\n var area = this.option(\"area\");\r\n if ((0, _type.isFunction)(area)) {\r\n area = area.call(this)\r\n }\r\n if ((0, _type.isPlainObject)(area)) {\r\n return this._getAreaFromObject(area)\r\n }\r\n return this._getAreaFromElement(area)\r\n },\r\n _getAreaScrollOffset: function() {\r\n var area = this.option(\"area\");\r\n var isElement = !(0, _type.isFunction)(area) && !(0, _type.isPlainObject)(area);\r\n var scrollOffset = {\r\n scrollY: 0,\r\n scrollX: 0\r\n };\r\n if (isElement) {\r\n var areaElement = (0, _renderer.default)(area)[0];\r\n if ((0, _type.isWindow)(areaElement)) {\r\n scrollOffset.scrollX = areaElement.pageXOffset;\r\n scrollOffset.scrollY = areaElement.pageYOffset\r\n }\r\n }\r\n return scrollOffset\r\n },\r\n _getAreaFromObject: function(area) {\r\n var result = {\r\n width: area.right - area.left,\r\n height: area.bottom - area.top,\r\n offset: {\r\n left: area.left,\r\n top: area.top\r\n }\r\n };\r\n this._correctAreaGeometry(result);\r\n return result\r\n },\r\n _getAreaFromElement: function(area) {\r\n var $area = (0, _renderer.default)(area);\r\n var result;\r\n if ($area.length) {\r\n result = {\r\n width: $area.innerWidth(),\r\n height: $area.innerHeight(),\r\n offset: (0, _extend.extend)({\r\n top: 0,\r\n left: 0\r\n }, (0, _type.isWindow)($area[0]) ? {} : $area.offset())\r\n };\r\n this._correctAreaGeometry(result, $area)\r\n }\r\n return result\r\n },\r\n _correctAreaGeometry: function(result, $area) {\r\n var areaBorderLeft = $area ? this._getBorderWidth($area, \"left\") : 0;\r\n var areaBorderTop = $area ? this._getBorderWidth($area, \"top\") : 0;\r\n result.offset.left += areaBorderLeft + this._getBorderWidth(this.$element(), \"left\");\r\n result.offset.top += areaBorderTop + this._getBorderWidth(this.$element(), \"top\");\r\n result.width -= this.$element().outerWidth() - this.$element().innerWidth();\r\n result.height -= this.$element().outerHeight() - this.$element().innerHeight()\r\n },\r\n _dragEndHandler: function(e) {\r\n var $element = this.$element();\r\n this._resizeEndAction({\r\n event: e,\r\n width: $element.outerWidth(),\r\n height: $element.outerHeight(),\r\n handles: this._movingSides\r\n });\r\n this._toggleResizingClass(false)\r\n },\r\n _renderWidth: function(width) {\r\n this.option(\"width\", (0, _math.fitIntoRange)(width, this.option(\"minWidth\"), this.option(\"maxWidth\")))\r\n },\r\n _renderHeight: function(height) {\r\n this.option(\"height\", (0, _math.fitIntoRange)(height, this.option(\"minHeight\"), this.option(\"maxHeight\")))\r\n },\r\n _optionChanged: function(args) {\r\n switch (args.name) {\r\n case \"disabled\":\r\n this._toggleEventHandlers(!args.value);\r\n this.callBase(args);\r\n break;\r\n case \"handles\":\r\n this._invalidate();\r\n break;\r\n case \"minWidth\":\r\n case \"maxWidth\":\r\n (0, _window.hasWindow)() && this._renderWidth(this.$element().outerWidth());\r\n break;\r\n case \"minHeight\":\r\n case \"maxHeight\":\r\n (0, _window.hasWindow)() && this._renderHeight(this.$element().outerHeight());\r\n break;\r\n case \"onResize\":\r\n case \"onResizeStart\":\r\n case \"onResizeEnd\":\r\n this._renderActions();\r\n break;\r\n case \"area\":\r\n case \"stepPrecision\":\r\n case \"step\":\r\n case \"roundStepValue\":\r\n break;\r\n default:\r\n this.callBase(args)\r\n }\r\n },\r\n _clean: function() {\r\n this.$element().find(\".\" + RESIZABLE_HANDLE_CLASS).remove()\r\n },\r\n _useTemplates: function() {\r\n return false\r\n }\r\n});\r\n(0, _component_registrator.default)(RESIZABLE, Resizable);\r\nvar _default = Resizable;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\nmodule.exports.default = module.exports;\r\n","/**\r\n * DevExtreme (events/pointer/touch.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _devices = _interopRequireDefault(require(\"../../core/devices\"));\r\nvar _extend = require(\"../../core/utils/extend\");\r\nvar _iterator = require(\"../../core/utils/iterator\");\r\nvar _base = _interopRequireDefault(require(\"./base\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar eventMap = {\r\n dxpointerdown: \"touchstart\",\r\n dxpointermove: \"touchmove\",\r\n dxpointerup: \"touchend\",\r\n dxpointercancel: \"touchcancel\",\r\n dxpointerover: \"\",\r\n dxpointerout: \"\",\r\n dxpointerenter: \"\",\r\n dxpointerleave: \"\"\r\n};\r\nvar normalizeTouchEvent = function(e) {\r\n var pointers = [];\r\n (0, _iterator.each)(e.touches, function(_, touch) {\r\n pointers.push((0, _extend.extend)({\r\n pointerId: touch.identifier\r\n }, touch))\r\n });\r\n return {\r\n pointers: pointers,\r\n pointerId: e.changedTouches[0].identifier\r\n }\r\n};\r\nvar skipTouchWithSameIdentifier = function(pointerEvent) {\r\n return \"ios\" === _devices.default.real().platform && (\"dxpointerdown\" === pointerEvent || \"dxpointerup\" === pointerEvent)\r\n};\r\nvar TouchStrategy = _base.default.inherit({\r\n ctor: function() {\r\n this.callBase.apply(this, arguments);\r\n this._pointerId = 0\r\n },\r\n _handler: function(e) {\r\n if (skipTouchWithSameIdentifier(this._eventName)) {\r\n var touch = e.changedTouches[0];\r\n if (this._pointerId === touch.identifier && 0 !== this._pointerId) {\r\n return\r\n }\r\n this._pointerId = touch.identifier\r\n }\r\n return this.callBase.apply(this, arguments)\r\n },\r\n _fireEvent: function(args) {\r\n return this.callBase((0, _extend.extend)(normalizeTouchEvent(args.originalEvent), args))\r\n }\r\n});\r\nTouchStrategy.map = eventMap;\r\nTouchStrategy.normalize = normalizeTouchEvent;\r\nvar _default = TouchStrategy;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/templates/template_base.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.TemplateBase = exports.renderedCallbacks = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../renderer\"));\r\nvar _dom_adapter = _interopRequireDefault(require(\"../dom_adapter\"));\r\nvar _callbacks = _interopRequireDefault(require(\"../utils/callbacks\"));\r\nvar _dom = require(\"../utils/dom\");\r\nvar _visibility_change = require(\"../../events/visibility_change\");\r\nvar _errors = _interopRequireDefault(require(\"../errors\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\nvar renderedCallbacks = (0, _callbacks.default)({\r\n syncStrategy: true\r\n});\r\nexports.renderedCallbacks = renderedCallbacks;\r\nvar TemplateBase = function() {\r\n function TemplateBase() {\r\n _classCallCheck(this, TemplateBase)\r\n }\r\n _createClass(TemplateBase, [{\r\n key: \"render\",\r\n value: function(options) {\r\n options = options || {};\r\n var onRendered = options.onRendered;\r\n delete options.onRendered;\r\n var $result = this._renderCore(options);\r\n this._ensureResultInContainer($result, options.container);\r\n renderedCallbacks.fire($result, options.container);\r\n onRendered && onRendered();\r\n return $result\r\n }\r\n }, {\r\n key: \"_ensureResultInContainer\",\r\n value: function($result, container) {\r\n if (!container) {\r\n return\r\n }\r\n var $container = (0, _renderer.default)(container);\r\n var resultInContainer = (0, _dom.contains)($container.get(0), $result.get(0));\r\n $container.append($result);\r\n if (resultInContainer) {\r\n return\r\n }\r\n var resultInBody = _dom_adapter.default.getBody().contains($container.get(0));\r\n if (!resultInBody) {\r\n return\r\n }(0, _visibility_change.triggerShownEvent)($result)\r\n }\r\n }, {\r\n key: \"_renderCore\",\r\n value: function() {\r\n throw _errors.default.Error(\"E0001\")\r\n }\r\n }]);\r\n return TemplateBase\r\n}();\r\nexports.TemplateBase = TemplateBase;\r\n","/**\r\n * DevExtreme (core/templates/empty_template.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.EmptyTemplate = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../renderer\"));\r\nvar _template_base = require(\"./template_base\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\n\r\nfunction _inherits(subClass, superClass) {\r\n if (\"function\" !== typeof superClass && null !== superClass) {\r\n throw new TypeError(\"Super expression must either be null or a function\")\r\n }\r\n subClass.prototype = Object.create(superClass && superClass.prototype, {\r\n constructor: {\r\n value: subClass,\r\n writable: true,\r\n configurable: true\r\n }\r\n });\r\n if (superClass) {\r\n _setPrototypeOf(subClass, superClass)\r\n }\r\n}\r\n\r\nfunction _setPrototypeOf(o, p) {\r\n _setPrototypeOf = Object.setPrototypeOf || function(o, p) {\r\n o.__proto__ = p;\r\n return o\r\n };\r\n return _setPrototypeOf(o, p)\r\n}\r\n\r\nfunction _createSuper(Derived) {\r\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\r\n return function() {\r\n var result, Super = _getPrototypeOf(Derived);\r\n if (hasNativeReflectConstruct) {\r\n var NewTarget = _getPrototypeOf(this).constructor;\r\n result = Reflect.construct(Super, arguments, NewTarget)\r\n } else {\r\n result = Super.apply(this, arguments)\r\n }\r\n return _possibleConstructorReturn(this, result)\r\n }\r\n}\r\n\r\nfunction _possibleConstructorReturn(self, call) {\r\n if (call && (\"object\" === _typeof(call) || \"function\" === typeof call)) {\r\n return call\r\n }\r\n return _assertThisInitialized(self)\r\n}\r\n\r\nfunction _assertThisInitialized(self) {\r\n if (void 0 === self) {\r\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")\r\n }\r\n return self\r\n}\r\n\r\nfunction _isNativeReflectConstruct() {\r\n if (\"undefined\" === typeof Reflect || !Reflect.construct) {\r\n return false\r\n }\r\n if (Reflect.construct.sham) {\r\n return false\r\n }\r\n if (\"function\" === typeof Proxy) {\r\n return true\r\n }\r\n try {\r\n Date.prototype.toString.call(Reflect.construct(Date, [], function() {}));\r\n return true\r\n } catch (e) {\r\n return false\r\n }\r\n}\r\n\r\nfunction _getPrototypeOf(o) {\r\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function(o) {\r\n return o.__proto__ || Object.getPrototypeOf(o)\r\n };\r\n return _getPrototypeOf(o)\r\n}\r\nvar EmptyTemplate = function(_TemplateBase) {\r\n _inherits(EmptyTemplate, _TemplateBase);\r\n var _super = _createSuper(EmptyTemplate);\r\n\r\n function EmptyTemplate() {\r\n _classCallCheck(this, EmptyTemplate);\r\n return _super.apply(this, arguments)\r\n }\r\n _createClass(EmptyTemplate, [{\r\n key: \"_renderCore\",\r\n value: function() {\r\n return (0, _renderer.default)()\r\n }\r\n }]);\r\n return EmptyTemplate\r\n}(_template_base.TemplateBase);\r\nexports.EmptyTemplate = EmptyTemplate;\r\n","/**\r\n * DevExtreme (core/polyfills/promise.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _deferred = require(\"../../core/utils/deferred\");\r\nvar _window = require(\"../../core/utils/window\");\r\nvar promise = (0, _window.hasWindow)() ? (0, _window.getWindow)().Promise : Promise;\r\nif (!promise) {\r\n promise = function(resolver) {\r\n var d = new _deferred.Deferred;\r\n resolver(d.resolve.bind(this), d.reject.bind(this));\r\n return d.promise()\r\n };\r\n promise.resolve = function(val) {\r\n return (new _deferred.Deferred).resolve(val).promise()\r\n };\r\n promise.reject = function(val) {\r\n return (new _deferred.Deferred).reject(val).promise()\r\n };\r\n promise.all = function(promises) {\r\n return _deferred.when.apply(this, promises).then(function() {\r\n return [].slice.call(arguments)\r\n })\r\n }\r\n}\r\nvar _default = promise;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/postponed_operations.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.PostponedOperations = void 0;\r\nvar _deferred = require(\"./utils/deferred\");\r\nvar _type = require(\"./utils/type\");\r\n\r\nfunction _toConsumableArray(arr) {\r\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread()\r\n}\r\n\r\nfunction _nonIterableSpread() {\r\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\")\r\n}\r\n\r\nfunction _unsupportedIterableToArray(o, minLen) {\r\n if (!o) {\r\n return\r\n }\r\n if (\"string\" === typeof o) {\r\n return _arrayLikeToArray(o, minLen)\r\n }\r\n var n = Object.prototype.toString.call(o).slice(8, -1);\r\n if (\"Object\" === n && o.constructor) {\r\n n = o.constructor.name\r\n }\r\n if (\"Map\" === n || \"Set\" === n) {\r\n return Array.from(o)\r\n }\r\n if (\"Arguments\" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) {\r\n return _arrayLikeToArray(o, minLen)\r\n }\r\n}\r\n\r\nfunction _iterableToArray(iter) {\r\n if (\"undefined\" !== typeof Symbol && Symbol.iterator in Object(iter)) {\r\n return Array.from(iter)\r\n }\r\n}\r\n\r\nfunction _arrayWithoutHoles(arr) {\r\n if (Array.isArray(arr)) {\r\n return _arrayLikeToArray(arr)\r\n }\r\n}\r\n\r\nfunction _arrayLikeToArray(arr, len) {\r\n if (null == len || len > arr.length) {\r\n len = arr.length\r\n }\r\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\r\n arr2[i] = arr[i]\r\n }\r\n return arr2\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\nvar PostponedOperations = function() {\r\n function PostponedOperations() {\r\n _classCallCheck(this, PostponedOperations);\r\n this._postponedOperations = {}\r\n }\r\n _createClass(PostponedOperations, [{\r\n key: \"add\",\r\n value: function(key, fn, postponedPromise) {\r\n if (key in this._postponedOperations) {\r\n postponedPromise && this._postponedOperations[key].promises.push(postponedPromise)\r\n } else {\r\n var completePromise = new _deferred.Deferred;\r\n this._postponedOperations[key] = {\r\n fn: fn,\r\n completePromise: completePromise,\r\n promises: postponedPromise ? [postponedPromise] : []\r\n }\r\n }\r\n return this._postponedOperations[key].completePromise.promise()\r\n }\r\n }, {\r\n key: \"callPostponedOperations\",\r\n value: function() {\r\n for (var key in this._postponedOperations) {\r\n var operation = this._postponedOperations[key];\r\n if ((0, _type.isDefined)(operation)) {\r\n if (operation.promises && operation.promises.length) {\r\n _deferred.when.apply(void 0, _toConsumableArray(operation.promises)).done(operation.fn).then(operation.completePromise.resolve)\r\n } else {\r\n operation.fn().done(operation.completePromise.resolve)\r\n }\r\n }\r\n }\r\n this._postponedOperations = {}\r\n }\r\n }]);\r\n return PostponedOperations\r\n}();\r\nexports.PostponedOperations = PostponedOperations;\r\n","/**\r\n * DevExtreme (core/dom_component.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _config = _interopRequireDefault(require(\"./config\"));\r\nvar _errors = _interopRequireDefault(require(\"./errors\"));\r\nvar _resize_callbacks = _interopRequireDefault(require(\"../core/utils/resize_callbacks\"));\r\nvar _component = _interopRequireDefault(require(\"./component\"));\r\nvar _template_manager = require(\"./template_manager\");\r\nvar _public_component = require(\"./utils/public_component\");\r\nvar _element_data = require(\"./element_data\");\r\nvar _iterator = require(\"./utils/iterator\");\r\nvar _extend = require(\"./utils/extend\");\r\nvar _element = require(\"../core/element\");\r\nvar _common = require(\"./utils/common\");\r\nvar _array = require(\"./utils/array\");\r\nvar _type = require(\"./utils/type\");\r\nvar _window = require(\"../core/utils/window\");\r\nvar _short = require(\"../events/short\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar abstract = _component.default.abstract;\r\nvar DOMComponent = _component.default.inherit({\r\n _getDefaultOptions: function() {\r\n return (0, _extend.extend)(this.callBase(), {\r\n width: void 0,\r\n height: void 0,\r\n rtlEnabled: (0, _config.default)().rtlEnabled,\r\n elementAttr: {},\r\n disabled: false,\r\n integrationOptions: {}\r\n }, this._useTemplates() ? _template_manager.TemplateManager.createDefaultOptions() : {})\r\n },\r\n ctor: function(element, options) {\r\n this._createElement(element);\r\n (0, _public_component.attachInstanceToElement)(this._$element, this, this._dispose);\r\n this.callBase(options)\r\n },\r\n _createElement: function(element) {\r\n this._$element = (0, _renderer.default)(element)\r\n },\r\n _getSynchronizableOptionsForCreateComponent: function() {\r\n return [\"rtlEnabled\", \"disabled\", \"templatesRenderAsynchronously\"]\r\n },\r\n _visibilityChanged: abstract,\r\n _dimensionChanged: abstract,\r\n _init: function() {\r\n this.callBase();\r\n this._attachWindowResizeCallback();\r\n this._initTemplateManager()\r\n },\r\n _setOptionsByDevice: function(instanceCustomRules) {\r\n this.callBase([].concat(this.constructor._classCustomRules || [], instanceCustomRules || []))\r\n },\r\n _isInitialOptionValue: function(name) {\r\n var isCustomOption = this.constructor._classCustomRules && Object.prototype.hasOwnProperty.call(this._convertRulesToOptions(this.constructor._classCustomRules), name);\r\n return !isCustomOption && this.callBase(name)\r\n },\r\n _attachWindowResizeCallback: function() {\r\n if (this._isDimensionChangeSupported()) {\r\n var windowResizeCallBack = this._windowResizeCallBack = this._dimensionChanged.bind(this);\r\n _resize_callbacks.default.add(windowResizeCallBack)\r\n }\r\n },\r\n _isDimensionChangeSupported: function() {\r\n return this._dimensionChanged !== abstract\r\n },\r\n _renderComponent: function() {\r\n this._initMarkup();\r\n (0, _window.hasWindow)() && this._render()\r\n },\r\n _initMarkup: function() {\r\n var _ref = this.option() || {},\r\n rtlEnabled = _ref.rtlEnabled;\r\n this._renderElementAttributes();\r\n this._toggleRTLDirection(rtlEnabled);\r\n this._renderVisibilityChange();\r\n this._renderDimensions()\r\n },\r\n _render: function() {\r\n this._attachVisibilityChangeHandlers()\r\n },\r\n _renderElementAttributes: function() {\r\n var _ref2 = this.option() || {},\r\n elementAttr = _ref2.elementAttr;\r\n var attributes = (0, _extend.extend)({}, elementAttr);\r\n var classNames = attributes.class;\r\n delete attributes.class;\r\n this.$element().attr(attributes).addClass(classNames)\r\n },\r\n _renderVisibilityChange: function() {\r\n if (this._isDimensionChangeSupported()) {\r\n this._attachDimensionChangeHandlers()\r\n }\r\n if (this._isVisibilityChangeSupported()) {\r\n var $element = this.$element();\r\n $element.addClass(\"dx-visibility-change-handler\")\r\n }\r\n },\r\n _renderDimensions: function() {\r\n var $element = this.$element();\r\n var element = $element.get(0);\r\n var width = this._getOptionValue(\"width\", element);\r\n var height = this._getOptionValue(\"height\", element);\r\n if (this._isCssUpdateRequired(element, height, width)) {\r\n $element.css({\r\n width: null === width ? \"\" : width,\r\n height: null === height ? \"\" : height\r\n })\r\n }\r\n },\r\n _isCssUpdateRequired: function(element, height, width) {\r\n return !!((0, _type.isDefined)(width) || (0, _type.isDefined)(height) || element.style.width || element.style.height)\r\n },\r\n _attachDimensionChangeHandlers: function() {\r\n var _this = this;\r\n var $el = this.$element();\r\n var namespace = \"\".concat(this.NAME, \"VisibilityChange\");\r\n _short.resize.off($el, {\r\n namespace: namespace\r\n });\r\n _short.resize.on($el, function() {\r\n return _this._dimensionChanged()\r\n }, {\r\n namespace: namespace\r\n })\r\n },\r\n _attachVisibilityChangeHandlers: function() {\r\n var _this2 = this;\r\n if (this._isVisibilityChangeSupported()) {\r\n var $el = this.$element();\r\n var namespace = \"\".concat(this.NAME, \"VisibilityChange\");\r\n this._isHidden = !this._isVisible();\r\n _short.visibility.off($el, {\r\n namespace: namespace\r\n });\r\n _short.visibility.on($el, function() {\r\n return _this2._checkVisibilityChanged(\"shown\")\r\n }, function() {\r\n return _this2._checkVisibilityChanged(\"hiding\")\r\n }, {\r\n namespace: namespace\r\n })\r\n }\r\n },\r\n _isVisible: function() {\r\n var $element = this.$element();\r\n return $element.is(\":visible\")\r\n },\r\n _checkVisibilityChanged: function(action) {\r\n var isVisible = this._isVisible();\r\n if (isVisible) {\r\n if (\"hiding\" === action && !this._isHidden) {\r\n this._visibilityChanged(false);\r\n this._isHidden = true\r\n } else {\r\n if (\"shown\" === action && this._isHidden) {\r\n this._isHidden = false;\r\n this._visibilityChanged(true)\r\n }\r\n }\r\n }\r\n },\r\n _isVisibilityChangeSupported: function() {\r\n return this._visibilityChanged !== abstract && (0, _window.hasWindow)()\r\n },\r\n _clean: _common.noop,\r\n _modelByElement: function() {\r\n var _this$option = this.option(),\r\n modelByElement = _this$option.modelByElement;\r\n var $element = this.$element();\r\n return modelByElement ? modelByElement($element) : void 0\r\n },\r\n _invalidate: function() {\r\n if (this._isUpdateAllowed()) {\r\n throw _errors.default.Error(\"E0007\")\r\n }\r\n this._requireRefresh = true\r\n },\r\n _refresh: function() {\r\n this._clean();\r\n this._renderComponent()\r\n },\r\n _dispose: function() {\r\n this._templateManager && this._templateManager.dispose();\r\n this.callBase();\r\n this._clean();\r\n this._detachWindowResizeCallback()\r\n },\r\n _detachWindowResizeCallback: function() {\r\n if (this._isDimensionChangeSupported()) {\r\n _resize_callbacks.default.remove(this._windowResizeCallBack)\r\n }\r\n },\r\n _toggleRTLDirection: function(rtl) {\r\n var $element = this.$element();\r\n $element.toggleClass(\"dx-rtl\", rtl)\r\n },\r\n _createComponent: function(element, component) {\r\n var _this3 = this;\r\n var config = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\r\n var synchronizableOptions = (0, _common.grep)(this._getSynchronizableOptionsForCreateComponent(), function(value) {\r\n return !(value in config)\r\n });\r\n var _this$option2 = this.option(),\r\n integrationOptions = _this$option2.integrationOptions;\r\n var _this$option3 = this.option(),\r\n nestedComponentOptions = _this$option3.nestedComponentOptions;\r\n nestedComponentOptions = nestedComponentOptions || _common.noop;\r\n var nestedComponentConfig = (0, _extend.extend)({\r\n integrationOptions: integrationOptions\r\n }, nestedComponentOptions(this));\r\n synchronizableOptions.forEach(function(optionName) {\r\n return nestedComponentConfig[optionName] = _this3.option(optionName)\r\n });\r\n this._extendConfig(config, nestedComponentConfig);\r\n var instance = void 0;\r\n if ((0, _type.isString)(component)) {\r\n var $element = (0, _renderer.default)(element)[component](config);\r\n instance = $element[component](\"instance\")\r\n } else {\r\n if (element) {\r\n instance = component.getInstance(element);\r\n if (instance) {\r\n instance.option(config)\r\n } else {\r\n instance = new component(element, config)\r\n }\r\n }\r\n }\r\n if (instance) {\r\n var optionChangedHandler = function(_ref3) {\r\n var name = _ref3.name,\r\n value = _ref3.value;\r\n if ((0, _array.inArray)(name, synchronizableOptions) >= 0) {\r\n instance.option(name, value)\r\n }\r\n };\r\n this.on(\"optionChanged\", optionChangedHandler);\r\n instance.on(\"disposing\", function() {\r\n return _this3.off(\"optionChanged\", optionChangedHandler)\r\n })\r\n }\r\n return instance\r\n },\r\n _extendConfig: function(config, extendConfig) {\r\n (0, _iterator.each)(extendConfig, function(key, value) {\r\n !Object.prototype.hasOwnProperty.call(config, key) && (config[key] = value)\r\n })\r\n },\r\n _defaultActionConfig: function() {\r\n var $element = this.$element();\r\n var context = this._modelByElement($element);\r\n return (0, _extend.extend)(this.callBase(), {\r\n context: context\r\n })\r\n },\r\n _defaultActionArgs: function() {\r\n var $element = this.$element();\r\n var model = this._modelByElement($element);\r\n var element = this.element();\r\n return (0, _extend.extend)(this.callBase(), {\r\n element: element,\r\n model: model\r\n })\r\n },\r\n _optionChanged: function(args) {\r\n switch (args.name) {\r\n case \"width\":\r\n case \"height\":\r\n this._renderDimensions();\r\n break;\r\n case \"rtlEnabled\":\r\n this._invalidate();\r\n break;\r\n case \"elementAttr\":\r\n this._renderElementAttributes();\r\n break;\r\n case \"disabled\":\r\n case \"integrationOptions\":\r\n break;\r\n default:\r\n this.callBase(args)\r\n }\r\n },\r\n _removeAttributes: function(element) {\r\n var attrs = element.attributes;\r\n for (var i = attrs.length - 1; i >= 0; i--) {\r\n var attr = attrs[i];\r\n if (attr) {\r\n var name = attr.name;\r\n if (!name.indexOf(\"aria-\") || name.indexOf(\"dx-\") !== -1 || \"role\" === name || \"style\" === name || \"tabindex\" === name) {\r\n element.removeAttribute(name)\r\n }\r\n }\r\n }\r\n },\r\n _removeClasses: function(element) {\r\n element.className = element.className.split(\" \").filter(function(cssClass) {\r\n return 0 !== cssClass.lastIndexOf(\"dx-\", 0)\r\n }).join(\" \")\r\n },\r\n _updateDOMComponent: function(renderRequired) {\r\n if (renderRequired) {\r\n this._renderComponent()\r\n } else {\r\n if (this._requireRefresh) {\r\n this._requireRefresh = false;\r\n this._refresh()\r\n }\r\n }\r\n },\r\n endUpdate: function() {\r\n var renderRequired = this._isInitializingRequired();\r\n this.callBase();\r\n this._isUpdateAllowed() && this._updateDOMComponent(renderRequired)\r\n },\r\n $element: function() {\r\n return this._$element\r\n },\r\n element: function() {\r\n var $element = this.$element();\r\n return (0, _element.getPublicElement)($element)\r\n },\r\n dispose: function() {\r\n var element = this.$element().get(0);\r\n (0, _element_data.cleanDataRecursive)(element, true);\r\n element.textContent = \"\";\r\n this._removeAttributes(element);\r\n this._removeClasses(element)\r\n },\r\n resetOption: function(optionName) {\r\n this.callBase(optionName);\r\n if (\"width\" === optionName || \"height\" === optionName) {\r\n var initialOption = this.initialOption(optionName);\r\n !(0, _type.isDefined)(initialOption) && this.$element().css(optionName, \"\")\r\n }\r\n },\r\n _getAnonymousTemplateName: function() {\r\n return\r\n },\r\n _initTemplateManager: function() {\r\n if (this._templateManager || !this._useTemplates()) {\r\n return\r\n }\r\n var _this$option4 = this.option(),\r\n _this$option4$integra = _this$option4.integrationOptions,\r\n integrationOptions = void 0 === _this$option4$integra ? {} : _this$option4$integra;\r\n var createTemplate = integrationOptions.createTemplate;\r\n this._templateManager = new _template_manager.TemplateManager(createTemplate, this._getAnonymousTemplateName());\r\n this._initTemplates()\r\n },\r\n _initTemplates: function() {\r\n var _this4 = this;\r\n var _this$_templateManage = this._templateManager.extractTemplates(this.$element()),\r\n templates = _this$_templateManage.templates,\r\n anonymousTemplateMeta = _this$_templateManage.anonymousTemplateMeta;\r\n var anonymousTemplate = this.option(\"integrationOptions.templates.\".concat(anonymousTemplateMeta.name));\r\n templates.forEach(function(_ref4) {\r\n var name = _ref4.name,\r\n template = _ref4.template;\r\n _this4._options.silent(\"integrationOptions.templates.\".concat(name), template)\r\n });\r\n if (anonymousTemplateMeta.name && !anonymousTemplate) {\r\n this._options.silent(\"integrationOptions.templates.\".concat(anonymousTemplateMeta.name), anonymousTemplateMeta.template);\r\n this._options.silent(\"_hasAnonymousTemplateContent\", true)\r\n }\r\n },\r\n _getTemplateByOption: function(optionName) {\r\n return this._getTemplate(this.option(optionName))\r\n },\r\n _getTemplate: function(templateSource) {\r\n var templates = this.option(\"integrationOptions.templates\");\r\n var isAsyncTemplate = this.option(\"templatesRenderAsynchronously\");\r\n var skipTemplates = this.option(\"integrationOptions.skipTemplates\");\r\n return this._templateManager.getTemplate(templateSource, templates, {\r\n isAsyncTemplate: isAsyncTemplate,\r\n skipTemplates: skipTemplates\r\n }, this)\r\n },\r\n _saveTemplate: function(name, template) {\r\n this._setOptionWithoutOptionChange(\"integrationOptions.templates.\" + name, this._templateManager._createTemplate(template))\r\n },\r\n _useTemplates: function() {\r\n return true\r\n }\r\n});\r\nDOMComponent.getInstance = function(element) {\r\n return (0, _public_component.getInstanceByElement)((0, _renderer.default)(element), this)\r\n};\r\nDOMComponent.defaultOptions = function(rule) {\r\n this._classCustomRules = this._classCustomRules || [];\r\n this._classCustomRules.push(rule)\r\n};\r\nvar _default = DOMComponent;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\nmodule.exports.default = module.exports;\r\n","/**\r\n * DevExtreme (events/pointer.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\nexports.default = void 0;\r\nvar support = _interopRequireWildcard(require(\"../core/utils/support\"));\r\nvar _iterator = require(\"../core/utils/iterator\");\r\nvar _browser = _interopRequireDefault(require(\"../core/utils/browser\"));\r\nvar _devices = _interopRequireDefault(require(\"../core/devices\"));\r\nvar _event_registrator = _interopRequireDefault(require(\"./core/event_registrator\"));\r\nvar _touch = _interopRequireDefault(require(\"./pointer/touch\"));\r\nvar _mspointer = _interopRequireDefault(require(\"./pointer/mspointer\"));\r\nvar _mouse = _interopRequireDefault(require(\"./pointer/mouse\"));\r\nvar _mouse_and_touch = _interopRequireDefault(require(\"./pointer/mouse_and_touch\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _getRequireWildcardCache() {\r\n if (\"function\" !== typeof WeakMap) {\r\n return null\r\n }\r\n var cache = new WeakMap;\r\n _getRequireWildcardCache = function() {\r\n return cache\r\n };\r\n return cache\r\n}\r\n\r\nfunction _interopRequireWildcard(obj) {\r\n if (obj && obj.__esModule) {\r\n return obj\r\n }\r\n if (null === obj || \"object\" !== _typeof(obj) && \"function\" !== typeof obj) {\r\n return {\r\n \"default\": obj\r\n }\r\n }\r\n var cache = _getRequireWildcardCache();\r\n if (cache && cache.has(obj)) {\r\n return cache.get(obj)\r\n }\r\n var newObj = {};\r\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\r\n for (var key in obj) {\r\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\r\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\r\n if (desc && (desc.get || desc.set)) {\r\n Object.defineProperty(newObj, key, desc)\r\n } else {\r\n newObj[key] = obj[key]\r\n }\r\n }\r\n }\r\n newObj.default = obj;\r\n if (cache) {\r\n cache.set(obj, newObj)\r\n }\r\n return newObj\r\n}\r\nvar getStrategy = function(support, device, browser) {\r\n if (support.pointerEvents && browser.msie) {\r\n return _mspointer.default\r\n }\r\n var tablet = device.tablet,\r\n phone = device.phone;\r\n if (support.touch && !(tablet || phone)) {\r\n return _mouse_and_touch.default\r\n }\r\n if (support.touch) {\r\n return _touch.default\r\n }\r\n return _mouse.default\r\n};\r\nvar EventStrategy = getStrategy(support, _devices.default.real(), _browser.default);\r\n(0, _iterator.each)(EventStrategy.map, function(pointerEvent, originalEvents) {\r\n (0, _event_registrator.default)(pointerEvent, new EventStrategy(pointerEvent, originalEvents))\r\n});\r\nvar pointer = {\r\n down: \"dxpointerdown\",\r\n up: \"dxpointerup\",\r\n move: \"dxpointermove\",\r\n cancel: \"dxpointercancel\",\r\n enter: \"dxpointerenter\",\r\n leave: \"dxpointerleave\",\r\n over: \"dxpointerover\",\r\n out: \"dxpointerout\"\r\n};\r\nvar _default = pointer;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (events/short.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.keyboard = exports.click = exports.dxClick = exports.focus = exports.visibility = exports.hover = exports.resize = exports.active = void 0;\r\nvar _dom_adapter = _interopRequireDefault(require(\"../core/dom_adapter\"));\r\nvar _events_engine = _interopRequireDefault(require(\"./core/events_engine\"));\r\nvar _keyboard_processor = _interopRequireDefault(require(\"./core/keyboard_processor\"));\r\nvar _index = require(\"./utils/index\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction addNamespace(event, namespace) {\r\n return namespace ? (0, _index.addNamespace)(event, namespace) : event\r\n}\r\n\r\nfunction executeAction(action, args) {\r\n return \"function\" === typeof action ? action(args) : action.execute(args)\r\n}\r\nvar active = {\r\n on: function($el, active, inactive, opts) {\r\n var selector = opts.selector,\r\n showTimeout = opts.showTimeout,\r\n hideTimeout = opts.hideTimeout,\r\n namespace = opts.namespace;\r\n _events_engine.default.on($el, addNamespace(\"dxactive\", namespace), selector, {\r\n timeout: showTimeout\r\n }, function(event) {\r\n return executeAction(active, {\r\n event: event,\r\n element: event.currentTarget\r\n })\r\n });\r\n _events_engine.default.on($el, addNamespace(\"dxinactive\", namespace), selector, {\r\n timeout: hideTimeout\r\n }, function(event) {\r\n return executeAction(inactive, {\r\n event: event,\r\n element: event.currentTarget\r\n })\r\n })\r\n },\r\n off: function($el, _ref) {\r\n var namespace = _ref.namespace,\r\n selector = _ref.selector;\r\n _events_engine.default.off($el, addNamespace(\"dxactive\", namespace), selector);\r\n _events_engine.default.off($el, addNamespace(\"dxinactive\", namespace), selector)\r\n }\r\n};\r\nexports.active = active;\r\nvar resize = {\r\n on: function($el, resize) {\r\n var _ref2 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},\r\n namespace = _ref2.namespace;\r\n _events_engine.default.on($el, addNamespace(\"dxresize\", namespace), resize)\r\n },\r\n off: function($el) {\r\n var _ref3 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\r\n namespace = _ref3.namespace;\r\n _events_engine.default.off($el, addNamespace(\"dxresize\", namespace))\r\n }\r\n};\r\nexports.resize = resize;\r\nvar hover = {\r\n on: function($el, start, end, _ref4) {\r\n var selector = _ref4.selector,\r\n namespace = _ref4.namespace;\r\n _events_engine.default.on($el, addNamespace(\"dxhoverend\", namespace), selector, function(event) {\r\n return end(event)\r\n });\r\n _events_engine.default.on($el, addNamespace(\"dxhoverstart\", namespace), selector, function(event) {\r\n return executeAction(start, {\r\n element: event.target,\r\n event: event\r\n })\r\n })\r\n },\r\n off: function($el, _ref5) {\r\n var selector = _ref5.selector,\r\n namespace = _ref5.namespace;\r\n _events_engine.default.off($el, addNamespace(\"dxhoverstart\", namespace), selector);\r\n _events_engine.default.off($el, addNamespace(\"dxhoverend\", namespace), selector)\r\n }\r\n};\r\nexports.hover = hover;\r\nvar visibility = {\r\n on: function($el, shown, hiding, _ref6) {\r\n var namespace = _ref6.namespace;\r\n _events_engine.default.on($el, addNamespace(\"dxhiding\", namespace), hiding);\r\n _events_engine.default.on($el, addNamespace(\"dxshown\", namespace), shown)\r\n },\r\n off: function($el, _ref7) {\r\n var namespace = _ref7.namespace;\r\n _events_engine.default.off($el, addNamespace(\"dxhiding\", namespace));\r\n _events_engine.default.off($el, addNamespace(\"dxshown\", namespace))\r\n }\r\n};\r\nexports.visibility = visibility;\r\nvar focus = {\r\n on: function($el, focusIn, focusOut, _ref8) {\r\n var namespace = _ref8.namespace,\r\n isFocusable = _ref8.isFocusable;\r\n _events_engine.default.on($el, addNamespace(\"focusin\", namespace), focusIn);\r\n _events_engine.default.on($el, addNamespace(\"focusout\", namespace), focusOut);\r\n if (_dom_adapter.default.hasDocumentProperty(\"onbeforeactivate\")) {\r\n _events_engine.default.on($el, addNamespace(\"beforeactivate\", namespace), function(e) {\r\n return isFocusable(null, e.target) || e.preventDefault()\r\n })\r\n }\r\n },\r\n off: function($el, _ref9) {\r\n var namespace = _ref9.namespace;\r\n _events_engine.default.off($el, addNamespace(\"focusin\", namespace));\r\n _events_engine.default.off($el, addNamespace(\"focusout\", namespace));\r\n if (_dom_adapter.default.hasDocumentProperty(\"onbeforeactivate\")) {\r\n _events_engine.default.off($el, addNamespace(\"beforeactivate\", namespace))\r\n }\r\n },\r\n trigger: function($el) {\r\n return _events_engine.default.trigger($el, \"focus\")\r\n }\r\n};\r\nexports.focus = focus;\r\nvar dxClick = {\r\n on: function($el, click) {\r\n var _ref10 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},\r\n namespace = _ref10.namespace;\r\n _events_engine.default.on($el, addNamespace(\"dxclick\", namespace), click)\r\n },\r\n off: function($el) {\r\n var _ref11 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\r\n namespace = _ref11.namespace;\r\n _events_engine.default.off($el, addNamespace(\"dxclick\", namespace))\r\n }\r\n};\r\nexports.dxClick = dxClick;\r\nvar click = {\r\n on: function($el, click) {\r\n var _ref12 = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {},\r\n namespace = _ref12.namespace;\r\n _events_engine.default.on($el, addNamespace(\"click\", namespace), click)\r\n },\r\n off: function($el) {\r\n var _ref13 = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : {},\r\n namespace = _ref13.namespace;\r\n _events_engine.default.off($el, addNamespace(\"click\", namespace))\r\n }\r\n};\r\nexports.click = click;\r\nvar index = 0;\r\nvar keyboardProcessors = {};\r\nvar generateListenerId = function() {\r\n return \"keyboardProcessorId\".concat(index++)\r\n};\r\nvar keyboard = {\r\n on: function(element, focusTarget, handler) {\r\n var listenerId = generateListenerId();\r\n keyboardProcessors[listenerId] = new _keyboard_processor.default({\r\n element: element,\r\n focusTarget: focusTarget,\r\n handler: handler\r\n });\r\n return listenerId\r\n },\r\n off: function(listenerId) {\r\n if (listenerId && keyboardProcessors[listenerId]) {\r\n keyboardProcessors[listenerId].dispose();\r\n delete keyboardProcessors[listenerId]\r\n }\r\n },\r\n _getProcessor: function(listenerId) {\r\n return keyboardProcessors[listenerId]\r\n }\r\n};\r\nexports.keyboard = keyboard;\r\n","/**\r\n * DevExtreme (core/action.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"./renderer\"));\r\nvar _window = require(\"./utils/window\");\r\nvar _type = require(\"./utils/type\");\r\nvar _iterator = require(\"./utils/iterator\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\nvar Action = function() {\r\n function Action(action, config) {\r\n _classCallCheck(this, Action);\r\n config = config || {};\r\n this._action = action;\r\n this._context = config.context || (0, _window.getWindow)();\r\n this._beforeExecute = config.beforeExecute;\r\n this._afterExecute = config.afterExecute;\r\n this._component = config.component;\r\n this._validatingTargetName = config.validatingTargetName;\r\n var excludeValidators = this._excludeValidators = {};\r\n if (config.excludeValidators) {\r\n for (var i = 0; i < config.excludeValidators.length; i++) {\r\n excludeValidators[config.excludeValidators[i]] = true\r\n }\r\n }\r\n }\r\n _createClass(Action, [{\r\n key: \"execute\",\r\n value: function() {\r\n var e = {\r\n action: this._action,\r\n args: Array.prototype.slice.call(arguments),\r\n context: this._context,\r\n component: this._component,\r\n validatingTargetName: this._validatingTargetName,\r\n cancel: false,\r\n handled: false\r\n };\r\n var beforeExecute = this._beforeExecute;\r\n var afterExecute = this._afterExecute;\r\n var argsBag = e.args[0] || {};\r\n if (!this._validateAction(e)) {\r\n return\r\n }\r\n null === beforeExecute || void 0 === beforeExecute ? void 0 : beforeExecute.call(this._context, e);\r\n if (e.cancel) {\r\n return\r\n }\r\n var result = this._executeAction(e);\r\n if (argsBag.cancel) {\r\n return\r\n }\r\n null === afterExecute || void 0 === afterExecute ? void 0 : afterExecute.call(this._context, e);\r\n return result\r\n }\r\n }, {\r\n key: \"_validateAction\",\r\n value: function(e) {\r\n var excludeValidators = this._excludeValidators;\r\n var executors = Action.executors;\r\n for (var name in executors) {\r\n if (!excludeValidators[name]) {\r\n var _executor$validate;\r\n var executor = executors[name];\r\n null === (_executor$validate = executor.validate) || void 0 === _executor$validate ? void 0 : _executor$validate.call(executor, e);\r\n if (e.cancel) {\r\n return false\r\n }\r\n }\r\n }\r\n return true\r\n }\r\n }, {\r\n key: \"_executeAction\",\r\n value: function(e) {\r\n var result;\r\n var executors = Action.executors;\r\n for (var name in executors) {\r\n var _executor$execute;\r\n var executor = executors[name];\r\n null === (_executor$execute = executor.execute) || void 0 === _executor$execute ? void 0 : _executor$execute.call(executor, e);\r\n if (e.handled) {\r\n result = e.result;\r\n break\r\n }\r\n }\r\n return result\r\n }\r\n }], [{\r\n key: \"registerExecutor\",\r\n value: function(name, executor) {\r\n if ((0, _type.isPlainObject)(name)) {\r\n (0, _iterator.each)(name, Action.registerExecutor);\r\n return\r\n }\r\n Action.executors[name] = executor\r\n }\r\n }, {\r\n key: \"unregisterExecutor\",\r\n value: function() {\r\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\r\n args[_key] = arguments[_key]\r\n }(0, _iterator.each)(args, function() {\r\n delete Action.executors[this]\r\n })\r\n }\r\n }]);\r\n return Action\r\n}();\r\nexports.default = Action;\r\nAction.executors = {};\r\nvar createValidatorByTargetElement = function(condition) {\r\n return function(e) {\r\n if (!e.args.length) {\r\n return\r\n }\r\n var args = e.args[0];\r\n var element = args[e.validatingTargetName] || args.element;\r\n if (element && condition((0, _renderer.default)(element))) {\r\n e.cancel = true\r\n }\r\n }\r\n};\r\nAction.registerExecutor({\r\n disabled: {\r\n validate: createValidatorByTargetElement(function($target) {\r\n return $target.is(\".dx-state-disabled, .dx-state-disabled *\")\r\n })\r\n },\r\n readOnly: {\r\n validate: createValidatorByTargetElement(function($target) {\r\n return $target.is(\".dx-state-readonly, .dx-state-readonly *:not(.dx-state-independent)\")\r\n })\r\n },\r\n undefined: {\r\n execute: function(e) {\r\n if (!e.action) {\r\n e.result = void 0;\r\n e.handled = true\r\n }\r\n }\r\n },\r\n func: {\r\n execute: function(e) {\r\n if ((0, _type.isFunction)(e.action)) {\r\n e.result = e.action.call(e.context, e.args[0]);\r\n e.handled = true\r\n }\r\n }\r\n }\r\n});\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (events/pointer/mouse_and_touch.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _extend = require(\"../../core/utils/extend\");\r\nvar _base = _interopRequireDefault(require(\"./base\"));\r\nvar _mouse = _interopRequireDefault(require(\"./mouse\"));\r\nvar _touch = _interopRequireDefault(require(\"./touch\"));\r\nvar _index = require(\"../utils/index\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar eventMap = {\r\n dxpointerdown: \"touchstart mousedown\",\r\n dxpointermove: \"touchmove mousemove\",\r\n dxpointerup: \"touchend mouseup\",\r\n dxpointercancel: \"touchcancel\",\r\n dxpointerover: \"mouseover\",\r\n dxpointerout: \"mouseout\",\r\n dxpointerenter: \"mouseenter\",\r\n dxpointerleave: \"mouseleave\"\r\n};\r\nvar activated = false;\r\nvar activateStrategy = function() {\r\n if (activated) {\r\n return\r\n }\r\n _mouse.default.activate();\r\n activated = true\r\n};\r\nvar MouseAndTouchStrategy = _base.default.inherit({\r\n EVENT_LOCK_TIMEOUT: 100,\r\n ctor: function() {\r\n this.callBase.apply(this, arguments);\r\n activateStrategy()\r\n },\r\n _handler: function(e) {\r\n var isMouse = (0, _index.isMouseEvent)(e);\r\n if (!isMouse) {\r\n this._skipNextEvents = true\r\n }\r\n if (isMouse && this._mouseLocked) {\r\n return\r\n }\r\n if (isMouse && this._skipNextEvents) {\r\n this._skipNextEvents = false;\r\n this._mouseLocked = true;\r\n clearTimeout(this._unlockMouseTimer);\r\n var that = this;\r\n this._unlockMouseTimer = setTimeout(function() {\r\n that._mouseLocked = false\r\n }, this.EVENT_LOCK_TIMEOUT);\r\n return\r\n }\r\n return this.callBase(e)\r\n },\r\n _fireEvent: function(args) {\r\n var normalizer = (0, _index.isMouseEvent)(args.originalEvent) ? _mouse.default.normalize : _touch.default.normalize;\r\n return this.callBase((0, _extend.extend)(normalizer(args.originalEvent), args))\r\n },\r\n dispose: function() {\r\n this.callBase();\r\n this._skipNextEvents = false;\r\n this._mouseLocked = false;\r\n clearTimeout(this._unlockMouseTimer)\r\n }\r\n});\r\nMouseAndTouchStrategy.map = eventMap;\r\nMouseAndTouchStrategy.resetObserver = _mouse.default.resetObserver;\r\nvar _default = MouseAndTouchStrategy;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.createExtensionComponent = exports.createConfigurationComponent = exports.createComponent = void 0;\nvar vue_1 = require(\"vue\");\nvar component_1 = require(\"../../component\");\nvar configuration_component_1 = require(\"../../configuration-component\");\nvar extension_component_1 = require(\"../../extension-component\");\nfunction createComponent(config) {\n config.extends = component_1.initDxComponent();\n return vue_1.defineComponent(config);\n}\nexports.createComponent = createComponent;\nfunction createConfigurationComponent(config) {\n config.extends = configuration_component_1.initDxConfiguration();\n return vue_1.defineComponent(config);\n}\nexports.createConfigurationComponent = createConfigurationComponent;\nfunction createExtensionComponent(config) {\n config.extends = extension_component_1.initDxExtensionComponent();\n return vue_1.defineComponent(config);\n}\nexports.createExtensionComponent = createExtensionComponent;\n","export const errorHandler = (formInstance, errors) => {\n formInstance.formInstance = false\n formInstance.hasUnknownError = false\n formInstance.hasError = false\n\n errors.forEach(error => {\n /*\n Fehlerbehandlung für Errors, die keine errorExtension auf dem\n Server zurückgeben -> Unbekannte Fehler\n */\n if (!error.extensions || !error.extensions.errorType) {\n formInstance.hasUnknownError = true\n formInstance.unknownErrorMessage = formInstance.$t('formError.unknownwError')\n return\n }\n\n const { fieldName, i18n, errorType } = error.extensions\n\n /*\n Fehlerbehandlung für Errors die spezifisch sind aber nicht auf ein Feld gemappt werden\n Erscheinen als alert über dem Form\n */\n if (errorType === 'InvalidCredentials' || errorType === 'TokenError' || errorType === 'ReferencedDependencyError') {\n formInstance.hasError = true\n formInstance.errorMessage = formInstance.$t(`formError.${i18n}`)\n return\n }\n\n /*\n Fehlerbehandlung für Errors, die auf ein spezifisches Formfeld gemappt werden\n */\n if (errorType === 'UserInputError') {\n formInstance.$refs.observer.setErrors({\n [fieldName]: [formInstance.$t(`formError.${i18n}`)]\n })\n return\n }\n\n formInstance.hasUnknownError = true\n formInstance.unknownErrorMessage = formInstance.$t('formError.unknownwError')\n })\n}\n\nexport const validateField = (valid, errors, changed) => {\n if (!changed && !errors[0]) {\n return null\n }\n\n return errors[0] ? false : null\n}\n","/**\r\n * DevExtreme (events/core/keyboard_processor.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _events_engine = _interopRequireDefault(require(\"../../events/core/events_engine\"));\r\nvar _class = _interopRequireDefault(require(\"../../core/class\"));\r\nvar _array = require(\"../../core/utils/array\");\r\nvar _index = require(\"../../events/utils/index\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar COMPOSITION_START_EVENT = \"compositionstart\";\r\nvar COMPOSITION_END_EVENT = \"compositionend\";\r\nvar KEYDOWN_EVENT = \"keydown\";\r\nvar NAMESPACE = \"KeyboardProcessor\";\r\nvar KeyboardProcessor = _class.default.inherit({\r\n _keydown: (0, _index.addNamespace)(KEYDOWN_EVENT, NAMESPACE),\r\n _compositionStart: (0, _index.addNamespace)(COMPOSITION_START_EVENT, NAMESPACE),\r\n _compositionEnd: (0, _index.addNamespace)(COMPOSITION_END_EVENT, NAMESPACE),\r\n ctor: function(options) {\r\n var _this = this;\r\n options = options || {};\r\n if (options.element) {\r\n this._element = (0, _renderer.default)(options.element)\r\n }\r\n if (options.focusTarget) {\r\n this._focusTarget = options.focusTarget\r\n }\r\n this._handler = options.handler;\r\n if (this._element) {\r\n this._processFunction = function(e) {\r\n var isNotFocusTarget = _this._focusTarget && _this._focusTarget !== e.target && (0, _array.inArray)(e.target, _this._focusTarget) < 0;\r\n var shouldSkipProcessing = _this._isComposingJustFinished && 229 === e.which || _this._isComposing || isNotFocusTarget;\r\n _this._isComposingJustFinished = false;\r\n if (!shouldSkipProcessing) {\r\n _this.process(e)\r\n }\r\n };\r\n this._toggleProcessingWithContext = this.toggleProcessing.bind(this);\r\n _events_engine.default.on(this._element, this._keydown, this._processFunction);\r\n _events_engine.default.on(this._element, this._compositionStart, this._toggleProcessingWithContext);\r\n _events_engine.default.on(this._element, this._compositionEnd, this._toggleProcessingWithContext)\r\n }\r\n },\r\n dispose: function() {\r\n if (this._element) {\r\n _events_engine.default.off(this._element, this._keydown, this._processFunction);\r\n _events_engine.default.off(this._element, this._compositionStart, this._toggleProcessingWithContext);\r\n _events_engine.default.off(this._element, this._compositionEnd, this._toggleProcessingWithContext)\r\n }\r\n this._element = void 0;\r\n this._handler = void 0\r\n },\r\n process: function(e) {\r\n this._handler({\r\n keyName: (0, _index.normalizeKeyName)(e),\r\n key: e.key,\r\n code: e.code,\r\n ctrl: e.ctrlKey,\r\n location: e.location,\r\n metaKey: e.metaKey,\r\n shift: e.shiftKey,\r\n alt: e.altKey,\r\n which: e.which,\r\n originalEvent: e\r\n })\r\n },\r\n toggleProcessing: function(_ref) {\r\n var type = _ref.type;\r\n this._isComposing = type === COMPOSITION_START_EVENT;\r\n this._isComposingJustFinished = !this._isComposing\r\n }\r\n});\r\nvar _default = KeyboardProcessor;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (events/click.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.name = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _events_engine = _interopRequireDefault(require(\"../events/core/events_engine\"));\r\nvar _devices = _interopRequireDefault(require(\"../core/devices\"));\r\nvar _dom_adapter = _interopRequireDefault(require(\"../core/dom_adapter\"));\r\nvar _dom = require(\"../core/utils/dom\");\r\nvar _frame = require(\"../animation/frame\");\r\nvar _index = require(\"./utils/index\");\r\nvar _pointer = _interopRequireDefault(require(\"./pointer\"));\r\nvar _emitter = _interopRequireDefault(require(\"./core/emitter\"));\r\nvar _emitter_registrator = _interopRequireDefault(require(\"./core/emitter_registrator\"));\r\nvar _version = require(\"../core/utils/version\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar CLICK_EVENT_NAME = \"dxclick\";\r\nexports.name = CLICK_EVENT_NAME;\r\nvar TOUCH_BOUNDARY = 10;\r\nvar abs = Math.abs;\r\nvar isInput = function(element) {\r\n return (0, _renderer.default)(element).is(\"input, textarea, select, button ,:focus, :focus *\")\r\n};\r\nvar misc = {\r\n requestAnimationFrame: _frame.requestAnimationFrame,\r\n cancelAnimationFrame: _frame.cancelAnimationFrame\r\n};\r\nvar ClickEmitter = _emitter.default.inherit({\r\n ctor: function(element) {\r\n this.callBase(element);\r\n this._makeElementClickable((0, _renderer.default)(element))\r\n },\r\n _makeElementClickable: function($element) {\r\n if (!$element.attr(\"onclick\")) {\r\n $element.attr(\"onclick\", \"void(0)\")\r\n }\r\n },\r\n start: function(e) {\r\n this._blurPrevented = e.isDefaultPrevented();\r\n this._startTarget = e.target;\r\n this._startEventData = (0, _index.eventData)(e)\r\n },\r\n end: function(e) {\r\n if (this._eventOutOfElement(e, this.getElement().get(0)) || e.type === _pointer.default.cancel) {\r\n this._cancel(e);\r\n return\r\n }\r\n if (!isInput(e.target) && !this._blurPrevented) {\r\n (0, _dom.resetActiveElement)()\r\n }\r\n this._accept(e);\r\n this._clickAnimationFrame = misc.requestAnimationFrame(function() {\r\n this._fireClickEvent(e)\r\n }.bind(this))\r\n },\r\n _eventOutOfElement: function(e, element) {\r\n var target = e.target;\r\n var targetChanged = !(0, _dom.contains)(element, target) && element !== target;\r\n var gestureDelta = (0, _index.eventDelta)((0, _index.eventData)(e), this._startEventData);\r\n var boundsExceeded = abs(gestureDelta.x) > TOUCH_BOUNDARY || abs(gestureDelta.y) > TOUCH_BOUNDARY;\r\n return targetChanged || boundsExceeded\r\n },\r\n _fireClickEvent: function(e) {\r\n this._fireEvent(CLICK_EVENT_NAME, e, {\r\n target: (0, _dom.closestCommonParent)(this._startTarget, e.target)\r\n })\r\n },\r\n dispose: function() {\r\n misc.cancelAnimationFrame(this._clickAnimationFrame)\r\n }\r\n});\r\nvar realDevice = _devices.default.real();\r\nvar useNativeClick = realDevice.generic || realDevice.ios && (0, _version.compare)(realDevice.version, [9, 3]) >= 0 || realDevice.android && (0, _version.compare)(realDevice.version, [5]) >= 0;\r\n! function() {\r\n var NATIVE_CLICK_CLASS = \"dx-native-click\";\r\n var isNativeClickEvent = function(target) {\r\n return useNativeClick || (0, _renderer.default)(target).closest(\".\" + NATIVE_CLICK_CLASS).length\r\n };\r\n var prevented = null;\r\n var lastFiredEvent = null;\r\n var clickHandler = function(e) {\r\n var originalEvent = e.originalEvent;\r\n var eventAlreadyFired = lastFiredEvent === originalEvent || originalEvent && originalEvent.DXCLICK_FIRED;\r\n var leftButton = !e.which || 1 === e.which;\r\n if (leftButton && !prevented && isNativeClickEvent(e.target) && !eventAlreadyFired) {\r\n if (originalEvent) {\r\n originalEvent.DXCLICK_FIRED = true\r\n }\r\n lastFiredEvent = originalEvent;\r\n (0, _index.fireEvent)({\r\n type: CLICK_EVENT_NAME,\r\n originalEvent: e\r\n })\r\n }\r\n };\r\n ClickEmitter = ClickEmitter.inherit({\r\n _makeElementClickable: function($element) {\r\n if (!isNativeClickEvent($element)) {\r\n this.callBase($element)\r\n }\r\n _events_engine.default.on($element, \"click\", clickHandler)\r\n },\r\n configure: function(data) {\r\n this.callBase(data);\r\n if (data.useNative) {\r\n this.getElement().addClass(NATIVE_CLICK_CLASS)\r\n }\r\n },\r\n start: function(e) {\r\n prevented = null;\r\n if (!isNativeClickEvent(e.target)) {\r\n this.callBase(e)\r\n }\r\n },\r\n end: function(e) {\r\n if (!isNativeClickEvent(e.target)) {\r\n this.callBase(e)\r\n }\r\n },\r\n cancel: function() {\r\n prevented = true\r\n },\r\n dispose: function() {\r\n this.callBase();\r\n _events_engine.default.off(this.getElement(), \"click\", clickHandler)\r\n }\r\n })\r\n}();\r\n! function() {\r\n var desktopDevice = _devices.default.real().generic;\r\n if (!desktopDevice) {\r\n var startTarget = null;\r\n var blurPrevented = false;\r\n var pointerDownHandler = function(e) {\r\n startTarget = e.target;\r\n blurPrevented = e.isDefaultPrevented()\r\n };\r\n var clickHandler = function(e) {\r\n var $target = (0, _renderer.default)(e.target);\r\n if (!blurPrevented && startTarget && !$target.is(startTarget) && !(0, _renderer.default)(startTarget).is(\"label\") && isInput($target)) {\r\n (0, _dom.resetActiveElement)()\r\n }\r\n startTarget = null;\r\n blurPrevented = false\r\n };\r\n var NATIVE_CLICK_FIXER_NAMESPACE = \"NATIVE_CLICK_FIXER\";\r\n var document = _dom_adapter.default.getDocument();\r\n _events_engine.default.subscribeGlobal(document, (0, _index.addNamespace)(_pointer.default.down, NATIVE_CLICK_FIXER_NAMESPACE), pointerDownHandler);\r\n _events_engine.default.subscribeGlobal(document, (0, _index.addNamespace)(\"click\", NATIVE_CLICK_FIXER_NAMESPACE), clickHandler)\r\n }\r\n}();\r\n(0, _emitter_registrator.default)({\r\n emitter: ClickEmitter,\r\n bubble: true,\r\n events: [CLICK_EVENT_NAME]\r\n});\r\n","/**\r\n * DevExtreme (core/utils/version.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.compare = compare;\r\n\r\nfunction compare(x, y, maxLevel) {\r\n function normalizeArg(value) {\r\n if (\"string\" === typeof value) {\r\n return value.split(\".\")\r\n }\r\n if (\"number\" === typeof value) {\r\n return [value]\r\n }\r\n return value\r\n }\r\n x = normalizeArg(x);\r\n y = normalizeArg(y);\r\n var length = Math.max(x.length, y.length);\r\n if (isFinite(maxLevel)) {\r\n length = Math.min(length, maxLevel)\r\n }\r\n for (var i = 0; i < length; i++) {\r\n var xItem = parseInt(x[i] || 0, 10);\r\n var yItem = parseInt(y[i] || 0, 10);\r\n if (xItem < yItem) {\r\n return -1\r\n }\r\n if (xItem > yItem) {\r\n return 1\r\n }\r\n }\r\n return 0\r\n}\r\n","/**\r\n * DevExtreme (core/utils/position.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.getDefaultAlignment = exports.getBoundingRect = void 0;\r\nvar _config = _interopRequireDefault(require(\"../config\"));\r\nvar _type = require(\"../utils/type\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar getDefaultAlignment = function(isRtlEnabled) {\r\n var rtlEnabled = null !== isRtlEnabled && void 0 !== isRtlEnabled ? isRtlEnabled : (0, _config.default)().rtlEnabled;\r\n return rtlEnabled ? \"right\" : \"left\"\r\n};\r\nexports.getDefaultAlignment = getDefaultAlignment;\r\nvar getBoundingRect = function(element) {\r\n if ((0, _type.isWindow)(element)) {\r\n return {\r\n width: element.outerWidth,\r\n height: element.outerHeight\r\n }\r\n }\r\n var rect;\r\n try {\r\n rect = element.getBoundingClientRect()\r\n } catch (e) {\r\n rect = {\r\n width: 0,\r\n height: 0,\r\n bottom: 0,\r\n top: 0,\r\n left: 0,\r\n right: 0\r\n }\r\n }\r\n return rect\r\n};\r\nexports.getBoundingRect = getBoundingRect;\r\n","/**\r\n * DevExtreme (animation/translator.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.parseTranslate = exports.resetPosition = exports.move = exports.getTranslate = exports.getTranslateCss = exports.clearCache = exports.locate = void 0;\r\nvar _element_data = require(\"../core/element_data\");\r\nvar _type = require(\"../core/utils/type\");\r\nvar TRANSLATOR_DATA_KEY = \"dxTranslator\";\r\nvar TRANSFORM_MATRIX_REGEX = /matrix(3d)?\\((.+?)\\)/;\r\nvar TRANSLATE_REGEX = /translate(?:3d)?\\((.+?)\\)/;\r\nvar locate = function($element) {\r\n var translate = getTranslate($element);\r\n return {\r\n left: translate.x,\r\n top: translate.y\r\n }\r\n};\r\nexports.locate = locate;\r\n\r\nfunction isPercentValue(value) {\r\n return \"string\" === (0, _type.type)(value) && \"%\" === value[value.length - 1]\r\n}\r\n\r\nfunction cacheTranslate($element, translate) {\r\n if ($element.length) {\r\n (0, _element_data.data)($element.get(0), TRANSLATOR_DATA_KEY, translate)\r\n }\r\n}\r\nvar clearCache = function($element) {\r\n if ($element.length) {\r\n (0, _element_data.removeData)($element.get(0), TRANSLATOR_DATA_KEY)\r\n }\r\n};\r\nexports.clearCache = clearCache;\r\nvar getTranslateCss = function(translate) {\r\n translate.x = translate.x || 0;\r\n translate.y = translate.y || 0;\r\n var xValueString = isPercentValue(translate.x) ? translate.x : translate.x + \"px\";\r\n var yValueString = isPercentValue(translate.y) ? translate.y : translate.y + \"px\";\r\n return \"translate(\" + xValueString + \", \" + yValueString + \")\"\r\n};\r\nexports.getTranslateCss = getTranslateCss;\r\nvar getTranslate = function($element) {\r\n var result = $element.length ? (0, _element_data.data)($element.get(0), TRANSLATOR_DATA_KEY) : null;\r\n if (!result) {\r\n var transformValue = $element.css(\"transform\") || getTranslateCss({\r\n x: 0,\r\n y: 0\r\n });\r\n var matrix = transformValue.match(TRANSFORM_MATRIX_REGEX);\r\n var is3D = matrix && matrix[1];\r\n if (matrix) {\r\n matrix = matrix[2].split(\",\");\r\n if (\"3d\" === is3D) {\r\n matrix = matrix.slice(12, 15)\r\n } else {\r\n matrix.push(0);\r\n matrix = matrix.slice(4, 7)\r\n }\r\n } else {\r\n matrix = [0, 0, 0]\r\n }\r\n result = {\r\n x: parseFloat(matrix[0]),\r\n y: parseFloat(matrix[1]),\r\n z: parseFloat(matrix[2])\r\n };\r\n cacheTranslate($element, result)\r\n }\r\n return result\r\n};\r\nexports.getTranslate = getTranslate;\r\nvar move = function($element, position) {\r\n var left = position.left;\r\n var top = position.top;\r\n var translate;\r\n if (void 0 === left) {\r\n translate = getTranslate($element);\r\n translate.y = top || 0\r\n } else {\r\n if (void 0 === top) {\r\n translate = getTranslate($element);\r\n translate.x = left || 0\r\n } else {\r\n translate = {\r\n x: left || 0,\r\n y: top || 0,\r\n z: 0\r\n };\r\n cacheTranslate($element, translate)\r\n }\r\n }\r\n $element.css({\r\n transform: getTranslateCss(translate)\r\n });\r\n if (isPercentValue(left) || isPercentValue(top)) {\r\n clearCache($element)\r\n }\r\n};\r\nexports.move = move;\r\nvar resetPosition = function($element, finishTransition) {\r\n var originalTransition;\r\n var stylesConfig = {\r\n left: 0,\r\n top: 0,\r\n transform: \"none\"\r\n };\r\n if (finishTransition) {\r\n originalTransition = $element.css(\"transition\");\r\n stylesConfig.transition = \"none\"\r\n }\r\n $element.css(stylesConfig);\r\n clearCache($element);\r\n if (finishTransition) {\r\n $element.get(0).offsetHeight;\r\n $element.css(\"transition\", originalTransition)\r\n }\r\n};\r\nexports.resetPosition = resetPosition;\r\nvar parseTranslate = function(translateString) {\r\n var result = translateString.match(TRANSLATE_REGEX);\r\n if (!result || !result[1]) {\r\n return\r\n }\r\n result = result[1].split(\",\");\r\n result = {\r\n x: parseFloat(result[0]),\r\n y: parseFloat(result[1]),\r\n z: parseFloat(result[2])\r\n };\r\n return result\r\n};\r\nexports.parseTranslate = parseTranslate;\r\n","/**\r\n * DevExtreme (core/options/utils.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.createDefaultOptionRules = exports.getNestedOptionValue = exports.getParentName = exports.getFieldName = exports.deviceMatch = exports.normalizeOptions = exports.convertRulesToOptions = void 0;\r\nvar _devices = _interopRequireDefault(require(\"../devices\"));\r\nvar _type = require(\"../utils/type\");\r\nvar _common = require(\"../utils/common\");\r\nvar _extend = require(\"../utils/extend\");\r\nvar _data = require(\"../utils/data\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _defineProperty(obj, key, value) {\r\n if (key in obj) {\r\n Object.defineProperty(obj, key, {\r\n value: value,\r\n enumerable: true,\r\n configurable: true,\r\n writable: true\r\n })\r\n } else {\r\n obj[key] = value\r\n }\r\n return obj\r\n}\r\nvar cachedGetters = {};\r\nvar convertRulesToOptions = function(rules) {\r\n var currentDevice = _devices.default.current();\r\n return rules.reduce(function(options, _ref) {\r\n var device = _ref.device,\r\n ruleOptions = _ref.options;\r\n var deviceFilter = device || {};\r\n var match = (0, _type.isFunction)(deviceFilter) ? deviceFilter(currentDevice) : deviceMatch(currentDevice, deviceFilter);\r\n if (match) {\r\n (0, _extend.extend)(true, options, ruleOptions)\r\n }\r\n return options\r\n }, {})\r\n};\r\nexports.convertRulesToOptions = convertRulesToOptions;\r\nvar normalizeOptions = function(options, value) {\r\n return \"string\" !== typeof options ? options : _defineProperty({}, options, value)\r\n};\r\nexports.normalizeOptions = normalizeOptions;\r\nvar deviceMatch = function(device, filter) {\r\n return (0, _type.isEmptyObject)(filter) || (0, _common.findBestMatches)(device, [filter]).length > 0\r\n};\r\nexports.deviceMatch = deviceMatch;\r\nvar getFieldName = function(fullName) {\r\n return fullName.substr(fullName.lastIndexOf(\".\") + 1)\r\n};\r\nexports.getFieldName = getFieldName;\r\nvar getParentName = function(fullName) {\r\n return fullName.substr(0, fullName.lastIndexOf(\".\"))\r\n};\r\nexports.getParentName = getParentName;\r\nvar getNestedOptionValue = function(optionsObject, name) {\r\n cachedGetters[name] = cachedGetters[name] || (0, _data.compileGetter)(name);\r\n return cachedGetters[name](optionsObject, {\r\n functionsAsIs: true\r\n })\r\n};\r\nexports.getNestedOptionValue = getNestedOptionValue;\r\nvar createDefaultOptionRules = function() {\r\n var options = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : [];\r\n return options\r\n};\r\nexports.createDefaultOptionRules = createDefaultOptionRules;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getOptionInfo = exports.getOptionValue = exports.allKeysAreEqual = exports.forEachChildNode = exports.isEqual = exports.toComparable = exports.camelize = exports.lowercaseFirst = exports.uppercaseFirst = void 0;\nfunction uppercaseFirst(value) {\n return value[0].toUpperCase() + value.substr(1);\n}\nexports.uppercaseFirst = uppercaseFirst;\nfunction lowercaseFirst(value) {\n return value[0].toLowerCase() + value.substr(1);\n}\nexports.lowercaseFirst = lowercaseFirst;\nfunction camelize(value) {\n return lowercaseFirst(value.split(\"-\").map(function (v) { return uppercaseFirst(v); }).join(\"\"));\n}\nexports.camelize = camelize;\nfunction toComparable(value) {\n return value instanceof Date ? value.getTime() : value;\n}\nexports.toComparable = toComparable;\nfunction isEqual(value1, value2) {\n if (toComparable(value1) === toComparable(value2)) {\n return true;\n }\n if (Array.isArray(value1) && Array.isArray(value2)) {\n return value1.length === 0 && value2.length === 0;\n }\n return false;\n}\nexports.isEqual = isEqual;\nfunction forEachChildNode(el, callback) {\n Array.prototype.slice.call(el.childNodes).forEach(callback);\n}\nexports.forEachChildNode = forEachChildNode;\nfunction allKeysAreEqual(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n if (obj1Keys.length !== Object.keys(obj2).length) {\n return false;\n }\n for (var _i = 0, obj1Keys_1 = obj1Keys; _i < obj1Keys_1.length; _i++) {\n var key = obj1Keys_1[_i];\n if (!obj2.hasOwnProperty(key)) {\n return false;\n }\n }\n return true;\n}\nexports.allKeysAreEqual = allKeysAreEqual;\nfunction getOptionValue(options, optionPath) {\n var value = options;\n optionPath.split(\".\").forEach(function (p) {\n var optionInfo = getOptionInfo(p);\n value = optionInfo.isCollection ?\n value[optionInfo.name] && value[optionInfo.name][optionInfo.index] :\n value[optionInfo.name];\n });\n return value;\n}\nexports.getOptionValue = getOptionValue;\nfunction getOptionInfo(name) {\n var parts = name.split(\"[\");\n if (parts.length === 1) {\n return {\n isCollection: false,\n name: name,\n fullName: name\n };\n }\n return {\n isCollection: true,\n name: parts[0],\n fullName: name,\n index: Number(parts[1].slice(0, -1))\n };\n}\nexports.getOptionInfo = getOptionInfo;\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TEMPLATE_MULTIPLE_ROOTS_ERROR = \"Template must have a single root node.\";\n","/**\r\n * DevExtreme (events/core/emitter_registrator.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _ready_callbacks = _interopRequireDefault(require(\"../../core/utils/ready_callbacks\"));\r\nvar _dom_adapter = _interopRequireDefault(require(\"../../core/dom_adapter\"));\r\nvar _events_engine = _interopRequireDefault(require(\"../../events/core/events_engine\"));\r\nvar _element_data = require(\"../../core/element_data\");\r\nvar _class = _interopRequireDefault(require(\"../../core/class\"));\r\nvar _extend = require(\"../../core/utils/extend\");\r\nvar _array = require(\"../../core/utils/array\");\r\nvar _iterator = require(\"../../core/utils/iterator\");\r\nvar _event_registrator = _interopRequireDefault(require(\"./event_registrator\"));\r\nvar _index = require(\"../utils/index\");\r\nvar _pointer = _interopRequireDefault(require(\"../pointer\"));\r\nvar _wheel = require(\"./wheel\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar MANAGER_EVENT = \"dxEventManager\";\r\nvar EMITTER_DATA = \"dxEmitter\";\r\nvar EventManager = _class.default.inherit({\r\n ctor: function() {\r\n this._attachHandlers();\r\n this.reset();\r\n this._proxiedCancelHandler = this._cancelHandler.bind(this);\r\n this._proxiedAcceptHandler = this._acceptHandler.bind(this)\r\n },\r\n _attachHandlers: function() {\r\n _ready_callbacks.default.add(function() {\r\n var document = _dom_adapter.default.getDocument();\r\n _events_engine.default.subscribeGlobal(document, (0, _index.addNamespace)(_pointer.default.down, MANAGER_EVENT), this._pointerDownHandler.bind(this));\r\n _events_engine.default.subscribeGlobal(document, (0, _index.addNamespace)(_pointer.default.move, MANAGER_EVENT), this._pointerMoveHandler.bind(this));\r\n _events_engine.default.subscribeGlobal(document, (0, _index.addNamespace)([_pointer.default.up, _pointer.default.cancel].join(\" \"), MANAGER_EVENT), this._pointerUpHandler.bind(this));\r\n _events_engine.default.subscribeGlobal(document, (0, _index.addNamespace)(_wheel.name, MANAGER_EVENT), this._mouseWheelHandler.bind(this))\r\n }.bind(this))\r\n },\r\n _eachEmitter: function(callback) {\r\n var activeEmitters = this._activeEmitters || [];\r\n var i = 0;\r\n while (activeEmitters.length > i) {\r\n var emitter = activeEmitters[i];\r\n if (false === callback(emitter)) {\r\n break\r\n }\r\n if (activeEmitters[i] === emitter) {\r\n i++\r\n }\r\n }\r\n },\r\n _applyToEmitters: function(method, arg) {\r\n this._eachEmitter(function(emitter) {\r\n emitter[method].call(emitter, arg)\r\n })\r\n },\r\n reset: function() {\r\n this._eachEmitter(this._proxiedCancelHandler);\r\n this._activeEmitters = []\r\n },\r\n resetEmitter: function(emitter) {\r\n this._proxiedCancelHandler(emitter)\r\n },\r\n _pointerDownHandler: function(e) {\r\n if ((0, _index.isMouseEvent)(e) && e.which > 1) {\r\n return\r\n }\r\n this._updateEmitters(e)\r\n },\r\n _updateEmitters: function(e) {\r\n if (!this._isSetChanged(e)) {\r\n return\r\n }\r\n this._cleanEmitters(e);\r\n this._fetchEmitters(e)\r\n },\r\n _isSetChanged: function(e) {\r\n var currentSet = this._closestEmitter(e);\r\n var previousSet = this._emittersSet || [];\r\n var setChanged = currentSet.length !== previousSet.length;\r\n (0, _iterator.each)(currentSet, function(index, emitter) {\r\n setChanged = setChanged || previousSet[index] !== emitter;\r\n return !setChanged\r\n });\r\n this._emittersSet = currentSet;\r\n return setChanged\r\n },\r\n _closestEmitter: function(e) {\r\n var that = this;\r\n var result = [];\r\n var $element = (0, _renderer.default)(e.target);\r\n\r\n function handleEmitter(_, emitter) {\r\n if (!!emitter && emitter.validatePointers(e) && emitter.validate(e)) {\r\n emitter.addCancelCallback(that._proxiedCancelHandler);\r\n emitter.addAcceptCallback(that._proxiedAcceptHandler);\r\n result.push(emitter)\r\n }\r\n }\r\n while ($element.length) {\r\n var emitters = (0, _element_data.data)($element.get(0), EMITTER_DATA) || [];\r\n (0, _iterator.each)(emitters, handleEmitter);\r\n $element = $element.parent()\r\n }\r\n return result\r\n },\r\n _acceptHandler: function(acceptedEmitter, e) {\r\n var that = this;\r\n this._eachEmitter(function(emitter) {\r\n if (emitter !== acceptedEmitter) {\r\n that._cancelEmitter(emitter, e)\r\n }\r\n })\r\n },\r\n _cancelHandler: function(canceledEmitter, e) {\r\n this._cancelEmitter(canceledEmitter, e)\r\n },\r\n _cancelEmitter: function(emitter, e) {\r\n var activeEmitters = this._activeEmitters;\r\n if (e) {\r\n emitter.cancel(e)\r\n } else {\r\n emitter.reset()\r\n }\r\n emitter.removeCancelCallback();\r\n emitter.removeAcceptCallback();\r\n var emitterIndex = (0, _array.inArray)(emitter, activeEmitters);\r\n if (emitterIndex > -1) {\r\n activeEmitters.splice(emitterIndex, 1)\r\n }\r\n },\r\n _cleanEmitters: function(e) {\r\n this._applyToEmitters(\"end\", e);\r\n this.reset(e)\r\n },\r\n _fetchEmitters: function(e) {\r\n this._activeEmitters = this._emittersSet.slice();\r\n this._applyToEmitters(\"start\", e)\r\n },\r\n _pointerMoveHandler: function(e) {\r\n this._applyToEmitters(\"move\", e)\r\n },\r\n _pointerUpHandler: function(e) {\r\n this._updateEmitters(e)\r\n },\r\n _mouseWheelHandler: function(e) {\r\n if (!this._allowInterruptionByMouseWheel()) {\r\n return\r\n }\r\n e.pointers = [null];\r\n this._pointerDownHandler(e);\r\n this._adjustWheelEvent(e);\r\n this._pointerMoveHandler(e);\r\n e.pointers = [];\r\n this._pointerUpHandler(e)\r\n },\r\n _allowInterruptionByMouseWheel: function() {\r\n var allowInterruption = true;\r\n this._eachEmitter(function(emitter) {\r\n allowInterruption = emitter.allowInterruptionByMouseWheel() && allowInterruption;\r\n return allowInterruption\r\n });\r\n return allowInterruption\r\n },\r\n _adjustWheelEvent: function(e) {\r\n var closestGestureEmitter = null;\r\n this._eachEmitter(function(emitter) {\r\n if (!emitter.gesture) {\r\n return\r\n }\r\n var direction = emitter.getDirection(e);\r\n if (\"horizontal\" !== direction && !e.shiftKey || \"vertical\" !== direction && e.shiftKey) {\r\n closestGestureEmitter = emitter;\r\n return false\r\n }\r\n });\r\n if (!closestGestureEmitter) {\r\n return\r\n }\r\n var direction = closestGestureEmitter.getDirection(e);\r\n var verticalGestureDirection = \"both\" === direction && !e.shiftKey || \"vertical\" === direction;\r\n var prop = verticalGestureDirection ? \"pageY\" : \"pageX\";\r\n e[prop] += e.delta\r\n },\r\n isActive: function(element) {\r\n var result = false;\r\n this._eachEmitter(function(emitter) {\r\n result = result || emitter.getElement().is(element)\r\n });\r\n return result\r\n }\r\n});\r\nvar eventManager = new EventManager;\r\nvar EMITTER_SUBSCRIPTION_DATA = \"dxEmitterSubscription\";\r\nvar registerEmitter = function(emitterConfig) {\r\n var emitterClass = emitterConfig.emitter;\r\n var emitterName = emitterConfig.events[0];\r\n var emitterEvents = emitterConfig.events;\r\n (0, _iterator.each)(emitterEvents, function(_, eventName) {\r\n (0, _event_registrator.default)(eventName, {\r\n noBubble: !emitterConfig.bubble,\r\n setup: function(element) {\r\n var subscriptions = (0, _element_data.data)(element, EMITTER_SUBSCRIPTION_DATA) || {};\r\n var emitters = (0, _element_data.data)(element, EMITTER_DATA) || {};\r\n var emitter = emitters[emitterName] || new emitterClass(element);\r\n subscriptions[eventName] = true;\r\n emitters[emitterName] = emitter;\r\n (0, _element_data.data)(element, EMITTER_DATA, emitters);\r\n (0, _element_data.data)(element, EMITTER_SUBSCRIPTION_DATA, subscriptions)\r\n },\r\n add: function(element, handleObj) {\r\n var emitters = (0, _element_data.data)(element, EMITTER_DATA);\r\n var emitter = emitters[emitterName];\r\n emitter.configure((0, _extend.extend)({\r\n delegateSelector: handleObj.selector\r\n }, handleObj.data), handleObj.type)\r\n },\r\n teardown: function(element) {\r\n var subscriptions = (0, _element_data.data)(element, EMITTER_SUBSCRIPTION_DATA);\r\n var emitters = (0, _element_data.data)(element, EMITTER_DATA);\r\n var emitter = emitters[emitterName];\r\n delete subscriptions[eventName];\r\n var disposeEmitter = true;\r\n (0, _iterator.each)(emitterEvents, function(_, eventName) {\r\n disposeEmitter = disposeEmitter && !subscriptions[eventName];\r\n return disposeEmitter\r\n });\r\n if (disposeEmitter) {\r\n if (eventManager.isActive(element)) {\r\n eventManager.resetEmitter(emitter)\r\n }\r\n emitter && emitter.dispose();\r\n delete emitters[emitterName]\r\n }\r\n }\r\n })\r\n })\r\n};\r\nvar _default = registerEmitter;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/utils/support.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nObject.defineProperty(exports, \"stylePropPrefix\", {\r\n enumerable: true,\r\n get: function() {\r\n return _style.stylePropPrefix\r\n }\r\n});\r\nObject.defineProperty(exports, \"styleProp\", {\r\n enumerable: true,\r\n get: function() {\r\n return _style.styleProp\r\n }\r\n});\r\nexports.nativeScrolling = exports.animation = exports.transitionEndEventName = exports.transition = exports.touch = exports.inputType = exports.supportProp = exports.pointerEvents = exports.touchEvents = void 0;\r\nvar _array = require(\"./array\");\r\nvar _dom_adapter = _interopRequireDefault(require(\"../dom_adapter\"));\r\nvar _common = require(\"./common\");\r\nvar _call_once = _interopRequireDefault(require(\"./call_once\"));\r\nvar _window = require(\"./window\");\r\nvar _devices = _interopRequireDefault(require(\"../devices\"));\r\nvar _style = require(\"./style\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar _getNavigator = (0, _window.getNavigator)(),\r\n maxTouchPoints = _getNavigator.maxTouchPoints,\r\n msMaxTouchPoints = _getNavigator.msMaxTouchPoints,\r\n pointerEnabled = _getNavigator.pointerEnabled;\r\nvar transitionEndEventNames = {\r\n webkitTransition: \"webkitTransitionEnd\",\r\n MozTransition: \"transitionend\",\r\n OTransition: \"oTransitionEnd\",\r\n msTransition: \"MsTransitionEnd\",\r\n transition: \"transitionend\"\r\n};\r\nvar supportProp = function(prop) {\r\n return !!(0, _style.styleProp)(prop)\r\n};\r\nexports.supportProp = supportProp;\r\nvar isNativeScrollingSupported = function() {\r\n var _devices$real = _devices.default.real(),\r\n platform = _devices$real.platform,\r\n version = _devices$real.version,\r\n isMac = _devices$real.mac;\r\n var isObsoleteAndroid = version && version[0] < 4 && \"android\" === platform;\r\n var isNativeScrollDevice = !isObsoleteAndroid && (0, _array.inArray)(platform, [\"ios\", \"android\"]) > -1 || isMac;\r\n return isNativeScrollDevice\r\n};\r\nvar inputType = function(type) {\r\n if (\"text\" === type) {\r\n return true\r\n }\r\n var input = _dom_adapter.default.createElement(\"input\");\r\n try {\r\n input.setAttribute(\"type\", type);\r\n input.value = \"wrongValue\";\r\n return !input.value\r\n } catch (e) {\r\n return false\r\n }\r\n};\r\nexports.inputType = inputType;\r\nvar detectTouchEvents = function(hasWindowProperty, maxTouchPoints) {\r\n return (hasWindowProperty(\"ontouchstart\") || !!maxTouchPoints) && !hasWindowProperty(\"callPhantom\")\r\n};\r\nvar detectPointerEvent = function(hasWindowProperty, pointerEnabled) {\r\n var isPointerEnabled = (0, _common.ensureDefined)(pointerEnabled, true);\r\n var canUsePointerEvent = (0, _common.ensureDefined)(pointerEnabled, false);\r\n return hasWindowProperty(\"PointerEvent\") && isPointerEnabled || canUsePointerEvent\r\n};\r\nvar touchEvents = detectTouchEvents(_window.hasProperty, maxTouchPoints);\r\nexports.touchEvents = touchEvents;\r\nvar pointerEvents = detectPointerEvent(_window.hasProperty, pointerEnabled);\r\nexports.pointerEvents = pointerEvents;\r\nvar touchPointersPresent = !!maxTouchPoints || !!msMaxTouchPoints;\r\nvar touch = touchEvents || pointerEvents && touchPointersPresent;\r\nexports.touch = touch;\r\nvar transition = (0, _call_once.default)(function() {\r\n return supportProp(\"transition\")\r\n});\r\nexports.transition = transition;\r\nvar transitionEndEventName = (0, _call_once.default)(function() {\r\n return transitionEndEventNames[(0, _style.styleProp)(\"transition\")]\r\n});\r\nexports.transitionEndEventName = transitionEndEventName;\r\nvar animation = (0, _call_once.default)(function() {\r\n return supportProp(\"animation\")\r\n});\r\nexports.animation = animation;\r\nvar nativeScrolling = isNativeScrollingSupported();\r\nexports.nativeScrolling = nativeScrolling;\r\n","/**\r\n * DevExtreme (animation/frame.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.requestAnimationFrame = requestAnimationFrame;\r\nexports.cancelAnimationFrame = cancelAnimationFrame;\r\nvar _window = require(\"../core/utils/window\");\r\nvar _call_once = _interopRequireDefault(require(\"../core/utils/call_once\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar window = (0, _window.hasWindow)() ? (0, _window.getWindow)() : {};\r\nvar FRAME_ANIMATION_STEP_TIME = 1e3 / 60;\r\nvar request = function(callback) {\r\n return setTimeout(callback, FRAME_ANIMATION_STEP_TIME)\r\n};\r\nvar cancel = function(requestID) {\r\n clearTimeout(requestID)\r\n};\r\nvar setAnimationFrameMethods = (0, _call_once.default)(function() {\r\n var nativeRequest = window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || window.oRequestAnimationFrame || window.msRequestAnimationFrame;\r\n var nativeCancel = window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || window.oCancelAnimationFrame || window.msCancelAnimationFrame;\r\n if (nativeRequest && nativeCancel) {\r\n request = nativeRequest;\r\n cancel = nativeCancel\r\n }\r\n if (nativeRequest && !nativeCancel) {\r\n var canceledRequests = {};\r\n request = function(callback) {\r\n var requestId = nativeRequest.call(window, function() {\r\n try {\r\n if (requestId in canceledRequests) {\r\n return\r\n }\r\n callback.apply(this, arguments)\r\n } finally {\r\n delete canceledRequests[requestId]\r\n }\r\n });\r\n return requestId\r\n };\r\n cancel = function(requestId) {\r\n canceledRequests[requestId] = true\r\n }\r\n }\r\n});\r\n\r\nfunction requestAnimationFrame() {\r\n setAnimationFrameMethods();\r\n return request.apply(window, arguments)\r\n}\r\n\r\nfunction cancelAnimationFrame() {\r\n setAnimationFrameMethods();\r\n cancel.apply(window, arguments)\r\n}\r\n","/**\r\n * DevExtreme (core/utils/template_manager.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.acquireTemplate = exports.acquireIntegrationTemplate = exports.defaultCreateElement = exports.templateKey = exports.validateTemplateSource = exports.getNormalizedTemplateArgs = exports.addOneRenderedCall = exports.suitableTemplatesByName = exports.findTemplates = void 0;\r\nvar _config = _interopRequireDefault(require(\"../config\"));\r\nvar _devices = _interopRequireDefault(require(\"../devices\"));\r\nvar _errors = _interopRequireDefault(require(\"../errors\"));\r\nvar _renderer = _interopRequireDefault(require(\"../renderer\"));\r\nvar _child_default_template = require(\"../templates/child_default_template\");\r\nvar _empty_template = require(\"../templates/empty_template\");\r\nvar _template = require(\"../templates/template\");\r\nvar _template_base = require(\"../templates/template_base\");\r\nvar _array = require(\"./array\");\r\nvar _common = require(\"./common\");\r\nvar _dom = require(\"./dom\");\r\nvar _extend = require(\"./extend\");\r\nvar _type = require(\"./type\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar findTemplates = function(element, name) {\r\n var optionsAttributeName = \"data-options\";\r\n var templates = (0, _renderer.default)(element).contents().filter(\"[\".concat(optionsAttributeName, '*=\"').concat(name, '\"]'));\r\n return [].slice.call(templates).map(function(element) {\r\n var optionsString = (0, _renderer.default)(element).attr(optionsAttributeName) || \"\";\r\n return {\r\n element: element,\r\n options: (0, _config.default)().optionsParser(optionsString)[name]\r\n }\r\n }).filter(function(template) {\r\n return !!template.options\r\n })\r\n};\r\nexports.findTemplates = findTemplates;\r\nvar suitableTemplatesByName = function(rawTemplates) {\r\n var templatesMap = (0, _array.groupBy)(rawTemplates, function(template) {\r\n return template.options.name\r\n });\r\n if (templatesMap[void 0]) {\r\n throw _errors.default.Error(\"E0023\")\r\n }\r\n var result = {};\r\n Object.keys(templatesMap).forEach(function(name) {\r\n var _findBestMatches$;\r\n var suitableTemplate = null === (_findBestMatches$ = (0, _common.findBestMatches)(_devices.default.current(), templatesMap[name], function(template) {\r\n return template.options\r\n })[0]) || void 0 === _findBestMatches$ ? void 0 : _findBestMatches$.element;\r\n if (suitableTemplate) {\r\n result[name] = suitableTemplate\r\n }\r\n });\r\n return result\r\n};\r\nexports.suitableTemplatesByName = suitableTemplatesByName;\r\nvar addOneRenderedCall = function(template) {\r\n var _render = template.render.bind(template);\r\n return (0, _extend.extend)({}, template, {\r\n render: function(options) {\r\n var templateResult = _render(options);\r\n options && options.onRendered && options.onRendered();\r\n return templateResult\r\n }\r\n })\r\n};\r\nexports.addOneRenderedCall = addOneRenderedCall;\r\nvar getNormalizedTemplateArgs = function(options) {\r\n var args = [];\r\n if (\"model\" in options) {\r\n args.push(options.model)\r\n }\r\n if (\"index\" in options) {\r\n args.push(options.index)\r\n }\r\n args.push(options.container);\r\n return args\r\n};\r\nexports.getNormalizedTemplateArgs = getNormalizedTemplateArgs;\r\nvar validateTemplateSource = function(templateSource) {\r\n return \"string\" === typeof templateSource ? (0, _dom.normalizeTemplateElement)(templateSource) : templateSource\r\n};\r\nexports.validateTemplateSource = validateTemplateSource;\r\nvar templateKey = function(templateSource) {\r\n return (0, _type.isRenderer)(templateSource) && templateSource[0] || templateSource\r\n};\r\nexports.templateKey = templateKey;\r\nvar defaultCreateElement = function(element) {\r\n return new _template.Template(element)\r\n};\r\nexports.defaultCreateElement = defaultCreateElement;\r\nvar acquireIntegrationTemplate = function(templateSource, templates, isAsyncTemplate, skipTemplates) {\r\n var integrationTemplate = null;\r\n if (!skipTemplates || skipTemplates.indexOf(templateSource) === -1) {\r\n integrationTemplate = templates[templateSource];\r\n if (integrationTemplate && !(integrationTemplate instanceof _template_base.TemplateBase) && !isAsyncTemplate) {\r\n integrationTemplate = addOneRenderedCall(integrationTemplate)\r\n }\r\n }\r\n return integrationTemplate\r\n};\r\nexports.acquireIntegrationTemplate = acquireIntegrationTemplate;\r\nvar acquireTemplate = function(templateSource, createTemplate, templates, isAsyncTemplate, skipTemplates, defaultTemplates) {\r\n if (null == templateSource) {\r\n return new _empty_template.EmptyTemplate\r\n }\r\n if (templateSource instanceof _child_default_template.ChildDefaultTemplate) {\r\n return defaultTemplates[templateSource.name]\r\n }\r\n if (templateSource instanceof _template_base.TemplateBase) {\r\n return templateSource\r\n }\r\n if ((0, _type.isFunction)(templateSource.render) && !(0, _type.isRenderer)(templateSource)) {\r\n return isAsyncTemplate ? templateSource : addOneRenderedCall(templateSource)\r\n }\r\n if (templateSource.nodeType || (0, _type.isRenderer)(templateSource)) {\r\n return createTemplate((0, _renderer.default)(templateSource))\r\n }\r\n return acquireIntegrationTemplate(templateSource, templates, isAsyncTemplate, skipTemplates) || defaultTemplates[templateSource] || createTemplate(templateSource)\r\n};\r\nexports.acquireTemplate = acquireTemplate;\r\n","/**\r\n * DevExtreme (core/templates/function_template.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.FunctionTemplate = void 0;\r\nvar _template_base = require(\"./template_base\");\r\nvar _dom = require(\"../utils/dom\");\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\n\r\nfunction _inherits(subClass, superClass) {\r\n if (\"function\" !== typeof superClass && null !== superClass) {\r\n throw new TypeError(\"Super expression must either be null or a function\")\r\n }\r\n subClass.prototype = Object.create(superClass && superClass.prototype, {\r\n constructor: {\r\n value: subClass,\r\n writable: true,\r\n configurable: true\r\n }\r\n });\r\n if (superClass) {\r\n _setPrototypeOf(subClass, superClass)\r\n }\r\n}\r\n\r\nfunction _setPrototypeOf(o, p) {\r\n _setPrototypeOf = Object.setPrototypeOf || function(o, p) {\r\n o.__proto__ = p;\r\n return o\r\n };\r\n return _setPrototypeOf(o, p)\r\n}\r\n\r\nfunction _createSuper(Derived) {\r\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\r\n return function() {\r\n var result, Super = _getPrototypeOf(Derived);\r\n if (hasNativeReflectConstruct) {\r\n var NewTarget = _getPrototypeOf(this).constructor;\r\n result = Reflect.construct(Super, arguments, NewTarget)\r\n } else {\r\n result = Super.apply(this, arguments)\r\n }\r\n return _possibleConstructorReturn(this, result)\r\n }\r\n}\r\n\r\nfunction _possibleConstructorReturn(self, call) {\r\n if (call && (\"object\" === _typeof(call) || \"function\" === typeof call)) {\r\n return call\r\n }\r\n return _assertThisInitialized(self)\r\n}\r\n\r\nfunction _assertThisInitialized(self) {\r\n if (void 0 === self) {\r\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")\r\n }\r\n return self\r\n}\r\n\r\nfunction _isNativeReflectConstruct() {\r\n if (\"undefined\" === typeof Reflect || !Reflect.construct) {\r\n return false\r\n }\r\n if (Reflect.construct.sham) {\r\n return false\r\n }\r\n if (\"function\" === typeof Proxy) {\r\n return true\r\n }\r\n try {\r\n Date.prototype.toString.call(Reflect.construct(Date, [], function() {}));\r\n return true\r\n } catch (e) {\r\n return false\r\n }\r\n}\r\n\r\nfunction _getPrototypeOf(o) {\r\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function(o) {\r\n return o.__proto__ || Object.getPrototypeOf(o)\r\n };\r\n return _getPrototypeOf(o)\r\n}\r\nvar FunctionTemplate = function(_TemplateBase) {\r\n _inherits(FunctionTemplate, _TemplateBase);\r\n var _super = _createSuper(FunctionTemplate);\r\n\r\n function FunctionTemplate(render) {\r\n var _this;\r\n _classCallCheck(this, FunctionTemplate);\r\n _this = _super.call(this);\r\n _this._render = render;\r\n return _this\r\n }\r\n _createClass(FunctionTemplate, [{\r\n key: \"_renderCore\",\r\n value: function(options) {\r\n return (0, _dom.normalizeTemplateElement)(this._render(options))\r\n }\r\n }]);\r\n return FunctionTemplate\r\n}(_template_base.TemplateBase);\r\nexports.FunctionTemplate = FunctionTemplate;\r\n","/**\r\n * DevExtreme (core/remove_event.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"./renderer\"));\r\nvar _element_data = require(\"./element_data\");\r\nvar _events_engine = _interopRequireDefault(require(\"../events/core/events_engine\"));\r\nvar _event_registrator = _interopRequireDefault(require(\"../events/core/event_registrator\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar eventName = \"dxremove\";\r\nvar eventPropName = \"dxRemoveEvent\";\r\n(0, _element_data.beforeCleanData)(function(elements) {\r\n elements = [].slice.call(elements);\r\n for (var i = 0; i < elements.length; i++) {\r\n var $element = (0, _renderer.default)(elements[i]);\r\n if ($element.prop(eventPropName)) {\r\n $element[0][eventPropName] = null;\r\n _events_engine.default.triggerHandler($element, eventName)\r\n }\r\n }\r\n});\r\n(0, _event_registrator.default)(eventName, {\r\n noBubble: true,\r\n setup: function(element) {\r\n (0, _renderer.default)(element).prop(eventPropName, true)\r\n }\r\n});\r\nvar _default = eventName;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (mobile/hide_callback.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.hideCallback = void 0;\r\nvar _array = require(\"../core/utils/array\");\r\nvar hideCallback = function() {\r\n var callbacks = [];\r\n return {\r\n add: function(callback) {\r\n var indexOfCallback = (0, _array.inArray)(callback, callbacks);\r\n if (indexOfCallback === -1) {\r\n callbacks.push(callback)\r\n }\r\n },\r\n remove: function(callback) {\r\n var indexOfCallback = (0, _array.inArray)(callback, callbacks);\r\n if (indexOfCallback !== -1) {\r\n callbacks.splice(indexOfCallback, 1)\r\n }\r\n },\r\n fire: function() {\r\n var callback = callbacks.pop();\r\n var result = !!callback;\r\n if (result) {\r\n callback()\r\n }\r\n return result\r\n },\r\n hasCallback: function() {\r\n return callbacks.length > 0\r\n }\r\n }\r\n}();\r\nexports.hideCallback = hideCallback;\r\n","/**\r\n * DevExtreme (ui/widget/selectors.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.focused = exports.tabbable = exports.focusable = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _dom_adapter = _interopRequireDefault(require(\"../../core/dom_adapter\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar focusableFn = function(element, tabIndex) {\r\n if (!visible(element)) {\r\n return false\r\n }\r\n var nodeName = element.nodeName.toLowerCase();\r\n var isTabIndexNotNaN = !isNaN(tabIndex);\r\n var isDisabled = element.disabled;\r\n var isDefaultFocus = /^(input|select|textarea|button|object|iframe)$/.test(nodeName);\r\n var isHyperlink = \"a\" === nodeName;\r\n var isFocusable = true;\r\n var isContentEditable = element.isContentEditable;\r\n if (isDefaultFocus || isContentEditable) {\r\n isFocusable = !isDisabled\r\n } else {\r\n if (isHyperlink) {\r\n isFocusable = element.href || isTabIndexNotNaN\r\n } else {\r\n isFocusable = isTabIndexNotNaN\r\n }\r\n }\r\n return isFocusable\r\n};\r\n\r\nfunction visible(element) {\r\n var $element = (0, _renderer.default)(element);\r\n return $element.is(\":visible\") && \"hidden\" !== $element.css(\"visibility\") && \"hidden\" !== $element.parents().css(\"visibility\")\r\n}\r\nvar focusable = function(index, element) {\r\n return focusableFn(element, (0, _renderer.default)(element).attr(\"tabIndex\"))\r\n};\r\nexports.focusable = focusable;\r\nvar tabbable = function(index, element) {\r\n var tabIndex = (0, _renderer.default)(element).attr(\"tabIndex\");\r\n return (isNaN(tabIndex) || tabIndex >= 0) && focusableFn(element, tabIndex)\r\n};\r\nexports.tabbable = tabbable;\r\nvar focused = function($element) {\r\n var element = (0, _renderer.default)($element).get(0);\r\n return _dom_adapter.default.getActiveElement() === element\r\n};\r\nexports.focused = focused;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar config = {\n useLegacyTemplateEngine: false\n};\nfunction setOptions(options) {\n config = __assign(__assign({}, config), options);\n}\nfunction getOption(optionName) {\n return config[optionName];\n}\nexports.getOption = getOption;\nexports.default = setOptions;\n","/**\r\n * DevExtreme (events/core/emitter.feedback.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.inactive = exports.active = exports.lock = void 0;\r\nvar _class = _interopRequireDefault(require(\"../../core/class\"));\r\nvar _common = require(\"../../core/utils/common\");\r\nvar _dom = require(\"../../core/utils/dom\");\r\nvar _devices = _interopRequireDefault(require(\"../../core/devices\"));\r\nvar _index = require(\"../utils/index\");\r\nvar _pointer = _interopRequireDefault(require(\"../pointer\"));\r\nvar _emitter = _interopRequireDefault(require(\"./emitter\"));\r\nvar _emitter_registrator = _interopRequireDefault(require(\"./emitter_registrator\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar ACTIVE_EVENT_NAME = \"dxactive\";\r\nexports.active = ACTIVE_EVENT_NAME;\r\nvar INACTIVE_EVENT_NAME = \"dxinactive\";\r\nexports.inactive = INACTIVE_EVENT_NAME;\r\nvar ACTIVE_TIMEOUT = 30;\r\nvar INACTIVE_TIMEOUT = 400;\r\nvar FeedbackEvent = _class.default.inherit({\r\n ctor: function(timeout, fire) {\r\n this._timeout = timeout;\r\n this._fire = fire\r\n },\r\n start: function() {\r\n var that = this;\r\n this._schedule(function() {\r\n that.force()\r\n })\r\n },\r\n _schedule: function(fn) {\r\n this.stop();\r\n this._timer = setTimeout(fn, this._timeout)\r\n },\r\n stop: function() {\r\n clearTimeout(this._timer)\r\n },\r\n force: function() {\r\n if (this._fired) {\r\n return\r\n }\r\n this.stop();\r\n this._fire();\r\n this._fired = true\r\n },\r\n fired: function() {\r\n return this._fired\r\n }\r\n});\r\nvar activeFeedback;\r\nvar FeedbackEmitter = _emitter.default.inherit({\r\n ctor: function() {\r\n this.callBase.apply(this, arguments);\r\n this._active = new FeedbackEvent(0, _common.noop);\r\n this._inactive = new FeedbackEvent(0, _common.noop)\r\n },\r\n configure: function(data, eventName) {\r\n switch (eventName) {\r\n case ACTIVE_EVENT_NAME:\r\n data.activeTimeout = data.timeout;\r\n break;\r\n case INACTIVE_EVENT_NAME:\r\n data.inactiveTimeout = data.timeout\r\n }\r\n this.callBase(data)\r\n },\r\n start: function(e) {\r\n if (activeFeedback) {\r\n var activeChildExists = (0, _dom.contains)(this.getElement().get(0), activeFeedback.getElement().get(0));\r\n var childJustActivated = !activeFeedback._active.fired();\r\n if (activeChildExists && childJustActivated) {\r\n this._cancel();\r\n return\r\n }\r\n activeFeedback._inactive.force()\r\n }\r\n activeFeedback = this;\r\n this._initEvents(e);\r\n this._active.start()\r\n },\r\n _initEvents: function(e) {\r\n var that = this;\r\n var eventTarget = this._getEmitterTarget(e);\r\n var mouseEvent = (0, _index.isMouseEvent)(e);\r\n var isSimulator = _devices.default.isSimulator();\r\n var deferFeedback = isSimulator || !mouseEvent;\r\n var activeTimeout = (0, _common.ensureDefined)(this.activeTimeout, ACTIVE_TIMEOUT);\r\n var inactiveTimeout = (0, _common.ensureDefined)(this.inactiveTimeout, INACTIVE_TIMEOUT);\r\n this._active = new FeedbackEvent(deferFeedback ? activeTimeout : 0, function() {\r\n that._fireEvent(ACTIVE_EVENT_NAME, e, {\r\n target: eventTarget\r\n })\r\n });\r\n this._inactive = new FeedbackEvent(deferFeedback ? inactiveTimeout : 0, function() {\r\n that._fireEvent(INACTIVE_EVENT_NAME, e, {\r\n target: eventTarget\r\n });\r\n activeFeedback = null\r\n })\r\n },\r\n cancel: function(e) {\r\n this.end(e)\r\n },\r\n end: function(e) {\r\n var skipTimers = e.type !== _pointer.default.up;\r\n if (skipTimers) {\r\n this._active.stop()\r\n } else {\r\n this._active.force()\r\n }\r\n this._inactive.start();\r\n if (skipTimers) {\r\n this._inactive.force()\r\n }\r\n },\r\n dispose: function() {\r\n this._active.stop();\r\n this._inactive.stop();\r\n this.callBase()\r\n },\r\n lockInactive: function() {\r\n this._active.force();\r\n this._inactive.stop();\r\n activeFeedback = null;\r\n this._cancel();\r\n return this._inactive.force.bind(this._inactive)\r\n }\r\n});\r\nFeedbackEmitter.lock = function(deferred) {\r\n var lockInactive = activeFeedback ? activeFeedback.lockInactive() : _common.noop;\r\n deferred.done(lockInactive)\r\n};\r\n(0, _emitter_registrator.default)({\r\n emitter: FeedbackEmitter,\r\n events: [ACTIVE_EVENT_NAME, INACTIVE_EVENT_NAME]\r\n});\r\nvar lock = FeedbackEmitter.lock;\r\nexports.lock = lock;\r\n","/**\r\n * DevExtreme (animation/fx.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _window = require(\"../core/utils/window\");\r\nvar _events_engine = _interopRequireDefault(require(\"../events/core/events_engine\"));\r\nvar _errors = _interopRequireDefault(require(\"../core/errors\"));\r\nvar _element = require(\"../core/element\");\r\nvar _extend = require(\"../core/utils/extend\");\r\nvar _type = require(\"../core/utils/type\");\r\nvar _iterator = require(\"../core/utils/iterator\");\r\nvar _translator = require(\"./translator\");\r\nvar _easing = require(\"./easing\");\r\nvar _frame = require(\"./frame\");\r\nvar _support = require(\"../core/utils/support\");\r\nvar _position = _interopRequireDefault(require(\"./position\"));\r\nvar _remove_event = _interopRequireDefault(require(\"../core/remove_event\"));\r\nvar _index = require(\"../events/utils/index\");\r\nvar _deferred = require(\"../core/utils/deferred\");\r\nvar _common = require(\"../core/utils/common\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\nvar window = (0, _window.getWindow)();\r\nvar removeEventName = (0, _index.addNamespace)(_remove_event.default, \"dxFX\");\r\nvar RELATIVE_VALUE_REGEX = /^([+-])=(.*)/i;\r\nvar ANIM_DATA_KEY = \"dxAnimData\";\r\nvar ANIM_QUEUE_KEY = \"dxAnimQueue\";\r\nvar TRANSFORM_PROP = \"transform\";\r\nvar TransitionAnimationStrategy = {\r\n initAnimation: function($element, config) {\r\n $element.css({\r\n transitionProperty: \"none\"\r\n });\r\n if (\"string\" === typeof config.from) {\r\n $element.addClass(config.from)\r\n } else {\r\n setProps($element, config.from)\r\n }\r\n var that = this;\r\n var deferred = new _deferred.Deferred;\r\n var cleanupWhen = config.cleanupWhen;\r\n config.transitionAnimation = {\r\n deferred: deferred,\r\n finish: function() {\r\n that._finishTransition($element);\r\n if (cleanupWhen) {\r\n (0, _deferred.when)(deferred, cleanupWhen).always(function() {\r\n that._cleanup($element, config)\r\n })\r\n } else {\r\n that._cleanup($element, config)\r\n }\r\n deferred.resolveWith($element, [config, $element])\r\n }\r\n };\r\n this._completeAnimationCallback($element, config).done(function() {\r\n config.transitionAnimation.finish()\r\n }).fail(function() {\r\n deferred.rejectWith($element, [config, $element])\r\n });\r\n if (!config.duration) {\r\n config.transitionAnimation.finish()\r\n }\r\n $element.css(\"transform\")\r\n },\r\n animate: function($element, config) {\r\n this._startAnimation($element, config);\r\n return config.transitionAnimation.deferred.promise()\r\n },\r\n _completeAnimationCallback: function($element, config) {\r\n var that = this;\r\n var startTime = Date.now() + config.delay;\r\n var deferred = new _deferred.Deferred;\r\n var transitionEndFired = new _deferred.Deferred;\r\n var simulatedTransitionEndFired = new _deferred.Deferred;\r\n var simulatedEndEventTimer;\r\n var transitionEndEventFullName = (0, _support.transitionEndEventName)() + \".dxFX\";\r\n config.transitionAnimation.cleanup = function() {\r\n clearTimeout(simulatedEndEventTimer);\r\n clearTimeout(waitForJSCompleteTimer);\r\n _events_engine.default.off($element, transitionEndEventFullName);\r\n _events_engine.default.off($element, removeEventName)\r\n };\r\n _events_engine.default.one($element, transitionEndEventFullName, function() {\r\n if (Date.now() - startTime >= config.duration) {\r\n transitionEndFired.reject()\r\n }\r\n });\r\n _events_engine.default.off($element, removeEventName);\r\n _events_engine.default.on($element, removeEventName, function() {\r\n that.stop($element, config);\r\n deferred.reject()\r\n });\r\n var waitForJSCompleteTimer = setTimeout(function() {\r\n simulatedEndEventTimer = setTimeout(function() {\r\n simulatedTransitionEndFired.reject()\r\n }, config.duration + config.delay + fx._simulatedTransitionEndDelay);\r\n (0, _deferred.when)(transitionEndFired, simulatedTransitionEndFired).fail(function() {\r\n deferred.resolve()\r\n }.bind(this))\r\n });\r\n return deferred.promise()\r\n },\r\n _startAnimation: function($element, config) {\r\n $element.css({\r\n transitionProperty: \"all\",\r\n transitionDelay: config.delay + \"ms\",\r\n transitionDuration: config.duration + \"ms\",\r\n transitionTimingFunction: config.easing\r\n });\r\n if (\"string\" === typeof config.to) {\r\n $element[0].className += \" \" + config.to\r\n } else {\r\n if (config.to) {\r\n setProps($element, config.to)\r\n }\r\n }\r\n },\r\n _finishTransition: function($element) {\r\n $element.css(\"transition\", \"none\")\r\n },\r\n _cleanup: function($element, config) {\r\n config.transitionAnimation.cleanup();\r\n if (\"string\" === typeof config.from) {\r\n $element.removeClass(config.from);\r\n $element.removeClass(config.to)\r\n }\r\n },\r\n stop: function($element, config, jumpToEnd) {\r\n if (!config) {\r\n return\r\n }\r\n if (jumpToEnd) {\r\n config.transitionAnimation.finish()\r\n } else {\r\n if ((0, _type.isPlainObject)(config.to)) {\r\n (0, _iterator.each)(config.to, function(key) {\r\n $element.css(key, $element.css(key))\r\n })\r\n }\r\n this._finishTransition($element);\r\n this._cleanup($element, config)\r\n }\r\n }\r\n};\r\nvar FrameAnimationStrategy = {\r\n initAnimation: function($element, config) {\r\n setProps($element, config.from)\r\n },\r\n animate: function($element, config) {\r\n var deferred = new _deferred.Deferred;\r\n var that = this;\r\n if (!config) {\r\n return deferred.reject().promise()\r\n }(0, _iterator.each)(config.to, function(prop) {\r\n if (void 0 === config.from[prop]) {\r\n config.from[prop] = that._normalizeValue($element.css(prop))\r\n }\r\n });\r\n if (config.to[TRANSFORM_PROP]) {\r\n config.from[TRANSFORM_PROP] = that._parseTransform(config.from[TRANSFORM_PROP]);\r\n config.to[TRANSFORM_PROP] = that._parseTransform(config.to[TRANSFORM_PROP])\r\n }\r\n config.frameAnimation = {\r\n to: config.to,\r\n from: config.from,\r\n currentValue: config.from,\r\n easing: (0, _easing.convertTransitionTimingFuncToEasing)(config.easing),\r\n duration: config.duration,\r\n startTime: (new Date).valueOf(),\r\n finish: function() {\r\n this.currentValue = this.to;\r\n this.draw();\r\n (0, _frame.cancelAnimationFrame)(config.frameAnimation.animationFrameId);\r\n deferred.resolve()\r\n },\r\n draw: function() {\r\n if (config.draw) {\r\n config.draw(this.currentValue);\r\n return\r\n }\r\n var currentValue = (0, _extend.extend)({}, this.currentValue);\r\n if (currentValue[TRANSFORM_PROP]) {\r\n currentValue[TRANSFORM_PROP] = (0, _iterator.map)(currentValue[TRANSFORM_PROP], function(value, prop) {\r\n if (\"translate\" === prop) {\r\n return (0, _translator.getTranslateCss)(value)\r\n } else {\r\n if (\"scale\" === prop) {\r\n return \"scale(\" + value + \")\"\r\n } else {\r\n if (\"rotate\" === prop.substr(0, prop.length - 1)) {\r\n return prop + \"(\" + value + \"deg)\"\r\n }\r\n }\r\n }\r\n }).join(\" \")\r\n }\r\n $element.css(currentValue)\r\n }\r\n };\r\n if (config.delay) {\r\n config.frameAnimation.startTime += config.delay;\r\n config.frameAnimation.delayTimeout = setTimeout(function() {\r\n that._startAnimation($element, config)\r\n }, config.delay)\r\n } else {\r\n that._startAnimation($element, config)\r\n }\r\n return deferred.promise()\r\n },\r\n _startAnimation: function($element, config) {\r\n _events_engine.default.off($element, removeEventName);\r\n _events_engine.default.on($element, removeEventName, function() {\r\n if (config.frameAnimation) {\r\n (0, _frame.cancelAnimationFrame)(config.frameAnimation.animationFrameId)\r\n }\r\n });\r\n this._animationStep($element, config)\r\n },\r\n _parseTransform: function(transformString) {\r\n var result = {};\r\n (0, _iterator.each)(transformString.match(/(\\w|\\d)+\\([^)]*\\)\\s*/g), function(i, part) {\r\n var translateData = (0, _translator.parseTranslate)(part);\r\n var scaleData = part.match(/scale\\((.+?)\\)/);\r\n var rotateData = part.match(/(rotate.)\\((.+)deg\\)/);\r\n if (translateData) {\r\n result.translate = translateData\r\n }\r\n if (scaleData && scaleData[1]) {\r\n result.scale = parseFloat(scaleData[1])\r\n }\r\n if (rotateData && rotateData[1]) {\r\n result[rotateData[1]] = parseFloat(rotateData[2])\r\n }\r\n });\r\n return result\r\n },\r\n stop: function($element, config, jumpToEnd) {\r\n var frameAnimation = config && config.frameAnimation;\r\n if (!frameAnimation) {\r\n return\r\n }(0, _frame.cancelAnimationFrame)(frameAnimation.animationFrameId);\r\n clearTimeout(frameAnimation.delayTimeout);\r\n if (jumpToEnd) {\r\n frameAnimation.finish()\r\n }\r\n delete config.frameAnimation\r\n },\r\n _animationStep: function($element, config) {\r\n var frameAnimation = config && config.frameAnimation;\r\n if (!frameAnimation) {\r\n return\r\n }\r\n var now = (new Date).valueOf();\r\n if (now >= frameAnimation.startTime + frameAnimation.duration) {\r\n frameAnimation.finish();\r\n return\r\n }\r\n frameAnimation.currentValue = this._calcStepValue(frameAnimation, now - frameAnimation.startTime);\r\n frameAnimation.draw();\r\n var that = this;\r\n frameAnimation.animationFrameId = (0, _frame.requestAnimationFrame)(function() {\r\n that._animationStep($element, config)\r\n })\r\n },\r\n _calcStepValue: function(frameAnimation, currentDuration) {\r\n var calcValueRecursively = function calcValueRecursively(from, to) {\r\n var result = Array.isArray(to) ? [] : {};\r\n var calcEasedValue = function(propName) {\r\n var x = currentDuration / frameAnimation.duration;\r\n var t = currentDuration;\r\n var b = 1 * from[propName];\r\n var c = to[propName] - from[propName];\r\n var d = frameAnimation.duration;\r\n return (0, _easing.getEasing)(frameAnimation.easing)(x, t, b, c, d)\r\n };\r\n (0, _iterator.each)(to, function(propName, endPropValue) {\r\n if (\"string\" === typeof endPropValue && false === parseFloat(endPropValue, 10)) {\r\n return true\r\n }\r\n result[propName] = \"object\" === _typeof(endPropValue) ? calcValueRecursively(from[propName], endPropValue) : calcEasedValue(propName)\r\n });\r\n return result\r\n };\r\n return calcValueRecursively(frameAnimation.from, frameAnimation.to)\r\n },\r\n _normalizeValue: function(value) {\r\n var numericValue = parseFloat(value, 10);\r\n if (false === numericValue) {\r\n return value\r\n }\r\n return numericValue\r\n }\r\n};\r\nvar FallbackToNoAnimationStrategy = {\r\n initAnimation: function() {},\r\n animate: function() {\r\n return (new _deferred.Deferred).resolve().promise()\r\n },\r\n stop: _common.noop,\r\n isSynchronous: true\r\n};\r\nvar getAnimationStrategy = function(config) {\r\n config = config || {};\r\n var animationStrategies = {\r\n transition: (0, _support.transition)() ? TransitionAnimationStrategy : FrameAnimationStrategy,\r\n frame: FrameAnimationStrategy,\r\n noAnimation: FallbackToNoAnimationStrategy\r\n };\r\n var strategy = config.strategy || \"transition\";\r\n if (\"css\" === config.type && !(0, _support.transition)()) {\r\n strategy = \"noAnimation\"\r\n }\r\n return animationStrategies[strategy]\r\n};\r\nvar baseConfigValidator = function(config, animationType, validate, typeMessage) {\r\n (0, _iterator.each)([\"from\", \"to\"], function() {\r\n if (!validate(config[this])) {\r\n throw _errors.default.Error(\"E0010\", animationType, this, typeMessage)\r\n }\r\n })\r\n};\r\nvar isObjectConfigValidator = function(config, animationType) {\r\n return baseConfigValidator(config, animationType, function(target) {\r\n return (0, _type.isPlainObject)(target)\r\n }, \"a plain object\")\r\n};\r\nvar isStringConfigValidator = function(config, animationType) {\r\n return baseConfigValidator(config, animationType, function(target) {\r\n return \"string\" === typeof target\r\n }, \"a string\")\r\n};\r\nvar CustomAnimationConfigurator = {\r\n setup: function() {}\r\n};\r\nvar CssAnimationConfigurator = {\r\n validateConfig: function(config) {\r\n isStringConfigValidator(config, \"css\")\r\n },\r\n setup: function() {}\r\n};\r\nvar positionAliases = {\r\n top: {\r\n my: \"bottom center\",\r\n at: \"top center\"\r\n },\r\n bottom: {\r\n my: \"top center\",\r\n at: \"bottom center\"\r\n },\r\n right: {\r\n my: \"left center\",\r\n at: \"right center\"\r\n },\r\n left: {\r\n my: \"right center\",\r\n at: \"left center\"\r\n }\r\n};\r\nvar SlideAnimationConfigurator = {\r\n validateConfig: function(config) {\r\n isObjectConfigValidator(config, \"slide\")\r\n },\r\n setup: function($element, config) {\r\n var location = (0, _translator.locate)($element);\r\n if (\"slide\" !== config.type) {\r\n var positioningConfig = \"slideIn\" === config.type ? config.from : config.to;\r\n positioningConfig.position = (0, _extend.extend)({\r\n of: window\r\n }, positionAliases[config.direction]);\r\n setupPosition($element, positioningConfig)\r\n }\r\n this._setUpConfig(location, config.from);\r\n this._setUpConfig(location, config.to);\r\n (0, _translator.clearCache)($element)\r\n },\r\n _setUpConfig: function(location, config) {\r\n config.left = \"left\" in config ? config.left : \"+=0\";\r\n config.top = \"top\" in config ? config.top : \"+=0\";\r\n this._initNewPosition(location, config)\r\n },\r\n _initNewPosition: function(location, config) {\r\n var position = {\r\n left: config.left,\r\n top: config.top\r\n };\r\n delete config.left;\r\n delete config.top;\r\n var relativeValue = this._getRelativeValue(position.left);\r\n if (void 0 !== relativeValue) {\r\n position.left = relativeValue + location.left\r\n } else {\r\n config.left = 0\r\n }\r\n relativeValue = this._getRelativeValue(position.top);\r\n if (void 0 !== relativeValue) {\r\n position.top = relativeValue + location.top\r\n } else {\r\n config.top = 0\r\n }\r\n config[TRANSFORM_PROP] = (0, _translator.getTranslateCss)({\r\n x: position.left,\r\n y: position.top\r\n })\r\n },\r\n _getRelativeValue: function(value) {\r\n var relativeValue;\r\n if (\"string\" === typeof value && (relativeValue = RELATIVE_VALUE_REGEX.exec(value))) {\r\n return parseInt(relativeValue[1] + \"1\") * relativeValue[2]\r\n }\r\n }\r\n};\r\nvar FadeAnimationConfigurator = {\r\n setup: function($element, config) {\r\n var from = config.from;\r\n var fromOpacity = (0, _type.isPlainObject)(from) ? config.skipElementInitialStyles ? 0 : $element.css(\"opacity\") : String(from);\r\n var toOpacity;\r\n switch (config.type) {\r\n case \"fadeIn\":\r\n toOpacity = 1;\r\n break;\r\n case \"fadeOut\":\r\n toOpacity = 0;\r\n break;\r\n default:\r\n toOpacity = String(config.to)\r\n }\r\n config.from = {\r\n visibility: \"visible\",\r\n opacity: fromOpacity\r\n };\r\n config.to = {\r\n opacity: toOpacity\r\n }\r\n }\r\n};\r\nvar PopAnimationConfigurator = {\r\n validateConfig: function(config) {\r\n isObjectConfigValidator(config, \"pop\")\r\n },\r\n setup: function($element, config) {\r\n var from = config.from;\r\n var to = config.to;\r\n var fromOpacity = \"opacity\" in from ? from.opacity : $element.css(\"opacity\");\r\n var toOpacity = \"opacity\" in to ? to.opacity : 1;\r\n var fromScale = \"scale\" in from ? from.scale : 0;\r\n var toScale = \"scale\" in to ? to.scale : 1;\r\n config.from = {\r\n opacity: fromOpacity\r\n };\r\n var translate = (0, _translator.getTranslate)($element);\r\n config.from[TRANSFORM_PROP] = this._getCssTransform(translate, fromScale);\r\n config.to = {\r\n opacity: toOpacity\r\n };\r\n config.to[TRANSFORM_PROP] = this._getCssTransform(translate, toScale)\r\n },\r\n _getCssTransform: function(translate, scale) {\r\n return (0, _translator.getTranslateCss)(translate) + \"scale(\" + scale + \")\"\r\n }\r\n};\r\nvar animationConfigurators = {\r\n custom: CustomAnimationConfigurator,\r\n slide: SlideAnimationConfigurator,\r\n slideIn: SlideAnimationConfigurator,\r\n slideOut: SlideAnimationConfigurator,\r\n fade: FadeAnimationConfigurator,\r\n fadeIn: FadeAnimationConfigurator,\r\n fadeOut: FadeAnimationConfigurator,\r\n pop: PopAnimationConfigurator,\r\n css: CssAnimationConfigurator\r\n};\r\nvar getAnimationConfigurator = function(config) {\r\n var result = animationConfigurators[config.type];\r\n if (!result) {\r\n throw _errors.default.Error(\"E0011\", config.type)\r\n }\r\n return result\r\n};\r\nvar defaultJSConfig = {\r\n type: \"custom\",\r\n from: {},\r\n to: {},\r\n duration: 400,\r\n start: _common.noop,\r\n complete: _common.noop,\r\n easing: \"ease\",\r\n delay: 0\r\n};\r\nvar defaultCssConfig = {\r\n duration: 400,\r\n easing: \"ease\",\r\n delay: 0\r\n};\r\n\r\nfunction setupAnimationOnElement() {\r\n var animation = this;\r\n var $element = animation.element;\r\n var config = animation.config;\r\n setupPosition($element, config.from);\r\n setupPosition($element, config.to);\r\n animation.configurator.setup($element, config);\r\n $element.data(ANIM_DATA_KEY, animation);\r\n if (fx.off) {\r\n config.duration = 0;\r\n config.delay = 0\r\n }\r\n animation.strategy.initAnimation($element, config);\r\n if (config.start) {\r\n var element = (0, _element.getPublicElement)($element);\r\n config.start.apply(this, [element, config])\r\n }\r\n}\r\nvar onElementAnimationComplete = function(animation) {\r\n var $element = animation.element;\r\n var config = animation.config;\r\n $element.removeData(ANIM_DATA_KEY);\r\n if (config.complete) {\r\n var element = (0, _element.getPublicElement)($element);\r\n config.complete.apply(this, [element, config])\r\n }\r\n animation.deferred.resolveWith(this, [$element, config])\r\n};\r\nvar startAnimationOnElement = function() {\r\n var animation = this;\r\n var $element = animation.element;\r\n var config = animation.config;\r\n animation.isStarted = true;\r\n return animation.strategy.animate($element, config).done(function() {\r\n onElementAnimationComplete(animation)\r\n }).fail(function() {\r\n animation.deferred.rejectWith(this, [$element, config])\r\n })\r\n};\r\nvar stopAnimationOnElement = function(jumpToEnd) {\r\n var animation = this;\r\n var $element = animation.element;\r\n var config = animation.config;\r\n clearTimeout(animation.startTimeout);\r\n if (!animation.isStarted) {\r\n animation.start()\r\n }\r\n animation.strategy.stop($element, config, jumpToEnd)\r\n};\r\nvar scopedRemoveEvent = (0, _index.addNamespace)(_remove_event.default, \"dxFXStartAnimation\");\r\nvar subscribeToRemoveEvent = function(animation) {\r\n _events_engine.default.off(animation.element, scopedRemoveEvent);\r\n _events_engine.default.on(animation.element, scopedRemoveEvent, function() {\r\n fx.stop(animation.element)\r\n });\r\n animation.deferred.always(function() {\r\n _events_engine.default.off(animation.element, scopedRemoveEvent)\r\n })\r\n};\r\nvar createAnimation = function(element, initialConfig) {\r\n var defaultConfig = \"css\" === initialConfig.type ? defaultCssConfig : defaultJSConfig;\r\n var config = (0, _extend.extend)(true, {}, defaultConfig, initialConfig);\r\n var configurator = getAnimationConfigurator(config);\r\n var strategy = getAnimationStrategy(config);\r\n var animation = {\r\n element: (0, _renderer.default)(element),\r\n config: config,\r\n configurator: configurator,\r\n strategy: strategy,\r\n isSynchronous: strategy.isSynchronous,\r\n setup: setupAnimationOnElement,\r\n start: startAnimationOnElement,\r\n stop: stopAnimationOnElement,\r\n deferred: new _deferred.Deferred\r\n };\r\n if ((0, _type.isFunction)(configurator.validateConfig)) {\r\n configurator.validateConfig(config)\r\n }\r\n subscribeToRemoveEvent(animation);\r\n return animation\r\n};\r\nvar animate = function(element, config) {\r\n var $element = (0, _renderer.default)(element);\r\n if (!$element.length) {\r\n return (new _deferred.Deferred).resolve().promise()\r\n }\r\n var animation = createAnimation($element, config);\r\n pushInAnimationQueue($element, animation);\r\n return animation.deferred.promise()\r\n};\r\n\r\nfunction pushInAnimationQueue($element, animation) {\r\n var queueData = getAnimQueueData($element);\r\n writeAnimQueueData($element, queueData);\r\n queueData.push(animation);\r\n if (!isAnimating($element)) {\r\n shiftFromAnimationQueue($element, queueData)\r\n }\r\n}\r\n\r\nfunction getAnimQueueData($element) {\r\n return $element.data(ANIM_QUEUE_KEY) || []\r\n}\r\n\r\nfunction writeAnimQueueData($element, queueData) {\r\n $element.data(ANIM_QUEUE_KEY, queueData)\r\n}\r\nvar destroyAnimQueueData = function($element) {\r\n $element.removeData(ANIM_QUEUE_KEY)\r\n};\r\n\r\nfunction isAnimating($element) {\r\n return !!$element.data(ANIM_DATA_KEY)\r\n}\r\n\r\nfunction shiftFromAnimationQueue($element, queueData) {\r\n queueData = getAnimQueueData($element);\r\n if (!queueData.length) {\r\n return\r\n }\r\n var animation = queueData.shift();\r\n if (0 === queueData.length) {\r\n destroyAnimQueueData($element)\r\n }\r\n executeAnimation(animation).done(function() {\r\n if (!isAnimating($element)) {\r\n shiftFromAnimationQueue($element)\r\n }\r\n })\r\n}\r\n\r\nfunction executeAnimation(animation) {\r\n animation.setup();\r\n if (fx.off || animation.isSynchronous) {\r\n animation.start()\r\n } else {\r\n animation.startTimeout = setTimeout(function() {\r\n animation.start()\r\n })\r\n }\r\n return animation.deferred.promise()\r\n}\r\n\r\nfunction setupPosition($element, config) {\r\n if (!config || !config.position) {\r\n return\r\n }\r\n var win = (0, _renderer.default)(window);\r\n var left = 0;\r\n var top = 0;\r\n var position = _position.default.calculate($element, config.position);\r\n var offset = $element.offset();\r\n var currentPosition = $element.position();\r\n if (currentPosition.top > offset.top) {\r\n top = win.scrollTop()\r\n }\r\n if (currentPosition.left > offset.left) {\r\n left = win.scrollLeft()\r\n }(0, _extend.extend)(config, {\r\n left: position.h.location - offset.left + currentPosition.left - left,\r\n top: position.v.location - offset.top + currentPosition.top - top\r\n });\r\n delete config.position\r\n}\r\n\r\nfunction setProps($element, props) {\r\n (0, _iterator.each)(props, function(key, value) {\r\n try {\r\n $element.css(key, (0, _type.isFunction)(value) ? value() : value)\r\n } catch (e) {}\r\n })\r\n}\r\nvar stop = function(element, jumpToEnd) {\r\n var $element = (0, _renderer.default)(element);\r\n var queueData = getAnimQueueData($element);\r\n (0, _iterator.each)(queueData, function(_, animation) {\r\n animation.config.delay = 0;\r\n animation.config.duration = 0;\r\n animation.isSynchronous = true\r\n });\r\n if (!isAnimating($element)) {\r\n shiftFromAnimationQueue($element, queueData)\r\n }\r\n var animation = $element.data(ANIM_DATA_KEY);\r\n if (animation) {\r\n animation.stop(jumpToEnd)\r\n }\r\n $element.removeData(ANIM_DATA_KEY);\r\n destroyAnimQueueData($element)\r\n};\r\nvar fx = {\r\n off: false,\r\n animationTypes: animationConfigurators,\r\n animate: animate,\r\n createAnimation: createAnimation,\r\n isAnimating: isAnimating,\r\n stop: stop,\r\n _simulatedTransitionEndDelay: 100\r\n};\r\nvar _default = fx;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\nmodule.exports.default = module.exports;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar VueType = require(\"vue\");\nvar errors_1 = require(\"./errors\");\nvar TEMPLATE_PROP = \"template\";\nvar Vue = VueType.default || VueType;\nfunction asConfigurable(component) {\n if (!component.$vnode) {\n return undefined;\n }\n var configurable = component.$vnode.componentOptions;\n if (!configurable.$_config || !configurable.$_config.name) {\n return undefined;\n }\n return configurable;\n}\nfunction hasTemplate(component) {\n return TEMPLATE_PROP in component.$props && (component.$vnode.data && component.$vnode.data.scopedSlots);\n}\nfunction discover(component) {\n var templates = {};\n for (var slotName in component.$scopedSlots) {\n if (slotName === \"default\" && component.$slots.default) {\n continue;\n }\n var slot = component.$scopedSlots[slotName];\n if (!slot) {\n continue;\n }\n templates[slotName] = slot;\n }\n for (var _i = 0, _a = component.$children; _i < _a.length; _i++) {\n var childComponent = _a[_i];\n var configurable = asConfigurable(childComponent);\n if (!configurable) {\n continue;\n }\n var defaultSlot = childComponent.$scopedSlots.default;\n if (!defaultSlot || !hasTemplate(childComponent)) {\n continue;\n }\n var templateName = configurable.$_config.fullPath + \".\" + TEMPLATE_PROP;\n templates[templateName] = defaultSlot;\n }\n return templates;\n}\nexports.discover = discover;\nfunction mountTemplate(getSlot, parent, data, name, placeholder) {\n return new Vue({\n el: placeholder,\n name: name,\n inject: [\"eventBus\"],\n parent: parent,\n created: function () {\n var _this = this;\n this.eventBus.$on(\"updated\", function () {\n _this.$forceUpdate();\n });\n },\n render: function (createElement) {\n var content = getSlot()(data);\n if (!content) {\n return createElement(\"div\");\n }\n if (content.length > 1) {\n throw new Error(errors_1.TEMPLATE_MULTIPLE_ROOTS_ERROR);\n }\n return content[0];\n },\n destroyed: function () {\n // T857821\n this.eventBus.$off(\"updated\");\n }\n });\n}\nexports.mountTemplate = mountTemplate;\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.setEmitOptionChangedFunc = exports.bindOptionWatchers = void 0;\nvar helpers_1 = require(\"./helpers\");\nvar Configuration = /** @class */ (function () {\n function Configuration(updateFunc, name, initialValues, expectedChildren, isCollectionItem, collectionItemIndex, ownerConfig) {\n this._updateFunc = updateFunc;\n this._name = name;\n this._initialValues = initialValues ? initialValues : {};\n this._nestedConfigurations = [];\n this._isCollectionItem = !!isCollectionItem;\n this._collectionItemIndex = collectionItemIndex;\n this._expectedChildren = expectedChildren || {};\n this._ownerConfig = ownerConfig;\n this._componentChanges = [];\n this.updateValue = this.updateValue.bind(this);\n }\n Object.defineProperty(Configuration.prototype, \"name\", {\n get: function () {\n return this._name;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"fullName\", {\n get: function () {\n return this._name && this._isCollectionItem\n ? this._name + \"[\" + this._collectionItemIndex + \"]\"\n : this._name;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"componentsCountChanged\", {\n get: function () {\n return this._componentChanges;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.cleanComponentsCountChanged = function () {\n this._componentChanges = [];\n };\n Object.defineProperty(Configuration.prototype, \"fullPath\", {\n get: function () {\n return this._ownerConfig && this._ownerConfig.fullPath\n ? this._ownerConfig.fullPath + \".\" + this.fullName\n : this.fullName;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"ownerConfig\", {\n get: function () {\n return this._ownerConfig;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"options\", {\n get: function () {\n return this._options;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"initialValues\", {\n get: function () {\n return this._initialValues;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"expectedChildren\", {\n get: function () {\n return this._expectedChildren;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"nested\", {\n get: function () {\n return this._nestedConfigurations;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"prevNestedOptions\", {\n get: function () {\n return this._prevNestedConfigOptions;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"collectionItemIndex\", {\n get: function () {\n return this._collectionItemIndex;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"isCollectionItem\", {\n get: function () {\n return this._isCollectionItem;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(Configuration.prototype, \"updateFunc\", {\n get: function () {\n return this._updateFunc;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.init = function (options) {\n this._options = options ? options : [];\n };\n Object.defineProperty(Configuration.prototype, \"emitOptionChanged\", {\n set: function (handler) {\n this._emitOptionChanged = handler;\n },\n enumerable: false,\n configurable: true\n });\n Configuration.prototype.setPrevNestedOptions = function (value) {\n this._prevNestedConfigOptions = value;\n };\n Configuration.prototype.onOptionChanged = function (args) {\n if (helpers_1.isEqual(args.value, args.previousValue)) {\n return;\n }\n this._onOptionChanged(args.fullName.split(\".\"), args);\n };\n Configuration.prototype.cleanNested = function () {\n this._nestedConfigurations = [];\n };\n Configuration.prototype.createNested = function (name, initialValues, isCollectionItem, expectedChildren) {\n var expected = this._expectedChildren[name];\n var actualName = name;\n var actualIsCollectionItem = isCollectionItem;\n if (expected) {\n actualIsCollectionItem = expected.isCollectionItem;\n if (expected.optionName) {\n actualName = expected.optionName;\n }\n }\n var collectionItemIndex = -1;\n if (actualIsCollectionItem && actualName) {\n collectionItemIndex = this._nestedConfigurations.filter(function (c) { return c._name && c._name === actualName; }).length;\n }\n var configuration = new Configuration(this._updateFunc, actualName, initialValues, expectedChildren, actualIsCollectionItem, collectionItemIndex, this);\n this._nestedConfigurations.push(configuration);\n return configuration;\n };\n Configuration.prototype.updateValue = function (nestedName, value) {\n var fullName = [this.fullPath, nestedName].filter(function (n) { return n; }).join(\".\");\n this._updateFunc(fullName, value);\n };\n Configuration.prototype.getNestedOptionValues = function () {\n var values = {};\n this._nestedConfigurations.forEach(function (o) {\n if (!o._name) {\n return;\n }\n var nestedValue = __assign(__assign({}, o.initialValues), o.getNestedOptionValues());\n if (!nestedValue) {\n return;\n }\n if (!o._isCollectionItem) {\n values[o._name] = nestedValue;\n }\n else {\n var arr = values[o._name];\n if (!arr || !Array.isArray(arr)) {\n arr = [];\n values[o._name] = arr;\n }\n arr.push(nestedValue);\n }\n });\n return values;\n };\n Configuration.prototype.getOptionsToWatch = function () {\n var blackList = {};\n this._nestedConfigurations.forEach(function (c) { return c._name && (blackList[c._name] = true); });\n return this._options.filter(function (o) { return !blackList[o]; });\n };\n Configuration.prototype._onOptionChanged = function (optionRelPath, args) {\n if (optionRelPath.length === 0) {\n return;\n }\n var optionInfo = helpers_1.getOptionInfo(optionRelPath[0]);\n if (optionInfo.isCollection || optionRelPath.length > 1) {\n var nestedConfig = this._getNestedConfig(optionInfo.fullName);\n if (nestedConfig) {\n nestedConfig._onOptionChanged(optionRelPath.slice(1), args);\n return;\n }\n this._tryEmitOptionChanged(optionInfo.name, args.component.option(this.fullPath ? this.fullPath + \".\" + optionInfo.name : optionInfo.name));\n }\n else {\n this._tryEmitOptionChanged(optionInfo.name, args.value);\n }\n };\n Configuration.prototype._getNestedConfig = function (fullName) {\n for (var _i = 0, _a = this._nestedConfigurations; _i < _a.length; _i++) {\n var nestedConfig = _a[_i];\n if (nestedConfig.fullName === fullName) {\n return nestedConfig;\n }\n }\n return undefined;\n };\n Configuration.prototype._tryEmitOptionChanged = function (name, value) {\n if (this._emitOptionChanged) {\n this._emitOptionChanged(name, value);\n }\n };\n return Configuration;\n}());\nfunction bindOptionWatchers(config, vueInstance, innerChanges) {\n var targets = config && config.getOptionsToWatch();\n if (targets) {\n targets.forEach(function (optionName) {\n vueInstance.$watch(optionName, function (value) {\n if (innerChanges[optionName] !== value) {\n config.updateValue(optionName, value);\n }\n delete innerChanges[optionName];\n });\n });\n }\n}\nexports.bindOptionWatchers = bindOptionWatchers;\nfunction setEmitOptionChangedFunc(config, vueInstance, innerChanges) {\n config.emitOptionChanged = function (name, value) {\n var props = vueInstance.$props;\n if (props && !helpers_1.isEqual(value, props[name]) && vueInstance.$emit) {\n innerChanges[name] = value;\n vueInstance.$emit(\"update:\" + name, value);\n }\n };\n}\nexports.setEmitOptionChangedFunc = setEmitOptionChangedFunc;\nexports.default = Configuration;\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isVue3 = exports.getVueVersion = void 0;\nvar VueType = require(\"vue\");\nvar Vue = VueType.default || VueType;\nfunction getVueVersion() {\n var currentVersion = Vue.version;\n return Number(currentVersion.split(\".\")[0]);\n}\nexports.getVueVersion = getVueVersion;\nfunction isVue3() {\n return getVueVersion() === 3;\n}\nexports.isVue3 = isVue3;\n","/**\r\n * DevExtreme (core/templates/template_engine_registry.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.registerTemplateEngine = registerTemplateEngine;\r\nexports.setTemplateEngine = setTemplateEngine;\r\nexports.getCurrentTemplateEngine = getCurrentTemplateEngine;\r\nvar _type = require(\"../utils/type\");\r\nvar _errors = _interopRequireDefault(require(\"../errors\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar templateEngines = {};\r\nvar currentTemplateEngine;\r\n\r\nfunction registerTemplateEngine(name, templateEngine) {\r\n templateEngines[name] = templateEngine\r\n}\r\n\r\nfunction setTemplateEngine(templateEngine) {\r\n if ((0, _type.isString)(templateEngine)) {\r\n currentTemplateEngine = templateEngines[templateEngine];\r\n if (!currentTemplateEngine) {\r\n throw _errors.default.Error(\"E0020\", templateEngine)\r\n }\r\n } else {\r\n currentTemplateEngine = templateEngine\r\n }\r\n}\r\n\r\nfunction getCurrentTemplateEngine() {\r\n return currentTemplateEngine\r\n}\r\n","exports.read = function (buffer, offset, isLE, mLen, nBytes) {\n var e, m\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var nBits = -7\n var i = isLE ? (nBytes - 1) : 0\n var d = isLE ? -1 : 1\n var s = buffer[offset + i]\n\n i += d\n\n e = s & ((1 << (-nBits)) - 1)\n s >>= (-nBits)\n nBits += eLen\n for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n m = e & ((1 << (-nBits)) - 1)\n e >>= (-nBits)\n nBits += mLen\n for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}\n\n if (e === 0) {\n e = 1 - eBias\n } else if (e === eMax) {\n return m ? NaN : ((s ? -1 : 1) * Infinity)\n } else {\n m = m + Math.pow(2, mLen)\n e = e - eBias\n }\n return (s ? -1 : 1) * m * Math.pow(2, e - mLen)\n}\n\nexports.write = function (buffer, value, offset, isLE, mLen, nBytes) {\n var e, m, c\n var eLen = (nBytes * 8) - mLen - 1\n var eMax = (1 << eLen) - 1\n var eBias = eMax >> 1\n var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)\n var i = isLE ? 0 : (nBytes - 1)\n var d = isLE ? 1 : -1\n var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0\n\n value = Math.abs(value)\n\n if (isNaN(value) || value === Infinity) {\n m = isNaN(value) ? 1 : 0\n e = eMax\n } else {\n e = Math.floor(Math.log(value) / Math.LN2)\n if (value * (c = Math.pow(2, -e)) < 1) {\n e--\n c *= 2\n }\n if (e + eBias >= 1) {\n value += rt / c\n } else {\n value += rt * Math.pow(2, 1 - eBias)\n }\n if (value * c >= 2) {\n e++\n c /= 2\n }\n\n if (e + eBias >= eMax) {\n m = 0\n e = eMax\n } else if (e + eBias >= 1) {\n m = ((value * c) - 1) * Math.pow(2, mLen)\n e = e + eBias\n } else {\n m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)\n e = 0\n }\n }\n\n for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}\n\n e = (e << mLen) | m\n eLen += mLen\n for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}\n\n buffer[offset + i - d] |= s * 128\n}\n","/**\r\n * DevExtreme (events/core/emitter.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _common = require(\"../../core/utils/common\");\r\nvar _class = _interopRequireDefault(require(\"../../core/class\"));\r\nvar _callbacks = _interopRequireDefault(require(\"../../core/utils/callbacks\"));\r\nvar _extend = require(\"../../core/utils/extend\");\r\nvar _index = require(\"../utils/index\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar Emitter = _class.default.inherit({\r\n ctor: function(element) {\r\n this._$element = (0, _renderer.default)(element);\r\n this._cancelCallback = (0, _callbacks.default)();\r\n this._acceptCallback = (0, _callbacks.default)()\r\n },\r\n getElement: function() {\r\n return this._$element\r\n },\r\n validate: function(e) {\r\n return !(0, _index.isDxMouseWheelEvent)(e)\r\n },\r\n validatePointers: function(e) {\r\n return 1 === (0, _index.hasTouches)(e)\r\n },\r\n allowInterruptionByMouseWheel: function() {\r\n return true\r\n },\r\n configure: function(data) {\r\n (0, _extend.extend)(this, data)\r\n },\r\n addCancelCallback: function(callback) {\r\n this._cancelCallback.add(callback)\r\n },\r\n removeCancelCallback: function() {\r\n this._cancelCallback.empty()\r\n },\r\n _cancel: function(e) {\r\n this._cancelCallback.fire(this, e)\r\n },\r\n addAcceptCallback: function(callback) {\r\n this._acceptCallback.add(callback)\r\n },\r\n removeAcceptCallback: function() {\r\n this._acceptCallback.empty()\r\n },\r\n _accept: function(e) {\r\n this._acceptCallback.fire(this, e)\r\n },\r\n _requestAccept: function(e) {\r\n this._acceptRequestEvent = e\r\n },\r\n _forgetAccept: function() {\r\n this._accept(this._acceptRequestEvent);\r\n this._acceptRequestEvent = null\r\n },\r\n start: _common.noop,\r\n move: _common.noop,\r\n end: _common.noop,\r\n cancel: _common.noop,\r\n reset: function() {\r\n if (this._acceptRequestEvent) {\r\n this._accept(this._acceptRequestEvent)\r\n }\r\n },\r\n _fireEvent: function(eventName, e, params) {\r\n var eventData = (0, _extend.extend)({\r\n type: eventName,\r\n originalEvent: e,\r\n target: this._getEmitterTarget(e),\r\n delegateTarget: this.getElement().get(0)\r\n }, params);\r\n e = (0, _index.fireEvent)(eventData);\r\n if (e.cancel) {\r\n this._cancel(e)\r\n }\r\n return e\r\n },\r\n _getEmitterTarget: function(e) {\r\n return (this.delegateSelector ? (0, _renderer.default)(e.target).closest(this.delegateSelector) : this.getElement()).get(0)\r\n },\r\n dispose: _common.noop\r\n});\r\nvar _default = Emitter;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TemplatesManager = void 0;\nvar templates_discovering_1 = require(\"./templates-discovering\");\nvar domAdapter = require(\"devextreme/core/dom_adapter\");\nvar events = require(\"devextreme/events\");\nvar constants_1 = require(\"./constants\");\nvar helpers_1 = require(\"./helpers\");\nvar TemplatesManager = /** @class */ (function () {\n function TemplatesManager(component) {\n this._slots = {};\n this._templates = {};\n this._isDirty = false;\n this._component = component;\n this.discover();\n }\n TemplatesManager.prototype.discover = function () {\n var slots = templates_discovering_1.discover(this._component);\n this._slots = __assign(__assign({}, this._slots), slots);\n if (!helpers_1.allKeysAreEqual(this._templates, slots)) {\n this._prepareTemplates();\n }\n };\n Object.defineProperty(TemplatesManager.prototype, \"templates\", {\n get: function () {\n return this._templates;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(TemplatesManager.prototype, \"isDirty\", {\n get: function () {\n return this._isDirty;\n },\n enumerable: false,\n configurable: true\n });\n TemplatesManager.prototype.resetDirtyFlag = function () {\n this._isDirty = false;\n };\n TemplatesManager.prototype._prepareTemplates = function () {\n this._templates = {};\n for (var _i = 0, _a = Object.keys(this._slots); _i < _a.length; _i++) {\n var name_1 = _a[_i];\n this._templates[name_1] = this.createDxTemplate(name_1);\n }\n this._isDirty = true;\n };\n TemplatesManager.prototype.createDxTemplate = function (name) {\n var _this = this;\n return {\n render: function (data) {\n var rendered = (function (onRendered, counter) {\n if (counter === void 0) { counter = 0; }\n return function () {\n if (counter === 1 && onRendered) {\n onRendered();\n }\n counter++;\n };\n })(data.onRendered);\n var scopeData = { data: data.model, index: data.index, onRendered: rendered };\n var placeholder = document.createElement(\"div\");\n var container = data.container.get ? data.container.get(0) : data.container;\n var mountedTemplate = templates_discovering_1.mountTemplate(function () { return _this._slots[name]; }, _this._component, scopeData, name, placeholder);\n var element = mountedTemplate.$el;\n container.appendChild(element);\n domAdapter.setClass(element, constants_1.DX_TEMPLATE_WRAPPER_CLASS, true);\n if (element.nodeType === Node.TEXT_NODE) {\n var removalListener = document.createElement(container.nodeName === \"TABLE\" ? \"tbody\" : \"span\");\n removalListener.style.display = \"none\";\n container.appendChild(removalListener);\n events.one(removalListener, constants_1.DX_REMOVE_EVENT, mountedTemplate.$.appContext.app.unmount.bind(mountedTemplate));\n }\n else {\n events.one(element, constants_1.DX_REMOVE_EVENT, mountedTemplate.$.appContext.app.unmount.bind(mountedTemplate));\n }\n rendered();\n return element;\n }\n };\n };\n return TemplatesManager;\n}());\nexports.TemplatesManager = TemplatesManager;\n","/**\r\n * DevExtreme (core/templates/child_default_template.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.ChildDefaultTemplate = void 0;\r\nvar _template_base = require(\"./template_base\");\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _inherits(subClass, superClass) {\r\n if (\"function\" !== typeof superClass && null !== superClass) {\r\n throw new TypeError(\"Super expression must either be null or a function\")\r\n }\r\n subClass.prototype = Object.create(superClass && superClass.prototype, {\r\n constructor: {\r\n value: subClass,\r\n writable: true,\r\n configurable: true\r\n }\r\n });\r\n if (superClass) {\r\n _setPrototypeOf(subClass, superClass)\r\n }\r\n}\r\n\r\nfunction _setPrototypeOf(o, p) {\r\n _setPrototypeOf = Object.setPrototypeOf || function(o, p) {\r\n o.__proto__ = p;\r\n return o\r\n };\r\n return _setPrototypeOf(o, p)\r\n}\r\n\r\nfunction _createSuper(Derived) {\r\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\r\n return function() {\r\n var result, Super = _getPrototypeOf(Derived);\r\n if (hasNativeReflectConstruct) {\r\n var NewTarget = _getPrototypeOf(this).constructor;\r\n result = Reflect.construct(Super, arguments, NewTarget)\r\n } else {\r\n result = Super.apply(this, arguments)\r\n }\r\n return _possibleConstructorReturn(this, result)\r\n }\r\n}\r\n\r\nfunction _possibleConstructorReturn(self, call) {\r\n if (call && (\"object\" === _typeof(call) || \"function\" === typeof call)) {\r\n return call\r\n }\r\n return _assertThisInitialized(self)\r\n}\r\n\r\nfunction _assertThisInitialized(self) {\r\n if (void 0 === self) {\r\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")\r\n }\r\n return self\r\n}\r\n\r\nfunction _isNativeReflectConstruct() {\r\n if (\"undefined\" === typeof Reflect || !Reflect.construct) {\r\n return false\r\n }\r\n if (Reflect.construct.sham) {\r\n return false\r\n }\r\n if (\"function\" === typeof Proxy) {\r\n return true\r\n }\r\n try {\r\n Date.prototype.toString.call(Reflect.construct(Date, [], function() {}));\r\n return true\r\n } catch (e) {\r\n return false\r\n }\r\n}\r\n\r\nfunction _getPrototypeOf(o) {\r\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function(o) {\r\n return o.__proto__ || Object.getPrototypeOf(o)\r\n };\r\n return _getPrototypeOf(o)\r\n}\r\nvar ChildDefaultTemplate = function(_TemplateBase) {\r\n _inherits(ChildDefaultTemplate, _TemplateBase);\r\n var _super = _createSuper(ChildDefaultTemplate);\r\n\r\n function ChildDefaultTemplate(name) {\r\n var _this;\r\n _classCallCheck(this, ChildDefaultTemplate);\r\n _this = _super.call(this);\r\n _this.name = name;\r\n return _this\r\n }\r\n return ChildDefaultTemplate\r\n}(_template_base.TemplateBase);\r\nexports.ChildDefaultTemplate = ChildDefaultTemplate;\r\n","/**\r\n * DevExtreme (core/element.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.getPublicElement = getPublicElement;\r\nexports.setPublicElementWrapper = setPublicElementWrapper;\r\nvar strategy = function(element) {\r\n return element && element.get(0)\r\n};\r\n\r\nfunction getPublicElement(element) {\r\n return strategy(element)\r\n}\r\n\r\nfunction setPublicElementWrapper(newStrategy) {\r\n strategy = newStrategy\r\n}\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction pullAllChildren(directChildren, allChildren, config) {\n if (!directChildren || directChildren.length === 0) {\n return;\n }\n pullConfigComponents(directChildren, allChildren, config);\n}\nexports.pullAllChildren = pullAllChildren;\nfunction pullConfigComponents(children, nodes, ownerConfig) {\n children.forEach(function (node) {\n nodes.push(node);\n if (!node.componentOptions) {\n return;\n }\n var configComponent = node.componentOptions.Ctor;\n if (!configComponent.$_optionName) {\n return;\n }\n var initialValues = __assign(__assign({}, configComponent.$_predefinedProps), node.componentOptions.propsData);\n var config = ownerConfig.createNested(configComponent.$_optionName, initialValues, configComponent.$_isCollectionItem, configComponent.$_expectedChildren);\n node.componentOptions.$_config = config;\n node.componentOptions.$_innerChanges = {};\n if (node.componentOptions.children) {\n pullConfigComponents(node.componentOptions.children, nodes, config);\n }\n });\n}\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction uppercaseFirst(value) {\n return value[0].toUpperCase() + value.substr(1);\n}\nexports.uppercaseFirst = uppercaseFirst;\nfunction lowercaseFirst(value) {\n return value[0].toLowerCase() + value.substr(1);\n}\nexports.lowercaseFirst = lowercaseFirst;\nfunction camelize(value) {\n return lowercaseFirst(value.split(\"-\").map(function (v) { return uppercaseFirst(v); }).join(\"\"));\n}\nexports.camelize = camelize;\nfunction toComparable(value) {\n return value instanceof Date ? value.getTime() : value;\n}\nexports.toComparable = toComparable;\nfunction isEqual(value1, value2) {\n if (toComparable(value1) === toComparable(value2)) {\n return true;\n }\n if (Array.isArray(value1) && Array.isArray(value2)) {\n return value1.length === 0 && value2.length === 0;\n }\n return false;\n}\nexports.isEqual = isEqual;\nfunction forEachChildNode(el, callback) {\n Array.prototype.slice.call(el.childNodes).forEach(callback);\n}\nexports.forEachChildNode = forEachChildNode;\nfunction allKeysAreEqual(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n if (obj1Keys.length !== Object.keys(obj2).length) {\n return false;\n }\n for (var _i = 0, obj1Keys_1 = obj1Keys; _i < obj1Keys_1.length; _i++) {\n var key = obj1Keys_1[_i];\n if (!obj2.hasOwnProperty(key)) {\n return false;\n }\n }\n return true;\n}\nexports.allKeysAreEqual = allKeysAreEqual;\nfunction getOptionValue(options, optionPath) {\n var value = options;\n optionPath.split(\".\").forEach(function (p) {\n var optionInfo = getOptionInfo(p);\n value = optionInfo.isCollection ?\n value[optionInfo.name] && value[optionInfo.name][optionInfo.index] :\n value[optionInfo.name];\n });\n return value;\n}\nexports.getOptionValue = getOptionValue;\nfunction getOptionInfo(name) {\n var parts = name.split(\"[\");\n if (parts.length === 1) {\n return {\n isCollection: false,\n name: name,\n fullName: name\n };\n }\n return {\n isCollection: true,\n name: parts[0],\n fullName: name,\n index: Number(parts[1].slice(0, -1))\n };\n}\nexports.getOptionInfo = getOptionInfo;\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DX_REMOVE_EVENT = exports.DX_TEMPLATE_WRAPPER_CLASS = void 0;\nvar DX_TEMPLATE_WRAPPER_CLASS = \"dx-template-wrapper\";\nexports.DX_TEMPLATE_WRAPPER_CLASS = DX_TEMPLATE_WRAPPER_CLASS;\nvar DX_REMOVE_EVENT = \"dxremove\";\nexports.DX_REMOVE_EVENT = DX_REMOVE_EVENT;\n","/**\r\n * DevExtreme (core/options/option_manager.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.OptionManager = void 0;\r\nvar _data = require(\"../utils/data\");\r\nvar _common = require(\"../utils/common\");\r\nvar _comparator = require(\"../utils/comparator\");\r\nvar _extend = require(\"../utils/extend\");\r\nvar _type = require(\"../utils/type\");\r\nvar _utils = require(\"./utils\");\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\nvar cachedGetters = {};\r\nvar cachedSetters = {};\r\nvar OptionManager = function() {\r\n function OptionManager(options, optionsByReference) {\r\n _classCallCheck(this, OptionManager);\r\n this._options = options;\r\n this._optionsByReference = optionsByReference;\r\n this._changingCallback;\r\n this._changedCallback;\r\n this._namePreparedCallbacks\r\n }\r\n _createClass(OptionManager, [{\r\n key: \"_setByReference\",\r\n value: function(options, rulesOptions) {\r\n (0, _extend.extend)(true, options, rulesOptions);\r\n for (var fieldName in this._optionsByReference) {\r\n if (Object.prototype.hasOwnProperty.call(rulesOptions, fieldName)) {\r\n options[fieldName] = rulesOptions[fieldName]\r\n }\r\n }\r\n }\r\n }, {\r\n key: \"_setPreparedValue\",\r\n value: function(name, value, merge, silent) {\r\n var previousValue = this.get(this._options, name, false);\r\n if (!(0, _comparator.equals)(previousValue, value)) {\r\n var path = name.split(/[.[]/);\r\n !silent && this._changingCallback(name, previousValue, value);\r\n cachedSetters[name] = cachedSetters[name] || (0, _data.compileSetter)(name);\r\n cachedSetters[name](this._options, value, {\r\n functionsAsIs: true,\r\n merge: (0, _type.isDefined)(merge) ? merge : !this._optionsByReference[name],\r\n unwrapObservables: path.length > 1 && !!this._optionsByReference[path[0]]\r\n });\r\n !silent && this._changedCallback(name, value, previousValue)\r\n }\r\n }\r\n }, {\r\n key: \"_prepareRelevantNames\",\r\n value: function(options, name, value, silent) {\r\n if ((0, _type.isPlainObject)(value)) {\r\n for (var valueName in value) {\r\n this._prepareRelevantNames(options, \"\".concat(name, \".\").concat(valueName), value[valueName])\r\n }\r\n }\r\n this._namePreparedCallbacks(options, name, value, silent)\r\n }\r\n }, {\r\n key: \"get\",\r\n value: function() {\r\n var options = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : this._options;\r\n var name = arguments.length > 1 ? arguments[1] : void 0;\r\n var unwrapObservables = arguments.length > 2 ? arguments[2] : void 0;\r\n cachedGetters[name] = cachedGetters[name] || (0, _data.compileGetter)(name);\r\n return cachedGetters[name](options, {\r\n functionsAsIs: true,\r\n unwrapObservables: unwrapObservables\r\n })\r\n }\r\n }, {\r\n key: \"set\",\r\n value: function(options, value, merge, silent) {\r\n options = (0, _utils.normalizeOptions)(options, value);\r\n for (var name in options) {\r\n this._prepareRelevantNames(options, name, options[name], silent)\r\n }\r\n for (var _name in options) {\r\n this._setPreparedValue(_name, options[_name], merge, silent)\r\n }\r\n }\r\n }, {\r\n key: \"onRelevantNamesPrepared\",\r\n value: function(callBack) {\r\n this._namePreparedCallbacks = callBack\r\n }\r\n }, {\r\n key: \"onChanging\",\r\n value: function(callBack) {\r\n this._changingCallback = callBack\r\n }\r\n }, {\r\n key: \"onChanged\",\r\n value: function(callBack) {\r\n this._changedCallback = callBack\r\n }\r\n }, {\r\n key: \"dispose\",\r\n value: function() {\r\n this._changingCallback = _common.noop;\r\n this._changedCallback = _common.noop\r\n }\r\n }]);\r\n return OptionManager\r\n}();\r\nexports.OptionManager = OptionManager;\r\n","/**\r\n * DevExtreme (core/templates/template.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.Template = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../renderer\"));\r\nvar _template_base = require(\"./template_base\");\r\nvar _dom = require(\"../utils/dom\");\r\nvar _template_engine_registry = require(\"./template_engine_registry\");\r\nrequire(\"./template_engines\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\n\r\nfunction _inherits(subClass, superClass) {\r\n if (\"function\" !== typeof superClass && null !== superClass) {\r\n throw new TypeError(\"Super expression must either be null or a function\")\r\n }\r\n subClass.prototype = Object.create(superClass && superClass.prototype, {\r\n constructor: {\r\n value: subClass,\r\n writable: true,\r\n configurable: true\r\n }\r\n });\r\n if (superClass) {\r\n _setPrototypeOf(subClass, superClass)\r\n }\r\n}\r\n\r\nfunction _setPrototypeOf(o, p) {\r\n _setPrototypeOf = Object.setPrototypeOf || function(o, p) {\r\n o.__proto__ = p;\r\n return o\r\n };\r\n return _setPrototypeOf(o, p)\r\n}\r\n\r\nfunction _createSuper(Derived) {\r\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\r\n return function() {\r\n var result, Super = _getPrototypeOf(Derived);\r\n if (hasNativeReflectConstruct) {\r\n var NewTarget = _getPrototypeOf(this).constructor;\r\n result = Reflect.construct(Super, arguments, NewTarget)\r\n } else {\r\n result = Super.apply(this, arguments)\r\n }\r\n return _possibleConstructorReturn(this, result)\r\n }\r\n}\r\n\r\nfunction _possibleConstructorReturn(self, call) {\r\n if (call && (\"object\" === _typeof(call) || \"function\" === typeof call)) {\r\n return call\r\n }\r\n return _assertThisInitialized(self)\r\n}\r\n\r\nfunction _assertThisInitialized(self) {\r\n if (void 0 === self) {\r\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")\r\n }\r\n return self\r\n}\r\n\r\nfunction _isNativeReflectConstruct() {\r\n if (\"undefined\" === typeof Reflect || !Reflect.construct) {\r\n return false\r\n }\r\n if (Reflect.construct.sham) {\r\n return false\r\n }\r\n if (\"function\" === typeof Proxy) {\r\n return true\r\n }\r\n try {\r\n Date.prototype.toString.call(Reflect.construct(Date, [], function() {}));\r\n return true\r\n } catch (e) {\r\n return false\r\n }\r\n}\r\n\r\nfunction _getPrototypeOf(o) {\r\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function(o) {\r\n return o.__proto__ || Object.getPrototypeOf(o)\r\n };\r\n return _getPrototypeOf(o)\r\n}(0, _template_engine_registry.registerTemplateEngine)(\"default\", {\r\n compile: function(element) {\r\n return (0, _dom.normalizeTemplateElement)(element)\r\n },\r\n render: function(template, model, index) {\r\n return template.clone()\r\n }\r\n});\r\n(0, _template_engine_registry.setTemplateEngine)(\"default\");\r\nvar Template = function(_TemplateBase) {\r\n _inherits(Template, _TemplateBase);\r\n var _super = _createSuper(Template);\r\n\r\n function Template(element) {\r\n var _this;\r\n _classCallCheck(this, Template);\r\n _this = _super.call(this);\r\n _this._element = element;\r\n return _this\r\n }\r\n _createClass(Template, [{\r\n key: \"_renderCore\",\r\n value: function(options) {\r\n var transclude = options.transclude;\r\n if (!transclude && !this._compiledTemplate) {\r\n this._compiledTemplate = (0, _template_engine_registry.getCurrentTemplateEngine)().compile(this._element)\r\n }\r\n return (0, _renderer.default)(\"
\").append(transclude ? this._element : (0, _template_engine_registry.getCurrentTemplateEngine)().render(this._compiledTemplate, options.model, options.index)).contents()\r\n }\r\n }, {\r\n key: \"source\",\r\n value: function() {\r\n return (0, _renderer.default)(this._element).clone()\r\n }\r\n }]);\r\n return Template\r\n}(_template_base.TemplateBase);\r\nexports.Template = Template;\r\n","/**\r\n * DevExtreme (events/hover.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.end = exports.start = void 0;\r\nvar _events_engine = _interopRequireDefault(require(\"../events/core/events_engine\"));\r\nvar _element_data = require(\"../core/element_data\");\r\nvar _class = _interopRequireDefault(require(\"../core/class\"));\r\nvar _devices = _interopRequireDefault(require(\"../core/devices\"));\r\nvar _event_registrator = _interopRequireDefault(require(\"./core/event_registrator\"));\r\nvar _index = require(\"./utils/index\");\r\nvar _pointer = _interopRequireDefault(require(\"./pointer\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar HOVERSTART_NAMESPACE = \"dxHoverStart\";\r\nvar HOVERSTART = \"dxhoverstart\";\r\nexports.start = HOVERSTART;\r\nvar POINTERENTER_NAMESPACED_EVENT_NAME = (0, _index.addNamespace)(_pointer.default.enter, HOVERSTART_NAMESPACE);\r\nvar HOVEREND_NAMESPACE = \"dxHoverEnd\";\r\nvar HOVEREND = \"dxhoverend\";\r\nexports.end = HOVEREND;\r\nvar POINTERLEAVE_NAMESPACED_EVENT_NAME = (0, _index.addNamespace)(_pointer.default.leave, HOVEREND_NAMESPACE);\r\nvar Hover = _class.default.inherit({\r\n noBubble: true,\r\n ctor: function() {\r\n this._handlerArrayKeyPath = this._eventNamespace + \"_HandlerStore\"\r\n },\r\n setup: function(element) {\r\n (0, _element_data.data)(element, this._handlerArrayKeyPath, {})\r\n },\r\n add: function(element, handleObj) {\r\n var that = this;\r\n var handler = function(e) {\r\n that._handler(e)\r\n };\r\n _events_engine.default.on(element, this._originalEventName, handleObj.selector, handler);\r\n (0, _element_data.data)(element, this._handlerArrayKeyPath)[handleObj.guid] = handler\r\n },\r\n _handler: function(e) {\r\n if ((0, _index.isTouchEvent)(e) || _devices.default.isSimulator()) {\r\n return\r\n }(0, _index.fireEvent)({\r\n type: this._eventName,\r\n originalEvent: e,\r\n delegateTarget: e.delegateTarget\r\n })\r\n },\r\n remove: function(element, handleObj) {\r\n var handler = (0, _element_data.data)(element, this._handlerArrayKeyPath)[handleObj.guid];\r\n _events_engine.default.off(element, this._originalEventName, handleObj.selector, handler)\r\n },\r\n teardown: function(element) {\r\n (0, _element_data.removeData)(element, this._handlerArrayKeyPath)\r\n }\r\n});\r\nvar HoverStart = Hover.inherit({\r\n ctor: function() {\r\n this._eventNamespace = HOVERSTART_NAMESPACE;\r\n this._eventName = HOVERSTART;\r\n this._originalEventName = POINTERENTER_NAMESPACED_EVENT_NAME;\r\n this.callBase()\r\n },\r\n _handler: function(e) {\r\n var pointers = e.pointers || [];\r\n if (!pointers.length) {\r\n this.callBase(e)\r\n }\r\n }\r\n});\r\nvar HoverEnd = Hover.inherit({\r\n ctor: function() {\r\n this._eventNamespace = HOVEREND_NAMESPACE;\r\n this._eventName = HOVEREND;\r\n this._originalEventName = POINTERLEAVE_NAMESPACED_EVENT_NAME;\r\n this.callBase()\r\n }\r\n});\r\n(0, _event_registrator.default)(HOVERSTART, new HoverStart);\r\n(0, _event_registrator.default)(HOVEREND, new HoverEnd);\r\n","/**\r\n * DevExtreme (core/template_manager.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.TemplateManager = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"./renderer\"));\r\nvar _type = require(\"./utils/type\");\r\nvar _common = require(\"./utils/common\");\r\nvar _extend = require(\"./utils/extend\");\r\nvar _function_template = require(\"./templates/function_template\");\r\nvar _empty_template = require(\"./templates/empty_template\");\r\nvar _template_manager = require(\"./utils/template_manager\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _classCallCheck(instance, Constructor) {\r\n if (!(instance instanceof Constructor)) {\r\n throw new TypeError(\"Cannot call a class as a function\")\r\n }\r\n}\r\n\r\nfunction _defineProperties(target, props) {\r\n for (var i = 0; i < props.length; i++) {\r\n var descriptor = props[i];\r\n descriptor.enumerable = descriptor.enumerable || false;\r\n descriptor.configurable = true;\r\n if (\"value\" in descriptor) {\r\n descriptor.writable = true\r\n }\r\n Object.defineProperty(target, descriptor.key, descriptor)\r\n }\r\n}\r\n\r\nfunction _createClass(Constructor, protoProps, staticProps) {\r\n if (protoProps) {\r\n _defineProperties(Constructor.prototype, protoProps)\r\n }\r\n if (staticProps) {\r\n _defineProperties(Constructor, staticProps)\r\n }\r\n return Constructor\r\n}\r\nvar TEXT_NODE = 3;\r\nvar ANONYMOUS_TEMPLATE_NAME = \"template\";\r\nvar TEMPLATE_OPTIONS_NAME = \"dxTemplate\";\r\nvar TEMPLATE_WRAPPER_CLASS = \"dx-template-wrapper\";\r\nvar DX_POLYMORPH_WIDGET_TEMPLATE = new _function_template.FunctionTemplate(function(_ref) {\r\n var model = _ref.model,\r\n parent = _ref.parent;\r\n var widgetName = model.widget;\r\n if (!widgetName) {\r\n return (0, _renderer.default)()\r\n }\r\n var widgetElement = (0, _renderer.default)(\"
\");\r\n var widgetOptions = model.options || {};\r\n if (parent) {\r\n parent._createComponent(widgetElement, widgetName, widgetOptions)\r\n } else {\r\n widgetElement[widgetName](widgetOptions)\r\n }\r\n return widgetElement\r\n});\r\nvar TemplateManager = function() {\r\n function TemplateManager(createElement, anonymousTemplateName) {\r\n _classCallCheck(this, TemplateManager);\r\n this._tempTemplates = [];\r\n this._defaultTemplates = {};\r\n this._anonymousTemplateName = anonymousTemplateName || ANONYMOUS_TEMPLATE_NAME;\r\n this._createElement = createElement || _template_manager.defaultCreateElement;\r\n this._createTemplateIfNeeded = this._createTemplateIfNeeded.bind(this)\r\n }\r\n _createClass(TemplateManager, [{\r\n key: \"addDefaultTemplates\",\r\n value: function(templates) {\r\n this._defaultTemplates = (0, _extend.extend)({}, this._defaultTemplates, templates)\r\n }\r\n }, {\r\n key: \"dispose\",\r\n value: function() {\r\n this._tempTemplates.forEach(function(tempTemplate) {\r\n tempTemplate.template.dispose && tempTemplate.template.dispose()\r\n });\r\n this._tempTemplates = []\r\n }\r\n }, {\r\n key: \"extractTemplates\",\r\n value: function($el) {\r\n var templates = this._extractTemplates($el);\r\n var anonymousTemplateMeta = this._extractAnonymousTemplate($el);\r\n return {\r\n templates: templates,\r\n anonymousTemplateMeta: anonymousTemplateMeta\r\n }\r\n }\r\n }, {\r\n key: \"_extractTemplates\",\r\n value: function($el) {\r\n var _this = this;\r\n var templates = (0, _template_manager.findTemplates)($el, TEMPLATE_OPTIONS_NAME);\r\n var suitableTemplates = (0, _template_manager.suitableTemplatesByName)(templates);\r\n templates.forEach(function(_ref2) {\r\n var element = _ref2.element,\r\n name = _ref2.options.name;\r\n if (element === suitableTemplates[name]) {\r\n (0, _renderer.default)(element).addClass(TEMPLATE_WRAPPER_CLASS).detach()\r\n } else {\r\n (0, _renderer.default)(element).remove()\r\n }\r\n });\r\n return Object.keys(suitableTemplates).map(function(name) {\r\n return {\r\n name: name,\r\n template: _this._createTemplate(suitableTemplates[name])\r\n }\r\n })\r\n }\r\n }, {\r\n key: \"_extractAnonymousTemplate\",\r\n value: function($el) {\r\n var $anonymousTemplate = $el.contents().detach();\r\n var $notJunkTemplateContent = $anonymousTemplate.filter(function(_, element) {\r\n var isTextNode = element.nodeType === TEXT_NODE;\r\n var isEmptyText = (0, _renderer.default)(element).text().trim().length < 1;\r\n return !(isTextNode && isEmptyText)\r\n });\r\n return $notJunkTemplateContent.length > 0 ? {\r\n template: this._createTemplate($anonymousTemplate),\r\n name: this._anonymousTemplateName\r\n } : {}\r\n }\r\n }, {\r\n key: \"_createTemplateIfNeeded\",\r\n value: function(templateSource) {\r\n var cachedTemplate = this._tempTemplates.filter(function(tempTemplate) {\r\n return tempTemplate.source === (0, _template_manager.templateKey)(templateSource)\r\n })[0];\r\n if (cachedTemplate) {\r\n return cachedTemplate.template\r\n }\r\n var template = this._createTemplate(templateSource);\r\n this._tempTemplates.push({\r\n template: template,\r\n source: (0, _template_manager.templateKey)(templateSource)\r\n });\r\n return template\r\n }\r\n }, {\r\n key: \"_createTemplate\",\r\n value: function(templateSource) {\r\n return this._createElement((0, _template_manager.validateTemplateSource)(templateSource))\r\n }\r\n }, {\r\n key: \"getTemplate\",\r\n value: function(templateSource, templates, _ref3, context) {\r\n var _this2 = this;\r\n var isAsyncTemplate = _ref3.isAsyncTemplate,\r\n skipTemplates = _ref3.skipTemplates;\r\n if (!(0, _type.isFunction)(templateSource)) {\r\n return (0, _template_manager.acquireTemplate)(templateSource, this._createTemplateIfNeeded, templates, isAsyncTemplate, skipTemplates, this._defaultTemplates)\r\n }\r\n return new _function_template.FunctionTemplate(function(options) {\r\n var templateSourceResult = templateSource.apply(context, (0, _template_manager.getNormalizedTemplateArgs)(options));\r\n if (!(0, _type.isDefined)(templateSourceResult)) {\r\n return new _empty_template.EmptyTemplate\r\n }\r\n var dispose = false;\r\n var template = (0, _template_manager.acquireTemplate)(templateSourceResult, function(templateSource) {\r\n if (templateSource.nodeType || (0, _type.isRenderer)(templateSource) && !(0, _renderer.default)(templateSource).is(\"script\")) {\r\n return new _function_template.FunctionTemplate(function() {\r\n return templateSource\r\n })\r\n }\r\n dispose = true;\r\n return _this2._createTemplate(templateSource)\r\n }, templates, isAsyncTemplate, skipTemplates, _this2._defaultTemplates);\r\n var result = template.render(options);\r\n dispose && template.dispose && template.dispose();\r\n return result\r\n })\r\n }\r\n }, {\r\n key: \"anonymousTemplateName\",\r\n get: function() {\r\n return this._anonymousTemplateName\r\n }\r\n }], [{\r\n key: \"createDefaultOptions\",\r\n value: function() {\r\n return {\r\n integrationOptions: {\r\n watchMethod: function(fn, callback) {\r\n var options = arguments.length > 2 && void 0 !== arguments[2] ? arguments[2] : {};\r\n if (!options.skipImmediate) {\r\n callback(fn())\r\n }\r\n return _common.noop\r\n },\r\n templates: {\r\n \"dx-polymorph-widget\": DX_POLYMORPH_WIDGET_TEMPLATE\r\n },\r\n useDeferUpdateForTemplates: false\r\n }\r\n }\r\n }\r\n }]);\r\n return TemplateManager\r\n}();\r\nexports.TemplateManager = TemplateManager;\r\n","/**\r\n * DevExtreme (events/index.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.Event = exports.triggerHandler = exports.trigger = exports.off = exports.one = exports.on = void 0;\r\nvar _events_engine = _interopRequireDefault(require(\"./core/events_engine\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar on = _events_engine.default.on;\r\nexports.on = on;\r\nvar one = _events_engine.default.one;\r\nexports.one = one;\r\nvar off = _events_engine.default.off;\r\nexports.off = off;\r\nvar trigger = _events_engine.default.trigger;\r\nexports.trigger = trigger;\r\nvar triggerHandler = _events_engine.default.triggerHandler;\r\nexports.triggerHandler = triggerHandler;\r\nvar Event = _events_engine.default.Event;\r\nexports.Event = Event;\r\n","/**\r\n * DevExtreme (ui/overlay/z_index.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.clearStack = exports.remove = exports.create = exports.base = void 0;\r\nvar _common = require(\"../../core/utils/common\");\r\nvar baseZIndex = 1500;\r\nvar zIndexStack = [];\r\nvar base = function(ZIndex) {\r\n baseZIndex = (0, _common.ensureDefined)(ZIndex, baseZIndex);\r\n return baseZIndex\r\n};\r\nexports.base = base;\r\nvar create = function() {\r\n var baseIndex = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : baseZIndex;\r\n var length = zIndexStack.length;\r\n var index = (length ? zIndexStack[length - 1] : baseIndex) + 1;\r\n zIndexStack.push(index);\r\n return index\r\n};\r\nexports.create = create;\r\nvar remove = function(zIndex) {\r\n var position = zIndexStack.indexOf(zIndex);\r\n if (position >= 0) {\r\n zIndexStack.splice(position, 1)\r\n }\r\n};\r\nexports.remove = remove;\r\nvar clearStack = function() {\r\n zIndexStack = []\r\n};\r\nexports.clearStack = clearStack;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar VueType = require(\"vue\");\nvar events = require(\"devextreme/events\");\nvar children_processing_1 = require(\"./children-processing\");\nvar configuration_1 = require(\"./configuration\");\nvar configuration_component_1 = require(\"./configuration-component\");\nvar constants_1 = require(\"./constants\");\nvar helpers_1 = require(\"./helpers\");\nvar templates_manager_1 = require(\"./templates-manager\");\nvar Vue = VueType.default || VueType;\nvar BaseComponent = function () { return Vue.extend({\n inheritAttrs: false,\n data: function () {\n return {\n eventBus: new Vue()\n };\n },\n provide: function () {\n return {\n eventBus: this.eventBus\n };\n },\n render: function (createElement) {\n var children = [];\n if (this.$_config.cleanNested) {\n this.$_config.cleanNested();\n }\n children_processing_1.pullAllChildren(this.$slots.default, children, this.$_config);\n this.$_processChildren(children);\n return createElement(\"div\", {\n attrs: { id: this.$attrs.id }\n }, children);\n },\n beforeUpdate: function () {\n this.$_config.setPrevNestedOptions(this.$_config.getNestedOptionValues());\n },\n updated: function () {\n this.$children.forEach(function (child) { return configuration_component_1.initOptionChangedFunc(configuration_component_1.getConfig(child), child, configuration_component_1.getInnerChanges(child)); });\n this.$_templatesManager.discover();\n this.$_instance.beginUpdate();\n if (this.$_templatesManager.isDirty) {\n this.$_instance.option(\"integrationOptions.templates\", this.$_templatesManager.templates);\n for (var _i = 0, _a = Object.keys(this.$_templatesManager.templates); _i < _a.length; _i++) {\n var name_1 = _a[_i];\n this.$_instance.option(name_1, name_1);\n }\n this.$_templatesManager.resetDirtyFlag();\n }\n for (var _b = 0, _c = Object.keys(this.$_pendingOptions); _b < _c.length; _b++) {\n var name_2 = _c[_b];\n this.$_instance.option(name_2, this.$_pendingOptions[name_2]);\n }\n this.$_pendingOptions = {};\n this.$_applyConfigurationChanges();\n this.$_instance.endUpdate();\n this.eventBus.$emit(\"updated\");\n },\n beforeDestroy: function () {\n var instance = this.$_instance;\n if (instance) {\n events.triggerHandler(this.$el, constants_1.DX_REMOVE_EVENT);\n instance.dispose();\n }\n },\n created: function () {\n var _this = this;\n this.$_config = new configuration_1.default(function (n, v) { return _this.$_pendingOptions[n] = v; }, null, this.$options.propsData && __assign({}, this.$options.propsData), this.$_expectedChildren);\n this.$_innerChanges = {};\n this.$_config.init(this.$props && Object.keys(this.$props));\n },\n methods: {\n $_applyConfigurationChanges: function () {\n var _this = this;\n this.$_config.componentsCountChanged.forEach(function (_a) {\n var optionPath = _a.optionPath, isCollection = _a.isCollection, removed = _a.removed;\n var options = _this.$_config.getNestedOptionValues();\n if (!isCollection && removed) {\n _this.$_instance.resetOption(optionPath);\n }\n else {\n _this.$_instance.option(optionPath, helpers_1.getOptionValue(options, optionPath));\n }\n });\n this.$_config.cleanComponentsCountChanged();\n },\n $_createWidget: function (element) {\n var thisComponent = this;\n thisComponent.$_pendingOptions = {};\n thisComponent.$_templatesManager = new templates_manager_1.TemplatesManager(this);\n var config = this.$_config;\n var options = __assign(__assign(__assign(__assign({}, this.$options.propsData), config.initialValues), config.getNestedOptionValues()), this.$_getIntegrationOptions());\n var instance = new this.$_WidgetClass(element, options);\n thisComponent.$_instance = instance;\n instance.on(\"optionChanged\", function (args) { return config.onOptionChanged(args); });\n configuration_1.setEmitOptionChangedFunc(config, this, this.$_innerChanges);\n configuration_1.bindOptionWatchers(config, this, this.$_innerChanges);\n this.$_createEmitters(instance);\n },\n $_getIntegrationOptions: function () {\n var result = __assign({ integrationOptions: {\n watchMethod: this.$_getWatchMethod(),\n } }, this.$_getExtraIntegrationOptions());\n if (this.$_templatesManager.isDirty) {\n var templates = this.$_templatesManager.templates;\n result.integrationOptions.templates = templates;\n for (var _i = 0, _a = Object.keys(templates); _i < _a.length; _i++) {\n var name_3 = _a[_i];\n result[name_3] = name_3;\n }\n this.$_templatesManager.resetDirtyFlag();\n }\n return result;\n },\n $_getWatchMethod: function () {\n var _this = this;\n return function (valueGetter, valueChangeCallback, options) {\n options = options || {};\n if (!options.skipImmediate) {\n valueChangeCallback(valueGetter());\n }\n return _this.$watch(function () {\n return valueGetter();\n }, function (newValue, oldValue) {\n if (helpers_1.toComparable(oldValue) !== helpers_1.toComparable(newValue) || options.deep) {\n valueChangeCallback(newValue);\n }\n }, {\n deep: options.deep\n });\n };\n },\n $_getExtraIntegrationOptions: function () {\n return {};\n },\n $_processChildren: function (_children) {\n return;\n },\n $_createEmitters: function (instance) {\n var _this = this;\n Object.keys(this.$listeners).forEach(function (listenerName) {\n var eventName = helpers_1.camelize(listenerName);\n instance.on(eventName, function (e) {\n _this.$emit(listenerName, e);\n });\n });\n }\n }\n}); };\nexports.BaseComponent = BaseComponent;\nfunction cleanWidgetNode(node) {\n var removedNodes = [];\n helpers_1.forEachChildNode(node, function (childNode) {\n var parent = childNode.parentNode;\n var isExtension = childNode.hasAttribute && childNode.hasAttribute(\"isExtension\");\n if ((childNode.nodeName === \"#comment\" || isExtension) && parent) {\n removedNodes.push(childNode);\n parent.removeChild(childNode);\n }\n });\n return removedNodes;\n}\nfunction restoreNodes(el, nodes) {\n nodes.forEach(function (node) {\n el.appendChild(node);\n });\n}\nvar DxComponent = function () { return BaseComponent().extend({\n methods: {\n $_getExtraIntegrationOptions: function () {\n return {\n onInitializing: function () {\n this.beginUpdate();\n }\n };\n },\n $_processChildren: function (children) {\n children.forEach(function (childNode) {\n if (!childNode.componentOptions) {\n return;\n }\n childNode.componentOptions.$_hasOwner = true;\n });\n },\n },\n mounted: function () {\n var _this = this;\n var nodes = cleanWidgetNode(this.$el);\n this.$_createWidget(this.$el);\n this.$_instance.endUpdate();\n restoreNodes(this.$el, nodes);\n if (this.$slots && this.$slots.default) {\n this.$slots.default.forEach(function (child) {\n var childExtension = child.componentInstance;\n if (childExtension && childExtension.$_isExtension) {\n childExtension.attachTo(_this.$el);\n }\n });\n }\n }\n}); };\nexports.DxComponent = DxComponent;\n","/**\r\n * DevExtreme (core/utils/comparator.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.equals = void 0;\r\nvar _dom_adapter = _interopRequireDefault(require(\"../dom_adapter\"));\r\nvar _data = require(\"./data\");\r\nvar _type = require(\"./type\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\nvar hasNegation = function(oldValue, newValue) {\r\n return 1 / oldValue === 1 / newValue\r\n};\r\nvar equals = function(oldValue, newValue) {\r\n oldValue = (0, _data.toComparable)(oldValue, true);\r\n newValue = (0, _data.toComparable)(newValue, true);\r\n if (oldValue && newValue && (0, _type.isRenderer)(oldValue) && (0, _type.isRenderer)(newValue)) {\r\n return newValue.is(oldValue)\r\n }\r\n var oldValueIsNaN = oldValue !== oldValue;\r\n var newValueIsNaN = newValue !== newValue;\r\n if (oldValueIsNaN && newValueIsNaN) {\r\n return true\r\n }\r\n if (0 === oldValue && 0 === newValue) {\r\n return hasNegation(oldValue, newValue)\r\n }\r\n if (null === oldValue || \"object\" !== _typeof(oldValue) || _dom_adapter.default.isElementNode(oldValue)) {\r\n return oldValue === newValue\r\n }\r\n return false\r\n};\r\nexports.equals = equals;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.discover = exports.mountTemplate = void 0;\nvar vue_helper_1 = require(\"./vue-helper\");\nvar vue_1 = require(\"vue\");\nvar TEMPLATE_PROP = \"template\";\nfunction asConfigurable(component) {\n var componentOptions = component;\n if (!componentOptions) {\n return;\n }\n if (!componentOptions.$_config || !componentOptions.$_config.name) {\n return undefined;\n }\n return componentOptions;\n}\nfunction hasTemplate(component) {\n return TEMPLATE_PROP in component.type.props && vue_helper_1.configurationTemplate(component);\n}\nfunction discover(component) {\n var templates = {};\n var namedTeplates = vue_helper_1.declaredTemplates(component);\n for (var slotName in namedTeplates) {\n if (slotName === \"default\" && component.$slots.default) {\n continue;\n }\n var slot = namedTeplates[slotName];\n if (!slot) {\n continue;\n }\n templates[slotName] = slot;\n }\n var componentChildren = vue_helper_1.getChildren(component);\n for (var _i = 0, componentChildren_1 = componentChildren; _i < componentChildren_1.length; _i++) {\n var childComponent = componentChildren_1[_i];\n var configurable = asConfigurable(childComponent);\n if (!configurable) {\n continue;\n }\n var defaultSlot = vue_helper_1.configurationDefaultTemplate(childComponent);\n if (!defaultSlot || !hasTemplate(childComponent)) {\n continue;\n }\n var templateName = configurable.$_config.fullPath + \".\" + TEMPLATE_PROP;\n templates[templateName] = defaultSlot;\n }\n return templates;\n}\nexports.discover = discover;\nfunction clearConfiguration(content) {\n var newContent = [];\n content.forEach(function (item) {\n var configurable = vue_helper_1.getConfigurationOptions(item);\n if (!configurable || !configurable.$_optionName) {\n newContent.push(item);\n }\n });\n return newContent;\n}\nfunction mountTemplate(getSlot, parent, data, name, placeholder) {\n return vue_helper_1.mount({\n name: name,\n inject: [\"eventBus\"],\n created: function () {\n this.eventBus.add(this.$_updatedHandler);\n },\n mounted: function () {\n data.onRendered();\n },\n unmounted: function () {\n this.eventBus.remove(this.$_updatedHandler);\n },\n methods: {\n $_updatedHandler: function () {\n this.$forceUpdate();\n }\n },\n render: function () {\n var content = clearConfiguration(getSlot()(data));\n if (!content) {\n return vue_1.h(\"div\");\n }\n return content[0];\n }\n }, parent, placeholder);\n}\nexports.mountTemplate = mountTemplate;\n","/**\r\n * DevExtreme (ui/overlay/ui.overlay.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _fx = _interopRequireDefault(require(\"../../animation/fx\"));\r\nvar _position = _interopRequireDefault(require(\"../../animation/position\"));\r\nvar _translator = require(\"../../animation/translator\");\r\nvar _component_registrator = _interopRequireDefault(require(\"../../core/component_registrator\"));\r\nvar _devices = _interopRequireDefault(require(\"../../core/devices\"));\r\nvar _dom_adapter = _interopRequireDefault(require(\"../../core/dom_adapter\"));\r\nvar _element = require(\"../../core/element\");\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _empty_template = require(\"../../core/templates/empty_template\");\r\nvar _array = require(\"../../core/utils/array\");\r\nvar _browser = _interopRequireDefault(require(\"../../core/utils/browser\"));\r\nvar _common = require(\"../../core/utils/common\");\r\nvar _deferred = require(\"../../core/utils/deferred\");\r\nvar _dom = require(\"../../core/utils/dom\");\r\nvar _extend = require(\"../../core/utils/extend\");\r\nvar _iterator = require(\"../../core/utils/iterator\");\r\nvar _math = require(\"../../core/utils/math\");\r\nvar _ready_callbacks = _interopRequireDefault(require(\"../../core/utils/ready_callbacks\"));\r\nvar _type = require(\"../../core/utils/type\");\r\nvar _version = require(\"../../core/utils/version\");\r\nvar _view_port = require(\"../../core/utils/view_port\");\r\nvar _window = require(\"../../core/utils/window\");\r\nvar _events_engine = _interopRequireDefault(require(\"../../events/core/events_engine\"));\r\nvar _drag = require(\"../../events/drag\");\r\nvar _pointer = _interopRequireDefault(require(\"../../events/pointer\"));\r\nvar _short = require(\"../../events/short\");\r\nvar _index = require(\"../../events/utils/index\");\r\nvar _visibility_change = require(\"../../events/visibility_change\");\r\nvar _hide_callback = require(\"../../mobile/hide_callback\");\r\nvar _resizable = _interopRequireDefault(require(\"../resizable\"));\r\nvar _selectors = require(\"../widget/selectors\");\r\nvar _swatch_container = _interopRequireDefault(require(\"../widget/swatch_container\"));\r\nvar _ui = _interopRequireDefault(require(\"../widget/ui.widget\"));\r\nvar zIndexPool = _interopRequireWildcard(require(\"./z_index\"));\r\n\r\nfunction _getRequireWildcardCache() {\r\n if (\"function\" !== typeof WeakMap) {\r\n return null\r\n }\r\n var cache = new WeakMap;\r\n _getRequireWildcardCache = function() {\r\n return cache\r\n };\r\n return cache\r\n}\r\n\r\nfunction _interopRequireWildcard(obj) {\r\n if (obj && obj.__esModule) {\r\n return obj\r\n }\r\n if (null === obj || \"object\" !== _typeof(obj) && \"function\" !== typeof obj) {\r\n return {\r\n \"default\": obj\r\n }\r\n }\r\n var cache = _getRequireWildcardCache();\r\n if (cache && cache.has(obj)) {\r\n return cache.get(obj)\r\n }\r\n var newObj = {};\r\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\r\n for (var key in obj) {\r\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\r\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\r\n if (desc && (desc.get || desc.set)) {\r\n Object.defineProperty(newObj, key, desc)\r\n } else {\r\n newObj[key] = obj[key]\r\n }\r\n }\r\n }\r\n newObj.default = obj;\r\n if (cache) {\r\n cache.set(obj, newObj)\r\n }\r\n return newObj\r\n}\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _typeof(obj) {\r\n \"@babel/helpers - typeof\";\r\n if (\"function\" === typeof Symbol && \"symbol\" === typeof Symbol.iterator) {\r\n _typeof = function(obj) {\r\n return typeof obj\r\n }\r\n } else {\r\n _typeof = function(obj) {\r\n return obj && \"function\" === typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj\r\n }\r\n }\r\n return _typeof(obj)\r\n}\r\nvar ready = _ready_callbacks.default.add;\r\nvar window = (0, _window.getWindow)();\r\nvar navigator = (0, _window.getNavigator)();\r\nvar viewPortChanged = _view_port.changeCallback;\r\nvar OVERLAY_CLASS = \"dx-overlay\";\r\nvar OVERLAY_WRAPPER_CLASS = \"dx-overlay-wrapper\";\r\nvar OVERLAY_CONTENT_CLASS = \"dx-overlay-content\";\r\nvar OVERLAY_SHADER_CLASS = \"dx-overlay-shader\";\r\nvar OVERLAY_MODAL_CLASS = \"dx-overlay-modal\";\r\nvar INNER_OVERLAY_CLASS = \"dx-inner-overlay\";\r\nvar INVISIBLE_STATE_CLASS = \"dx-state-invisible\";\r\nvar ANONYMOUS_TEMPLATE_NAME = \"content\";\r\nvar RTL_DIRECTION_CLASS = \"dx-rtl\";\r\nvar ACTIONS = [\"onShowing\", \"onShown\", \"onHiding\", \"onHidden\", \"onPositioning\", \"onPositioned\", \"onResizeStart\", \"onResize\", \"onResizeEnd\"];\r\nvar OVERLAY_STACK = [];\r\nvar DISABLED_STATE_CLASS = \"dx-state-disabled\";\r\nvar PREVENT_SAFARI_SCROLLING_CLASS = \"dx-prevent-safari-scrolling\";\r\nvar TAB_KEY = \"tab\";\r\nvar POSITION_ALIASES = {\r\n top: {\r\n my: \"top center\",\r\n at: \"top center\"\r\n },\r\n bottom: {\r\n my: \"bottom center\",\r\n at: \"bottom center\"\r\n },\r\n right: {\r\n my: \"right center\",\r\n at: \"right center\"\r\n },\r\n left: {\r\n my: \"left center\",\r\n at: \"left center\"\r\n },\r\n center: {\r\n my: \"center\",\r\n at: \"center\"\r\n },\r\n \"right bottom\": {\r\n my: \"right bottom\",\r\n at: \"right bottom\"\r\n },\r\n \"right top\": {\r\n my: \"right top\",\r\n at: \"right top\"\r\n },\r\n \"left bottom\": {\r\n my: \"left bottom\",\r\n at: \"left bottom\"\r\n },\r\n \"left top\": {\r\n my: \"left top\",\r\n at: \"left top\"\r\n }\r\n};\r\nvar realDevice = _devices.default.real();\r\nvar realVersion = realDevice.version;\r\nvar firefoxDesktop = _browser.default.mozilla && \"desktop\" === realDevice.deviceType;\r\nvar iOS = \"ios\" === realDevice.platform;\r\nvar hasSafariAddressBar = _browser.default.safari && \"desktop\" !== realDevice.deviceType;\r\nvar android4_0nativeBrowser = \"android\" === realDevice.platform && 0 === (0, _version.compare)(realVersion, [4, 0], 2) && navigator.userAgent.indexOf(\"Chrome\") === -1;\r\nvar forceRepaint = function($element) {\r\n if (firefoxDesktop) {\r\n $element.width()\r\n }\r\n if (android4_0nativeBrowser) {\r\n var $parents = $element.parents();\r\n var inScrollView = $parents.is(\".dx-scrollable-native\");\r\n if (!inScrollView) {\r\n $parents.css(\"backfaceVisibility\", \"hidden\");\r\n $parents.css(\"backfaceVisibility\");\r\n $parents.css(\"backfaceVisibility\", \"visible\")\r\n }\r\n }\r\n};\r\nvar getElement = function(value) {\r\n return value && (0, _renderer.default)(value.target || value)\r\n};\r\nready(function() {\r\n _events_engine.default.subscribeGlobal(_dom_adapter.default.getDocument(), _pointer.default.down, function(e) {\r\n for (var i = OVERLAY_STACK.length - 1; i >= 0; i--) {\r\n if (!OVERLAY_STACK[i]._proxiedDocumentDownHandler(e)) {\r\n return\r\n }\r\n }\r\n })\r\n});\r\nvar Overlay = _ui.default.inherit({\r\n _supportedKeys: function() {\r\n var offsetSize = 5;\r\n var move = function(top, left, e) {\r\n if (!this.option(\"dragEnabled\")) {\r\n return\r\n }\r\n e.preventDefault();\r\n e.stopPropagation();\r\n var allowedOffsets = this._allowedOffsets();\r\n var offset = {\r\n top: (0, _math.fitIntoRange)(top, -allowedOffsets.top, allowedOffsets.bottom),\r\n left: (0, _math.fitIntoRange)(left, -allowedOffsets.left, allowedOffsets.right)\r\n };\r\n this._changePosition(offset)\r\n };\r\n return (0, _extend.extend)(this.callBase(), {\r\n escape: function() {\r\n this.hide()\r\n },\r\n upArrow: move.bind(this, -offsetSize, 0),\r\n downArrow: move.bind(this, offsetSize, 0),\r\n leftArrow: move.bind(this, 0, -offsetSize),\r\n rightArrow: move.bind(this, 0, offsetSize)\r\n })\r\n },\r\n _getDefaultOptions: function() {\r\n var _this = this;\r\n return (0, _extend.extend)(this.callBase(), {\r\n activeStateEnabled: false,\r\n visible: false,\r\n deferRendering: true,\r\n shading: true,\r\n shadingColor: \"\",\r\n position: {\r\n my: \"center\",\r\n at: \"center\"\r\n },\r\n width: function() {\r\n return .8 * (0, _renderer.default)(window).width()\r\n },\r\n minWidth: null,\r\n maxWidth: null,\r\n height: function() {\r\n return .8 * (0, _renderer.default)(window).height()\r\n },\r\n minHeight: null,\r\n maxHeight: null,\r\n animation: {\r\n show: {\r\n type: \"pop\",\r\n duration: 300,\r\n from: {\r\n scale: .55\r\n }\r\n },\r\n hide: {\r\n type: \"pop\",\r\n duration: 300,\r\n to: {\r\n opacity: 0,\r\n scale: .55\r\n },\r\n from: {\r\n opacity: 1,\r\n scale: 1\r\n }\r\n }\r\n },\r\n closeOnOutsideClick: false,\r\n onShowing: null,\r\n onShown: null,\r\n onHiding: null,\r\n onHidden: null,\r\n contentTemplate: \"content\",\r\n dragEnabled: false,\r\n resizeEnabled: false,\r\n onResizeStart: null,\r\n onResize: null,\r\n onResizeEnd: null,\r\n innerOverlay: false,\r\n target: void 0,\r\n container: void 0,\r\n hideTopOverlayHandler: function() {\r\n _this.hide()\r\n },\r\n closeOnTargetScroll: false,\r\n onPositioned: null,\r\n boundaryOffset: {\r\n h: 0,\r\n v: 0\r\n },\r\n propagateOutsideClick: false,\r\n ignoreChildEvents: true,\r\n _checkParentVisibility: true\r\n })\r\n },\r\n _defaultOptionsRules: function() {\r\n return this.callBase().concat([{\r\n device: function() {\r\n var realDevice = _devices.default.real();\r\n var realPlatform = realDevice.platform;\r\n var realVersion = realDevice.version;\r\n return \"android\" === realPlatform && (0, _version.compare)(realVersion, [4, 2]) < 0\r\n },\r\n options: {\r\n animation: {\r\n show: {\r\n type: \"fade\",\r\n duration: 400\r\n },\r\n hide: {\r\n type: \"fade\",\r\n duration: 400,\r\n to: {\r\n opacity: 0\r\n },\r\n from: {\r\n opacity: 1\r\n }\r\n }\r\n }\r\n }\r\n }, {\r\n device: function() {\r\n return !(0, _window.hasWindow)()\r\n },\r\n options: {\r\n width: null,\r\n height: null,\r\n animation: null,\r\n _checkParentVisibility: false\r\n }\r\n }])\r\n },\r\n _setOptionsByReference: function() {\r\n this.callBase();\r\n (0, _extend.extend)(this._optionsByReference, {\r\n animation: true\r\n })\r\n },\r\n _wrapper: function() {\r\n return this._$wrapper\r\n },\r\n _container: function() {\r\n return this._$content\r\n },\r\n _eventBindingTarget: function() {\r\n return this._$content\r\n },\r\n _init: function() {\r\n this.callBase();\r\n this._initActions();\r\n this._initCloseOnOutsideClickHandler();\r\n this._initTabTerminatorHandler();\r\n this._$wrapper = (0, _renderer.default)(\"
\").addClass(OVERLAY_WRAPPER_CLASS);\r\n this._$content = (0, _renderer.default)(\"
\").addClass(OVERLAY_CONTENT_CLASS);\r\n this._initInnerOverlayClass();\r\n var $element = this.$element();\r\n this._$wrapper.addClass($element.attr(\"class\"));\r\n $element.addClass(OVERLAY_CLASS);\r\n this._$wrapper.attr(\"data-bind\", \"dxControlsDescendantBindings: true\");\r\n _events_engine.default.on(this._$wrapper, \"MSPointerDown\", _common.noop);\r\n _events_engine.default.on(this._$wrapper, \"focusin\", function(e) {\r\n e.stopPropagation()\r\n });\r\n this._toggleViewPortSubscription(true);\r\n this._initHideTopOverlayHandler(this.option(\"hideTopOverlayHandler\"))\r\n },\r\n _initOptions: function(options) {\r\n this._initTarget(options.target);\r\n var container = void 0 === options.container ? this.option(\"container\") : options.container;\r\n this._initContainer(container);\r\n this.callBase(options)\r\n },\r\n _initInnerOverlayClass: function() {\r\n this._$content.toggleClass(INNER_OVERLAY_CLASS, this.option(\"innerOverlay\"))\r\n },\r\n _initTarget: function(target) {\r\n if (!(0, _type.isDefined)(target)) {\r\n return\r\n }\r\n var options = this.option();\r\n (0, _iterator.each)([\"position.of\", \"animation.show.from.position.of\", \"animation.show.to.position.of\", \"animation.hide.from.position.of\", \"animation.hide.to.position.of\"], function(_, path) {\r\n var pathParts = path.split(\".\");\r\n var option = options;\r\n while (option) {\r\n if (1 === pathParts.length) {\r\n if ((0, _type.isPlainObject)(option)) {\r\n option[pathParts.shift()] = target\r\n }\r\n break\r\n } else {\r\n option = option[pathParts.shift()]\r\n }\r\n }\r\n })\r\n },\r\n _initContainer: function(container) {\r\n container = void 0 === container ? (0, _view_port.value)() : container;\r\n var $element = this.$element();\r\n var $container = $element.closest(container);\r\n if (!$container.length) {\r\n $container = (0, _renderer.default)(container).first()\r\n }\r\n this._$container = $container.length ? $container : $element.parent()\r\n },\r\n _initHideTopOverlayHandler: function(handler) {\r\n this._hideTopOverlayHandler = handler\r\n },\r\n _initActions: function() {\r\n var _this2 = this;\r\n this._actions = {};\r\n (0, _iterator.each)(ACTIONS, function(_, action) {\r\n _this2._actions[action] = _this2._createActionByOption(action, {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n }) || _common.noop\r\n })\r\n },\r\n _initCloseOnOutsideClickHandler: function() {\r\n var that = this;\r\n this._proxiedDocumentDownHandler = function() {\r\n return that._documentDownHandler.apply(that, arguments)\r\n }\r\n },\r\n _documentDownHandler: function(e) {\r\n if (this._showAnimationProcessing) {\r\n this._stopAnimation()\r\n }\r\n var closeOnOutsideClick = this.option(\"closeOnOutsideClick\");\r\n if ((0, _type.isFunction)(closeOnOutsideClick)) {\r\n closeOnOutsideClick = closeOnOutsideClick(e)\r\n }\r\n var $container = this._$content;\r\n var isAttachedTarget = (0, _renderer.default)(window.document).is(e.target) || (0, _dom.contains)(window.document, e.target);\r\n var isInnerOverlay = (0, _renderer.default)(e.target).closest(\".\" + INNER_OVERLAY_CLASS).length;\r\n var outsideClick = isAttachedTarget && !isInnerOverlay && !($container.is(e.target) || (0, _dom.contains)($container.get(0), e.target));\r\n if (outsideClick && closeOnOutsideClick) {\r\n this._outsideClickHandler(e)\r\n }\r\n return this.option(\"propagateOutsideClick\")\r\n },\r\n _outsideClickHandler: function(e) {\r\n if (this.option(\"shading\")) {\r\n e.preventDefault()\r\n }\r\n this.hide()\r\n },\r\n _getAnonymousTemplateName: function() {\r\n return ANONYMOUS_TEMPLATE_NAME\r\n },\r\n _initTemplates: function() {\r\n this._templateManager.addDefaultTemplates({\r\n content: new _empty_template.EmptyTemplate\r\n });\r\n this.callBase()\r\n },\r\n _isTopOverlay: function() {\r\n var overlayStack = this._overlayStack();\r\n for (var i = overlayStack.length - 1; i >= 0; i--) {\r\n var tabbableElements = overlayStack[i]._findTabbableBounds();\r\n if (tabbableElements.first || tabbableElements.last) {\r\n return overlayStack[i] === this\r\n }\r\n }\r\n return false\r\n },\r\n _overlayStack: function() {\r\n return OVERLAY_STACK\r\n },\r\n _zIndexInitValue: function() {\r\n return Overlay.baseZIndex()\r\n },\r\n _toggleViewPortSubscription: function(toggle) {\r\n viewPortChanged.remove(this._viewPortChangeHandle);\r\n if (toggle) {\r\n this._viewPortChangeHandle = this._viewPortChangeHandler.bind(this);\r\n viewPortChanged.add(this._viewPortChangeHandle)\r\n }\r\n },\r\n _viewPortChangeHandler: function() {\r\n this._initContainer(this.option(\"container\"));\r\n this._refresh()\r\n },\r\n _renderVisibilityAnimate: function(visible) {\r\n this._stopAnimation();\r\n return visible ? this._show() : this._hide()\r\n },\r\n _normalizePosition: function() {\r\n var position = this.option(\"position\");\r\n this._position = \"function\" === typeof position ? position() : position\r\n },\r\n _getAnimationConfig: function() {\r\n var animation = this.option(\"animation\");\r\n if ((0, _type.isFunction)(animation)) {\r\n animation = animation.call(this)\r\n }\r\n return animation\r\n },\r\n _show: function() {\r\n var _this3 = this;\r\n var that = this;\r\n var deferred = new _deferred.Deferred;\r\n this._parentHidden = this._isParentHidden();\r\n deferred.done(function() {\r\n delete that._parentHidden\r\n });\r\n if (this._parentHidden) {\r\n this._isHidden = true;\r\n return deferred.resolve()\r\n }\r\n if (this._currentVisible) {\r\n return (new _deferred.Deferred).resolve().promise()\r\n }\r\n this._currentVisible = true;\r\n this._isShown = false;\r\n this._normalizePosition();\r\n var animation = that._getAnimationConfig() || {};\r\n var showAnimation = this._normalizeAnimation(animation.show, \"to\");\r\n var startShowAnimation = showAnimation && showAnimation.start || _common.noop;\r\n var completeShowAnimation = showAnimation && showAnimation.complete || _common.noop;\r\n if (this._isHidingActionCanceled) {\r\n delete this._isHidingActionCanceled;\r\n deferred.resolve()\r\n } else {\r\n var show = function() {\r\n _this3._renderVisibility(true);\r\n if (_this3._isShowingActionCanceled) {\r\n delete _this3._isShowingActionCanceled;\r\n deferred.resolve();\r\n return\r\n }\r\n _this3._animate(showAnimation, function() {\r\n if (that.option(\"focusStateEnabled\")) {\r\n _events_engine.default.trigger(that._focusTarget(), \"focus\")\r\n }\r\n completeShowAnimation.apply(this, arguments);\r\n that._showAnimationProcessing = false;\r\n that._isShown = true;\r\n that._actions.onShown();\r\n that._toggleSafariScrolling(false);\r\n deferred.resolve()\r\n }, function() {\r\n startShowAnimation.apply(this, arguments);\r\n that._showAnimationProcessing = true\r\n })\r\n };\r\n if (this.option(\"templatesRenderAsynchronously\")) {\r\n this._stopShowTimer();\r\n this._asyncShowTimeout = setTimeout(show)\r\n } else {\r\n show()\r\n }\r\n }\r\n return deferred.promise()\r\n },\r\n _normalizeAnimation: function(animation, prop) {\r\n if (animation) {\r\n animation = (0, _extend.extend)({\r\n type: \"slide\"\r\n }, animation);\r\n if (animation[prop] && \"object\" === _typeof(animation[prop])) {\r\n (0, _extend.extend)(animation[prop], {\r\n position: this._position\r\n })\r\n }\r\n }\r\n return animation\r\n },\r\n _hide: function() {\r\n if (!this._currentVisible) {\r\n return (new _deferred.Deferred).resolve().promise()\r\n }\r\n this._currentVisible = false;\r\n var that = this;\r\n var deferred = new _deferred.Deferred;\r\n var animation = that._getAnimationConfig() || {};\r\n var hideAnimation = this._normalizeAnimation(animation.hide, \"from\");\r\n var startHideAnimation = hideAnimation && hideAnimation.start || _common.noop;\r\n var completeHideAnimation = hideAnimation && hideAnimation.complete || _common.noop;\r\n var hidingArgs = {\r\n cancel: false\r\n };\r\n if (this._isShowingActionCanceled) {\r\n deferred.resolve()\r\n } else {\r\n this._actions.onHiding(hidingArgs);\r\n that._toggleSafariScrolling(true);\r\n if (hidingArgs.cancel) {\r\n this._isHidingActionCanceled = true;\r\n this.option(\"visible\", true);\r\n deferred.resolve()\r\n } else {\r\n this._forceFocusLost();\r\n this._toggleShading(false);\r\n this._toggleSubscriptions(false);\r\n this._stopShowTimer();\r\n this._animate(hideAnimation, function() {\r\n var _that$_actions;\r\n that._$content.css(\"pointerEvents\", \"\");\r\n that._renderVisibility(false);\r\n completeHideAnimation.apply(this, arguments);\r\n null === (_that$_actions = that._actions) || void 0 === _that$_actions ? void 0 : _that$_actions.onHidden();\r\n deferred.resolve()\r\n }, function() {\r\n that._$content.css(\"pointerEvents\", \"none\");\r\n startHideAnimation.apply(this, arguments)\r\n })\r\n }\r\n }\r\n return deferred.promise()\r\n },\r\n _forceFocusLost: function() {\r\n var activeElement = _dom_adapter.default.getActiveElement();\r\n var shouldResetActiveElement = !!this._$content.find(activeElement).length;\r\n if (shouldResetActiveElement) {\r\n (0, _dom.resetActiveElement)()\r\n }\r\n },\r\n _animate: function(animation, completeCallback, startCallback) {\r\n if (animation) {\r\n startCallback = startCallback || animation.start || _common.noop;\r\n _fx.default.animate(this._$content, (0, _extend.extend)({}, animation, {\r\n start: startCallback,\r\n complete: completeCallback\r\n }))\r\n } else {\r\n completeCallback()\r\n }\r\n },\r\n _stopAnimation: function() {\r\n _fx.default.stop(this._$content, true)\r\n },\r\n _renderVisibility: function(visible) {\r\n if (visible && this._isParentHidden()) {\r\n return\r\n }\r\n this._currentVisible = visible;\r\n this._stopAnimation();\r\n if (!visible) {\r\n (0, _visibility_change.triggerHidingEvent)(this._$content)\r\n }\r\n this._toggleVisibility(visible);\r\n this._$content.toggleClass(INVISIBLE_STATE_CLASS, !visible);\r\n this._updateZIndexStackPosition(visible);\r\n if (visible) {\r\n this._renderContent();\r\n var showingArgs = {\r\n cancel: false\r\n };\r\n this._actions.onShowing(showingArgs);\r\n if (showingArgs.cancel) {\r\n this._toggleVisibility(false);\r\n this._$content.toggleClass(INVISIBLE_STATE_CLASS, true);\r\n this._updateZIndexStackPosition(false);\r\n this._moveFromContainer();\r\n this._isShowingActionCanceled = true;\r\n this.option(\"visible\", false);\r\n return\r\n }\r\n this._moveToContainer();\r\n this._renderGeometry();\r\n (0, _visibility_change.triggerShownEvent)(this._$content);\r\n (0, _visibility_change.triggerResizeEvent)(this._$content)\r\n } else {\r\n this._moveFromContainer()\r\n }\r\n this._toggleShading(visible);\r\n this._toggleSubscriptions(visible)\r\n },\r\n _updateZIndexStackPosition: function(pushToStack) {\r\n var overlayStack = this._overlayStack();\r\n var index = (0, _array.inArray)(this, overlayStack);\r\n if (pushToStack) {\r\n if (index === -1) {\r\n this._zIndex = zIndexPool.create(this._zIndexInitValue());\r\n overlayStack.push(this)\r\n }\r\n this._$wrapper.css(\"zIndex\", this._zIndex);\r\n this._$content.css(\"zIndex\", this._zIndex)\r\n } else {\r\n if (index !== -1) {\r\n overlayStack.splice(index, 1);\r\n zIndexPool.remove(this._zIndex)\r\n }\r\n }\r\n },\r\n _toggleShading: function(visible) {\r\n this._$wrapper.toggleClass(OVERLAY_MODAL_CLASS, this.option(\"shading\") && !this.option(\"container\"));\r\n this._$wrapper.toggleClass(OVERLAY_SHADER_CLASS, visible && this.option(\"shading\"));\r\n this._$wrapper.css(\"backgroundColor\", this.option(\"shading\") ? this.option(\"shadingColor\") : \"\");\r\n this._toggleTabTerminator(visible && this.option(\"shading\"))\r\n },\r\n _initTabTerminatorHandler: function() {\r\n var that = this;\r\n this._proxiedTabTerminatorHandler = function() {\r\n that._tabKeyHandler.apply(that, arguments)\r\n }\r\n },\r\n _toggleTabTerminator: function(enabled) {\r\n var eventName = (0, _index.addNamespace)(\"keydown\", this.NAME);\r\n if (enabled) {\r\n _events_engine.default.on(_dom_adapter.default.getDocument(), eventName, this._proxiedTabTerminatorHandler)\r\n } else {\r\n _events_engine.default.off(_dom_adapter.default.getDocument(), eventName, this._proxiedTabTerminatorHandler)\r\n }\r\n },\r\n _findTabbableBounds: function() {\r\n var $elements = this._$wrapper.find(\"*\");\r\n var elementsCount = $elements.length - 1;\r\n var result = {\r\n first: null,\r\n last: null\r\n };\r\n for (var i = 0; i <= elementsCount; i++) {\r\n if (!result.first && $elements.eq(i).is(_selectors.tabbable)) {\r\n result.first = $elements.eq(i)\r\n }\r\n if (!result.last && $elements.eq(elementsCount - i).is(_selectors.tabbable)) {\r\n result.last = $elements.eq(elementsCount - i)\r\n }\r\n if (result.first && result.last) {\r\n break\r\n }\r\n }\r\n return result\r\n },\r\n _tabKeyHandler: function(e) {\r\n if ((0, _index.normalizeKeyName)(e) !== TAB_KEY || !this._isTopOverlay()) {\r\n return\r\n }\r\n var tabbableElements = this._findTabbableBounds();\r\n var $firstTabbable = tabbableElements.first;\r\n var $lastTabbable = tabbableElements.last;\r\n var isTabOnLast = !e.shiftKey && e.target === $lastTabbable.get(0);\r\n var isShiftTabOnFirst = e.shiftKey && e.target === $firstTabbable.get(0);\r\n var isEmptyTabList = 0 === tabbableElements.length;\r\n var isOutsideTarget = !(0, _dom.contains)(this._$wrapper.get(0), e.target);\r\n if (isTabOnLast || isShiftTabOnFirst || isEmptyTabList || isOutsideTarget) {\r\n e.preventDefault();\r\n var $focusElement = e.shiftKey ? $lastTabbable : $firstTabbable;\r\n _events_engine.default.trigger($focusElement, \"focusin\");\r\n _events_engine.default.trigger($focusElement, \"focus\")\r\n }\r\n },\r\n _toggleSubscriptions: function(enabled) {\r\n if ((0, _window.hasWindow)()) {\r\n this._toggleHideTopOverlayCallback(enabled);\r\n this._toggleParentsScrollSubscription(enabled)\r\n }\r\n },\r\n _toggleHideTopOverlayCallback: function(subscribe) {\r\n if (!this._hideTopOverlayHandler) {\r\n return\r\n }\r\n if (subscribe) {\r\n _hide_callback.hideCallback.add(this._hideTopOverlayHandler)\r\n } else {\r\n _hide_callback.hideCallback.remove(this._hideTopOverlayHandler)\r\n }\r\n },\r\n _toggleParentsScrollSubscription: function(subscribe) {\r\n var _this4 = this;\r\n if (!this._position) {\r\n return\r\n }\r\n var target = this._position.of || (0, _renderer.default)();\r\n var closeOnScroll = this.option(\"closeOnTargetScroll\");\r\n var $parents = getElement(target).parents();\r\n var scrollEvent = (0, _index.addNamespace)(\"scroll\", this.NAME);\r\n if (\"desktop\" === _devices.default.real().deviceType) {\r\n $parents = $parents.add(window)\r\n }\r\n this._proxiedTargetParentsScrollHandler = this._proxiedTargetParentsScrollHandler || function(e) {\r\n _this4._targetParentsScrollHandler(e)\r\n };\r\n _events_engine.default.off((0, _renderer.default)().add(this._$prevTargetParents), scrollEvent, this._proxiedTargetParentsScrollHandler);\r\n if (subscribe && closeOnScroll) {\r\n _events_engine.default.on($parents, scrollEvent, this._proxiedTargetParentsScrollHandler);\r\n this._$prevTargetParents = $parents\r\n }\r\n },\r\n _targetParentsScrollHandler: function(e) {\r\n var closeHandled = false;\r\n var closeOnScroll = this.option(\"closeOnTargetScroll\");\r\n if ((0, _type.isFunction)(closeOnScroll)) {\r\n closeHandled = closeOnScroll(e)\r\n }\r\n if (!closeHandled && !this._showAnimationProcessing) {\r\n this.hide()\r\n }\r\n },\r\n _render: function() {\r\n this.callBase();\r\n this._appendContentToElement();\r\n this._renderVisibilityAnimate(this.option(\"visible\"))\r\n },\r\n _appendContentToElement: function() {\r\n if (!this._$content.parent().is(this.$element())) {\r\n this._$content.appendTo(this.$element())\r\n }\r\n },\r\n _renderContent: function() {\r\n var shouldDeferRendering = !this._currentVisible && this.option(\"deferRendering\");\r\n var isParentHidden = this.option(\"visible\") && this._isParentHidden();\r\n if (isParentHidden) {\r\n this._isHidden = true;\r\n return\r\n }\r\n if (this._contentAlreadyRendered || shouldDeferRendering) {\r\n return\r\n }\r\n this._contentAlreadyRendered = true;\r\n this._appendContentToElement();\r\n this.callBase()\r\n },\r\n _isParentHidden: function() {\r\n if (!this.option(\"_checkParentVisibility\")) {\r\n return false\r\n }\r\n if (void 0 !== this._parentHidden) {\r\n return this._parentHidden\r\n }\r\n var $parent = this.$element().parent();\r\n if ($parent.is(\":visible\")) {\r\n return false\r\n }\r\n var isHidden = false;\r\n $parent.add($parent.parents()).each(function() {\r\n var $element = (0, _renderer.default)(this);\r\n if (\"none\" === $element.css(\"display\")) {\r\n isHidden = true;\r\n return false\r\n }\r\n });\r\n return isHidden || !_dom_adapter.default.getBody().contains($parent.get(0))\r\n },\r\n _renderContentImpl: function() {\r\n var _this5 = this;\r\n var whenContentRendered = new _deferred.Deferred;\r\n var contentTemplateOption = this.option(\"contentTemplate\");\r\n var contentTemplate = this._getTemplate(contentTemplateOption);\r\n var transclude = this._templateManager.anonymousTemplateName === contentTemplateOption;\r\n contentTemplate && contentTemplate.render({\r\n container: (0, _element.getPublicElement)(this.$content()),\r\n noModel: true,\r\n transclude: transclude,\r\n onRendered: function() {\r\n whenContentRendered.resolve()\r\n }\r\n });\r\n this._renderDrag();\r\n this._renderResize();\r\n this._renderScrollTerminator();\r\n whenContentRendered.done(function() {\r\n if (_this5.option(\"visible\")) {\r\n _this5._moveToContainer()\r\n }\r\n });\r\n return whenContentRendered.promise()\r\n },\r\n _renderDrag: function() {\r\n var $dragTarget = this._getDragTarget();\r\n if (!$dragTarget) {\r\n return\r\n }\r\n var startEventName = (0, _index.addNamespace)(_drag.start, this.NAME);\r\n var updateEventName = (0, _index.addNamespace)(_drag.move, this.NAME);\r\n _events_engine.default.off($dragTarget, startEventName);\r\n _events_engine.default.off($dragTarget, updateEventName);\r\n if (!this.option(\"dragEnabled\")) {\r\n return\r\n }\r\n _events_engine.default.on($dragTarget, startEventName, this._dragStartHandler.bind(this));\r\n _events_engine.default.on($dragTarget, updateEventName, this._dragUpdateHandler.bind(this))\r\n },\r\n _renderResize: function() {\r\n this._resizable = this._createComponent(this._$content, _resizable.default, {\r\n handles: this.option(\"resizeEnabled\") ? \"all\" : \"none\",\r\n onResizeEnd: this._resizeEndHandler.bind(this),\r\n onResize: this._actions.onResize.bind(this),\r\n onResizeStart: this._actions.onResizeStart.bind(this),\r\n minHeight: 100,\r\n minWidth: 100,\r\n area: this._getDragResizeContainer()\r\n })\r\n },\r\n _resizeEndHandler: function() {\r\n this._positionChangeHandled = true;\r\n var width = this._resizable.option(\"width\");\r\n var height = this._resizable.option(\"height\");\r\n width && this.option(\"width\", width);\r\n height && this.option(\"height\", height);\r\n this._actions.onResizeEnd()\r\n },\r\n _renderScrollTerminator: function() {\r\n var $scrollTerminator = this._wrapper();\r\n var terminatorEventName = (0, _index.addNamespace)(_drag.move, this.NAME);\r\n _events_engine.default.off($scrollTerminator, terminatorEventName);\r\n _events_engine.default.on($scrollTerminator, terminatorEventName, {\r\n validate: function() {\r\n return true\r\n },\r\n getDirection: function() {\r\n return \"both\"\r\n },\r\n _toggleGestureCover: function(toggle) {\r\n if (!toggle) {\r\n this._toggleGestureCoverImpl(toggle)\r\n }\r\n },\r\n _clearSelection: _common.noop,\r\n isNative: true\r\n }, function(e) {\r\n var originalEvent = e.originalEvent.originalEvent;\r\n e._cancelPreventDefault = true;\r\n if (originalEvent && \"mousemove\" !== originalEvent.type && false !== e.cancelable) {\r\n e.preventDefault()\r\n }\r\n })\r\n },\r\n _getDragTarget: function() {\r\n return this.$content()\r\n },\r\n _dragStartHandler: function(e) {\r\n e.targetElements = [];\r\n this._prevOffset = {\r\n x: 0,\r\n y: 0\r\n };\r\n var allowedOffsets = this._allowedOffsets();\r\n e.maxTopOffset = allowedOffsets.top;\r\n e.maxBottomOffset = allowedOffsets.bottom;\r\n e.maxLeftOffset = allowedOffsets.left;\r\n e.maxRightOffset = allowedOffsets.right\r\n },\r\n _getDragResizeContainer: function() {\r\n var isContainerDefined = (0, _view_port.originalViewPort)().get(0) || this.option(\"container\");\r\n var $container = !isContainerDefined ? (0, _renderer.default)(window) : this._$container;\r\n return $container\r\n },\r\n _deltaSize: function() {\r\n var $content = this._$content;\r\n var $container = this._getDragResizeContainer();\r\n var contentWidth = $content.outerWidth();\r\n var contentHeight = $content.outerHeight();\r\n var containerWidth = $container.outerWidth();\r\n var containerHeight = $container.outerHeight();\r\n if (this._isWindow($container)) {\r\n var document = _dom_adapter.default.getDocument();\r\n var fullPageHeight = Math.max((0, _renderer.default)(document).outerHeight(), containerHeight);\r\n var fullPageWidth = Math.max((0, _renderer.default)(document).outerWidth(), containerWidth);\r\n containerHeight = fullPageHeight;\r\n containerWidth = fullPageWidth\r\n }\r\n return {\r\n width: containerWidth - contentWidth,\r\n height: containerHeight - contentHeight\r\n }\r\n },\r\n _dragUpdateHandler: function(e) {\r\n var offset = e.offset;\r\n var prevOffset = this._prevOffset;\r\n var targetOffset = {\r\n top: offset.y - prevOffset.y,\r\n left: offset.x - prevOffset.x\r\n };\r\n this._changePosition(targetOffset);\r\n this._prevOffset = offset\r\n },\r\n _changePosition: function(offset) {\r\n var position = (0, _translator.locate)(this._$content);\r\n (0, _translator.move)(this._$content, {\r\n left: position.left + offset.left,\r\n top: position.top + offset.top\r\n });\r\n this._positionChangeHandled = true\r\n },\r\n _allowedOffsets: function() {\r\n var position = (0, _translator.locate)(this._$content);\r\n var deltaSize = this._deltaSize();\r\n var isAllowedDrag = deltaSize.height >= 0 && deltaSize.width >= 0;\r\n var shaderOffset = this.option(\"shading\") && !this.option(\"container\") && !this._isWindow(this._getContainer()) ? (0, _translator.locate)(this._$wrapper) : {\r\n top: 0,\r\n left: 0\r\n };\r\n var boundaryOffset = this.option(\"boundaryOffset\");\r\n return {\r\n top: isAllowedDrag ? position.top + shaderOffset.top + boundaryOffset.v : 0,\r\n bottom: isAllowedDrag ? -position.top - shaderOffset.top + deltaSize.height - boundaryOffset.v : 0,\r\n left: isAllowedDrag ? position.left + shaderOffset.left + boundaryOffset.h : 0,\r\n right: isAllowedDrag ? -position.left - shaderOffset.left + deltaSize.width - boundaryOffset.h : 0\r\n }\r\n },\r\n _moveFromContainer: function() {\r\n this._$content.appendTo(this.$element());\r\n this._detachWrapperToContainer()\r\n },\r\n _detachWrapperToContainer: function() {\r\n this._$wrapper.detach()\r\n },\r\n _moveToContainer: function() {\r\n this._attachWrapperToContainer();\r\n this._$content.appendTo(this._$wrapper)\r\n },\r\n _attachWrapperToContainer: function() {\r\n var $element = this.$element();\r\n var containerDefined = void 0 !== this.option(\"container\");\r\n var renderContainer = containerDefined ? this._$container : _swatch_container.default.getSwatchContainer($element);\r\n if (renderContainer && renderContainer[0] === $element.parent()[0]) {\r\n renderContainer = $element\r\n }\r\n this._$wrapper.appendTo(renderContainer)\r\n },\r\n _fixHeightAfterSafariAddressBarResizing: function() {\r\n if (this._isWindow(this._getContainer()) && hasSafariAddressBar) {\r\n this._$wrapper.css(\"minHeight\", window.innerHeight)\r\n }\r\n },\r\n _renderGeometry: function(isDimensionChanged) {\r\n if (this.option(\"visible\") && (0, _window.hasWindow)()) {\r\n this._renderGeometryImpl(isDimensionChanged)\r\n }\r\n },\r\n _renderGeometryImpl: function(isDimensionChanged) {\r\n this._stopAnimation();\r\n this._normalizePosition();\r\n this._renderWrapper();\r\n this._fixHeightAfterSafariAddressBarResizing();\r\n this._renderDimensions();\r\n var resultPosition = this._renderPosition();\r\n this._actions.onPositioned({\r\n position: resultPosition\r\n })\r\n },\r\n _fixWrapperPosition: function() {\r\n this._$wrapper.css(\"position\", this._useFixedPosition() ? \"fixed\" : \"absolute\")\r\n },\r\n _useFixedPosition: function() {\r\n var $container = this._getContainer();\r\n return this._isWindow($container) && (!iOS || void 0 !== this._bodyScrollTop)\r\n },\r\n _toggleSafariScrolling: function(scrollingEnabled) {\r\n if (iOS && this._useFixedPosition()) {\r\n var body = _dom_adapter.default.getBody();\r\n if (scrollingEnabled) {\r\n (0, _renderer.default)(body).removeClass(PREVENT_SAFARI_SCROLLING_CLASS);\r\n window.scrollTo(0, this._bodyScrollTop);\r\n this._bodyScrollTop = void 0\r\n } else {\r\n if (this.option(\"visible\")) {\r\n this._bodyScrollTop = window.pageYOffset;\r\n (0, _renderer.default)(body).addClass(PREVENT_SAFARI_SCROLLING_CLASS)\r\n }\r\n }\r\n }\r\n },\r\n _renderWrapper: function() {\r\n this._fixWrapperPosition();\r\n this._renderWrapperDimensions();\r\n this._renderWrapperPosition()\r\n },\r\n _renderWrapperDimensions: function() {\r\n var wrapperWidth;\r\n var wrapperHeight;\r\n var $container = this._getContainer();\r\n if (!$container) {\r\n return\r\n }\r\n var isWindow = this._isWindow($container);\r\n wrapperWidth = isWindow ? \"\" : $container.outerWidth(), wrapperHeight = isWindow ? \"\" : $container.outerHeight();\r\n this._$wrapper.css({\r\n width: wrapperWidth,\r\n height: wrapperHeight\r\n })\r\n },\r\n _isWindow: function($element) {\r\n return !!$element && (0, _type.isWindow)($element.get(0))\r\n },\r\n _renderWrapperPosition: function() {\r\n var $container = this._getContainer();\r\n if ($container) {\r\n _position.default.setup(this._$wrapper, {\r\n my: \"top left\",\r\n at: \"top left\",\r\n of: $container\r\n })\r\n }\r\n },\r\n _getContainer: function() {\r\n var position = this._position;\r\n var container = this.option(\"container\");\r\n var positionOf = null;\r\n if (!container && position) {\r\n var isEvent = !!(position.of && position.of.preventDefault);\r\n positionOf = isEvent ? window : position.of || window\r\n }\r\n return getElement(container || positionOf)\r\n },\r\n _renderDimensions: function() {\r\n var content = this._$content.get(0);\r\n this._$content.css({\r\n minWidth: this._getOptionValue(\"minWidth\", content),\r\n maxWidth: this._getOptionValue(\"maxWidth\", content),\r\n minHeight: this._getOptionValue(\"minHeight\", content),\r\n maxHeight: this._getOptionValue(\"maxHeight\", content),\r\n width: this._getOptionValue(\"width\", content),\r\n height: this._getOptionValue(\"height\", content)\r\n })\r\n },\r\n _renderPosition: function() {\r\n if (this._positionChangeHandled) {\r\n var allowedOffsets = this._allowedOffsets();\r\n this._changePosition({\r\n top: (0, _math.fitIntoRange)(0, -allowedOffsets.top, allowedOffsets.bottom),\r\n left: (0, _math.fitIntoRange)(0, -allowedOffsets.left, allowedOffsets.right)\r\n })\r\n } else {\r\n this._renderOverlayBoundaryOffset();\r\n (0, _translator.resetPosition)(this._$content);\r\n var position = this._transformStringPosition(this._position, POSITION_ALIASES);\r\n var resultPosition = _position.default.setup(this._$content, position);\r\n forceRepaint(this._$content);\r\n this._actions.onPositioning();\r\n return resultPosition\r\n }\r\n },\r\n _transformStringPosition: function(position, positionAliases) {\r\n if ((0, _type.isString)(position)) {\r\n position = (0, _extend.extend)({}, positionAliases[position])\r\n }\r\n return position\r\n },\r\n _renderOverlayBoundaryOffset: function() {\r\n var boundaryOffset = this.option(\"boundaryOffset\");\r\n this._$content.css(\"margin\", boundaryOffset.v + \"px \" + boundaryOffset.h + \"px\")\r\n },\r\n _focusTarget: function() {\r\n return this._$content\r\n },\r\n _attachKeyboardEvents: function() {\r\n var _this6 = this;\r\n this._keyboardListenerId = _short.keyboard.on(this._$content, null, function(opts) {\r\n return _this6._keyboardHandler(opts)\r\n })\r\n },\r\n _keyboardHandler: function(options) {\r\n var e = options.originalEvent;\r\n var $target = (0, _renderer.default)(e.target);\r\n if ($target.is(this._$content) || !this.option(\"ignoreChildEvents\")) {\r\n this.callBase.apply(this, arguments)\r\n }\r\n },\r\n _isVisible: function() {\r\n return this.option(\"visible\")\r\n },\r\n _visibilityChanged: function(visible) {\r\n if (visible) {\r\n if (this.option(\"visible\")) {\r\n this._renderVisibilityAnimate(visible)\r\n }\r\n } else {\r\n this._renderVisibilityAnimate(visible)\r\n }\r\n },\r\n _dimensionChanged: function() {\r\n this._renderGeometry(true)\r\n },\r\n _clean: function() {\r\n if (!this._contentAlreadyRendered) {\r\n this.$content().empty()\r\n }\r\n this._renderVisibility(false);\r\n this._stopShowTimer();\r\n this._cleanFocusState()\r\n },\r\n _stopShowTimer: function() {\r\n if (this._asyncShowTimeout) {\r\n clearTimeout(this._asyncShowTimeout)\r\n }\r\n this._asyncShowTimeout = null\r\n },\r\n _dispose: function() {\r\n _fx.default.stop(this._$content, false);\r\n clearTimeout(this._deferShowTimer);\r\n this._toggleViewPortSubscription(false);\r\n this._toggleSubscriptions(false);\r\n this._updateZIndexStackPosition(false);\r\n this._toggleTabTerminator(false);\r\n this._toggleSafariScrolling(true);\r\n this._actions = null;\r\n this.callBase();\r\n zIndexPool.remove(this._zIndex);\r\n this._$wrapper.remove();\r\n this._$content.remove()\r\n },\r\n _toggleDisabledState: function(value) {\r\n this.callBase.apply(this, arguments);\r\n this._$content.toggleClass(DISABLED_STATE_CLASS, Boolean(value))\r\n },\r\n _toggleRTLDirection: function(rtl) {\r\n this._$content.toggleClass(RTL_DIRECTION_CLASS, rtl)\r\n },\r\n _optionChanged: function(args) {\r\n var _this7 = this;\r\n var value = args.value;\r\n if ((0, _array.inArray)(args.name, ACTIONS) > -1) {\r\n this._initActions();\r\n return\r\n }\r\n switch (args.name) {\r\n case \"dragEnabled\":\r\n this._renderDrag();\r\n this._renderGeometry();\r\n break;\r\n case \"resizeEnabled\":\r\n this._renderResize();\r\n this._renderGeometry();\r\n break;\r\n case \"shading\":\r\n case \"shadingColor\":\r\n this._toggleShading(this.option(\"visible\"));\r\n break;\r\n case \"width\":\r\n case \"height\":\r\n case \"minWidth\":\r\n case \"maxWidth\":\r\n case \"minHeight\":\r\n case \"maxHeight\":\r\n case \"boundaryOffset\":\r\n this._renderGeometry();\r\n break;\r\n case \"position\":\r\n this._positionChangeHandled = false;\r\n this._renderGeometry();\r\n break;\r\n case \"visible\":\r\n this._renderVisibilityAnimate(value).done(function() {\r\n if (!_this7._animateDeferred) {\r\n return\r\n }\r\n _this7._animateDeferred.resolveWith(_this7)\r\n });\r\n break;\r\n case \"target\":\r\n this._initTarget(value);\r\n this._invalidate();\r\n break;\r\n case \"container\":\r\n this._initContainer(value);\r\n this._invalidate();\r\n break;\r\n case \"innerOverlay\":\r\n this._initInnerOverlayClass();\r\n break;\r\n case \"deferRendering\":\r\n case \"contentTemplate\":\r\n this._contentAlreadyRendered = false;\r\n this._clean();\r\n this._invalidate();\r\n break;\r\n case \"hideTopOverlayHandler\":\r\n this._toggleHideTopOverlayCallback(false);\r\n this._initHideTopOverlayHandler(args.value);\r\n this._toggleHideTopOverlayCallback(this.option(\"visible\"));\r\n break;\r\n case \"closeOnTargetScroll\":\r\n this._toggleParentsScrollSubscription(this.option(\"visible\"));\r\n break;\r\n case \"closeOnOutsideClick\":\r\n case \"animation\":\r\n case \"propagateOutsideClick\":\r\n break;\r\n case \"rtlEnabled\":\r\n this._contentAlreadyRendered = false;\r\n this.callBase(args);\r\n break;\r\n default:\r\n this.callBase(args)\r\n }\r\n },\r\n toggle: function(showing) {\r\n var _this8 = this;\r\n showing = void 0 === showing ? !this.option(\"visible\") : showing;\r\n var result = new _deferred.Deferred;\r\n if (showing === this.option(\"visible\")) {\r\n return result.resolveWith(this, [showing]).promise()\r\n }\r\n var animateDeferred = new _deferred.Deferred;\r\n this._animateDeferred = animateDeferred;\r\n this.option(\"visible\", showing);\r\n animateDeferred.promise().done(function() {\r\n delete _this8._animateDeferred;\r\n result.resolveWith(_this8, [_this8.option(\"visible\")])\r\n });\r\n return result.promise()\r\n },\r\n $content: function() {\r\n return this._$content\r\n },\r\n show: function() {\r\n return this.toggle(true)\r\n },\r\n hide: function() {\r\n return this.toggle(false)\r\n },\r\n content: function() {\r\n return (0, _element.getPublicElement)(this._$content)\r\n },\r\n repaint: function() {\r\n if (this._contentAlreadyRendered) {\r\n this._renderGeometry();\r\n (0, _visibility_change.triggerResizeEvent)(this._$content)\r\n } else {\r\n this.callBase()\r\n }\r\n }\r\n});\r\nOverlay.baseZIndex = function(zIndex) {\r\n return zIndexPool.base(zIndex)\r\n};\r\n(0, _component_registrator.default)(\"dxOverlay\", Overlay);\r\nvar _default = Overlay;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * The buffer module from node.js, for the browser.\n *\n * @author Feross Aboukhadijeh \n * @license MIT\n */\n/* eslint-disable no-proto */\n\n'use strict'\n\nvar base64 = require('base64-js')\nvar ieee754 = require('ieee754')\nvar isArray = require('isarray')\n\nexports.Buffer = Buffer\nexports.SlowBuffer = SlowBuffer\nexports.INSPECT_MAX_BYTES = 50\n\n/**\n * If `Buffer.TYPED_ARRAY_SUPPORT`:\n * === true Use Uint8Array implementation (fastest)\n * === false Use Object implementation (most compatible, even IE6)\n *\n * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,\n * Opera 11.6+, iOS 4.2+.\n *\n * Due to various browser bugs, sometimes the Object implementation will be used even\n * when the browser supports typed arrays.\n *\n * Note:\n *\n * - Firefox 4-29 lacks support for adding new properties to `Uint8Array` instances,\n * See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438.\n *\n * - Chrome 9-10 is missing the `TypedArray.prototype.subarray` function.\n *\n * - IE10 has a broken `TypedArray.prototype.subarray` function which returns arrays of\n * incorrect length in some situations.\n\n * We detect these buggy browsers and set `Buffer.TYPED_ARRAY_SUPPORT` to `false` so they\n * get the Object implementation, which is slower but behaves correctly.\n */\nBuffer.TYPED_ARRAY_SUPPORT = global.TYPED_ARRAY_SUPPORT !== undefined\n ? global.TYPED_ARRAY_SUPPORT\n : typedArraySupport()\n\n/*\n * Export kMaxLength after typed array support is determined.\n */\nexports.kMaxLength = kMaxLength()\n\nfunction typedArraySupport () {\n try {\n var arr = new Uint8Array(1)\n arr.__proto__ = {__proto__: Uint8Array.prototype, foo: function () { return 42 }}\n return arr.foo() === 42 && // typed array instances can be augmented\n typeof arr.subarray === 'function' && // chrome 9-10 lack `subarray`\n arr.subarray(1, 1).byteLength === 0 // ie10 has broken `subarray`\n } catch (e) {\n return false\n }\n}\n\nfunction kMaxLength () {\n return Buffer.TYPED_ARRAY_SUPPORT\n ? 0x7fffffff\n : 0x3fffffff\n}\n\nfunction createBuffer (that, length) {\n if (kMaxLength() < length) {\n throw new RangeError('Invalid typed array length')\n }\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = new Uint8Array(length)\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n if (that === null) {\n that = new Buffer(length)\n }\n that.length = length\n }\n\n return that\n}\n\n/**\n * The Buffer constructor returns instances of `Uint8Array` that have their\n * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of\n * `Uint8Array`, so the returned instances will have all the node `Buffer` methods\n * and the `Uint8Array` methods. Square bracket notation works as expected -- it\n * returns a single octet.\n *\n * The `Uint8Array` prototype remains unmodified.\n */\n\nfunction Buffer (arg, encodingOrOffset, length) {\n if (!Buffer.TYPED_ARRAY_SUPPORT && !(this instanceof Buffer)) {\n return new Buffer(arg, encodingOrOffset, length)\n }\n\n // Common case.\n if (typeof arg === 'number') {\n if (typeof encodingOrOffset === 'string') {\n throw new Error(\n 'If encoding is specified then the first argument must be a string'\n )\n }\n return allocUnsafe(this, arg)\n }\n return from(this, arg, encodingOrOffset, length)\n}\n\nBuffer.poolSize = 8192 // not used by this implementation\n\n// TODO: Legacy, not needed anymore. Remove in next major version.\nBuffer._augment = function (arr) {\n arr.__proto__ = Buffer.prototype\n return arr\n}\n\nfunction from (that, value, encodingOrOffset, length) {\n if (typeof value === 'number') {\n throw new TypeError('\"value\" argument must not be a number')\n }\n\n if (typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer) {\n return fromArrayBuffer(that, value, encodingOrOffset, length)\n }\n\n if (typeof value === 'string') {\n return fromString(that, value, encodingOrOffset)\n }\n\n return fromObject(that, value)\n}\n\n/**\n * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError\n * if value is a number.\n * Buffer.from(str[, encoding])\n * Buffer.from(array)\n * Buffer.from(buffer)\n * Buffer.from(arrayBuffer[, byteOffset[, length]])\n **/\nBuffer.from = function (value, encodingOrOffset, length) {\n return from(null, value, encodingOrOffset, length)\n}\n\nif (Buffer.TYPED_ARRAY_SUPPORT) {\n Buffer.prototype.__proto__ = Uint8Array.prototype\n Buffer.__proto__ = Uint8Array\n if (typeof Symbol !== 'undefined' && Symbol.species &&\n Buffer[Symbol.species] === Buffer) {\n // Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97\n Object.defineProperty(Buffer, Symbol.species, {\n value: null,\n configurable: true\n })\n }\n}\n\nfunction assertSize (size) {\n if (typeof size !== 'number') {\n throw new TypeError('\"size\" argument must be a number')\n } else if (size < 0) {\n throw new RangeError('\"size\" argument must not be negative')\n }\n}\n\nfunction alloc (that, size, fill, encoding) {\n assertSize(size)\n if (size <= 0) {\n return createBuffer(that, size)\n }\n if (fill !== undefined) {\n // Only pay attention to encoding if it's a string. This\n // prevents accidentally sending in a number that would\n // be interpretted as a start offset.\n return typeof encoding === 'string'\n ? createBuffer(that, size).fill(fill, encoding)\n : createBuffer(that, size).fill(fill)\n }\n return createBuffer(that, size)\n}\n\n/**\n * Creates a new filled Buffer instance.\n * alloc(size[, fill[, encoding]])\n **/\nBuffer.alloc = function (size, fill, encoding) {\n return alloc(null, size, fill, encoding)\n}\n\nfunction allocUnsafe (that, size) {\n assertSize(size)\n that = createBuffer(that, size < 0 ? 0 : checked(size) | 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) {\n for (var i = 0; i < size; ++i) {\n that[i] = 0\n }\n }\n return that\n}\n\n/**\n * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.\n * */\nBuffer.allocUnsafe = function (size) {\n return allocUnsafe(null, size)\n}\n/**\n * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.\n */\nBuffer.allocUnsafeSlow = function (size) {\n return allocUnsafe(null, size)\n}\n\nfunction fromString (that, string, encoding) {\n if (typeof encoding !== 'string' || encoding === '') {\n encoding = 'utf8'\n }\n\n if (!Buffer.isEncoding(encoding)) {\n throw new TypeError('\"encoding\" must be a valid string encoding')\n }\n\n var length = byteLength(string, encoding) | 0\n that = createBuffer(that, length)\n\n var actual = that.write(string, encoding)\n\n if (actual !== length) {\n // Writing a hex string, for example, that contains invalid characters will\n // cause everything after the first invalid character to be ignored. (e.g.\n // 'abxxcd' will be treated as 'ab')\n that = that.slice(0, actual)\n }\n\n return that\n}\n\nfunction fromArrayLike (that, array) {\n var length = array.length < 0 ? 0 : checked(array.length) | 0\n that = createBuffer(that, length)\n for (var i = 0; i < length; i += 1) {\n that[i] = array[i] & 255\n }\n return that\n}\n\nfunction fromArrayBuffer (that, array, byteOffset, length) {\n array.byteLength // this throws if `array` is not a valid ArrayBuffer\n\n if (byteOffset < 0 || array.byteLength < byteOffset) {\n throw new RangeError('\\'offset\\' is out of bounds')\n }\n\n if (array.byteLength < byteOffset + (length || 0)) {\n throw new RangeError('\\'length\\' is out of bounds')\n }\n\n if (byteOffset === undefined && length === undefined) {\n array = new Uint8Array(array)\n } else if (length === undefined) {\n array = new Uint8Array(array, byteOffset)\n } else {\n array = new Uint8Array(array, byteOffset, length)\n }\n\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n // Return an augmented `Uint8Array` instance, for best performance\n that = array\n that.__proto__ = Buffer.prototype\n } else {\n // Fallback: Return an object instance of the Buffer class\n that = fromArrayLike(that, array)\n }\n return that\n}\n\nfunction fromObject (that, obj) {\n if (Buffer.isBuffer(obj)) {\n var len = checked(obj.length) | 0\n that = createBuffer(that, len)\n\n if (that.length === 0) {\n return that\n }\n\n obj.copy(that, 0, 0, len)\n return that\n }\n\n if (obj) {\n if ((typeof ArrayBuffer !== 'undefined' &&\n obj.buffer instanceof ArrayBuffer) || 'length' in obj) {\n if (typeof obj.length !== 'number' || isnan(obj.length)) {\n return createBuffer(that, 0)\n }\n return fromArrayLike(that, obj)\n }\n\n if (obj.type === 'Buffer' && isArray(obj.data)) {\n return fromArrayLike(that, obj.data)\n }\n }\n\n throw new TypeError('First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.')\n}\n\nfunction checked (length) {\n // Note: cannot use `length < kMaxLength()` here because that fails when\n // length is NaN (which is otherwise coerced to zero.)\n if (length >= kMaxLength()) {\n throw new RangeError('Attempt to allocate Buffer larger than maximum ' +\n 'size: 0x' + kMaxLength().toString(16) + ' bytes')\n }\n return length | 0\n}\n\nfunction SlowBuffer (length) {\n if (+length != length) { // eslint-disable-line eqeqeq\n length = 0\n }\n return Buffer.alloc(+length)\n}\n\nBuffer.isBuffer = function isBuffer (b) {\n return !!(b != null && b._isBuffer)\n}\n\nBuffer.compare = function compare (a, b) {\n if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {\n throw new TypeError('Arguments must be Buffers')\n }\n\n if (a === b) return 0\n\n var x = a.length\n var y = b.length\n\n for (var i = 0, len = Math.min(x, y); i < len; ++i) {\n if (a[i] !== b[i]) {\n x = a[i]\n y = b[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\nBuffer.isEncoding = function isEncoding (encoding) {\n switch (String(encoding).toLowerCase()) {\n case 'hex':\n case 'utf8':\n case 'utf-8':\n case 'ascii':\n case 'latin1':\n case 'binary':\n case 'base64':\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return true\n default:\n return false\n }\n}\n\nBuffer.concat = function concat (list, length) {\n if (!isArray(list)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n\n if (list.length === 0) {\n return Buffer.alloc(0)\n }\n\n var i\n if (length === undefined) {\n length = 0\n for (i = 0; i < list.length; ++i) {\n length += list[i].length\n }\n }\n\n var buffer = Buffer.allocUnsafe(length)\n var pos = 0\n for (i = 0; i < list.length; ++i) {\n var buf = list[i]\n if (!Buffer.isBuffer(buf)) {\n throw new TypeError('\"list\" argument must be an Array of Buffers')\n }\n buf.copy(buffer, pos)\n pos += buf.length\n }\n return buffer\n}\n\nfunction byteLength (string, encoding) {\n if (Buffer.isBuffer(string)) {\n return string.length\n }\n if (typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer.isView === 'function' &&\n (ArrayBuffer.isView(string) || string instanceof ArrayBuffer)) {\n return string.byteLength\n }\n if (typeof string !== 'string') {\n string = '' + string\n }\n\n var len = string.length\n if (len === 0) return 0\n\n // Use a for loop to avoid recursion\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'ascii':\n case 'latin1':\n case 'binary':\n return len\n case 'utf8':\n case 'utf-8':\n case undefined:\n return utf8ToBytes(string).length\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return len * 2\n case 'hex':\n return len >>> 1\n case 'base64':\n return base64ToBytes(string).length\n default:\n if (loweredCase) return utf8ToBytes(string).length // assume utf8\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\nBuffer.byteLength = byteLength\n\nfunction slowToString (encoding, start, end) {\n var loweredCase = false\n\n // No need to verify that \"this.length <= MAX_UINT32\" since it's a read-only\n // property of a typed array.\n\n // This behaves neither like String nor Uint8Array in that we set start/end\n // to their upper/lower bounds if the value passed is out of range.\n // undefined is handled specially as per ECMA-262 6th Edition,\n // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.\n if (start === undefined || start < 0) {\n start = 0\n }\n // Return early if start > this.length. Done here to prevent potential uint32\n // coercion fail below.\n if (start > this.length) {\n return ''\n }\n\n if (end === undefined || end > this.length) {\n end = this.length\n }\n\n if (end <= 0) {\n return ''\n }\n\n // Force coersion to uint32. This will also coerce falsey/NaN values to 0.\n end >>>= 0\n start >>>= 0\n\n if (end <= start) {\n return ''\n }\n\n if (!encoding) encoding = 'utf8'\n\n while (true) {\n switch (encoding) {\n case 'hex':\n return hexSlice(this, start, end)\n\n case 'utf8':\n case 'utf-8':\n return utf8Slice(this, start, end)\n\n case 'ascii':\n return asciiSlice(this, start, end)\n\n case 'latin1':\n case 'binary':\n return latin1Slice(this, start, end)\n\n case 'base64':\n return base64Slice(this, start, end)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return utf16leSlice(this, start, end)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = (encoding + '').toLowerCase()\n loweredCase = true\n }\n }\n}\n\n// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect\n// Buffer instances.\nBuffer.prototype._isBuffer = true\n\nfunction swap (b, n, m) {\n var i = b[n]\n b[n] = b[m]\n b[m] = i\n}\n\nBuffer.prototype.swap16 = function swap16 () {\n var len = this.length\n if (len % 2 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 16-bits')\n }\n for (var i = 0; i < len; i += 2) {\n swap(this, i, i + 1)\n }\n return this\n}\n\nBuffer.prototype.swap32 = function swap32 () {\n var len = this.length\n if (len % 4 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 32-bits')\n }\n for (var i = 0; i < len; i += 4) {\n swap(this, i, i + 3)\n swap(this, i + 1, i + 2)\n }\n return this\n}\n\nBuffer.prototype.swap64 = function swap64 () {\n var len = this.length\n if (len % 8 !== 0) {\n throw new RangeError('Buffer size must be a multiple of 64-bits')\n }\n for (var i = 0; i < len; i += 8) {\n swap(this, i, i + 7)\n swap(this, i + 1, i + 6)\n swap(this, i + 2, i + 5)\n swap(this, i + 3, i + 4)\n }\n return this\n}\n\nBuffer.prototype.toString = function toString () {\n var length = this.length | 0\n if (length === 0) return ''\n if (arguments.length === 0) return utf8Slice(this, 0, length)\n return slowToString.apply(this, arguments)\n}\n\nBuffer.prototype.equals = function equals (b) {\n if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')\n if (this === b) return true\n return Buffer.compare(this, b) === 0\n}\n\nBuffer.prototype.inspect = function inspect () {\n var str = ''\n var max = exports.INSPECT_MAX_BYTES\n if (this.length > 0) {\n str = this.toString('hex', 0, max).match(/.{2}/g).join(' ')\n if (this.length > max) str += ' ... '\n }\n return ''\n}\n\nBuffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {\n if (!Buffer.isBuffer(target)) {\n throw new TypeError('Argument must be a Buffer')\n }\n\n if (start === undefined) {\n start = 0\n }\n if (end === undefined) {\n end = target ? target.length : 0\n }\n if (thisStart === undefined) {\n thisStart = 0\n }\n if (thisEnd === undefined) {\n thisEnd = this.length\n }\n\n if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {\n throw new RangeError('out of range index')\n }\n\n if (thisStart >= thisEnd && start >= end) {\n return 0\n }\n if (thisStart >= thisEnd) {\n return -1\n }\n if (start >= end) {\n return 1\n }\n\n start >>>= 0\n end >>>= 0\n thisStart >>>= 0\n thisEnd >>>= 0\n\n if (this === target) return 0\n\n var x = thisEnd - thisStart\n var y = end - start\n var len = Math.min(x, y)\n\n var thisCopy = this.slice(thisStart, thisEnd)\n var targetCopy = target.slice(start, end)\n\n for (var i = 0; i < len; ++i) {\n if (thisCopy[i] !== targetCopy[i]) {\n x = thisCopy[i]\n y = targetCopy[i]\n break\n }\n }\n\n if (x < y) return -1\n if (y < x) return 1\n return 0\n}\n\n// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,\n// OR the last index of `val` in `buffer` at offset <= `byteOffset`.\n//\n// Arguments:\n// - buffer - a Buffer to search\n// - val - a string, Buffer, or number\n// - byteOffset - an index into `buffer`; will be clamped to an int32\n// - encoding - an optional encoding, relevant is val is a string\n// - dir - true for indexOf, false for lastIndexOf\nfunction bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {\n // Empty buffer means no match\n if (buffer.length === 0) return -1\n\n // Normalize byteOffset\n if (typeof byteOffset === 'string') {\n encoding = byteOffset\n byteOffset = 0\n } else if (byteOffset > 0x7fffffff) {\n byteOffset = 0x7fffffff\n } else if (byteOffset < -0x80000000) {\n byteOffset = -0x80000000\n }\n byteOffset = +byteOffset // Coerce to Number.\n if (isNaN(byteOffset)) {\n // byteOffset: it it's undefined, null, NaN, \"foo\", etc, search whole buffer\n byteOffset = dir ? 0 : (buffer.length - 1)\n }\n\n // Normalize byteOffset: negative offsets start from the end of the buffer\n if (byteOffset < 0) byteOffset = buffer.length + byteOffset\n if (byteOffset >= buffer.length) {\n if (dir) return -1\n else byteOffset = buffer.length - 1\n } else if (byteOffset < 0) {\n if (dir) byteOffset = 0\n else return -1\n }\n\n // Normalize val\n if (typeof val === 'string') {\n val = Buffer.from(val, encoding)\n }\n\n // Finally, search either indexOf (if dir is true) or lastIndexOf\n if (Buffer.isBuffer(val)) {\n // Special case: looking for empty string/buffer always fails\n if (val.length === 0) {\n return -1\n }\n return arrayIndexOf(buffer, val, byteOffset, encoding, dir)\n } else if (typeof val === 'number') {\n val = val & 0xFF // Search for a byte value [0-255]\n if (Buffer.TYPED_ARRAY_SUPPORT &&\n typeof Uint8Array.prototype.indexOf === 'function') {\n if (dir) {\n return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)\n } else {\n return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)\n }\n }\n return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)\n }\n\n throw new TypeError('val must be string, number or Buffer')\n}\n\nfunction arrayIndexOf (arr, val, byteOffset, encoding, dir) {\n var indexSize = 1\n var arrLength = arr.length\n var valLength = val.length\n\n if (encoding !== undefined) {\n encoding = String(encoding).toLowerCase()\n if (encoding === 'ucs2' || encoding === 'ucs-2' ||\n encoding === 'utf16le' || encoding === 'utf-16le') {\n if (arr.length < 2 || val.length < 2) {\n return -1\n }\n indexSize = 2\n arrLength /= 2\n valLength /= 2\n byteOffset /= 2\n }\n }\n\n function read (buf, i) {\n if (indexSize === 1) {\n return buf[i]\n } else {\n return buf.readUInt16BE(i * indexSize)\n }\n }\n\n var i\n if (dir) {\n var foundIndex = -1\n for (i = byteOffset; i < arrLength; i++) {\n if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {\n if (foundIndex === -1) foundIndex = i\n if (i - foundIndex + 1 === valLength) return foundIndex * indexSize\n } else {\n if (foundIndex !== -1) i -= i - foundIndex\n foundIndex = -1\n }\n }\n } else {\n if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength\n for (i = byteOffset; i >= 0; i--) {\n var found = true\n for (var j = 0; j < valLength; j++) {\n if (read(arr, i + j) !== read(val, j)) {\n found = false\n break\n }\n }\n if (found) return i\n }\n }\n\n return -1\n}\n\nBuffer.prototype.includes = function includes (val, byteOffset, encoding) {\n return this.indexOf(val, byteOffset, encoding) !== -1\n}\n\nBuffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, true)\n}\n\nBuffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {\n return bidirectionalIndexOf(this, val, byteOffset, encoding, false)\n}\n\nfunction hexWrite (buf, string, offset, length) {\n offset = Number(offset) || 0\n var remaining = buf.length - offset\n if (!length) {\n length = remaining\n } else {\n length = Number(length)\n if (length > remaining) {\n length = remaining\n }\n }\n\n // must be an even number of digits\n var strLen = string.length\n if (strLen % 2 !== 0) throw new TypeError('Invalid hex string')\n\n if (length > strLen / 2) {\n length = strLen / 2\n }\n for (var i = 0; i < length; ++i) {\n var parsed = parseInt(string.substr(i * 2, 2), 16)\n if (isNaN(parsed)) return i\n buf[offset + i] = parsed\n }\n return i\n}\n\nfunction utf8Write (buf, string, offset, length) {\n return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nfunction asciiWrite (buf, string, offset, length) {\n return blitBuffer(asciiToBytes(string), buf, offset, length)\n}\n\nfunction latin1Write (buf, string, offset, length) {\n return asciiWrite(buf, string, offset, length)\n}\n\nfunction base64Write (buf, string, offset, length) {\n return blitBuffer(base64ToBytes(string), buf, offset, length)\n}\n\nfunction ucs2Write (buf, string, offset, length) {\n return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)\n}\n\nBuffer.prototype.write = function write (string, offset, length, encoding) {\n // Buffer#write(string)\n if (offset === undefined) {\n encoding = 'utf8'\n length = this.length\n offset = 0\n // Buffer#write(string, encoding)\n } else if (length === undefined && typeof offset === 'string') {\n encoding = offset\n length = this.length\n offset = 0\n // Buffer#write(string, offset[, length][, encoding])\n } else if (isFinite(offset)) {\n offset = offset | 0\n if (isFinite(length)) {\n length = length | 0\n if (encoding === undefined) encoding = 'utf8'\n } else {\n encoding = length\n length = undefined\n }\n // legacy write(string, encoding, offset, length) - remove in v0.13\n } else {\n throw new Error(\n 'Buffer.write(string, encoding, offset[, length]) is no longer supported'\n )\n }\n\n var remaining = this.length - offset\n if (length === undefined || length > remaining) length = remaining\n\n if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {\n throw new RangeError('Attempt to write outside buffer bounds')\n }\n\n if (!encoding) encoding = 'utf8'\n\n var loweredCase = false\n for (;;) {\n switch (encoding) {\n case 'hex':\n return hexWrite(this, string, offset, length)\n\n case 'utf8':\n case 'utf-8':\n return utf8Write(this, string, offset, length)\n\n case 'ascii':\n return asciiWrite(this, string, offset, length)\n\n case 'latin1':\n case 'binary':\n return latin1Write(this, string, offset, length)\n\n case 'base64':\n // Warning: maxLength not taken into account in base64Write\n return base64Write(this, string, offset, length)\n\n case 'ucs2':\n case 'ucs-2':\n case 'utf16le':\n case 'utf-16le':\n return ucs2Write(this, string, offset, length)\n\n default:\n if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)\n encoding = ('' + encoding).toLowerCase()\n loweredCase = true\n }\n }\n}\n\nBuffer.prototype.toJSON = function toJSON () {\n return {\n type: 'Buffer',\n data: Array.prototype.slice.call(this._arr || this, 0)\n }\n}\n\nfunction base64Slice (buf, start, end) {\n if (start === 0 && end === buf.length) {\n return base64.fromByteArray(buf)\n } else {\n return base64.fromByteArray(buf.slice(start, end))\n }\n}\n\nfunction utf8Slice (buf, start, end) {\n end = Math.min(buf.length, end)\n var res = []\n\n var i = start\n while (i < end) {\n var firstByte = buf[i]\n var codePoint = null\n var bytesPerSequence = (firstByte > 0xEF) ? 4\n : (firstByte > 0xDF) ? 3\n : (firstByte > 0xBF) ? 2\n : 1\n\n if (i + bytesPerSequence <= end) {\n var secondByte, thirdByte, fourthByte, tempCodePoint\n\n switch (bytesPerSequence) {\n case 1:\n if (firstByte < 0x80) {\n codePoint = firstByte\n }\n break\n case 2:\n secondByte = buf[i + 1]\n if ((secondByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)\n if (tempCodePoint > 0x7F) {\n codePoint = tempCodePoint\n }\n }\n break\n case 3:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)\n if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {\n codePoint = tempCodePoint\n }\n }\n break\n case 4:\n secondByte = buf[i + 1]\n thirdByte = buf[i + 2]\n fourthByte = buf[i + 3]\n if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {\n tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)\n if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {\n codePoint = tempCodePoint\n }\n }\n }\n }\n\n if (codePoint === null) {\n // we did not generate a valid codePoint so insert a\n // replacement char (U+FFFD) and advance only 1 byte\n codePoint = 0xFFFD\n bytesPerSequence = 1\n } else if (codePoint > 0xFFFF) {\n // encode to utf16 (surrogate pair dance)\n codePoint -= 0x10000\n res.push(codePoint >>> 10 & 0x3FF | 0xD800)\n codePoint = 0xDC00 | codePoint & 0x3FF\n }\n\n res.push(codePoint)\n i += bytesPerSequence\n }\n\n return decodeCodePointsArray(res)\n}\n\n// Based on http://stackoverflow.com/a/22747272/680742, the browser with\n// the lowest limit is Chrome, with 0x10000 args.\n// We go 1 magnitude less, for safety\nvar MAX_ARGUMENTS_LENGTH = 0x1000\n\nfunction decodeCodePointsArray (codePoints) {\n var len = codePoints.length\n if (len <= MAX_ARGUMENTS_LENGTH) {\n return String.fromCharCode.apply(String, codePoints) // avoid extra slice()\n }\n\n // Decode in chunks to avoid \"call stack size exceeded\".\n var res = ''\n var i = 0\n while (i < len) {\n res += String.fromCharCode.apply(\n String,\n codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)\n )\n }\n return res\n}\n\nfunction asciiSlice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i] & 0x7F)\n }\n return ret\n}\n\nfunction latin1Slice (buf, start, end) {\n var ret = ''\n end = Math.min(buf.length, end)\n\n for (var i = start; i < end; ++i) {\n ret += String.fromCharCode(buf[i])\n }\n return ret\n}\n\nfunction hexSlice (buf, start, end) {\n var len = buf.length\n\n if (!start || start < 0) start = 0\n if (!end || end < 0 || end > len) end = len\n\n var out = ''\n for (var i = start; i < end; ++i) {\n out += toHex(buf[i])\n }\n return out\n}\n\nfunction utf16leSlice (buf, start, end) {\n var bytes = buf.slice(start, end)\n var res = ''\n for (var i = 0; i < bytes.length; i += 2) {\n res += String.fromCharCode(bytes[i] + bytes[i + 1] * 256)\n }\n return res\n}\n\nBuffer.prototype.slice = function slice (start, end) {\n var len = this.length\n start = ~~start\n end = end === undefined ? len : ~~end\n\n if (start < 0) {\n start += len\n if (start < 0) start = 0\n } else if (start > len) {\n start = len\n }\n\n if (end < 0) {\n end += len\n if (end < 0) end = 0\n } else if (end > len) {\n end = len\n }\n\n if (end < start) end = start\n\n var newBuf\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n newBuf = this.subarray(start, end)\n newBuf.__proto__ = Buffer.prototype\n } else {\n var sliceLen = end - start\n newBuf = new Buffer(sliceLen, undefined)\n for (var i = 0; i < sliceLen; ++i) {\n newBuf[i] = this[i + start]\n }\n }\n\n return newBuf\n}\n\n/*\n * Need to make sure that buffer isn't trying to write out of bounds.\n */\nfunction checkOffset (offset, ext, length) {\n if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')\n if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')\n}\n\nBuffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n checkOffset(offset, byteLength, this.length)\n }\n\n var val = this[offset + --byteLength]\n var mul = 1\n while (byteLength > 0 && (mul *= 0x100)) {\n val += this[offset + --byteLength] * mul\n }\n\n return val\n}\n\nBuffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n return this[offset]\n}\n\nBuffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return this[offset] | (this[offset + 1] << 8)\n}\n\nBuffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n return (this[offset] << 8) | this[offset + 1]\n}\n\nBuffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return ((this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16)) +\n (this[offset + 3] * 0x1000000)\n}\n\nBuffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] * 0x1000000) +\n ((this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n this[offset + 3])\n}\n\nBuffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var val = this[offset]\n var mul = 1\n var i = 0\n while (++i < byteLength && (mul *= 0x100)) {\n val += this[offset + i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) checkOffset(offset, byteLength, this.length)\n\n var i = byteLength\n var mul = 1\n var val = this[offset + --i]\n while (i > 0 && (mul *= 0x100)) {\n val += this[offset + --i] * mul\n }\n mul *= 0x80\n\n if (val >= mul) val -= Math.pow(2, 8 * byteLength)\n\n return val\n}\n\nBuffer.prototype.readInt8 = function readInt8 (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 1, this.length)\n if (!(this[offset] & 0x80)) return (this[offset])\n return ((0xff - this[offset] + 1) * -1)\n}\n\nBuffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset] | (this[offset + 1] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 2, this.length)\n var val = this[offset + 1] | (this[offset] << 8)\n return (val & 0x8000) ? val | 0xFFFF0000 : val\n}\n\nBuffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset]) |\n (this[offset + 1] << 8) |\n (this[offset + 2] << 16) |\n (this[offset + 3] << 24)\n}\n\nBuffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n\n return (this[offset] << 24) |\n (this[offset + 1] << 16) |\n (this[offset + 2] << 8) |\n (this[offset + 3])\n}\n\nBuffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, true, 23, 4)\n}\n\nBuffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 4, this.length)\n return ieee754.read(this, offset, false, 23, 4)\n}\n\nBuffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, true, 52, 8)\n}\n\nBuffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {\n if (!noAssert) checkOffset(offset, 8, this.length)\n return ieee754.read(this, offset, false, 52, 8)\n}\n\nfunction checkInt (buf, value, offset, ext, max, min) {\n if (!Buffer.isBuffer(buf)) throw new TypeError('\"buffer\" argument must be a Buffer instance')\n if (value > max || value < min) throw new RangeError('\"value\" argument is out of bounds')\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n}\n\nBuffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var mul = 1\n var i = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n byteLength = byteLength | 0\n if (!noAssert) {\n var maxBytes = Math.pow(2, 8 * byteLength) - 1\n checkInt(this, value, offset, byteLength, maxBytes, 0)\n }\n\n var i = byteLength - 1\n var mul = 1\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n this[offset + i] = (value / mul) & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nfunction objectWriteUInt16 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 2); i < j; ++i) {\n buf[offset + i] = (value & (0xff << (8 * (littleEndian ? i : 1 - i)))) >>>\n (littleEndian ? i : 1 - i) * 8\n }\n}\n\nBuffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nfunction objectWriteUInt32 (buf, value, offset, littleEndian) {\n if (value < 0) value = 0xffffffff + value + 1\n for (var i = 0, j = Math.min(buf.length - offset, 4); i < j; ++i) {\n buf[offset + i] = (value >>> (littleEndian ? i : 3 - i) * 8) & 0xff\n }\n}\n\nBuffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset + 3] = (value >>> 24)\n this[offset + 2] = (value >>> 16)\n this[offset + 1] = (value >>> 8)\n this[offset] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = 0\n var mul = 1\n var sub = 0\n this[offset] = value & 0xFF\n while (++i < byteLength && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) {\n var limit = Math.pow(2, 8 * byteLength - 1)\n\n checkInt(this, value, offset, byteLength, limit - 1, -limit)\n }\n\n var i = byteLength - 1\n var mul = 1\n var sub = 0\n this[offset + i] = value & 0xFF\n while (--i >= 0 && (mul *= 0x100)) {\n if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {\n sub = 1\n }\n this[offset + i] = ((value / mul) >> 0) - sub & 0xFF\n }\n\n return offset + byteLength\n}\n\nBuffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)\n if (!Buffer.TYPED_ARRAY_SUPPORT) value = Math.floor(value)\n if (value < 0) value = 0xff + value + 1\n this[offset] = (value & 0xff)\n return offset + 1\n}\n\nBuffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n } else {\n objectWriteUInt16(this, value, offset, true)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 8)\n this[offset + 1] = (value & 0xff)\n } else {\n objectWriteUInt16(this, value, offset, false)\n }\n return offset + 2\n}\n\nBuffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value & 0xff)\n this[offset + 1] = (value >>> 8)\n this[offset + 2] = (value >>> 16)\n this[offset + 3] = (value >>> 24)\n } else {\n objectWriteUInt32(this, value, offset, true)\n }\n return offset + 4\n}\n\nBuffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {\n value = +value\n offset = offset | 0\n if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)\n if (value < 0) value = 0xffffffff + value + 1\n if (Buffer.TYPED_ARRAY_SUPPORT) {\n this[offset] = (value >>> 24)\n this[offset + 1] = (value >>> 16)\n this[offset + 2] = (value >>> 8)\n this[offset + 3] = (value & 0xff)\n } else {\n objectWriteUInt32(this, value, offset, false)\n }\n return offset + 4\n}\n\nfunction checkIEEE754 (buf, value, offset, ext, max, min) {\n if (offset + ext > buf.length) throw new RangeError('Index out of range')\n if (offset < 0) throw new RangeError('Index out of range')\n}\n\nfunction writeFloat (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)\n }\n ieee754.write(buf, value, offset, littleEndian, 23, 4)\n return offset + 4\n}\n\nBuffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {\n return writeFloat(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {\n return writeFloat(this, value, offset, false, noAssert)\n}\n\nfunction writeDouble (buf, value, offset, littleEndian, noAssert) {\n if (!noAssert) {\n checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)\n }\n ieee754.write(buf, value, offset, littleEndian, 52, 8)\n return offset + 8\n}\n\nBuffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {\n return writeDouble(this, value, offset, true, noAssert)\n}\n\nBuffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {\n return writeDouble(this, value, offset, false, noAssert)\n}\n\n// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)\nBuffer.prototype.copy = function copy (target, targetStart, start, end) {\n if (!start) start = 0\n if (!end && end !== 0) end = this.length\n if (targetStart >= target.length) targetStart = target.length\n if (!targetStart) targetStart = 0\n if (end > 0 && end < start) end = start\n\n // Copy 0 bytes; we're done\n if (end === start) return 0\n if (target.length === 0 || this.length === 0) return 0\n\n // Fatal error conditions\n if (targetStart < 0) {\n throw new RangeError('targetStart out of bounds')\n }\n if (start < 0 || start >= this.length) throw new RangeError('sourceStart out of bounds')\n if (end < 0) throw new RangeError('sourceEnd out of bounds')\n\n // Are we oob?\n if (end > this.length) end = this.length\n if (target.length - targetStart < end - start) {\n end = target.length - targetStart + start\n }\n\n var len = end - start\n var i\n\n if (this === target && start < targetStart && targetStart < end) {\n // descending copy from end\n for (i = len - 1; i >= 0; --i) {\n target[i + targetStart] = this[i + start]\n }\n } else if (len < 1000 || !Buffer.TYPED_ARRAY_SUPPORT) {\n // ascending copy from start\n for (i = 0; i < len; ++i) {\n target[i + targetStart] = this[i + start]\n }\n } else {\n Uint8Array.prototype.set.call(\n target,\n this.subarray(start, start + len),\n targetStart\n )\n }\n\n return len\n}\n\n// Usage:\n// buffer.fill(number[, offset[, end]])\n// buffer.fill(buffer[, offset[, end]])\n// buffer.fill(string[, offset[, end]][, encoding])\nBuffer.prototype.fill = function fill (val, start, end, encoding) {\n // Handle string cases:\n if (typeof val === 'string') {\n if (typeof start === 'string') {\n encoding = start\n start = 0\n end = this.length\n } else if (typeof end === 'string') {\n encoding = end\n end = this.length\n }\n if (val.length === 1) {\n var code = val.charCodeAt(0)\n if (code < 256) {\n val = code\n }\n }\n if (encoding !== undefined && typeof encoding !== 'string') {\n throw new TypeError('encoding must be a string')\n }\n if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {\n throw new TypeError('Unknown encoding: ' + encoding)\n }\n } else if (typeof val === 'number') {\n val = val & 255\n }\n\n // Invalid ranges are not set to a default, so can range check early.\n if (start < 0 || this.length < start || this.length < end) {\n throw new RangeError('Out of range index')\n }\n\n if (end <= start) {\n return this\n }\n\n start = start >>> 0\n end = end === undefined ? this.length : end >>> 0\n\n if (!val) val = 0\n\n var i\n if (typeof val === 'number') {\n for (i = start; i < end; ++i) {\n this[i] = val\n }\n } else {\n var bytes = Buffer.isBuffer(val)\n ? val\n : utf8ToBytes(new Buffer(val, encoding).toString())\n var len = bytes.length\n for (i = 0; i < end - start; ++i) {\n this[i + start] = bytes[i % len]\n }\n }\n\n return this\n}\n\n// HELPER FUNCTIONS\n// ================\n\nvar INVALID_BASE64_RE = /[^+\\/0-9A-Za-z-_]/g\n\nfunction base64clean (str) {\n // Node strips out invalid characters like \\n and \\t from the string, base64-js does not\n str = stringtrim(str).replace(INVALID_BASE64_RE, '')\n // Node converts strings with length < 2 to ''\n if (str.length < 2) return ''\n // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not\n while (str.length % 4 !== 0) {\n str = str + '='\n }\n return str\n}\n\nfunction stringtrim (str) {\n if (str.trim) return str.trim()\n return str.replace(/^\\s+|\\s+$/g, '')\n}\n\nfunction toHex (n) {\n if (n < 16) return '0' + n.toString(16)\n return n.toString(16)\n}\n\nfunction utf8ToBytes (string, units) {\n units = units || Infinity\n var codePoint\n var length = string.length\n var leadSurrogate = null\n var bytes = []\n\n for (var i = 0; i < length; ++i) {\n codePoint = string.charCodeAt(i)\n\n // is surrogate component\n if (codePoint > 0xD7FF && codePoint < 0xE000) {\n // last char was a lead\n if (!leadSurrogate) {\n // no lead yet\n if (codePoint > 0xDBFF) {\n // unexpected trail\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n } else if (i + 1 === length) {\n // unpaired lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n continue\n }\n\n // valid lead\n leadSurrogate = codePoint\n\n continue\n }\n\n // 2 leads in a row\n if (codePoint < 0xDC00) {\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n leadSurrogate = codePoint\n continue\n }\n\n // valid surrogate pair\n codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000\n } else if (leadSurrogate) {\n // valid bmp char, but last char was a lead\n if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)\n }\n\n leadSurrogate = null\n\n // encode utf8\n if (codePoint < 0x80) {\n if ((units -= 1) < 0) break\n bytes.push(codePoint)\n } else if (codePoint < 0x800) {\n if ((units -= 2) < 0) break\n bytes.push(\n codePoint >> 0x6 | 0xC0,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x10000) {\n if ((units -= 3) < 0) break\n bytes.push(\n codePoint >> 0xC | 0xE0,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else if (codePoint < 0x110000) {\n if ((units -= 4) < 0) break\n bytes.push(\n codePoint >> 0x12 | 0xF0,\n codePoint >> 0xC & 0x3F | 0x80,\n codePoint >> 0x6 & 0x3F | 0x80,\n codePoint & 0x3F | 0x80\n )\n } else {\n throw new Error('Invalid code point')\n }\n }\n\n return bytes\n}\n\nfunction asciiToBytes (str) {\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n // Node's code seems to be doing this and not & 0x7F..\n byteArray.push(str.charCodeAt(i) & 0xFF)\n }\n return byteArray\n}\n\nfunction utf16leToBytes (str, units) {\n var c, hi, lo\n var byteArray = []\n for (var i = 0; i < str.length; ++i) {\n if ((units -= 2) < 0) break\n\n c = str.charCodeAt(i)\n hi = c >> 8\n lo = c % 256\n byteArray.push(lo)\n byteArray.push(hi)\n }\n\n return byteArray\n}\n\nfunction base64ToBytes (str) {\n return base64.toByteArray(base64clean(str))\n}\n\nfunction blitBuffer (src, dst, offset, length) {\n for (var i = 0; i < length; ++i) {\n if ((i + offset >= dst.length) || (i >= src.length)) break\n dst[i + offset] = src[i]\n }\n return i\n}\n\nfunction isnan (val) {\n return val !== val // eslint-disable-line no-self-compare\n}\n","/**\r\n * DevExtreme (events/core/wheel.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.name = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _events_engine = _interopRequireDefault(require(\"../../events/core/events_engine\"));\r\nvar _event_registrator = _interopRequireDefault(require(\"./event_registrator\"));\r\nvar _index = require(\"../utils/index\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar EVENT_NAME = \"dxmousewheel\";\r\nexports.name = EVENT_NAME;\r\nvar EVENT_NAMESPACE = \"dxWheel\";\r\nvar NATIVE_EVENT_NAME = \"wheel\";\r\nvar PIXEL_MODE = 0;\r\nvar DELTA_MUTLIPLIER = 30;\r\nvar wheel = {\r\n setup: function(element) {\r\n var $element = (0, _renderer.default)(element);\r\n _events_engine.default.on($element, (0, _index.addNamespace)(NATIVE_EVENT_NAME, EVENT_NAMESPACE), wheel._wheelHandler.bind(wheel))\r\n },\r\n teardown: function(element) {\r\n _events_engine.default.off(element, \".\".concat(EVENT_NAMESPACE))\r\n },\r\n _wheelHandler: function(e) {\r\n var _e$originalEvent = e.originalEvent,\r\n deltaMode = _e$originalEvent.deltaMode,\r\n deltaY = _e$originalEvent.deltaY,\r\n deltaX = _e$originalEvent.deltaX,\r\n deltaZ = _e$originalEvent.deltaZ;\r\n (0, _index.fireEvent)({\r\n type: EVENT_NAME,\r\n originalEvent: e,\r\n delta: this._normalizeDelta(deltaY, deltaMode),\r\n deltaX: deltaX,\r\n deltaY: deltaY,\r\n deltaZ: deltaZ,\r\n deltaMode: deltaMode,\r\n pointerType: \"mouse\"\r\n });\r\n e.stopPropagation()\r\n },\r\n _normalizeDelta: function(delta) {\r\n var deltaMode = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : PIXEL_MODE;\r\n if (deltaMode === PIXEL_MODE) {\r\n return -delta\r\n } else {\r\n return -DELTA_MUTLIPLIER * delta\r\n }\r\n }\r\n};\r\n(0, _event_registrator.default)(EVENT_NAME, wheel);\r\n","/**\r\n * DevExtreme (ui/overlay.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _ui = _interopRequireDefault(require(\"./overlay/ui.overlay\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar _default = _ui.default;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\nmodule.exports.default = module.exports;\r\n","/**\r\n * DevExtreme (core/utils/browser.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _extend = require(\"./extend\");\r\nvar _window = require(\"./window\");\r\nvar navigator = (0, _window.getNavigator)();\r\nvar webkitRegExp = /(webkit)[ /]([\\w.]+)/;\r\nvar ieRegExp = /(msie) (\\d{1,2}\\.\\d)/;\r\nvar ie11RegExp = /(trident).*rv:(\\d{1,2}\\.\\d)/;\r\nvar msEdge = /(edge)\\/((\\d+)?[\\w.]+)/;\r\nvar mozillaRegExp = /(mozilla)(?:.*? rv:([\\w.]+))/;\r\nvar browserFromUA = function(ua) {\r\n ua = ua.toLowerCase();\r\n var result = {};\r\n var matches = ieRegExp.exec(ua) || ie11RegExp.exec(ua) || msEdge.exec(ua) || ua.indexOf(\"compatible\") < 0 && mozillaRegExp.exec(ua) || webkitRegExp.exec(ua) || [];\r\n var browserName = matches[1];\r\n var browserVersion = matches[2];\r\n if (\"webkit\" === browserName) {\r\n result.webkit = true;\r\n if (ua.indexOf(\"chrome\") >= 0 || ua.indexOf(\"crios\") >= 0) {\r\n browserName = \"chrome\";\r\n browserVersion = /(?:chrome|crios)\\/(\\d+\\.\\d+)/.exec(ua);\r\n browserVersion = browserVersion && browserVersion[1]\r\n } else {\r\n if (ua.indexOf(\"fxios\") >= 0) {\r\n browserName = \"mozilla\";\r\n browserVersion = /fxios\\/(\\d+\\.\\d+)/.exec(ua);\r\n browserVersion = browserVersion && browserVersion[1]\r\n } else {\r\n if (ua.indexOf(\"safari\") >= 0 && /version|phantomjs/.test(ua)) {\r\n browserName = \"safari\";\r\n browserVersion = /(?:version|phantomjs)\\/([0-9.]+)/.exec(ua);\r\n browserVersion = browserVersion && browserVersion[1]\r\n } else {\r\n browserName = \"unknown\";\r\n browserVersion = /applewebkit\\/([0-9.]+)/.exec(ua);\r\n browserVersion = browserVersion && browserVersion[1]\r\n }\r\n }\r\n }\r\n }\r\n if (\"trident\" === browserName || \"edge\" === browserName) {\r\n browserName = \"msie\"\r\n }\r\n if (browserName) {\r\n result[browserName] = true;\r\n result.version = browserVersion\r\n }\r\n return result\r\n};\r\nvar _default = (0, _extend.extend)({\r\n _fromUA: browserFromUA\r\n}, browserFromUA(navigator.userAgent));\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/component.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _config = _interopRequireDefault(require(\"./config\"));\r\nvar _extend = require(\"./utils/extend\");\r\nvar _index = require(\"./options/index\");\r\nvar _utils = require(\"./options/utils\");\r\nvar _class = _interopRequireDefault(require(\"./class\"));\r\nvar _action = _interopRequireDefault(require(\"./action\"));\r\nvar _errors = _interopRequireDefault(require(\"./errors\"));\r\nvar _callbacks = _interopRequireDefault(require(\"./utils/callbacks\"));\r\nvar _events_strategy = require(\"./events_strategy\");\r\nvar _public_component = require(\"./utils/public_component\");\r\nvar _postponed_operations = require(\"./postponed_operations\");\r\nvar _type = require(\"./utils/type\");\r\nvar _common = require(\"./utils/common\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar getEventName = function(actionName) {\r\n return actionName.charAt(2).toLowerCase() + actionName.substr(3)\r\n};\r\nvar isInnerOption = function(optionName) {\r\n return 0 === optionName.indexOf(\"_\", 0)\r\n};\r\nvar Component = _class.default.inherit({\r\n _setDeprecatedOptions: function() {\r\n this._deprecatedOptions = {}\r\n },\r\n _getDeprecatedOptions: function() {\r\n return this._deprecatedOptions\r\n },\r\n _getDefaultOptions: function() {\r\n return {\r\n onInitialized: null,\r\n onOptionChanged: null,\r\n onDisposing: null,\r\n defaultOptionsRules: null\r\n }\r\n },\r\n _defaultOptionsRules: function() {\r\n return []\r\n },\r\n _setOptionsByDevice: function(rules) {\r\n this._options.applyRules(rules)\r\n },\r\n _convertRulesToOptions: function(rules) {\r\n return (0, _utils.convertRulesToOptions)(rules)\r\n },\r\n _isInitialOptionValue: function(name) {\r\n return this._options.isInitial(name)\r\n },\r\n _setOptionsByReference: function() {\r\n this._optionsByReference = {}\r\n },\r\n _getOptionsByReference: function() {\r\n return this._optionsByReference\r\n },\r\n ctor: function() {\r\n var options = arguments.length > 0 && void 0 !== arguments[0] ? arguments[0] : {};\r\n var _optionChangedCallbacks = options._optionChangedCallbacks,\r\n _disposingCallbacks = options._disposingCallbacks;\r\n this.NAME = (0, _public_component.name)(this.constructor);\r\n this._eventsStrategy = _events_strategy.EventsStrategy.create(this, options.eventsStrategy);\r\n this._updateLockCount = 0;\r\n this._optionChangedCallbacks = _optionChangedCallbacks || (0, _callbacks.default)();\r\n this._disposingCallbacks = _disposingCallbacks || (0, _callbacks.default)();\r\n this.postponedOperations = new _postponed_operations.PostponedOperations;\r\n this._createOptions(options)\r\n },\r\n _createOptions: function(options) {\r\n var _this = this;\r\n this.beginUpdate();\r\n try {\r\n this._setOptionsByReference();\r\n this._setDeprecatedOptions();\r\n this._options = new _index.Options(this._getDefaultOptions(), this._getDefaultOptions(), this._getOptionsByReference(), this._getDeprecatedOptions());\r\n this._options.onChanging(function(name, previousValue, value) {\r\n return _this._initialized && _this._optionChanging(name, previousValue, value)\r\n });\r\n this._options.onDeprecated(function(option, info) {\r\n return _this._logDeprecatedOptionWarning(option, info)\r\n });\r\n this._options.onChanged(function(name, value, previousValue) {\r\n return _this._notifyOptionChanged(name, value, previousValue)\r\n });\r\n this._options.onStartChange(function() {\r\n return _this.beginUpdate()\r\n });\r\n this._options.onEndChange(function() {\r\n return _this.endUpdate()\r\n });\r\n this._options.addRules(this._defaultOptionsRules());\r\n if (options && options.onInitializing) {\r\n options.onInitializing.apply(this, [options])\r\n }\r\n this._setOptionsByDevice(options.defaultOptionsRules);\r\n this._initOptions(options)\r\n } finally {\r\n this.endUpdate()\r\n }\r\n },\r\n _initOptions: function(options) {\r\n this.option(options)\r\n },\r\n _init: function() {\r\n var _this2 = this;\r\n this._createOptionChangedAction();\r\n this.on(\"disposing\", function(args) {\r\n _this2._disposingCallbacks.fireWith(_this2, [args])\r\n })\r\n },\r\n _logDeprecatedOptionWarning: function(option, info) {\r\n var message = info.message || \"Use the '\".concat(info.alias, \"' option instead\");\r\n _errors.default.log(\"W0001\", this.NAME, option, info.since, message)\r\n },\r\n _logDeprecatedComponentWarning: function(since, alias) {\r\n _errors.default.log(\"W0000\", this.NAME, since, \"Use the '\".concat(alias, \"' widget instead\"))\r\n },\r\n _createOptionChangedAction: function() {\r\n this._optionChangedAction = this._createActionByOption(\"onOptionChanged\", {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n })\r\n },\r\n _createDisposingAction: function() {\r\n this._disposingAction = this._createActionByOption(\"onDisposing\", {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n })\r\n },\r\n _optionChanged: function(args) {\r\n switch (args.name) {\r\n case \"onDisposing\":\r\n case \"onInitialized\":\r\n break;\r\n case \"onOptionChanged\":\r\n this._createOptionChangedAction();\r\n break;\r\n case \"defaultOptionsRules\":\r\n }\r\n },\r\n _dispose: function() {\r\n this._optionChangedCallbacks.empty();\r\n this._createDisposingAction();\r\n this._disposingAction();\r\n this._eventsStrategy.dispose();\r\n this._options.dispose();\r\n this._disposed = true\r\n },\r\n _lockUpdate: function() {\r\n this._updateLockCount++\r\n },\r\n _unlockUpdate: function() {\r\n this._updateLockCount = Math.max(this._updateLockCount - 1, 0)\r\n },\r\n _isUpdateAllowed: function() {\r\n return 0 === this._updateLockCount\r\n },\r\n _isInitializingRequired: function() {\r\n return !this._initializing && !this._initialized\r\n },\r\n _commitUpdate: function() {\r\n this.postponedOperations.callPostponedOperations();\r\n this._isInitializingRequired() && this._initializeComponent()\r\n },\r\n _initializeComponent: function() {\r\n this._initializing = true;\r\n try {\r\n this._init()\r\n } finally {\r\n this._initializing = false;\r\n this._lockUpdate();\r\n this._createActionByOption(\"onInitialized\", {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n })();\r\n this._unlockUpdate();\r\n this._initialized = true\r\n }\r\n },\r\n instance: function() {\r\n return this\r\n },\r\n beginUpdate: function() {\r\n this._lockUpdate()\r\n },\r\n endUpdate: function() {\r\n this._unlockUpdate();\r\n this._isUpdateAllowed() && this._commitUpdate()\r\n },\r\n _optionChanging: _common.noop,\r\n _notifyOptionChanged: function(option, value, previousValue) {\r\n if (this._initialized) {\r\n var optionNames = [option].concat(this._options.getAliasesByName(option));\r\n for (var i = 0; i < optionNames.length; i++) {\r\n var name = optionNames[i];\r\n var args = {\r\n name: name.split(/[.[]/)[0],\r\n fullName: name,\r\n value: value,\r\n previousValue: previousValue\r\n };\r\n if (!isInnerOption(name)) {\r\n this._optionChangedCallbacks.fireWith(this, [(0, _extend.extend)(this._defaultActionArgs(), args)]);\r\n this._optionChangedAction((0, _extend.extend)({}, args))\r\n }\r\n if (!this._disposed && this._cancelOptionChange !== name) {\r\n this._optionChanged(args)\r\n }\r\n }\r\n }\r\n },\r\n initialOption: function(name) {\r\n return this._options.initial(name)\r\n },\r\n _defaultActionConfig: function() {\r\n return {\r\n context: this,\r\n component: this\r\n }\r\n },\r\n _defaultActionArgs: function() {\r\n return {\r\n component: this\r\n }\r\n },\r\n _createAction: function(actionSource, config) {\r\n var _this3 = this;\r\n var action;\r\n return function(e) {\r\n if (!(0, _type.isDefined)(e)) {\r\n e = {}\r\n }\r\n if (!(0, _type.isPlainObject)(e)) {\r\n e = {\r\n actionValue: e\r\n }\r\n }\r\n action = action || new _action.default(actionSource, (0, _extend.extend)(config, _this3._defaultActionConfig()));\r\n return action.execute.call(action, (0, _extend.extend)(e, _this3._defaultActionArgs()))\r\n }\r\n },\r\n _createActionByOption: function(optionName, config) {\r\n var _this4 = this;\r\n var action;\r\n var eventName;\r\n var actionFunc;\r\n var result = function() {\r\n if (!eventName) {\r\n config = config || {};\r\n if (\"string\" !== typeof optionName) {\r\n throw _errors.default.Error(\"E0008\")\r\n }\r\n if (0 === optionName.indexOf(\"on\")) {\r\n eventName = getEventName(optionName)\r\n }\r\n actionFunc = _this4.option(optionName)\r\n }\r\n if (!action && !actionFunc && !config.beforeExecute && !config.afterExecute && !_this4._eventsStrategy.hasEvent(eventName)) {\r\n return\r\n }\r\n if (!action) {\r\n var beforeExecute = config.beforeExecute;\r\n config.beforeExecute = function() {\r\n for (var _len2 = arguments.length, props = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\r\n props[_key2] = arguments[_key2]\r\n }\r\n beforeExecute && beforeExecute.apply(_this4, props);\r\n _this4._eventsStrategy.fireEvent(eventName, props[0].args)\r\n };\r\n action = _this4._createAction(actionFunc, config)\r\n }\r\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\r\n args[_key] = arguments[_key]\r\n }\r\n if ((0, _config.default)().wrapActionsBeforeExecute) {\r\n var beforeActionExecute = _this4.option(\"beforeActionExecute\") || _common.noop;\r\n var wrappedAction = beforeActionExecute(_this4, action, config) || action;\r\n return wrappedAction.apply(_this4, args)\r\n }\r\n return action.apply(_this4, args)\r\n };\r\n if ((0, _config.default)().wrapActionsBeforeExecute) {\r\n return result\r\n }\r\n var onActionCreated = this.option(\"onActionCreated\") || _common.noop;\r\n return onActionCreated(this, result, config) || result\r\n },\r\n on: function(eventName, eventHandler) {\r\n this._eventsStrategy.on(eventName, eventHandler);\r\n return this\r\n },\r\n off: function(eventName, eventHandler) {\r\n this._eventsStrategy.off(eventName, eventHandler);\r\n return this\r\n },\r\n hasActionSubscription: function(actionName) {\r\n return !!this._options.silent(actionName) || this._eventsStrategy.hasEvent(getEventName(actionName))\r\n },\r\n isOptionDeprecated: function(name) {\r\n return this._options.isDeprecated(name)\r\n },\r\n _setOptionWithoutOptionChange: function(name, value) {\r\n this._cancelOptionChange = name;\r\n this.option(name, value);\r\n this._cancelOptionChange = false\r\n },\r\n _getOptionValue: function(name, context) {\r\n var value = this.option(name);\r\n if ((0, _type.isFunction)(value)) {\r\n return value.bind(context)()\r\n }\r\n return value\r\n },\r\n option: function() {\r\n var _this$_options;\r\n return (_this$_options = this._options).option.apply(_this$_options, arguments)\r\n },\r\n resetOption: function(name) {\r\n this.beginUpdate();\r\n this._options.reset(name);\r\n this.endUpdate()\r\n }\r\n});\r\nvar _default = Component;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (events/pointer/observer.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _iterator = require(\"../../core/utils/iterator\");\r\nvar _ready_callbacks = _interopRequireDefault(require(\"../../core/utils/ready_callbacks\"));\r\nvar _dom_adapter = _interopRequireDefault(require(\"../../core/dom_adapter\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar addEventsListener = function(events, handler) {\r\n _ready_callbacks.default.add(function() {\r\n events.split(\" \").forEach(function(event) {\r\n _dom_adapter.default.listen(_dom_adapter.default.getDocument(), event, handler, true)\r\n })\r\n })\r\n};\r\nvar Observer = function(eventMap, pointerEquals, onPointerAdding) {\r\n onPointerAdding = onPointerAdding || function() {};\r\n var pointers = [];\r\n var getPointerIndex = function(e) {\r\n var index = -1;\r\n (0, _iterator.each)(pointers, function(i, pointer) {\r\n if (!pointerEquals(e, pointer)) {\r\n return true\r\n }\r\n index = i;\r\n return false\r\n });\r\n return index\r\n };\r\n var addPointer = function(e) {\r\n if (getPointerIndex(e) === -1) {\r\n onPointerAdding(e);\r\n pointers.push(e)\r\n }\r\n };\r\n var removePointer = function(e) {\r\n var index = getPointerIndex(e);\r\n if (index > -1) {\r\n pointers.splice(index, 1)\r\n }\r\n };\r\n var updatePointer = function(e) {\r\n pointers[getPointerIndex(e)] = e\r\n };\r\n addEventsListener(eventMap.dxpointerdown, addPointer);\r\n addEventsListener(eventMap.dxpointermove, updatePointer);\r\n addEventsListener(eventMap.dxpointerup, removePointer);\r\n addEventsListener(eventMap.dxpointercancel, removePointer);\r\n this.pointers = function() {\r\n return pointers\r\n };\r\n this.reset = function() {\r\n pointers = []\r\n }\r\n};\r\nvar _default = Observer;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/templates/template_engines.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nvar _dom = require(\"../utils/dom\");\r\nvar _template_engine_registry = require(\"./template_engine_registry\");\r\n(0, _template_engine_registry.registerTemplateEngine)(\"jquery-tmpl\", {\r\n compile: function(element) {\r\n return (0, _dom.extractTemplateMarkup)(element)\r\n },\r\n render: function(template, data) {\r\n return jQuery.tmpl(template, data)\r\n }\r\n});\r\n(0, _template_engine_registry.registerTemplateEngine)(\"jsrender\", {\r\n compile: function(element) {\r\n return (jQuery ? jQuery : jsrender).templates((0, _dom.extractTemplateMarkup)(element))\r\n },\r\n render: function(template, data) {\r\n return template.render(data)\r\n }\r\n});\r\n(0, _template_engine_registry.registerTemplateEngine)(\"mustache\", {\r\n compile: function(element) {\r\n return (0, _dom.extractTemplateMarkup)(element)\r\n },\r\n render: function(template, data) {\r\n return Mustache.render(template, data)\r\n }\r\n});\r\n(0, _template_engine_registry.registerTemplateEngine)(\"hogan\", {\r\n compile: function(element) {\r\n return Hogan.compile((0, _dom.extractTemplateMarkup)(element))\r\n },\r\n render: function(template, data) {\r\n return template.render(data)\r\n }\r\n});\r\n(0, _template_engine_registry.registerTemplateEngine)(\"underscore\", {\r\n compile: function(element) {\r\n return _.template((0, _dom.extractTemplateMarkup)(element))\r\n },\r\n render: function(template, data) {\r\n return template(data)\r\n }\r\n});\r\n(0, _template_engine_registry.registerTemplateEngine)(\"handlebars\", {\r\n compile: function(element) {\r\n return Handlebars.compile((0, _dom.extractTemplateMarkup)(element))\r\n },\r\n render: function(template, data) {\r\n return template(data)\r\n }\r\n});\r\n(0, _template_engine_registry.registerTemplateEngine)(\"doT\", {\r\n compile: function(element) {\r\n return doT.template((0, _dom.extractTemplateMarkup)(element))\r\n },\r\n render: function(template, data) {\r\n return template(data)\r\n }\r\n});\r\n","/**\r\n * DevExtreme (animation/position.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _common = require(\"../core/utils/common\");\r\nvar _iterator = require(\"../core/utils/iterator\");\r\nvar _window = require(\"../core/utils/window\");\r\nvar _dom_adapter = _interopRequireDefault(require(\"../core/dom_adapter\"));\r\nvar _type = require(\"../core/utils/type\");\r\nvar _extend = require(\"../core/utils/extend\");\r\nvar _position = require(\"../core/utils/position\");\r\nvar _browser = _interopRequireDefault(require(\"../core/utils/browser\"));\r\nvar _translator = require(\"./translator\");\r\nvar _support = require(\"../core/utils/support\");\r\nvar _devices = _interopRequireDefault(require(\"../core/devices\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar window = (0, _window.getWindow)();\r\nvar horzRe = /left|right/;\r\nvar vertRe = /top|bottom/;\r\nvar collisionRe = /fit|flip|none/;\r\nvar IS_SAFARI = _browser.default.safari;\r\nvar normalizeAlign = function(raw) {\r\n var result = {\r\n h: \"center\",\r\n v: \"center\"\r\n };\r\n var pair = (0, _common.splitPair)(raw);\r\n if (pair) {\r\n (0, _iterator.each)(pair, function() {\r\n var w = String(this).toLowerCase();\r\n if (horzRe.test(w)) {\r\n result.h = w\r\n } else {\r\n if (vertRe.test(w)) {\r\n result.v = w\r\n }\r\n }\r\n })\r\n }\r\n return result\r\n};\r\nvar normalizeOffset = function(raw) {\r\n return (0, _common.pairToObject)(raw)\r\n};\r\nvar normalizeCollision = function(raw) {\r\n var pair = (0, _common.splitPair)(raw);\r\n var h = String(pair && pair[0]).toLowerCase();\r\n var v = String(pair && pair[1]).toLowerCase();\r\n if (!collisionRe.test(h)) {\r\n h = \"none\"\r\n }\r\n if (!collisionRe.test(v)) {\r\n v = h\r\n }\r\n return {\r\n h: h,\r\n v: v\r\n }\r\n};\r\nvar getAlignFactor = function(align) {\r\n switch (align) {\r\n case \"center\":\r\n return .5;\r\n case \"right\":\r\n case \"bottom\":\r\n return 1;\r\n default:\r\n return 0\r\n }\r\n};\r\nvar inverseAlign = function(align) {\r\n switch (align) {\r\n case \"left\":\r\n return \"right\";\r\n case \"right\":\r\n return \"left\";\r\n case \"top\":\r\n return \"bottom\";\r\n case \"bottom\":\r\n return \"top\";\r\n default:\r\n return align\r\n }\r\n};\r\nvar calculateOversize = function(data, bounds) {\r\n var oversize = 0;\r\n if (data.myLocation < bounds.min) {\r\n oversize += bounds.min - data.myLocation\r\n }\r\n if (data.myLocation > bounds.max) {\r\n oversize += data.myLocation - bounds.max\r\n }\r\n return oversize\r\n};\r\nvar collisionSide = function(direction, data, bounds) {\r\n if (data.myLocation < bounds.min) {\r\n return \"h\" === direction ? \"left\" : \"top\"\r\n }\r\n if (data.myLocation > bounds.max) {\r\n return \"h\" === direction ? \"right\" : \"bottom\"\r\n }\r\n return \"none\"\r\n};\r\nvar initMyLocation = function(data) {\r\n data.myLocation = data.atLocation + getAlignFactor(data.atAlign) * data.atSize - getAlignFactor(data.myAlign) * data.mySize + data.offset\r\n};\r\nvar collisionResolvers = {\r\n fit: function(data, bounds) {\r\n var result = false;\r\n if (data.myLocation > bounds.max) {\r\n data.myLocation = bounds.max;\r\n result = true\r\n }\r\n if (data.myLocation < bounds.min) {\r\n data.myLocation = bounds.min;\r\n result = true\r\n }\r\n data.fit = result\r\n },\r\n flip: function(data, bounds) {\r\n data.flip = false;\r\n if (\"center\" === data.myAlign && \"center\" === data.atAlign) {\r\n return\r\n }\r\n if (data.myLocation < bounds.min || data.myLocation > bounds.max) {\r\n var inverseData = (0, _extend.extend)({}, data, {\r\n myAlign: inverseAlign(data.myAlign),\r\n atAlign: inverseAlign(data.atAlign),\r\n offset: -data.offset\r\n });\r\n initMyLocation(inverseData);\r\n inverseData.oversize = calculateOversize(inverseData, bounds);\r\n if (inverseData.myLocation >= bounds.min && inverseData.myLocation <= bounds.max || data.oversize > inverseData.oversize) {\r\n data.myLocation = inverseData.myLocation;\r\n data.oversize = inverseData.oversize;\r\n data.flip = true\r\n }\r\n }\r\n },\r\n flipfit: function(data, bounds) {\r\n this.flip(data, bounds);\r\n this.fit(data, bounds)\r\n },\r\n none: function(data) {\r\n data.oversize = 0\r\n }\r\n};\r\nvar scrollbarWidth;\r\nvar calculateScrollbarWidth = function() {\r\n var $scrollDiv = (0, _renderer.default)(\"
\").css({\r\n width: 100,\r\n height: 100,\r\n overflow: \"scroll\",\r\n position: \"absolute\",\r\n top: -9999\r\n }).appendTo((0, _renderer.default)(\"body\"));\r\n var result = $scrollDiv.get(0).offsetWidth - $scrollDiv.get(0).clientWidth;\r\n $scrollDiv.remove();\r\n scrollbarWidth = result\r\n};\r\nvar defaultPositionResult = {\r\n h: {\r\n location: 0,\r\n flip: false,\r\n fit: false,\r\n oversize: 0\r\n },\r\n v: {\r\n location: 0,\r\n flip: false,\r\n fit: false,\r\n oversize: 0\r\n }\r\n};\r\nvar calculatePosition = function(what, options) {\r\n var $what = (0, _renderer.default)(what);\r\n var currentOffset = $what.offset();\r\n var result = (0, _extend.extend)(true, {}, defaultPositionResult, {\r\n h: {\r\n location: currentOffset.left\r\n },\r\n v: {\r\n location: currentOffset.top\r\n }\r\n });\r\n if (!options) {\r\n return result\r\n }\r\n var my = normalizeAlign(options.my);\r\n var at = normalizeAlign(options.at);\r\n var of = (0, _renderer.default)(options.of).length && options.of || window;\r\n var offset = normalizeOffset(options.offset);\r\n var collision = normalizeCollision(options.collision);\r\n var boundary = options.boundary;\r\n var boundaryOffset = normalizeOffset(options.boundaryOffset);\r\n var h = {\r\n mySize: $what.outerWidth(),\r\n myAlign: my.h,\r\n atAlign: at.h,\r\n offset: offset.h,\r\n collision: collision.h,\r\n boundaryOffset: boundaryOffset.h\r\n };\r\n var v = {\r\n mySize: $what.outerHeight(),\r\n myAlign: my.v,\r\n atAlign: at.v,\r\n offset: offset.v,\r\n collision: collision.v,\r\n boundaryOffset: boundaryOffset.v\r\n };\r\n if ( of .preventDefault) {\r\n h.atLocation = of .pageX;\r\n v.atLocation = of .pageY;\r\n h.atSize = 0;\r\n v.atSize = 0\r\n } else {\r\n of = (0, _renderer.default)( of );\r\n if ((0, _type.isWindow)( of [0])) {\r\n h.atLocation = of .scrollLeft();\r\n v.atLocation = of .scrollTop();\r\n if (\"phone\" === _devices.default.real().deviceType && of [0].visualViewport) {\r\n h.atLocation = Math.max(h.atLocation, of [0].visualViewport.offsetLeft);\r\n v.atLocation = Math.max(v.atLocation, of [0].visualViewport.offsetTop);\r\n h.atSize = of [0].visualViewport.width;\r\n v.atSize = of [0].visualViewport.height\r\n } else {\r\n h.atSize = of [0].innerWidth >= of [0].outerWidth ? of [0].innerWidth : of .width();\r\n v.atSize = of [0].innerHeight >= of [0].outerHeight || IS_SAFARI ? of [0].innerHeight : of .height()\r\n }\r\n } else {\r\n if (9 === of [0].nodeType) {\r\n h.atLocation = 0;\r\n v.atLocation = 0;\r\n h.atSize = of .width();\r\n v.atSize = of .height()\r\n } else {\r\n var ofRect = (0, _position.getBoundingRect)( of .get(0));\r\n var o = getOffsetWithoutScale( of );\r\n h.atLocation = o.left;\r\n v.atLocation = o.top;\r\n h.atSize = Math.max(ofRect.width, of .outerWidth());\r\n v.atSize = Math.max(ofRect.height, of .outerHeight())\r\n }\r\n }\r\n }\r\n initMyLocation(h);\r\n initMyLocation(v);\r\n var bounds = function() {\r\n var win = (0, _renderer.default)(window);\r\n var windowWidth = win.width();\r\n var windowHeight = win.height();\r\n var left = win.scrollLeft();\r\n var top = win.scrollTop();\r\n var documentElement = _dom_adapter.default.getDocumentElement();\r\n var hZoomLevel = _support.touch ? documentElement.clientWidth / windowWidth : 1;\r\n var vZoomLevel = _support.touch ? documentElement.clientHeight / windowHeight : 1;\r\n if (void 0 === scrollbarWidth) {\r\n calculateScrollbarWidth()\r\n }\r\n var boundaryWidth = windowWidth;\r\n var boundaryHeight = windowHeight;\r\n if (boundary) {\r\n var $boundary = (0, _renderer.default)(boundary);\r\n var boundaryPosition = $boundary.offset();\r\n left = boundaryPosition.left;\r\n top = boundaryPosition.top;\r\n boundaryWidth = $boundary.width();\r\n boundaryHeight = $boundary.height()\r\n }\r\n return {\r\n h: {\r\n min: left + h.boundaryOffset,\r\n max: left + boundaryWidth / hZoomLevel - h.mySize - h.boundaryOffset\r\n },\r\n v: {\r\n min: top + v.boundaryOffset,\r\n max: top + boundaryHeight / vZoomLevel - v.mySize - v.boundaryOffset\r\n }\r\n }\r\n }();\r\n h.oversize = calculateOversize(h, bounds.h);\r\n v.oversize = calculateOversize(v, bounds.v);\r\n h.collisionSide = collisionSide(\"h\", h, bounds.h);\r\n v.collisionSide = collisionSide(\"v\", v, bounds.v);\r\n if (collisionResolvers[h.collision]) {\r\n collisionResolvers[h.collision](h, bounds.h)\r\n }\r\n if (collisionResolvers[v.collision]) {\r\n collisionResolvers[v.collision](v, bounds.v)\r\n }\r\n var preciser = function(number) {\r\n return options.precise ? number : Math.round(number)\r\n };\r\n (0, _extend.extend)(true, result, {\r\n h: {\r\n location: preciser(h.myLocation),\r\n oversize: preciser(h.oversize),\r\n fit: h.fit,\r\n flip: h.flip,\r\n collisionSide: h.collisionSide\r\n },\r\n v: {\r\n location: preciser(v.myLocation),\r\n oversize: preciser(v.oversize),\r\n fit: v.fit,\r\n flip: v.flip,\r\n collisionSide: v.collisionSide\r\n },\r\n precise: options.precise\r\n });\r\n return result\r\n};\r\nvar getOffsetWithoutScale = function getOffsetWithoutScale($startElement) {\r\n var $currentElement = arguments.length > 1 && void 0 !== arguments[1] ? arguments[1] : $startElement;\r\n var currentElement = $currentElement.get(0);\r\n if (!currentElement || $currentElement.is(\"body\")) {\r\n return $startElement.offset()\r\n }\r\n var transform = $currentElement.get(0).style.transform;\r\n var scale = (transform.match(/scale(.+)/) || [])[0];\r\n currentElement.style.transform = transform.replace(scale, \"\");\r\n var offset = getOffsetWithoutScale($startElement, $currentElement.parent());\r\n currentElement.style.transform = transform;\r\n return offset\r\n};\r\nvar position = function(what, options) {\r\n var $what = (0, _renderer.default)(what);\r\n if (!options) {\r\n return $what.offset()\r\n }(0, _translator.resetPosition)($what, true);\r\n var offset = getOffsetWithoutScale($what);\r\n var targetPosition = options.h && options.v ? options : calculatePosition($what, options);\r\n var preciser = function(number) {\r\n return options.precise ? number : Math.round(number)\r\n };\r\n (0, _translator.move)($what, {\r\n left: targetPosition.h.location - preciser(offset.left),\r\n top: targetPosition.v.location - preciser(offset.top)\r\n });\r\n return targetPosition\r\n};\r\nvar offset = function(element) {\r\n element = (0, _renderer.default)(element).get(0);\r\n if ((0, _type.isWindow)(element)) {\r\n return null\r\n } else {\r\n if (element && \"pageY\" in element && \"pageX\" in element) {\r\n return {\r\n top: element.pageY,\r\n left: element.pageX\r\n }\r\n }\r\n }\r\n return (0, _renderer.default)(element).offset()\r\n};\r\nif (!position.inverseAlign) {\r\n position.inverseAlign = inverseAlign\r\n}\r\nif (!position.normalizeAlign) {\r\n position.normalizeAlign = normalizeAlign\r\n}\r\nvar _default = {\r\n calculateScrollbarWidth: calculateScrollbarWidth,\r\n calculate: calculatePosition,\r\n setup: position,\r\n offset: offset\r\n};\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/utils/dom.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.createTextElementHiddenCopy = exports.contains = exports.clipboardText = exports.normalizeTemplateElement = exports.extractTemplateMarkup = exports.closestCommonParent = exports.clearSelection = exports.resetActiveElement = void 0;\r\nvar _dom_adapter = _interopRequireDefault(require(\"../../core/dom_adapter\"));\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _type = require(\"./type\");\r\nvar _window = require(\"./window\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar window = (0, _window.getWindow)();\r\nvar resetActiveElement = function() {\r\n var activeElement = _dom_adapter.default.getActiveElement();\r\n var body = _dom_adapter.default.getBody();\r\n if (activeElement && activeElement !== body && activeElement.blur) {\r\n try {\r\n activeElement.blur()\r\n } catch (e) {\r\n body.blur()\r\n }\r\n }\r\n};\r\nexports.resetActiveElement = resetActiveElement;\r\nvar clearSelection = function() {\r\n var selection = window.getSelection();\r\n if (!selection) {\r\n return\r\n }\r\n if (\"Caret\" === selection.type) {\r\n return\r\n }\r\n if (selection.empty) {\r\n selection.empty()\r\n } else {\r\n if (selection.removeAllRanges) {\r\n try {\r\n selection.removeAllRanges()\r\n } catch (e) {}\r\n }\r\n }\r\n};\r\nexports.clearSelection = clearSelection;\r\nvar closestCommonParent = function(startTarget, endTarget) {\r\n var $startTarget = (0, _renderer.default)(startTarget);\r\n var $endTarget = (0, _renderer.default)(endTarget);\r\n if ($startTarget[0] === $endTarget[0]) {\r\n return $startTarget[0]\r\n }\r\n var $startParents = $startTarget.parents();\r\n var $endParents = $endTarget.parents();\r\n var startingParent = Math.min($startParents.length, $endParents.length);\r\n for (var i = -startingParent; i < 0; i++) {\r\n if ($startParents.get(i) === $endParents.get(i)) {\r\n return $startParents.get(i)\r\n }\r\n }\r\n};\r\nexports.closestCommonParent = closestCommonParent;\r\nvar extractTemplateMarkup = function(element) {\r\n element = (0, _renderer.default)(element);\r\n var templateTag = element.length && element.filter(function() {\r\n var $node = (0, _renderer.default)(this);\r\n return $node.is(\"script[type]\") && $node.attr(\"type\").indexOf(\"script\") < 0\r\n });\r\n if (templateTag.length) {\r\n return templateTag.eq(0).html()\r\n } else {\r\n element = (0, _renderer.default)(\"
\").append(element);\r\n return element.html()\r\n }\r\n};\r\nexports.extractTemplateMarkup = extractTemplateMarkup;\r\nvar normalizeTemplateElement = function normalizeTemplateElement(element) {\r\n var $element = (0, _type.isDefined)(element) && (element.nodeType || (0, _type.isRenderer)(element)) ? (0, _renderer.default)(element) : (0, _renderer.default)(\"
\").html(element).contents();\r\n if (1 === $element.length) {\r\n if ($element.is(\"script\")) {\r\n $element = normalizeTemplateElement($element.html().trim())\r\n } else {\r\n if ($element.is(\"table\")) {\r\n $element = $element.children(\"tbody\").contents()\r\n }\r\n }\r\n }\r\n return $element\r\n};\r\nexports.normalizeTemplateElement = normalizeTemplateElement;\r\nvar clipboardText = function(event, text) {\r\n var clipboard = event.originalEvent && event.originalEvent.clipboardData || window.clipboardData;\r\n if (1 === arguments.length) {\r\n return clipboard && clipboard.getData(\"Text\")\r\n }\r\n clipboard && clipboard.setData(\"Text\", text)\r\n};\r\nexports.clipboardText = clipboardText;\r\nvar contains = function contains(container, element) {\r\n if (!element) {\r\n return false\r\n }\r\n if (_dom_adapter.default.isTextNode(element)) {\r\n element = element.parentNode\r\n }\r\n if (_dom_adapter.default.isDocument(container)) {\r\n return container.documentElement.contains(element)\r\n }\r\n if ((0, _type.isWindow)(container)) {\r\n return contains(container.document, element)\r\n }\r\n return container.contains ? container.contains(element) : !!(element.compareDocumentPosition(container) & element.DOCUMENT_POSITION_CONTAINS)\r\n};\r\nexports.contains = contains;\r\nvar createTextElementHiddenCopy = function(element, text, options) {\r\n var elementStyles = window.getComputedStyle((0, _renderer.default)(element).get(0));\r\n var includePaddings = options && options.includePaddings;\r\n return (0, _renderer.default)(\"
\").text(text).css({\r\n fontStyle: elementStyles.fontStyle,\r\n fontVariant: elementStyles.fontVariant,\r\n fontWeight: elementStyles.fontWeight,\r\n fontSize: elementStyles.fontSize,\r\n fontFamily: elementStyles.fontFamily,\r\n letterSpacing: elementStyles.letterSpacing,\r\n border: elementStyles.border,\r\n paddingTop: includePaddings ? elementStyles.paddingTop : \"\",\r\n paddingRight: includePaddings ? elementStyles.paddingRight : \"\",\r\n paddingBottom: includePaddings ? elementStyles.paddingBottom : \"\",\r\n paddingLeft: includePaddings ? elementStyles.paddingLeft : \"\",\r\n visibility: \"hidden\",\r\n whiteSpace: \"pre\",\r\n position: \"absolute\",\r\n \"float\": \"left\"\r\n })\r\n};\r\nexports.createTextElementHiddenCopy = createTextElementHiddenCopy;\r\n","/**\r\n * DevExtreme (events/pointer/base.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _events_engine = _interopRequireDefault(require(\"../../events/core/events_engine\"));\r\nvar _browser = _interopRequireDefault(require(\"../../core/utils/browser\"));\r\nvar _dom_adapter = _interopRequireDefault(require(\"../../core/dom_adapter\"));\r\nvar _class = _interopRequireDefault(require(\"../../core/class\"));\r\nvar _index = require(\"../utils/index\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar POINTER_EVENTS_NAMESPACE = \"dxPointerEvents\";\r\nvar BaseStrategy = _class.default.inherit({\r\n ctor: function(eventName, originalEvents) {\r\n this._eventName = eventName;\r\n this._originalEvents = (0, _index.addNamespace)(originalEvents, POINTER_EVENTS_NAMESPACE);\r\n this._handlerCount = 0;\r\n this.noBubble = this._isNoBubble()\r\n },\r\n _isNoBubble: function() {\r\n var eventName = this._eventName;\r\n return \"dxpointerenter\" === eventName || \"dxpointerleave\" === eventName\r\n },\r\n _handler: function(e) {\r\n var delegateTarget = this._getDelegateTarget(e);\r\n return this._fireEvent({\r\n type: this._eventName,\r\n pointerType: e.pointerType || (0, _index.eventSource)(e),\r\n originalEvent: e,\r\n delegateTarget: delegateTarget,\r\n timeStamp: _browser.default.mozilla ? (new Date).getTime() : e.timeStamp\r\n })\r\n },\r\n _getDelegateTarget: function(e) {\r\n var delegateTarget;\r\n if (this.noBubble) {\r\n delegateTarget = e.delegateTarget\r\n }\r\n return delegateTarget\r\n },\r\n _fireEvent: function(args) {\r\n return (0, _index.fireEvent)(args)\r\n },\r\n _setSelector: function(handleObj) {\r\n this._selector = this.noBubble && handleObj ? handleObj.selector : null\r\n },\r\n _getSelector: function() {\r\n return this._selector\r\n },\r\n setup: function() {\r\n return true\r\n },\r\n add: function(element, handleObj) {\r\n if (this._handlerCount <= 0 || this.noBubble) {\r\n element = this.noBubble ? element : _dom_adapter.default.getDocument();\r\n this._setSelector(handleObj);\r\n var that = this;\r\n _events_engine.default.on(element, this._originalEvents, this._getSelector(), function(e) {\r\n that._handler(e)\r\n })\r\n }\r\n if (!this.noBubble) {\r\n this._handlerCount++\r\n }\r\n },\r\n remove: function(handleObj) {\r\n this._setSelector(handleObj);\r\n if (!this.noBubble) {\r\n this._handlerCount--\r\n }\r\n },\r\n teardown: function(element) {\r\n if (this._handlerCount && !this.noBubble) {\r\n return\r\n }\r\n element = this.noBubble ? element : _dom_adapter.default.getDocument();\r\n if (this._originalEvents !== \".\" + POINTER_EVENTS_NAMESPACE) {\r\n _events_engine.default.off(element, this._originalEvents, this._getSelector())\r\n }\r\n },\r\n dispose: function(element) {\r\n element = this.noBubble ? element : _dom_adapter.default.getDocument();\r\n _events_engine.default.off(element, this._originalEvents)\r\n }\r\n});\r\nvar _default = BaseStrategy;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/utils/ready_callbacks.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _dom_adapter = _interopRequireDefault(require(\"../dom_adapter\"));\r\nvar _dependency_injector = _interopRequireDefault(require(\"./dependency_injector\"));\r\nvar _window = require(\"./window\");\r\nvar _call_once = _interopRequireDefault(require(\"./call_once\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar callbacks = [];\r\nvar isReady = function() {\r\n return \"complete\" === _dom_adapter.default.getReadyState() || \"loading\" !== _dom_adapter.default.getReadyState() && !_dom_adapter.default.getDocumentElement().doScroll\r\n};\r\nvar subscribeReady = (0, _call_once.default)(function() {\r\n var removeListener = _dom_adapter.default.listen(_dom_adapter.default.getDocument(), \"DOMContentLoaded\", function() {\r\n readyCallbacks.fire();\r\n removeListener()\r\n })\r\n});\r\nvar readyCallbacks = {\r\n add: function(callback) {\r\n var windowExists = (0, _window.hasWindow)();\r\n if (windowExists && isReady()) {\r\n callback()\r\n } else {\r\n callbacks.push(callback);\r\n windowExists && subscribeReady()\r\n }\r\n },\r\n fire: function() {\r\n callbacks.forEach(function(callback) {\r\n return callback()\r\n });\r\n callbacks = []\r\n }\r\n};\r\nvar _default = (0, _dependency_injector.default)(readyCallbacks);\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (events/pointer/mouse.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _extend = require(\"../../core/utils/extend\");\r\nvar _base = _interopRequireDefault(require(\"./base\"));\r\nvar _observer = _interopRequireDefault(require(\"./observer\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar eventMap = {\r\n dxpointerdown: \"mousedown\",\r\n dxpointermove: \"mousemove\",\r\n dxpointerup: \"mouseup\",\r\n dxpointercancel: \"\",\r\n dxpointerover: \"mouseover\",\r\n dxpointerout: \"mouseout\",\r\n dxpointerenter: \"mouseenter\",\r\n dxpointerleave: \"mouseleave\"\r\n};\r\nvar normalizeMouseEvent = function(e) {\r\n e.pointerId = 1;\r\n return {\r\n pointers: observer.pointers(),\r\n pointerId: 1\r\n }\r\n};\r\nvar observer;\r\nvar activated = false;\r\nvar activateStrategy = function() {\r\n if (activated) {\r\n return\r\n }\r\n observer = new _observer.default(eventMap, function() {\r\n return true\r\n });\r\n activated = true\r\n};\r\nvar MouseStrategy = _base.default.inherit({\r\n ctor: function() {\r\n this.callBase.apply(this, arguments);\r\n activateStrategy()\r\n },\r\n _fireEvent: function(args) {\r\n return this.callBase((0, _extend.extend)(normalizeMouseEvent(args.originalEvent), args))\r\n }\r\n});\r\nMouseStrategy.map = eventMap;\r\nMouseStrategy.normalize = normalizeMouseEvent;\r\nMouseStrategy.activate = activateStrategy;\r\nMouseStrategy.resetObserver = function() {\r\n observer.reset()\r\n};\r\nvar _default = MouseStrategy;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar component_1 = require(\"./component\");\nvar DxExtensionComponent = function () { return component_1.BaseComponent().extend({\n created: function () {\n this.$_isExtension = true;\n },\n mounted: function () {\n this.$el.setAttribute(\"isExtension\", \"true\");\n if (this.$vnode && this.$vnode.componentOptions.$_hasOwner) {\n return;\n }\n this.attachTo(this.$el);\n },\n methods: {\n attachTo: function (element) {\n this.$_createWidget(element);\n }\n }\n}); };\nexports.DxExtensionComponent = DxExtensionComponent;\n","/**\r\n * DevExtreme (core/utils/storage.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.sessionStorage = void 0;\r\nvar _window = require(\"../../core/utils/window\");\r\nvar window = (0, _window.getWindow)();\r\nvar getSessionStorage = function() {\r\n var sessionStorage;\r\n try {\r\n sessionStorage = window.sessionStorage\r\n } catch (e) {}\r\n return sessionStorage\r\n};\r\nexports.sessionStorage = getSessionStorage;\r\n","/**\r\n * DevExtreme (ui/themes_callback.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.themeReadyCallback = void 0;\r\nvar _callbacks = _interopRequireDefault(require(\"../core/utils/callbacks\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar themeReadyCallback = new _callbacks.default;\r\nexports.themeReadyCallback = themeReadyCallback;\r\n","/**\r\n * DevExtreme (ui/widget/ui.widget.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _action = _interopRequireDefault(require(\"../../core/action\"));\r\nvar _dom_component = _interopRequireDefault(require(\"../../core/dom_component\"));\r\nvar _short = require(\"../../events/short\");\r\nvar _common = require(\"../../core/utils/common\");\r\nvar _iterator = require(\"../../core/utils/iterator\");\r\nvar _extend2 = require(\"../../core/utils/extend\");\r\nvar _selectors = require(\"./selectors\");\r\nvar _array = require(\"../../core/utils/array\");\r\nvar _index = require(\"../../events/utils/index\");\r\nvar _type = require(\"../../core/utils/type\");\r\nrequire(\"../../events/click\");\r\nrequire(\"../../events/core/emitter.feedback\");\r\nrequire(\"../../events/hover\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\n\r\nfunction _defineProperty(obj, key, value) {\r\n if (key in obj) {\r\n Object.defineProperty(obj, key, {\r\n value: value,\r\n enumerable: true,\r\n configurable: true,\r\n writable: true\r\n })\r\n } else {\r\n obj[key] = value\r\n }\r\n return obj\r\n}\r\n\r\nfunction setAttribute(name, value, target) {\r\n name = \"role\" === name || \"id\" === name ? name : \"aria-\".concat(name);\r\n value = (0, _type.isDefined)(value) ? value.toString() : null;\r\n target.attr(name, value)\r\n}\r\nvar Widget = _dom_component.default.inherit({\r\n _feedbackHideTimeout: 400,\r\n _feedbackShowTimeout: 30,\r\n _supportedKeys: function() {\r\n return {}\r\n },\r\n _getDefaultOptions: function() {\r\n return (0, _extend2.extend)(this.callBase(), {\r\n hoveredElement: null,\r\n isActive: false,\r\n disabled: false,\r\n visible: true,\r\n hint: void 0,\r\n activeStateEnabled: false,\r\n onContentReady: null,\r\n hoverStateEnabled: false,\r\n focusStateEnabled: false,\r\n tabIndex: 0,\r\n accessKey: null,\r\n onFocusIn: null,\r\n onFocusOut: null,\r\n onKeyboardHandled: null,\r\n ignoreParentReadOnly: false\r\n })\r\n },\r\n _init: function() {\r\n this.callBase();\r\n this._initContentReadyAction()\r\n },\r\n _innerWidgetOptionChanged: function(innerWidget, args) {\r\n var options = Widget.getOptionsFromContainer(args);\r\n innerWidget && innerWidget.option(options);\r\n this._options.cache(args.name, options)\r\n },\r\n _bindInnerWidgetOptions: function(innerWidget, optionsContainer) {\r\n var _this = this;\r\n var syncOptions = function() {\r\n return _this._options.silent(optionsContainer, (0, _extend2.extend)({}, innerWidget.option()))\r\n };\r\n syncOptions();\r\n innerWidget.on(\"optionChanged\", syncOptions)\r\n },\r\n _getAriaTarget: function() {\r\n return this._focusTarget()\r\n },\r\n _initContentReadyAction: function() {\r\n this._contentReadyAction = this._createActionByOption(\"onContentReady\", {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n })\r\n },\r\n _initMarkup: function() {\r\n var _this$option = this.option(),\r\n disabled = _this$option.disabled,\r\n visible = _this$option.visible;\r\n this.$element().addClass(\"dx-widget\");\r\n this._toggleDisabledState(disabled);\r\n this._toggleVisibility(visible);\r\n this._renderHint();\r\n this._isFocusable() && this._renderFocusTarget();\r\n this.callBase()\r\n },\r\n _render: function() {\r\n this.callBase();\r\n this._renderContent();\r\n this._renderFocusState();\r\n this._attachFeedbackEvents();\r\n this._attachHoverEvents();\r\n this._toggleIndependentState()\r\n },\r\n _renderHint: function() {\r\n var _this$option2 = this.option(),\r\n hint = _this$option2.hint;\r\n this.$element().attr(\"title\", hint || null)\r\n },\r\n _renderContent: function() {\r\n var _this2 = this;\r\n (0, _common.deferRender)(function() {\r\n return !_this2._disposed ? _this2._renderContentImpl() : void 0\r\n }).done(function() {\r\n return !_this2._disposed ? _this2._fireContentReadyAction() : void 0\r\n })\r\n },\r\n _renderContentImpl: _common.noop,\r\n _fireContentReadyAction: (0, _common.deferRenderer)(function() {\r\n return this._contentReadyAction()\r\n }),\r\n _dispose: function() {\r\n this._contentReadyAction = null;\r\n this._detachKeyboardEvents();\r\n this.callBase()\r\n },\r\n _resetActiveState: function() {\r\n this._toggleActiveState(this._eventBindingTarget(), false)\r\n },\r\n _clean: function() {\r\n this._cleanFocusState();\r\n this._resetActiveState();\r\n this.callBase();\r\n this.$element().empty()\r\n },\r\n _toggleVisibility: function(visible) {\r\n this.$element().toggleClass(\"dx-state-invisible\", !visible);\r\n this.setAria(\"hidden\", !visible || void 0)\r\n },\r\n _renderFocusState: function() {\r\n this._attachKeyboardEvents();\r\n if (this._isFocusable()) {\r\n this._renderFocusTarget();\r\n this._attachFocusEvents();\r\n this._renderAccessKey()\r\n }\r\n },\r\n _renderAccessKey: function() {\r\n var _this3 = this;\r\n var $el = this._focusTarget();\r\n var _this$option3 = this.option(),\r\n accessKey = _this$option3.accessKey;\r\n var namespace = \"UIFeedback\";\r\n $el.attr(\"accesskey\", accessKey);\r\n _short.dxClick.off($el, {\r\n namespace: namespace\r\n });\r\n accessKey && _short.dxClick.on($el, function(e) {\r\n if ((0, _index.isFakeClickEvent)(e)) {\r\n e.stopImmediatePropagation();\r\n _this3.focus()\r\n }\r\n }, {\r\n namespace: namespace\r\n })\r\n },\r\n _isFocusable: function() {\r\n var _this$option4 = this.option(),\r\n focusStateEnabled = _this$option4.focusStateEnabled,\r\n disabled = _this$option4.disabled;\r\n return focusStateEnabled && !disabled\r\n },\r\n _eventBindingTarget: function() {\r\n return this.$element()\r\n },\r\n _focusTarget: function() {\r\n return this._getActiveElement()\r\n },\r\n _getActiveElement: function() {\r\n var activeElement = this._eventBindingTarget();\r\n if (this._activeStateUnit) {\r\n return activeElement.find(this._activeStateUnit).not(\".dx-state-disabled\")\r\n }\r\n return activeElement\r\n },\r\n _renderFocusTarget: function() {\r\n var _this$option5 = this.option(),\r\n tabIndex = _this$option5.tabIndex;\r\n this._focusTarget().attr(\"tabIndex\", tabIndex)\r\n },\r\n _keyboardEventBindingTarget: function() {\r\n return this._eventBindingTarget()\r\n },\r\n _refreshFocusEvent: function() {\r\n this._detachFocusEvents();\r\n this._attachFocusEvents()\r\n },\r\n _focusEventTarget: function() {\r\n return this._focusTarget()\r\n },\r\n _focusInHandler: function(event) {\r\n var _this4 = this;\r\n if (!event.isDefaultPrevented()) {\r\n this._createActionByOption(\"onFocusIn\", {\r\n beforeExecute: function() {\r\n return _this4._updateFocusState(event, true)\r\n },\r\n excludeValidators: [\"readOnly\"]\r\n })({\r\n event: event\r\n })\r\n }\r\n },\r\n _focusOutHandler: function(event) {\r\n var _this5 = this;\r\n if (!event.isDefaultPrevented()) {\r\n this._createActionByOption(\"onFocusOut\", {\r\n beforeExecute: function() {\r\n return _this5._updateFocusState(event, false)\r\n },\r\n excludeValidators: [\"readOnly\", \"disabled\"]\r\n })({\r\n event: event\r\n })\r\n }\r\n },\r\n _updateFocusState: function(_ref, isFocused) {\r\n var target = _ref.target;\r\n if ((0, _array.inArray)(target, this._focusTarget()) !== -1) {\r\n this._toggleFocusClass(isFocused, (0, _renderer.default)(target))\r\n }\r\n },\r\n _toggleFocusClass: function(isFocused, $element) {\r\n var $focusTarget = $element && $element.length ? $element : this._focusTarget();\r\n $focusTarget.toggleClass(\"dx-state-focused\", isFocused)\r\n },\r\n _hasFocusClass: function(element) {\r\n var $focusTarget = (0, _renderer.default)(element || this._focusTarget());\r\n return $focusTarget.hasClass(\"dx-state-focused\")\r\n },\r\n _isFocused: function() {\r\n return this._hasFocusClass()\r\n },\r\n _getKeyboardListeners: function() {\r\n return []\r\n },\r\n _attachKeyboardEvents: function() {\r\n var _this6 = this;\r\n this._detachKeyboardEvents();\r\n var _this$option6 = this.option(),\r\n focusStateEnabled = _this$option6.focusStateEnabled,\r\n onKeyboardHandled = _this$option6.onKeyboardHandled;\r\n var hasChildListeners = this._getKeyboardListeners().length;\r\n var hasKeyboardEventHandler = !!onKeyboardHandled;\r\n var shouldAttach = focusStateEnabled || hasChildListeners || hasKeyboardEventHandler;\r\n if (shouldAttach) {\r\n this._keyboardListenerId = _short.keyboard.on(this._keyboardEventBindingTarget(), this._focusTarget(), function(opts) {\r\n return _this6._keyboardHandler(opts)\r\n })\r\n }\r\n },\r\n _keyboardHandler: function(options, onlyChildProcessing) {\r\n if (!onlyChildProcessing) {\r\n var originalEvent = options.originalEvent,\r\n keyName = options.keyName,\r\n which = options.which;\r\n var keys = this._supportedKeys(originalEvent);\r\n var func = keys[keyName] || keys[which];\r\n if (void 0 !== func) {\r\n var handler = func.bind(this);\r\n var result = handler(originalEvent, options);\r\n if (!result) {\r\n return false\r\n }\r\n }\r\n }\r\n var keyboardListeners = this._getKeyboardListeners();\r\n var _this$option7 = this.option(),\r\n onKeyboardHandled = _this$option7.onKeyboardHandled;\r\n keyboardListeners.forEach(function(listener) {\r\n return listener && listener._keyboardHandler(options)\r\n });\r\n onKeyboardHandled && onKeyboardHandled(options);\r\n return true\r\n },\r\n _refreshFocusState: function() {\r\n this._cleanFocusState();\r\n this._renderFocusState()\r\n },\r\n _cleanFocusState: function() {\r\n var $element = this._focusTarget();\r\n $element.removeAttr(\"tabIndex\");\r\n this._toggleFocusClass(false);\r\n this._detachFocusEvents();\r\n this._detachKeyboardEvents()\r\n },\r\n _detachKeyboardEvents: function() {\r\n _short.keyboard.off(this._keyboardListenerId);\r\n this._keyboardListenerId = null\r\n },\r\n _attachHoverEvents: function() {\r\n var _this7 = this;\r\n var _this$option8 = this.option(),\r\n hoverStateEnabled = _this$option8.hoverStateEnabled;\r\n var selector = this._activeStateUnit;\r\n var namespace = \"UIFeedback\";\r\n var $el = this._eventBindingTarget();\r\n _short.hover.off($el, {\r\n selector: selector,\r\n namespace: namespace\r\n });\r\n if (hoverStateEnabled) {\r\n _short.hover.on($el, new _action.default(function(_ref2) {\r\n var event = _ref2.event,\r\n element = _ref2.element;\r\n _this7._hoverStartHandler(event);\r\n _this7.option(\"hoveredElement\", (0, _renderer.default)(element))\r\n }, {\r\n excludeValidators: [\"readOnly\"]\r\n }), function(event) {\r\n _this7.option(\"hoveredElement\", null);\r\n _this7._hoverEndHandler(event)\r\n }, {\r\n selector: selector,\r\n namespace: namespace\r\n })\r\n }\r\n },\r\n _attachFeedbackEvents: function() {\r\n var _this8 = this;\r\n var _this$option9 = this.option(),\r\n activeStateEnabled = _this$option9.activeStateEnabled;\r\n var selector = this._activeStateUnit;\r\n var namespace = \"UIFeedback\";\r\n var $el = this._eventBindingTarget();\r\n _short.active.off($el, {\r\n namespace: namespace,\r\n selector: selector\r\n });\r\n if (activeStateEnabled) {\r\n _short.active.on($el, new _action.default(function(_ref3) {\r\n var event = _ref3.event,\r\n element = _ref3.element;\r\n return _this8._toggleActiveState((0, _renderer.default)(element), true, event)\r\n }), new _action.default(function(_ref4) {\r\n var event = _ref4.event,\r\n element = _ref4.element;\r\n return _this8._toggleActiveState((0, _renderer.default)(element), false, event)\r\n }, {\r\n excludeValidators: [\"disabled\", \"readOnly\"]\r\n }), {\r\n showTimeout: this._feedbackShowTimeout,\r\n hideTimeout: this._feedbackHideTimeout,\r\n selector: selector,\r\n namespace: namespace\r\n })\r\n }\r\n },\r\n _detachFocusEvents: function() {\r\n var $el = this._focusEventTarget();\r\n _short.focus.off($el, {\r\n namespace: \"\".concat(this.NAME, \"Focus\")\r\n })\r\n },\r\n _attachFocusEvents: function() {\r\n var _this9 = this;\r\n var $el = this._focusEventTarget();\r\n _short.focus.on($el, function(e) {\r\n return _this9._focusInHandler(e)\r\n }, function(e) {\r\n return _this9._focusOutHandler(e)\r\n }, {\r\n namespace: \"\".concat(this.NAME, \"Focus\"),\r\n isFocusable: function(index, el) {\r\n return (0, _renderer.default)(el).is(_selectors.focusable)\r\n }\r\n })\r\n },\r\n _hoverStartHandler: _common.noop,\r\n _hoverEndHandler: _common.noop,\r\n _toggleActiveState: function($element, value) {\r\n this.option(\"isActive\", value);\r\n $element.toggleClass(\"dx-state-active\", value)\r\n },\r\n _updatedHover: function() {\r\n var hoveredElement = this._options.silent(\"hoveredElement\");\r\n this._hover(hoveredElement, hoveredElement)\r\n },\r\n _findHoverTarget: function($el) {\r\n return $el && $el.closest(this._activeStateUnit || this._eventBindingTarget())\r\n },\r\n _hover: function($el, $previous) {\r\n var _this$option10 = this.option(),\r\n hoverStateEnabled = _this$option10.hoverStateEnabled,\r\n disabled = _this$option10.disabled,\r\n isActive = _this$option10.isActive;\r\n $previous = this._findHoverTarget($previous);\r\n $previous && $previous.toggleClass(\"dx-state-hover\", false);\r\n if ($el && hoverStateEnabled && !disabled && !isActive) {\r\n var newHoveredElement = this._findHoverTarget($el);\r\n newHoveredElement && newHoveredElement.toggleClass(\"dx-state-hover\", true)\r\n }\r\n },\r\n _toggleDisabledState: function(value) {\r\n this.$element().toggleClass(\"dx-state-disabled\", Boolean(value));\r\n this.setAria(\"disabled\", value || void 0)\r\n },\r\n _toggleIndependentState: function() {\r\n this.$element().toggleClass(\"dx-state-independent\", this.option(\"ignoreParentReadOnly\"))\r\n },\r\n _setWidgetOption: function(widgetName, args) {\r\n var _this10 = this;\r\n if (!this[widgetName]) {\r\n return\r\n }\r\n if ((0, _type.isPlainObject)(args[0])) {\r\n (0, _iterator.each)(args[0], function(option, value) {\r\n return _this10._setWidgetOption(widgetName, [option, value])\r\n });\r\n return\r\n }\r\n var optionName = args[0];\r\n var value = args[1];\r\n if (1 === args.length) {\r\n value = this.option(optionName)\r\n }\r\n var widgetOptionMap = this[\"\".concat(widgetName, \"OptionMap\")];\r\n this[widgetName].option(widgetOptionMap ? widgetOptionMap(optionName) : optionName, value)\r\n },\r\n _optionChanged: function(args) {\r\n var name = args.name,\r\n value = args.value,\r\n previousValue = args.previousValue;\r\n switch (name) {\r\n case \"disabled\":\r\n this._toggleDisabledState(value);\r\n this._updatedHover();\r\n this._refreshFocusState();\r\n break;\r\n case \"hint\":\r\n this._renderHint();\r\n break;\r\n case \"ignoreParentReadOnly\":\r\n this._toggleIndependentState();\r\n break;\r\n case \"activeStateEnabled\":\r\n this._attachFeedbackEvents();\r\n break;\r\n case \"hoverStateEnabled\":\r\n this._attachHoverEvents();\r\n this._updatedHover();\r\n break;\r\n case \"tabIndex\":\r\n case \"focusStateEnabled\":\r\n this._refreshFocusState();\r\n break;\r\n case \"onFocusIn\":\r\n case \"onFocusOut\":\r\n break;\r\n case \"accessKey\":\r\n this._renderAccessKey();\r\n break;\r\n case \"hoveredElement\":\r\n this._hover(value, previousValue);\r\n break;\r\n case \"isActive\":\r\n this._updatedHover();\r\n break;\r\n case \"visible\":\r\n this._toggleVisibility(value);\r\n if (this._isVisibilityChangeSupported()) {\r\n this._checkVisibilityChanged(value ? \"shown\" : \"hiding\")\r\n }\r\n break;\r\n case \"onKeyboardHandled\":\r\n this._attachKeyboardEvents();\r\n break;\r\n case \"onContentReady\":\r\n this._initContentReadyAction();\r\n break;\r\n default:\r\n this.callBase(args)\r\n }\r\n },\r\n _isVisible: function() {\r\n var _this$option11 = this.option(),\r\n visible = _this$option11.visible;\r\n return this.callBase() && visible\r\n },\r\n beginUpdate: function() {\r\n this._ready(false);\r\n this.callBase()\r\n },\r\n endUpdate: function() {\r\n this.callBase();\r\n if (this._initialized) {\r\n this._ready(true)\r\n }\r\n },\r\n _ready: function(value) {\r\n if (0 === arguments.length) {\r\n return this._isReady\r\n }\r\n this._isReady = value\r\n },\r\n setAria: function() {\r\n if (!(0, _type.isPlainObject)(arguments.length <= 0 ? void 0 : arguments[0])) {\r\n setAttribute(arguments.length <= 0 ? void 0 : arguments[0], arguments.length <= 1 ? void 0 : arguments[1], (arguments.length <= 2 ? void 0 : arguments[2]) || this._getAriaTarget())\r\n } else {\r\n var target = (arguments.length <= 1 ? void 0 : arguments[1]) || this._getAriaTarget();\r\n (0, _iterator.each)(arguments.length <= 0 ? void 0 : arguments[0], function(name, value) {\r\n return setAttribute(name, value, target)\r\n })\r\n }\r\n },\r\n isReady: function() {\r\n return this._ready()\r\n },\r\n repaint: function() {\r\n this._refresh()\r\n },\r\n focus: function() {\r\n _short.focus.trigger(this._focusTarget())\r\n },\r\n registerKeyHandler: function(key, handler) {\r\n var currentKeys = this._supportedKeys();\r\n this._supportedKeys = function() {\r\n return (0, _extend2.extend)(currentKeys, _defineProperty({}, key, handler))\r\n }\r\n }\r\n});\r\nWidget.getOptionsFromContainer = function(_ref5) {\r\n var name = _ref5.name,\r\n fullName = _ref5.fullName,\r\n value = _ref5.value;\r\n var options = {};\r\n if (name === fullName) {\r\n options = value\r\n } else {\r\n var option = fullName.split(\".\").pop();\r\n options[option] = value\r\n }\r\n return options\r\n};\r\nvar _default = Widget;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar VueType = require(\"vue\");\nvar Vue = VueType.default || VueType;\nvar component_1 = require(\"./component\");\nvar configuration_component_1 = require(\"./configuration-component\");\nvar extension_component_1 = require(\"./extension-component\");\nfunction createComponent(config) {\n config.extends = component_1.DxComponent();\n return Vue.extend(config);\n}\nexports.createComponent = createComponent;\nfunction createConfigurationComponent(config) {\n config.extends = configuration_component_1.DxConfiguration();\n return Vue.extend(config);\n}\nexports.createConfigurationComponent = createConfigurationComponent;\nfunction createExtensionComponent(config) {\n config.extends = extension_component_1.DxExtensionComponent();\n return Vue.extend(config);\n}\nexports.createExtensionComponent = createExtensionComponent;\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.initBaseComponent = exports.initDxComponent = void 0;\nvar vue_1 = require(\"vue\");\nvar CreateCallback = require(\"devextreme/core/utils/callbacks\");\nvar events = require(\"devextreme/events\");\nvar vue_helper_1 = require(\"./vue-helper\");\nvar children_processing_1 = require(\"./children-processing\");\nvar configuration_1 = require(\"./configuration\");\nvar configuration_component_1 = require(\"./configuration-component\");\nvar constants_1 = require(\"./constants\");\nvar helpers_1 = require(\"./helpers\");\nvar templates_manager_1 = require(\"./templates-manager\");\nfunction initBaseComponent() {\n return vue_1.defineComponent({\n inheritAttrs: false,\n data: function () {\n return {\n eventBus: CreateCallback()\n };\n },\n provide: function () {\n return {\n eventBus: this.eventBus\n };\n },\n render: function () {\n var thisComponent = this;\n var children = [];\n if (thisComponent.$_config.cleanNested) {\n thisComponent.$_config.cleanNested();\n }\n children_processing_1.pullAllChildren(vue_helper_1.defaultSlots(this), children, thisComponent.$_config);\n this.$_processChildren(children);\n return vue_1.h(\"div\", {\n attrs: { id: this.$attrs.id }\n }, children);\n },\n beforeUpdate: function () {\n var thisComponent = this;\n thisComponent.$_config.setPrevNestedOptions(thisComponent.$_config.getNestedOptionValues());\n },\n updated: function () {\n var thisComponent = this;\n vue_helper_1.getChildren(thisComponent).forEach(function (child) {\n configuration_component_1.initOptionChangedFunc(child.$_config, child.type.props || {}, vue_helper_1.getComponentInstance(child), child.$_innerChanges);\n });\n thisComponent.$_templatesManager.discover();\n thisComponent.$_instance.beginUpdate();\n if (thisComponent.$_templatesManager.isDirty) {\n thisComponent.$_instance.option(\"integrationOptions.templates\", thisComponent.$_templatesManager.templates);\n for (var _i = 0, _a = Object.keys(thisComponent.$_templatesManager.templates); _i < _a.length; _i++) {\n var name_1 = _a[_i];\n thisComponent.$_instance.option(name_1, name_1);\n }\n thisComponent.$_templatesManager.resetDirtyFlag();\n }\n for (var _b = 0, _c = Object.keys(thisComponent.$_pendingOptions); _b < _c.length; _b++) {\n var name_2 = _c[_b];\n thisComponent.$_instance.option(name_2, thisComponent.$_pendingOptions[name_2]);\n }\n thisComponent.$_pendingOptions = {};\n this.$_applyConfigurationChanges();\n thisComponent.$_instance.endUpdate();\n this.eventBus.fire();\n },\n beforeUnmount: function () {\n var thisComponent = this;\n var instance = thisComponent.$_instance;\n if (instance) {\n events.triggerHandler(this.$el, constants_1.DX_REMOVE_EVENT);\n instance.dispose();\n }\n },\n created: function () {\n var thisComponent = this;\n var props = vue_helper_1.getComponentProps(this);\n thisComponent.$_config = new configuration_1.default(function (n, v) { thisComponent.$_pendingOptions[n] = v; }, null, props && __assign({}, props), thisComponent.$_expectedChildren);\n thisComponent.$_innerChanges = {};\n thisComponent.$_config.init(this.$props && Object.keys(this.$props));\n },\n methods: {\n $_applyConfigurationChanges: function () {\n var thisComponent = this;\n thisComponent.$_config.componentsCountChanged.forEach(function (_a) {\n var optionPath = _a.optionPath, isCollection = _a.isCollection, removed = _a.removed;\n var options = thisComponent.$_config.getNestedOptionValues();\n if (!isCollection && removed) {\n thisComponent.$_instance.resetOption(optionPath);\n }\n else {\n thisComponent.$_instance.option(optionPath, helpers_1.getOptionValue(options, optionPath));\n }\n });\n thisComponent.$_config.cleanComponentsCountChanged();\n },\n $_createWidget: function (element) {\n var thisComponent = this;\n thisComponent.$_pendingOptions = {};\n thisComponent.$_templatesManager = new templates_manager_1.TemplatesManager(this);\n var config = thisComponent.$_config;\n var options = __assign(__assign(__assign(__assign({ templatesRenderAsynchronously: true }, vue_helper_1.getComponentProps(thisComponent)), config.initialValues), config.getNestedOptionValues()), this.$_getIntegrationOptions());\n var instance = new thisComponent.$_WidgetClass(element, options);\n thisComponent.$_instance = instance;\n instance.on(\"optionChanged\", function (args) { return config.onOptionChanged(args); });\n configuration_1.setEmitOptionChangedFunc(config, thisComponent, thisComponent.$_innerChanges);\n configuration_1.bindOptionWatchers(config, thisComponent, thisComponent.$_innerChanges);\n this.$_createEmitters(instance);\n },\n $_getIntegrationOptions: function () {\n var thisComponent = this;\n var result = __assign({ integrationOptions: {\n watchMethod: this.$_getWatchMethod(),\n } }, this.$_getExtraIntegrationOptions());\n if (thisComponent.$_templatesManager.isDirty) {\n var templates = thisComponent.$_templatesManager.templates;\n result.integrationOptions.templates = templates;\n for (var _i = 0, _a = Object.keys(templates); _i < _a.length; _i++) {\n var name_3 = _a[_i];\n result[name_3] = name_3;\n }\n thisComponent.$_templatesManager.resetDirtyFlag();\n }\n return result;\n },\n $_getWatchMethod: function () {\n var _this = this;\n return function (valueGetter, valueChangeCallback, options) {\n options = options || {};\n if (!options.skipImmediate) {\n valueChangeCallback(valueGetter());\n }\n return _this.$watch(function () {\n return valueGetter();\n }, function (newValue, oldValue) {\n if (helpers_1.toComparable(oldValue) !== helpers_1.toComparable(newValue) || options.deep) {\n valueChangeCallback(newValue);\n }\n }, {\n deep: options.deep\n });\n };\n },\n $_getExtraIntegrationOptions: function () {\n return {};\n },\n $_processChildren: function (_children) {\n return;\n },\n $_createEmitters: function (instance) {\n var _this = this;\n if (this.$attrs) {\n Object.keys(this.$attrs).forEach(function (listenerName) {\n var eventName = helpers_1.camelize(listenerName);\n instance.on(eventName, function (e) {\n _this.$emit(listenerName, e);\n });\n });\n }\n }\n }\n });\n}\nexports.initBaseComponent = initBaseComponent;\nfunction cleanWidgetNode(node) {\n var removedNodes = [];\n helpers_1.forEachChildNode(node, function (childNode) {\n var parent = childNode.parentNode;\n var isExtension = childNode.hasAttribute && childNode.hasAttribute(\"isExtension\");\n if ((childNode.nodeName === \"#comment\" || isExtension) && parent) {\n removedNodes.push(childNode);\n parent.removeChild(childNode);\n }\n });\n return removedNodes;\n}\nfunction restoreNodes(el, nodes) {\n nodes.forEach(function (node) {\n el.appendChild(node);\n });\n}\nfunction initDxComponent() {\n return vue_1.defineComponent({\n extends: initBaseComponent(),\n methods: {\n $_getExtraIntegrationOptions: function () {\n return {\n onInitializing: function () {\n this.beginUpdate();\n }\n };\n },\n $_processChildren: function (children) {\n children.forEach(function (childNode) {\n if (!childNode || typeof childNode !== \"object\") {\n return;\n }\n childNode.$_hasOwner = true;\n });\n },\n },\n mounted: function () {\n var _this = this;\n var nodes = cleanWidgetNode(this.$el);\n var thisComponent = this;\n this.$_createWidget(this.$el);\n thisComponent.$_instance.endUpdate();\n restoreNodes(this.$el, nodes);\n if (this.$slots && this.$slots.default) {\n vue_helper_1.getChildren(thisComponent).forEach(function (child) {\n var childExtenton = child;\n if (childExtenton && childExtenton.$_isExtension) {\n childExtenton.$_attachTo(_this.$el);\n }\n });\n }\n }\n });\n}\nexports.initDxComponent = initDxComponent;\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar VueType = require(\"vue\");\nvar Vue = VueType.default || VueType;\nvar configuration_1 = require(\"./configuration\");\nfunction getConfig(vueInstance) {\n if (!vueInstance.$vnode) {\n return;\n }\n var componentOptions = vueInstance.$vnode.componentOptions;\n return componentOptions && componentOptions.$_config;\n}\nexports.getConfig = getConfig;\nfunction getInnerChanges(vueInstance) {\n if (!vueInstance.$vnode) {\n return;\n }\n var componentOptions = vueInstance.$vnode.componentOptions;\n return componentOptions && componentOptions.$_innerChanges;\n}\nexports.getInnerChanges = getInnerChanges;\nfunction initOptionChangedFunc(config, vueInstance, innerChanges) {\n if (!config) {\n return;\n }\n config.init(Object.keys(vueInstance.$props));\n configuration_1.setEmitOptionChangedFunc(config, vueInstance, innerChanges);\n}\nexports.initOptionChangedFunc = initOptionChangedFunc;\nfunction getComponentInfo(_a, removed) {\n var name = _a.name, isCollectionItem = _a.isCollectionItem, ownerConfig = _a.ownerConfig;\n var parentPath = ownerConfig && ownerConfig.fullPath;\n var optionPath = name && parentPath ? parentPath + \".\" + name : name || \"\";\n return {\n optionPath: optionPath,\n isCollection: isCollectionItem,\n removed: removed\n };\n}\nvar DxConfiguration = function () { return Vue.extend({\n beforeMount: function () {\n var config = getConfig(this);\n var innerChanges = getInnerChanges(this);\n initOptionChangedFunc(config, this, innerChanges);\n configuration_1.bindOptionWatchers(config, this, innerChanges);\n },\n mounted: function () {\n if (this.$parent.$_instance) {\n this.$parent.$_config.componentsCountChanged\n .push(getComponentInfo(getConfig(this)));\n }\n },\n beforeDestroy: function () {\n this.$parent.$_config.componentsCountChanged\n .push(getComponentInfo(getConfig(this), true));\n },\n render: function (createElement) {\n return createElement();\n }\n}); };\nexports.DxConfiguration = DxConfiguration;\n","/**\r\n * DevExtreme (events/gesture/emitter.gesture.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _events_engine = _interopRequireDefault(require(\"../../events/core/events_engine\"));\r\nvar _devices = _interopRequireDefault(require(\"../../core/devices\"));\r\nvar _style = require(\"../../core/utils/style\");\r\nvar _call_once = _interopRequireDefault(require(\"../../core/utils/call_once\"));\r\nvar _dom = require(\"../../core/utils/dom\");\r\nvar _ready_callbacks = _interopRequireDefault(require(\"../../core/utils/ready_callbacks\"));\r\nvar _math = require(\"../../core/utils/math\");\r\nvar _common = require(\"../../core/utils/common\");\r\nvar _type = require(\"../../core/utils/type\");\r\nvar _index = require(\"../utils/index\");\r\nvar _emitter = _interopRequireDefault(require(\"../core/emitter\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar ready = _ready_callbacks.default.add;\r\nvar abs = Math.abs;\r\nvar SLEEP = 0;\r\nvar INITED = 1;\r\nvar STARTED = 2;\r\nvar TOUCH_BOUNDARY = 10;\r\nvar IMMEDIATE_TOUCH_BOUNDARY = 0;\r\nvar IMMEDIATE_TIMEOUT = 180;\r\nvar supportPointerEvents = function() {\r\n return (0, _style.styleProp)(\"pointer-events\")\r\n};\r\nvar setGestureCover = (0, _call_once.default)(function() {\r\n var GESTURE_COVER_CLASS = \"dx-gesture-cover\";\r\n var isDesktop = \"desktop\" === _devices.default.real().deviceType;\r\n if (!supportPointerEvents() || !isDesktop) {\r\n return _common.noop\r\n }\r\n var $cover = (0, _renderer.default)(\"
\").addClass(GESTURE_COVER_CLASS).css(\"pointerEvents\", \"none\");\r\n _events_engine.default.subscribeGlobal($cover, \"dxmousewheel\", function(e) {\r\n e.preventDefault()\r\n });\r\n ready(function() {\r\n $cover.appendTo(\"body\")\r\n });\r\n return function(toggle, cursor) {\r\n $cover.css(\"pointerEvents\", toggle ? \"all\" : \"none\");\r\n toggle && $cover.css(\"cursor\", cursor)\r\n }\r\n});\r\nvar gestureCover = function(toggle, cursor) {\r\n var gestureCoverStrategy = setGestureCover();\r\n gestureCoverStrategy(toggle, cursor)\r\n};\r\nvar GestureEmitter = _emitter.default.inherit({\r\n gesture: true,\r\n configure: function(data) {\r\n this.getElement().css(\"msTouchAction\", data.immediate ? \"pinch-zoom\" : \"\");\r\n this.callBase(data)\r\n },\r\n allowInterruptionByMouseWheel: function() {\r\n return this._stage !== STARTED\r\n },\r\n getDirection: function() {\r\n return this.direction\r\n },\r\n _cancel: function() {\r\n this.callBase.apply(this, arguments);\r\n this._toggleGestureCover(false);\r\n this._stage = SLEEP\r\n },\r\n start: function(e) {\r\n if (e._needSkipEvent || (0, _index.needSkipEvent)(e)) {\r\n this._cancel(e);\r\n return\r\n }\r\n this._startEvent = (0, _index.createEvent)(e);\r\n this._startEventData = (0, _index.eventData)(e);\r\n this._stage = INITED;\r\n this._init(e);\r\n this._setupImmediateTimer()\r\n },\r\n _setupImmediateTimer: function() {\r\n clearTimeout(this._immediateTimer);\r\n this._immediateAccepted = false;\r\n if (!this.immediate) {\r\n return\r\n }\r\n this._immediateTimer = setTimeout(function() {\r\n this._immediateAccepted = true\r\n }.bind(this), IMMEDIATE_TIMEOUT)\r\n },\r\n move: function(e) {\r\n if (this._stage === INITED && this._directionConfirmed(e)) {\r\n this._stage = STARTED;\r\n this._resetActiveElement();\r\n this._toggleGestureCover(true);\r\n this._clearSelection(e);\r\n this._adjustStartEvent(e);\r\n this._start(this._startEvent);\r\n if (this._stage === SLEEP) {\r\n return\r\n }\r\n this._requestAccept(e);\r\n this._move(e);\r\n this._forgetAccept()\r\n } else {\r\n if (this._stage === STARTED) {\r\n this._clearSelection(e);\r\n this._move(e)\r\n }\r\n }\r\n },\r\n _directionConfirmed: function(e) {\r\n var touchBoundary = this._getTouchBoundary(e);\r\n var delta = (0, _index.eventDelta)(this._startEventData, (0, _index.eventData)(e));\r\n var deltaX = abs(delta.x);\r\n var deltaY = abs(delta.y);\r\n var horizontalMove = this._validateMove(touchBoundary, deltaX, deltaY);\r\n var verticalMove = this._validateMove(touchBoundary, deltaY, deltaX);\r\n var direction = this.getDirection(e);\r\n var bothAccepted = \"both\" === direction && (horizontalMove || verticalMove);\r\n var horizontalAccepted = \"horizontal\" === direction && horizontalMove;\r\n var verticalAccepted = \"vertical\" === direction && verticalMove;\r\n return bothAccepted || horizontalAccepted || verticalAccepted || this._immediateAccepted\r\n },\r\n _validateMove: function(touchBoundary, mainAxis, crossAxis) {\r\n return mainAxis && mainAxis >= touchBoundary && (this.immediate ? mainAxis >= crossAxis : true)\r\n },\r\n _getTouchBoundary: function(e) {\r\n return this.immediate || (0, _index.isDxMouseWheelEvent)(e) ? IMMEDIATE_TOUCH_BOUNDARY : TOUCH_BOUNDARY\r\n },\r\n _adjustStartEvent: function(e) {\r\n var touchBoundary = this._getTouchBoundary(e);\r\n var delta = (0, _index.eventDelta)(this._startEventData, (0, _index.eventData)(e));\r\n this._startEvent.pageX += (0, _math.sign)(delta.x) * touchBoundary;\r\n this._startEvent.pageY += (0, _math.sign)(delta.y) * touchBoundary\r\n },\r\n _resetActiveElement: function() {\r\n if (\"ios\" === _devices.default.real().platform && this.getElement().find(\":focus\").length) {\r\n (0, _dom.resetActiveElement)()\r\n }\r\n },\r\n _toggleGestureCover: function(toggle) {\r\n this._toggleGestureCoverImpl(toggle)\r\n },\r\n _toggleGestureCoverImpl: function(toggle) {\r\n var isStarted = this._stage === STARTED;\r\n if (isStarted) {\r\n gestureCover(toggle, this.getElement().css(\"cursor\"))\r\n }\r\n },\r\n _clearSelection: function(e) {\r\n if ((0, _index.isDxMouseWheelEvent)(e) || (0, _index.isTouchEvent)(e)) {\r\n return\r\n }(0, _dom.clearSelection)()\r\n },\r\n end: function(e) {\r\n this._toggleGestureCover(false);\r\n if (this._stage === STARTED) {\r\n this._end(e)\r\n } else {\r\n if (this._stage === INITED) {\r\n this._stop(e)\r\n }\r\n }\r\n this._stage = SLEEP\r\n },\r\n dispose: function() {\r\n clearTimeout(this._immediateTimer);\r\n this.callBase.apply(this, arguments);\r\n this._toggleGestureCover(false)\r\n },\r\n _init: _common.noop,\r\n _start: _common.noop,\r\n _move: _common.noop,\r\n _stop: _common.noop,\r\n _end: _common.noop\r\n});\r\nGestureEmitter.initialTouchBoundary = TOUCH_BOUNDARY;\r\nGestureEmitter.touchBoundary = function(newBoundary) {\r\n if ((0, _type.isDefined)(newBoundary)) {\r\n TOUCH_BOUNDARY = newBoundary;\r\n return\r\n }\r\n return TOUCH_BOUNDARY\r\n};\r\nvar _default = GestureEmitter;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar DX_TEMPLATE_WRAPPER_CLASS = \"dx-template-wrapper\";\nexports.DX_TEMPLATE_WRAPPER_CLASS = DX_TEMPLATE_WRAPPER_CLASS;\nvar DX_REMOVE_EVENT = \"dxremove\";\nexports.DX_REMOVE_EVENT = DX_REMOVE_EVENT;\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getConfigurationOptions = exports.getNodeTypeOfComponent = exports.getNodeOptions = exports.saveComponentInstance = exports.usedConfigurationProps = exports.getComponentProps = exports.mount = exports.defaultSlots = exports.declaredTemplates = exports.configurationTemplate = exports.configurationDefaultTemplate = exports.configurationChildren = exports.getNormalizedProps = exports.getComponentInstance = exports.getComponentInfo = exports.getChildren = void 0;\nvar vue_1 = require(\"vue\");\nvar helpers_1 = require(\"./helpers\");\nvar children_processing_1 = require(\"./children-processing\");\nfunction getChildren(component) {\n if (!hasChildren(component) || !component.$_config) {\n return [];\n }\n var children = component.$.subTree && component.$.subTree.children;\n if (!Array.isArray(children)) {\n return [];\n }\n return children.filter(function (child) {\n if (!children_processing_1.isFragment(child)) {\n return child;\n }\n return;\n });\n}\nexports.getChildren = getChildren;\nfunction getComponentInfo(component) {\n return getConfigurationOptions(component);\n}\nexports.getComponentInfo = getComponentInfo;\nfunction getComponentInstance(component) {\n return component.type && component.type.$_componentInstance;\n}\nexports.getComponentInstance = getComponentInstance;\nfunction getNormalizedProps(props) {\n var result = {};\n for (var propName in props) {\n if (props.hasOwnProperty(propName)) {\n result[helpers_1.camelize(propName)] = props[propName];\n }\n }\n return result;\n}\nexports.getNormalizedProps = getNormalizedProps;\nfunction configurationChildren(component) {\n if (!component.children || !component.children.default) {\n return [];\n }\n return findConfigurationComponents(component.children.default());\n}\nexports.configurationChildren = configurationChildren;\nfunction configurationDefaultTemplate(node) {\n if (!node.children || node.children === \"object\" || !node.children.default) {\n return;\n }\n return hasInlineTemplate(node.children.default()) ? node.children.default : undefined;\n}\nexports.configurationDefaultTemplate = configurationDefaultTemplate;\nfunction configurationTemplate(node) {\n return configurationDefaultTemplate(node);\n}\nexports.configurationTemplate = configurationTemplate;\nfunction declaredTemplates(component) {\n return component.$slots;\n}\nexports.declaredTemplates = declaredTemplates;\nfunction defaultSlots(component) {\n var templates = declaredTemplates(component);\n if (!templates.default) {\n return [];\n }\n return templates.default();\n}\nexports.defaultSlots = defaultSlots;\nfunction mount(options, parent, el) {\n var template = vue_1.createApp(options);\n template.provide(\"eventBus\", parent.eventBus);\n return template.mount(el);\n}\nexports.mount = mount;\nfunction getComponentProps(component) {\n var props = component.$.vnode.props || {};\n return getNormalizedProps(props);\n}\nexports.getComponentProps = getComponentProps;\nfunction usedConfigurationProps(node) {\n return node.props;\n}\nexports.usedConfigurationProps = usedConfigurationProps;\nfunction saveComponentInstance(component) {\n var nodeOptions = getNodeTypeOfComponent(component);\n if (nodeOptions) {\n nodeOptions.$_componentInstance = component;\n }\n}\nexports.saveComponentInstance = saveComponentInstance;\nfunction getNodeOptions(component) {\n if (component.$) {\n return component.$.vnode;\n }\n return component;\n}\nexports.getNodeOptions = getNodeOptions;\nfunction getNodeTypeOfComponent(component) {\n return component.$.vnode.type;\n}\nexports.getNodeTypeOfComponent = getNodeTypeOfComponent;\nfunction findConfigurationComponents(children) {\n return children.filter(function (child) {\n if (children_processing_1.isFragment(child)) {\n return findConfigurationComponents(child.children || []);\n }\n if (child.type && typeof child.type === \"object\") {\n delete child.$_config;\n delete child.$_innerChanges;\n return child;\n }\n return;\n });\n}\nfunction hasInlineTemplate(children) {\n var hasTemplate = false;\n children.forEach(function (child) {\n if (!isConfiguration(child) && !children_processing_1.isFragment(child)) {\n hasTemplate = true;\n }\n });\n return hasTemplate;\n}\nfunction isConfiguration(child) {\n return child.type && typeof child.type === \"object\" && child.type.$_optionName;\n}\nfunction getConfigurationOptions(node) {\n return node.type;\n}\nexports.getConfigurationOptions = getConfigurationOptions;\nfunction hasChildren(component) {\n return component.$.vnode && component.$.vnode.children && component.$.vnode.children.default;\n}\n","var toString = {}.toString;\n\nmodule.exports = Array.isArray || function (arr) {\n return toString.call(arr) == '[object Array]';\n};\n","/**\r\n * DevExtreme (ui/widget/swatch_container.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _renderer = _interopRequireDefault(require(\"../../core/renderer\"));\r\nvar _view_port = require(\"../../core/utils/view_port\");\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar SWATCH_CONTAINER_CLASS_PREFIX = \"dx-swatch-\";\r\nvar getSwatchContainer = function(element) {\r\n var $element = (0, _renderer.default)(element);\r\n var swatchContainer = $element.closest('[class^=\"'.concat(SWATCH_CONTAINER_CLASS_PREFIX, '\"], [class*=\" ').concat(SWATCH_CONTAINER_CLASS_PREFIX, '\"]'));\r\n var viewport = (0, _view_port.value)();\r\n if (!swatchContainer.length) {\r\n return viewport\r\n }\r\n var swatchClassRegex = new RegExp(\"(\\\\s|^)(\".concat(SWATCH_CONTAINER_CLASS_PREFIX, \".*?)(\\\\s|$)\"));\r\n var swatchClass = swatchContainer[0].className.match(swatchClassRegex)[2];\r\n var viewportSwatchContainer = viewport.children(\".\" + swatchClass);\r\n if (!viewportSwatchContainer.length) {\r\n viewportSwatchContainer = (0, _renderer.default)(\"
\").addClass(swatchClass).appendTo(viewport)\r\n }\r\n return viewportSwatchContainer\r\n};\r\nvar _default = {\r\n getSwatchContainer: getSwatchContainer\r\n};\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/*!\n * devextreme-vue\n * Version: 20.2.3\n * Build date: Tue Oct 20 2020\n *\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\n *\n * This software may be modified and distributed under the terms\n * of the MIT license. See the LICENSE file in the root of the project for details.\n *\n * https://github.com/DevExpress/devextreme-vue\n */\n\n\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getInnerChanges = exports.getConfig = exports.initOptionChangedFunc = exports.initDxConfiguration = void 0;\nvar vue_1 = require(\"vue\");\nvar vue_helper_1 = require(\"./vue-helper\");\nvar configuration_1 = require(\"./configuration\");\nfunction getConfig(vueInstance) {\n var componentOptions = vue_helper_1.getNodeOptions(vueInstance);\n if (!componentOptions) {\n return;\n }\n return componentOptions.$_config || vueInstance.$_config;\n}\nexports.getConfig = getConfig;\nfunction getInnerChanges(vueInstance) {\n var componentOptions = vue_helper_1.getNodeOptions(vueInstance);\n if (!componentOptions) {\n return;\n }\n return componentOptions.$_innerChanges || vueInstance.$_innerChanges;\n}\nexports.getInnerChanges = getInnerChanges;\nfunction initOptionChangedFunc(config, props, vueInstance, innerChanges) {\n if (!config) {\n return;\n }\n config.init(Object.keys(props));\n if (vueInstance) {\n configuration_1.setEmitOptionChangedFunc(config, vueInstance, innerChanges);\n }\n}\nexports.initOptionChangedFunc = initOptionChangedFunc;\nfunction getComponentInfo(_a, removed) {\n var name = _a.name, isCollectionItem = _a.isCollectionItem, ownerConfig = _a.ownerConfig;\n var parentPath = ownerConfig && ownerConfig.fullPath;\n var optionPath = name && parentPath ? parentPath + \".\" + name : name || \"\";\n return {\n optionPath: optionPath,\n isCollection: isCollectionItem,\n removed: removed\n };\n}\nfunction initDxConfiguration() {\n return vue_1.defineComponent({\n updated: function () {\n vue_helper_1.saveComponentInstance(this);\n },\n beforeMount: function () {\n var thisComponent = this;\n var config = getConfig(thisComponent);\n var innerChanges = getInnerChanges(thisComponent);\n initOptionChangedFunc(config, vue_helper_1.getNodeTypeOfComponent(thisComponent).props, thisComponent, innerChanges);\n configuration_1.bindOptionWatchers(config, this, innerChanges);\n },\n mounted: function () {\n if (this.$parent.$_instance) {\n this.$parent.$_config.componentsCountChanged\n .push(getComponentInfo(getConfig(this)));\n }\n },\n beforeUnmount: function () {\n var config = getConfig(this);\n if (config) {\n this.$parent.$_config.componentsCountChanged\n .push(getComponentInfo(config, true));\n }\n },\n render: function () {\n return null;\n }\n });\n}\nexports.initDxConfiguration = initDxConfiguration;\n","/**\r\n * DevExtreme (animation/easing.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.setEasing = setEasing;\r\nexports.getEasing = getEasing;\r\nexports.convertTransitionTimingFuncToEasing = void 0;\r\nvar _type = require(\"../core/utils/type\");\r\nvar CSS_TRANSITION_EASING_REGEX = /cubic-bezier\\((\\d+(?:\\.\\d+)?)\\s*,\\s*(\\d+(?:\\.\\d+)?)\\s*,\\s*(\\d+(?:\\.\\d+)?)\\s*,\\s*(\\d+(?:\\.\\d+)?)\\)/;\r\nvar TransitionTimingFuncMap = {\r\n linear: \"cubic-bezier(0, 0, 1, 1)\",\r\n swing: \"cubic-bezier(0.445, 0.05, 0.55, 0.95)\",\r\n ease: \"cubic-bezier(0.25, 0.1, 0.25, 1)\",\r\n \"ease-in\": \"cubic-bezier(0.42, 0, 1, 1)\",\r\n \"ease-out\": \"cubic-bezier(0, 0, 0.58, 1)\",\r\n \"ease-in-out\": \"cubic-bezier(0.42, 0, 0.58, 1)\"\r\n};\r\nvar polynomBezier = function(x1, y1, x2, y2) {\r\n var Cx = 3 * x1;\r\n var Bx = 3 * (x2 - x1) - Cx;\r\n var Ax = 1 - Cx - Bx;\r\n var Cy = 3 * y1;\r\n var By = 3 * (y2 - y1) - Cy;\r\n var Ay = 1 - Cy - By;\r\n var bezierX = function(t) {\r\n return t * (Cx + t * (Bx + t * Ax))\r\n };\r\n var bezierY = function(t) {\r\n return t * (Cy + t * (By + t * Ay))\r\n };\r\n var derivativeX = function(t) {\r\n return Cx + t * (2 * Bx + 3 * t * Ax)\r\n };\r\n var findXFor = function(t) {\r\n var x = t;\r\n var i = 0;\r\n var z;\r\n while (i < 14) {\r\n z = bezierX(x) - t;\r\n if (Math.abs(z) < .001) {\r\n break\r\n }\r\n x -= z / derivativeX(x);\r\n i++\r\n }\r\n return x\r\n };\r\n return function(t) {\r\n return bezierY(findXFor(t))\r\n }\r\n};\r\nvar easing = {};\r\nvar convertTransitionTimingFuncToEasing = function(cssTransitionEasing) {\r\n cssTransitionEasing = TransitionTimingFuncMap[cssTransitionEasing] || cssTransitionEasing;\r\n var coeffs = cssTransitionEasing.match(CSS_TRANSITION_EASING_REGEX);\r\n var forceName;\r\n if (!coeffs) {\r\n forceName = \"linear\";\r\n coeffs = TransitionTimingFuncMap[forceName].match(CSS_TRANSITION_EASING_REGEX)\r\n }\r\n coeffs = coeffs.slice(1, 5);\r\n for (var i = 0; i < coeffs.length; i++) {\r\n coeffs[i] = parseFloat(coeffs[i])\r\n }\r\n var easingName = forceName || \"cubicbezier_\" + coeffs.join(\"_\").replace(/\\./g, \"p\");\r\n if (!(0, _type.isFunction)(easing[easingName])) {\r\n easing[easingName] = function(x, t, b, c, d) {\r\n return c * polynomBezier(coeffs[0], coeffs[1], coeffs[2], coeffs[3])(t / d) + b\r\n }\r\n }\r\n return easingName\r\n};\r\nexports.convertTransitionTimingFuncToEasing = convertTransitionTimingFuncToEasing;\r\n\r\nfunction setEasing(value) {\r\n easing = value\r\n}\r\n\r\nfunction getEasing(name) {\r\n return easing[name]\r\n}\r\n","/**\r\n * DevExtreme (ui/themes.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.waitForThemeLoad = waitForThemeLoad;\r\nexports.init = init;\r\nexports.current = current;\r\nexports.attachCssClasses = attachCssClasses;\r\nexports.detachCssClasses = detachCssClasses;\r\nexports.isMaterial = isMaterial;\r\nexports.isGeneric = isGeneric;\r\nexports.isDark = isDark;\r\nexports.isWebFontLoaded = isWebFontLoaded;\r\nexports.waitWebFont = waitWebFont;\r\nexports.ready = themeReady;\r\nexports.resetTheme = resetTheme;\r\nexports.initialized = initialized;\r\nexports.setDefaultTimeout = setDefaultTimeout;\r\nvar _devices = _interopRequireDefault(require(\"../core/devices\"));\r\nvar _dom_adapter = _interopRequireDefault(require(\"../core/dom_adapter\"));\r\nvar _promise = _interopRequireDefault(require(\"../core/polyfills/promise\"));\r\nvar _renderer = _interopRequireDefault(require(\"../core/renderer\"));\r\nvar _deferred = require(\"../core/utils/deferred\");\r\nvar _html_parser = require(\"../core/utils/html_parser\");\r\nvar _iterator = require(\"../core/utils/iterator\");\r\nvar _ready_callbacks = _interopRequireDefault(require(\"../core/utils/ready_callbacks\"));\r\nvar _view_port = require(\"../core/utils/view_port\");\r\nvar _window = require(\"../core/utils/window\");\r\nvar _themes_callback = require(\"./themes_callback\");\r\nvar _ui = _interopRequireDefault(require(\"./widget/ui.errors\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar window = (0, _window.getWindow)();\r\nvar ready = _ready_callbacks.default.add;\r\nvar viewPort = _view_port.value;\r\nvar viewPortChanged = _view_port.changeCallback;\r\nvar initDeferred = new _deferred.Deferred;\r\nvar DX_LINK_SELECTOR = \"link[rel=dx-theme]\";\r\nvar THEME_ATTR = \"data-theme\";\r\nvar ACTIVE_ATTR = \"data-active\";\r\nvar DX_HAIRLINES_CLASS = \"dx-hairlines\";\r\nvar ANY_THEME = \"any\";\r\nvar context;\r\nvar $activeThemeLink;\r\nvar knownThemes;\r\nvar currentThemeName;\r\nvar pendingThemeName;\r\nvar defaultTimeout = 15e3;\r\nvar THEME_MARKER_PREFIX = \"dx.\";\r\n\r\nfunction readThemeMarker() {\r\n if (!(0, _window.hasWindow)()) {\r\n return null\r\n }\r\n var element = (0, _renderer.default)(\"
\", context).addClass(\"dx-theme-marker\").appendTo(context.documentElement);\r\n var result;\r\n try {\r\n result = element.css(\"fontFamily\");\r\n if (!result) {\r\n return null\r\n }\r\n result = result.replace(/[\"']/g, \"\");\r\n if (result.substr(0, THEME_MARKER_PREFIX.length) !== THEME_MARKER_PREFIX) {\r\n return null\r\n }\r\n return result.substr(THEME_MARKER_PREFIX.length)\r\n } finally {\r\n element.remove()\r\n }\r\n}\r\n\r\nfunction waitForThemeLoad(themeName) {\r\n var waitStartTime;\r\n var timerId;\r\n var intervalCleared = true;\r\n pendingThemeName = themeName;\r\n\r\n function handleLoaded() {\r\n pendingThemeName = null;\r\n clearInterval(timerId);\r\n intervalCleared = true;\r\n _themes_callback.themeReadyCallback.fire();\r\n _themes_callback.themeReadyCallback.empty();\r\n initDeferred.resolve()\r\n }\r\n if (isPendingThemeLoaded() || !defaultTimeout) {\r\n handleLoaded()\r\n } else {\r\n if (!intervalCleared) {\r\n if (pendingThemeName) {\r\n pendingThemeName = themeName\r\n }\r\n return\r\n }\r\n waitStartTime = Date.now();\r\n intervalCleared = false;\r\n timerId = setInterval(function() {\r\n var isLoaded = isPendingThemeLoaded();\r\n var isTimeout = !isLoaded && Date.now() - waitStartTime > defaultTimeout;\r\n if (isTimeout) {\r\n _ui.default.log(\"W0004\", pendingThemeName)\r\n }\r\n if (isLoaded || isTimeout) {\r\n handleLoaded()\r\n }\r\n }, 10)\r\n }\r\n}\r\n\r\nfunction isPendingThemeLoaded() {\r\n if (!pendingThemeName) {\r\n return true\r\n }\r\n var anyThemePending = pendingThemeName === ANY_THEME;\r\n if (\"resolved\" === initDeferred.state() && anyThemePending) {\r\n return true\r\n }\r\n var themeMarker = readThemeMarker();\r\n if (themeMarker && anyThemePending) {\r\n return true\r\n }\r\n return themeMarker === pendingThemeName\r\n}\r\n\r\nfunction processMarkup() {\r\n var $allThemeLinks = (0, _renderer.default)(DX_LINK_SELECTOR, context);\r\n if (!$allThemeLinks.length) {\r\n return\r\n }\r\n knownThemes = {};\r\n $activeThemeLink = (0, _renderer.default)((0, _html_parser.parseHTML)(\"\"), context);\r\n $allThemeLinks.each(function() {\r\n var link = (0, _renderer.default)(this, context);\r\n var fullThemeName = link.attr(THEME_ATTR);\r\n var url = link.attr(\"href\");\r\n var isActive = \"true\" === link.attr(ACTIVE_ATTR);\r\n knownThemes[fullThemeName] = {\r\n url: url,\r\n isActive: isActive\r\n }\r\n });\r\n $allThemeLinks.last().after($activeThemeLink);\r\n $allThemeLinks.remove()\r\n}\r\n\r\nfunction resolveFullThemeName(desiredThemeName) {\r\n var desiredThemeParts = desiredThemeName ? desiredThemeName.split(\".\") : [];\r\n var result = null;\r\n if (knownThemes) {\r\n if (desiredThemeName in knownThemes) {\r\n return desiredThemeName\r\n }(0, _iterator.each)(knownThemes, function(knownThemeName, themeData) {\r\n var knownThemeParts = knownThemeName.split(\".\");\r\n if (desiredThemeParts[0] && knownThemeParts[0] !== desiredThemeParts[0]) {\r\n return\r\n }\r\n if (desiredThemeParts[1] && desiredThemeParts[1] !== knownThemeParts[1]) {\r\n return\r\n }\r\n if (desiredThemeParts[2] && desiredThemeParts[2] !== knownThemeParts[2]) {\r\n return\r\n }\r\n if (!result || themeData.isActive) {\r\n result = knownThemeName\r\n }\r\n if (themeData.isActive) {\r\n return false\r\n }\r\n })\r\n }\r\n return result\r\n}\r\n\r\nfunction initContext(newContext) {\r\n try {\r\n if (newContext !== context) {\r\n knownThemes = null\r\n }\r\n } catch (x) {\r\n knownThemes = null\r\n }\r\n context = newContext\r\n}\r\n\r\nfunction init(options) {\r\n options = options || {};\r\n initContext(options.context || _dom_adapter.default.getDocument());\r\n if (!context) {\r\n return\r\n }\r\n processMarkup();\r\n currentThemeName = void 0;\r\n current(options)\r\n}\r\n\r\nfunction current(options) {\r\n if (!arguments.length) {\r\n currentThemeName = currentThemeName || readThemeMarker();\r\n return currentThemeName\r\n }\r\n detachCssClasses(viewPort());\r\n options = options || {};\r\n if (\"string\" === typeof options) {\r\n options = {\r\n theme: options\r\n }\r\n }\r\n var isAutoInit = options._autoInit;\r\n var loadCallback = options.loadCallback;\r\n var currentThemeData;\r\n currentThemeName = resolveFullThemeName(options.theme || currentThemeName);\r\n if (currentThemeName) {\r\n currentThemeData = knownThemes[currentThemeName]\r\n }\r\n if (loadCallback) {\r\n _themes_callback.themeReadyCallback.add(loadCallback)\r\n }\r\n if (currentThemeData) {\r\n $activeThemeLink.attr(\"href\", knownThemes[currentThemeName].url);\r\n if (_themes_callback.themeReadyCallback.has() || \"resolved\" !== initDeferred.state() || options._forceTimeout) {\r\n waitForThemeLoad(currentThemeName)\r\n }\r\n } else {\r\n if (isAutoInit) {\r\n waitForThemeLoad(ANY_THEME);\r\n _themes_callback.themeReadyCallback.fire();\r\n _themes_callback.themeReadyCallback.empty()\r\n } else {\r\n throw _ui.default.Error(\"E0021\", currentThemeName)\r\n }\r\n }\r\n initDeferred.done(function() {\r\n return attachCssClasses((0, _view_port.originalViewPort)(), currentThemeName)\r\n })\r\n}\r\n\r\nfunction getCssClasses(themeName) {\r\n themeName = themeName || current();\r\n var result = [];\r\n var themeNameParts = themeName && themeName.split(\".\");\r\n if (themeNameParts) {\r\n result.push(\"dx-theme-\" + themeNameParts[0], \"dx-theme-\" + themeNameParts[0] + \"-typography\");\r\n if (themeNameParts.length > 1) {\r\n result.push(\"dx-color-scheme-\" + themeNameParts[1] + (isMaterial(themeName) ? \"-\" + themeNameParts[2] : \"\"))\r\n }\r\n }\r\n return result\r\n}\r\nvar themeClasses;\r\n\r\nfunction attachCssClasses(element, themeName) {\r\n themeClasses = getCssClasses(themeName).join(\" \");\r\n (0, _renderer.default)(element).addClass(themeClasses);\r\n var activateHairlines = function() {\r\n var pixelRatio = (0, _window.hasWindow)() && window.devicePixelRatio;\r\n if (!pixelRatio || pixelRatio < 2) {\r\n return\r\n }\r\n var $tester = (0, _renderer.default)(\"
\");\r\n $tester.css(\"border\", \".5px solid transparent\");\r\n (0, _renderer.default)(\"body\").append($tester);\r\n if (1 === $tester.outerHeight()) {\r\n (0, _renderer.default)(element).addClass(DX_HAIRLINES_CLASS);\r\n themeClasses += \" \" + DX_HAIRLINES_CLASS\r\n }\r\n $tester.remove()\r\n };\r\n activateHairlines()\r\n}\r\n\r\nfunction detachCssClasses(element) {\r\n (0, _renderer.default)(element).removeClass(themeClasses)\r\n}\r\n\r\nfunction themeReady(callback) {\r\n _themes_callback.themeReadyCallback.add(callback)\r\n}\r\n\r\nfunction isTheme(themeRegExp, themeName) {\r\n if (!themeName) {\r\n themeName = currentThemeName || readThemeMarker()\r\n }\r\n return new RegExp(themeRegExp).test(themeName)\r\n}\r\n\r\nfunction isMaterial(themeName) {\r\n return isTheme(\"material\", themeName)\r\n}\r\n\r\nfunction isGeneric(themeName) {\r\n return isTheme(\"generic\", themeName)\r\n}\r\n\r\nfunction isDark(themeName) {\r\n return isTheme(\"dark\", themeName)\r\n}\r\n\r\nfunction isWebFontLoaded(text, fontWeight) {\r\n var testedFont = \"Roboto, RobotoFallback, Arial\";\r\n var etalonFont = \"Arial\";\r\n var document = _dom_adapter.default.getDocument();\r\n var testElement = document.createElement(\"span\");\r\n testElement.style.position = \"absolute\";\r\n testElement.style.top = \"-9999px\";\r\n testElement.style.left = \"-9999px\";\r\n testElement.style.visibility = \"hidden\";\r\n testElement.style.fontFamily = etalonFont;\r\n testElement.style.fontSize = \"250px\";\r\n testElement.style.fontWeight = fontWeight;\r\n testElement.innerHTML = text;\r\n document.body.appendChild(testElement);\r\n var etalonFontWidth = testElement.offsetWidth;\r\n testElement.style.fontFamily = testedFont;\r\n var testedFontWidth = testElement.offsetWidth;\r\n testElement.parentNode.removeChild(testElement);\r\n return etalonFontWidth !== testedFontWidth\r\n}\r\n\r\nfunction waitWebFont(text, fontWeight) {\r\n var interval = 15;\r\n var timeout = 2e3;\r\n return new _promise.default(function(resolve) {\r\n var check = function() {\r\n if (isWebFontLoaded(text, fontWeight)) {\r\n clear()\r\n }\r\n };\r\n var clear = function() {\r\n clearInterval(intervalId);\r\n clearTimeout(timeoutId);\r\n resolve()\r\n };\r\n var intervalId = setInterval(check, interval);\r\n var timeoutId = setTimeout(clear, timeout)\r\n })\r\n}\r\n\r\nfunction autoInit() {\r\n init({\r\n _autoInit: true,\r\n _forceTimeout: true\r\n });\r\n if ((0, _renderer.default)(DX_LINK_SELECTOR, context).length) {\r\n throw _ui.default.Error(\"E0022\")\r\n }\r\n}\r\nif ((0, _window.hasWindow)()) {\r\n autoInit()\r\n} else {\r\n ready(autoInit)\r\n}\r\nviewPortChanged.add(function(viewPort, prevViewPort) {\r\n initDeferred.done(function() {\r\n detachCssClasses(prevViewPort);\r\n attachCssClasses(viewPort)\r\n })\r\n});\r\n_devices.default.changed.add(function() {\r\n init({\r\n _autoInit: true\r\n })\r\n});\r\n\r\nfunction resetTheme() {\r\n $activeThemeLink && $activeThemeLink.attr(\"href\", \"about:blank\");\r\n currentThemeName = null;\r\n pendingThemeName = null;\r\n initDeferred = new _deferred.Deferred\r\n}\r\n\r\nfunction initialized(callback) {\r\n initDeferred.done(callback)\r\n}\r\n\r\nfunction setDefaultTimeout(timeout) {\r\n defaultTimeout = timeout\r\n}\r\nmodule.exports.default = module.exports;\r\n","/**\r\n * DevExtreme (core/component_registrator_callbacks.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _memorized_callbacks = _interopRequireDefault(require(\"./memorized_callbacks\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar _default = new _memorized_callbacks.default;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n","/**\r\n * DevExtreme (core/utils/resize_callbacks.js)\r\n * Version: 20.2.3\r\n * Build date: Tue Oct 20 2020\r\n *\r\n * Copyright (c) 2012 - 2020 Developer Express Inc. ALL RIGHTS RESERVED\r\n * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/\r\n */\r\n\"use strict\";\r\nexports.default = void 0;\r\nvar _window = require(\"./window\");\r\nvar _dom_adapter = _interopRequireDefault(require(\"../dom_adapter\"));\r\nvar _callbacks = _interopRequireDefault(require(\"./callbacks\"));\r\nvar _ready_callbacks = _interopRequireDefault(require(\"./ready_callbacks\"));\r\nvar _call_once = _interopRequireDefault(require(\"./call_once\"));\r\n\r\nfunction _interopRequireDefault(obj) {\r\n return obj && obj.__esModule ? obj : {\r\n \"default\": obj\r\n }\r\n}\r\nvar resizeCallbacks = function() {\r\n var prevSize;\r\n var callbacks = (0, _callbacks.default)();\r\n var originalCallbacksAdd = callbacks.add;\r\n var originalCallbacksRemove = callbacks.remove;\r\n if (!(0, _window.hasWindow)()) {\r\n return callbacks\r\n }\r\n var formatSize = function() {\r\n var window = (0, _window.getWindow)();\r\n return {\r\n width: window.innerWidth,\r\n height: window.innerHeight\r\n }\r\n };\r\n var handleResize = function() {\r\n var now = formatSize();\r\n if (now.width === prevSize.width && now.height === prevSize.height) {\r\n return\r\n }\r\n var changedDimension;\r\n if (now.width === prevSize.width) {\r\n changedDimension = \"height\"\r\n }\r\n if (now.height === prevSize.height) {\r\n changedDimension = \"width\"\r\n }\r\n prevSize = now;\r\n callbacks.fire(changedDimension)\r\n };\r\n var setPrevSize = (0, _call_once.default)(function() {\r\n prevSize = formatSize()\r\n });\r\n var removeListener;\r\n callbacks.add = function() {\r\n var result = originalCallbacksAdd.apply(callbacks, arguments);\r\n setPrevSize();\r\n _ready_callbacks.default.add(function() {\r\n if (!removeListener && callbacks.has()) {\r\n removeListener = _dom_adapter.default.listen((0, _window.getWindow)(), \"resize\", handleResize)\r\n }\r\n });\r\n return result\r\n };\r\n callbacks.remove = function() {\r\n var result = originalCallbacksRemove.apply(callbacks, arguments);\r\n if (!callbacks.has() && removeListener) {\r\n removeListener();\r\n removeListener = void 0\r\n }\r\n return result\r\n };\r\n return callbacks\r\n}();\r\nvar _default = resizeCallbacks;\r\nexports.default = _default;\r\nmodule.exports = exports.default;\r\n"],"sourceRoot":""}