@mescius/wijmo.input 5.20232.939
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/COMMERCIAL-LICENSE.html +485 -0
- package/README.md +363 -0
- package/es2015-commonjs.js +14 -0
- package/es2015-esm.js +14 -0
- package/es5-esm.js +14 -0
- package/index.d.ts +4298 -0
- package/index.js +14 -0
- package/package.json +44 -0
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
*
|
|
3
|
+
* Wijmo Library 5.20232.939
|
|
4
|
+
* https://developer.mescius.com/wijmo
|
|
5
|
+
*
|
|
6
|
+
* Copyright(c) MESCIUS inc. All rights reserved.
|
|
7
|
+
*
|
|
8
|
+
* Licensed under the End-User License Agreement For MESCIUS Wijmo Software.
|
|
9
|
+
* us.sales@mescius.com
|
|
10
|
+
* https://developer.mescius.com/wijmo/licensing
|
|
11
|
+
*
|
|
12
|
+
*/
|
|
13
|
+
|
|
14
|
+
"use strict";var __importStar=this&&this.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.hasOwnProperty.call(t,i)&&(e[i]=t[i]);e.default=t;return e};Object.defineProperty(exports,"__esModule",{value:!0});const wijmo_1=require("@mescius/wijmo"),selfModule=__importStar(require("@mescius/wijmo.input"));wijmo_1._addCultureInfo("InputNumber",{ariaLabels:{incVal:"Increase Value",decVal:"Decrease Value"}});class InputNumber extends wijmo_1.Control{constructor(t,e){super(t);this._value=null;this._min=null;this._max=null;this._format="";this._step=null;this._showBtn=!0;this._readOnly=!1;this._handleWheel=!0;this._oldText="";this._fromKb=!0;this.textChanged=new wijmo_1.Event;this.valueChanged=new wijmo_1.Event;let i=this.hostElement;wijmo_1.setAttribute(i,"role","spinbutton",!0);let s=this.getTemplate();this.applyTemplate("wj-control wj-content wj-inputnumber",s,{_tbx:"input",_btnUp:"btn-inc",_btnDn:"btn-dec"},"input");let h=wijmo_1.culture.InputNumber.ariaLabels;wijmo_1.setAriaLabel(this._btnUp.querySelector("button"),h.incVal);wijmo_1.setAriaLabel(this._btnDn.querySelector("button"),h.decVal);this._tbx.type.match(/number/i)&&(this.inputType="");let n=this._tbx;n.autocomplete="off";n.spellcheck=!1;this._updateSymbols();let o=this.addEventListener.bind(this);o(n,"keypress",this._keypress.bind(this));o(n,"keydown",this._keydown.bind(this));o(n,"input",this._input.bind(this));o(n,"blur",()=>{this.text!=this._oldText&&this._setText(this.text)});o(n,"paste",()=>{this._fromKb=!1});o(n,"compositionstart",()=>{this._composing=!0});o(n,"compositionend",()=>{this._composing=!1;setTimeout(()=>{let t=this.text,e=this._oldText,i=this._chrPct;e&&e.indexOf(i)>-1&&t.indexOf(i)<0&&(t+=i);this._setText(t)})});let l=this._clickSpinner.bind(this);o(this._btnUp,"click",l);o(this._btnDn,"click",l);this._rptUp=new wijmo_1._ClickRepeater(this._btnUp.querySelector("button"));this._rptDn=new wijmo_1._ClickRepeater(this._btnDn.querySelector("button"));o(n,"wheel",t=>{if(this.handleWheel&&!t.defaultPrevented&&!t.ctrlKey&&this._isEditable()&&this.containsFocus()){let e=wijmo_1.clamp(-t.deltaY,-1,1);this._increment((this.step||1)*e);setTimeout(()=>this.selectAll());t.preventDefault()}});this.value=0;this.isRequired=!0;this.initialize(e)}get inputElement(){return this._tbx}get inputType(){return this._tbx.type}set inputType(t){this._tbx.type=wijmo_1.asString(t)}get value(){return this._value}set value(t){if(t!=this._value)if(null==(t=wijmo_1.asNumber(t,!this.isRequired||null==t&&null==this._value)))this._setText("");else if(!isNaN(t)){let e=wijmo_1.Globalize.format(t,this.format);this._setText(e)}}get isRequired(){return this._tbx.required}set isRequired(t){this._tbx.required=wijmo_1.asBoolean(t)}get isReadOnly(){return this._readOnly}set isReadOnly(t){this._readOnly=wijmo_1.asBoolean(t);this.inputElement.readOnly=this._readOnly;wijmo_1.toggleClass(this.hostElement,"wj-state-readonly",this.isReadOnly)}get handleWheel(){return this._handleWheel}set handleWheel(t){this._handleWheel=wijmo_1.asBoolean(t)}get min(){return this._min}set min(t){if(t!=this._min){this._min=wijmo_1.asNumber(t,!0);this._updateAria()}}get max(){return this._max}set max(t){if(t!=this._max){this._max=wijmo_1.asNumber(t,!0);this._updateAria()}}get step(){return this._step}set step(t){this._step=wijmo_1.asNumber(t,!0);this._updateBtn()}get format(){return this._format}set format(t){if(t!=this.format){this._format=wijmo_1.asString(t);this.refresh()}}get text(){return this._tbx.value}set text(t){if(t!=this.text){this._oldText=null;this._setText(t)}}get placeholder(){return this._tbx.placeholder}set placeholder(t){this._tbx.placeholder=t}get showSpinner(){return this._showBtn}set showSpinner(t){this._showBtn=wijmo_1.asBoolean(t);this._updateBtn()}get repeatButtons(){return!this._rptUp.disabled}set repeatButtons(t){this._rptUp.disabled=this._rptDn.disabled=!wijmo_1.asBoolean(t)}selectAll(){let t=this._tbx;wijmo_1.setSelectionRange(t,0,t.value.length)}clamp(t){return wijmo_1.clamp(t,this.min,this.max)}onTextChanged(t){this.textChanged.raise(this,t);this._updateState()}onValueChanged(t){this._updateAria();this.valueChanged.raise(this,t)}dispose(){this._rptUp.element=null;this._rptDn.element=null;super.dispose()}onGotFocus(t){this._oldValue=this.value;if(!this.isTouching){this._tbx.focus();this.selectAll()}super.onGotFocus(t)}onLostFocus(t){if(this._composing){this._composing=!1;this._setText(this.text)}if(this._isEditable()){let t=this.clamp(this.value);if(t==this.value||this.onInvalidInput(new wijmo_1.CancelEventArgs)){let e=wijmo_1.Globalize.format(t,this.format);this._setText(e)}}super.onLostFocus(t)}refresh(t=!0){super.refresh(t);if(this.hostElement){this._updateSymbols();let t=wijmo_1.Globalize.format(this.value,this.format);this._setText(t)}}_isEditable(){return!this.isReadOnly&&!this.isDisabled}_updateSymbols(){let t=wijmo_1.culture.Globalize.numberFormat,e=wijmo_1.Globalize._parseNumericFormat(this.format);this._chrDec=t["."]||".";this._chrTho=t[","]||",";this._chrNeg=t["-"]||"-";this._chrPls=t["+"]||"+";this._chrPct=t["%"]||"%";this._chrCur=e.curr||t.currency.symbol||"$";this._fmtSpc=e.spec;this._fmtPrc=e.prec;this._rxSym=new RegExp("^[%+\\-() \\"+this._chrDec+"\\"+this._chrCur+"\\"+this._chrNeg+"\\"+this._chrPls+"\\"+this._chrPct+"]*$");this._rxNeg=new RegExp("^\\s*(\\-|\\"+this._chrNeg+")|([^e](\\-|\\"+this._chrNeg+")|\\()")}_isNumeric(t,e){let i=t==this._chrDec||t>="0"&&t<="9",s="x"==this._fmtSpc;!i&&s&&(i=t>="a"&&t<="f"||t>="A"&&t<="F");i||e||s||(i=t==this._chrPls||t==this._chrNeg||"("==t||")"==t);return i}_getInputRange(t){let e=[0,0],i=this.text,s=!1;for(let h=0;h<i.length;h++)if(this._isNumeric(i[h],t)){if(!s){e[0]=h;s=!0}e[1]=h+1}return e}_flipSign(){let t=this._getSelStartDigits();this.value*=-1;this._setSelStartDigits(t)}_getSelStartDigits(){let t=0,e=this._tbx.selectionStart,i=this._tbx.value;for(let s=0;s<i.length&&s<e;s++)this._isNumeric(i[s],!0)&&t++;return t}_setSelStartDigits(t){let e=this._tbx.value;for(let i=0;i<e.length&&t>=0;i++)if(this._isNumeric(e[i],!0)){if(!t){wijmo_1.setSelectionRange(this._tbx,i);break}t--}else if(!t){wijmo_1.setSelectionRange(this._tbx,i);break}}_increment(t){if(t){let e=this.clamp(wijmo_1.isNumber(this.value)?this.value+t:0),i=wijmo_1.Globalize.format(e,this.format,!1,!1);this._setText(i)}}_updateBtn(){let t=this.showSpinner&&!!this.step,e=t;wijmo_1.setCss([this._btnUp,this._btnDn],{display:t?"":"none"});wijmo_1.toggleClass(this.hostElement,"wj-input-show-spinner",t);wijmo_1.enable(this._btnUp,e);wijmo_1.enable(this._btnDn,e);this._updateAria()}_setText(t,e=!1,i=!1){if(this._composing)return;let s=this._tbx,h=this._chrDec,n=this._rxNeg.test(t),o=this._delKey,l=this.containsFocus();t&&this._rxSym.test(t)&&l&&(t=this.isRequired||!o?(n?"-0":"0")+(t.indexOf(h)>-1?h:""):"");this._delKey=!1;o&&0==this.value&&!this.isRequired&&(t="");if(!t){if(!this.isRequired||i){s.value="";if(null!=this._value){this._value=null;this.onValueChanged()}if(this._oldText){this._oldText=t;this.onTextChanged()}this._updateBtn();return}t="0"}let a=t.indexOf(h),r=this._format||(a>-1?"n2":"n0"),d=wijmo_1.Globalize.parseFloat(t,r);isFinite(d)||(d=this.clamp(d));if(isNaN(d)){this.onInvalidInput(new wijmo_1.CancelEventArgs)?s.value=this._oldText:this.focus();return}let _=l&&a>-1?2:null,m=wijmo_1.Globalize.format(d,r,!1,e,_);n&&d>=0&&!o&&(m=this._chrNeg+m);l&&a>-1&&"g"==this._fmtSpc&&0!=this._fmtPrc&&(m=t).indexOf(h)<0&&(m+=h);if(s.value!=m){s.value=m;d=wijmo_1.Globalize.parseFloat(m,r)}if(d!=this._value){this._value=d;this.onValueChanged()}if(this.text!=this._oldText){this._oldText=this.text;this.onTextChanged()}this._updateBtn();this._updateState()}_keypress(t){if(!t.defaultPrevented&&!this._composing&&this._isEditable()&&t.charCode&&!t.ctrlKey&&!t.metaKey&&t.keyCode!=wijmo_1.Key.Enter){let e=this._tbx,i=String.fromCharCode(t.charCode);if(this._isNumeric(i,!1)){let i=e.maxLength;if(i>-1&&e.value.length>=i&&e.selectionEnd==e.selectionStart){t.preventDefault();return}let s=this._getInputRange(!0),h=e.selectionStart,n=e.selectionEnd;if(h<s[0]&&n<e.value.length){n=Math.max(n,s[0]);wijmo_1.setSelectionRange(e,s[0],n)}if(h>=s[1]){let i=null!=this._fmtPrc?this._fmtPrc:2,s=e.value.indexOf(this._chrDec);s>-1&&h-s>i&&t.preventDefault()}}else t.preventDefault();switch(i){case"-":case this._chrNeg:if(this.clamp(-1)>=0)this.value<0&&this._flipSign();else if(this.value&&e.selectionStart==e.selectionEnd)this._flipSign();else if(this.clamp(-1)<0){e.value=this._chrNeg;wijmo_1.setSelectionRange(e,1)}t.preventDefault();break;case"+":case this._chrPls:this.value<0&&this._flipSign();t.preventDefault();break;case".":case this._chrDec:if(0==this._fmtPrc)t.preventDefault();else{let i=e.value.indexOf(this._chrDec);if(i>-1){e.selectionStart<=i&&i++;wijmo_1.setSelectionRange(e,i);t.preventDefault()}}}if(!t.defaultPrevented&&wijmo_1.isIE()){let s=e.value,h=e.selectionStart,n=e.selectionEnd;if(h==n){e.value=s.substr(0,h)+i+s.substr(n);wijmo_1.setSelectionRange(e,h+1);t.preventDefault();this._input()}}}}_keydown(t){this._delKey=!1;if(t.defaultPrevented||this._composing)return;var e=wijmo_1.hasClass(this._tbx,"wj-grid-ime");if(e&&t.keyCode!=wijmo_1.Key.Back&&t.keyCode!=wijmo_1.Key.Delete)return;let i=this._tbx,s=i.value,h=i.selectionStart,n=i.selectionEnd;switch(t.keyCode){case 65:if(t.ctrlKey){setTimeout(()=>{this.selectAll()});t.preventDefault()}break;case wijmo_1.Key.Up:case wijmo_1.Key.Down:if(this.step&&this._isEditable()){this._increment(this.step*(t.keyCode==wijmo_1.Key.Up?1:-1));setTimeout(()=>{this.selectAll()});t.preventDefault()}break;case wijmo_1.Key.Back:this._delKey=!0;if(n-h<2&&this._isEditable()){let e=s[n-1];if(e==this._chrDec||e==this._chrPct||e==this._chrTho||")"==e){setTimeout(()=>{n=e==this._chrPct?this._getInputRange(!0)[1]:n-1;wijmo_1.setSelectionRange(i,n)});t.preventDefault()}}break;case wijmo_1.Key.Delete:this._delKey=!0;if(n-h<2&&this._isEditable())if("0"==s&&1==h)wijmo_1.setSelectionRange(i,0);else{let e=s[h];if(e==this._chrDec||e==this._chrPct){setTimeout(()=>{wijmo_1.setSelectionRange(i,h+1)});t.preventDefault()}}break;case wijmo_1.Key.Escape:this.value=this._oldValue;this.selectAll()}e&&this._delKey&&this._isEditable()&&this._setText(null,!1,!0)}_input(){this._composing?this._fromKb=!0:setTimeout(()=>{let t=this._tbx,e=t.value,i=e.indexOf(this._chrDec),s=t.selectionStart,h=this._getSelStartDigits();"p"==this._fmtSpc&&e.length&&e.indexOf(this._chrPct)<0&&(e+=this._chrPct);this._setText(e,this._fromKb);this._fromKb=!0;if(this.containsFocus()){let n=t.value,o=n.indexOf(this._chrDec),l=this._getInputRange(!0);if(e==this._chrNeg+this._chrDec&&o>-1){wijmo_1.setSelectionRange(t,o+1);return}if(e[0]==this._chrNeg&&n[0]!=this._chrNeg){1==n.length?wijmo_1.setSelectionRange(t,1):this._setSelStartDigits(h);return}e?e==this._chrDec&&o>-1?s=o+1:s<=i&&o>-1||i<0&&o<0?s+=n.length-e.length:i<0&&o>-1&&(s=o):s=o>-1?o:l[1];s=wijmo_1.clamp(s,l[0],l[1]);wijmo_1.setSelectionRange(t,s)}})}_clickSpinner(t){if(!t.defaultPrevented&&this._isEditable()&&this.step){this._increment(this.step*(wijmo_1.contains(this._btnUp,t.target)?1:-1));if(!this.isTouching){wijmo_1.Control.sharedState.InvalidScroll=wijmo_1.isEdge();setTimeout(()=>this.selectAll())}}}_updateAria(){let t=this.hostElement;if(t){wijmo_1.setAttribute(t,"aria-valuemin",this.min);wijmo_1.setAttribute(t,"aria-valuemax",this.max);wijmo_1.setAttribute(t,"aria-valuenow",this.value);wijmo_1.enable(this._btnDn,null==this.min||this.value>this.min);wijmo_1.enable(this._btnUp,null==this.max||this.value<this.max)}}}InputNumber.controlTemplate='<div class="wj-template"><div class="wj-input"><div class="wj-input-group"><span wj-part="btn-dec" class="wj-input-group-btn" tabindex="-1"><button class="wj-btn wj-btn-default" tabindex="-1">-</button></span><input type="tel" wj-part="input" class="wj-form-control wj-numeric"/><span wj-part="btn-inc" class="wj-input-group-btn" tabindex="-1"><button class="wj-btn wj-btn-default" tabindex="-1">+</button></span></div></div></div>';exports.InputNumber=InputNumber;class InputMask extends wijmo_1.Control{constructor(t,e){super(t);this._fullEdit=!1;this.valueChanged=new wijmo_1.Event;let i=this.getTemplate();this.applyTemplate("wj-control wj-content wj-inputmask",i,{_tbx:"input"},"input");if("INPUT"==this._orgTag){let t=this._tbx.getAttribute("value");t&&(this.value=t)}this._msk=new wijmo_1._MaskProvider(this._tbx);this.isRequired=!0;this.initialize(e);this.addEventListener(this._tbx,"input",()=>{this.onValueChanged()});this.addEventListener(this._tbx,"blur",this._commitText.bind(this));this.addEventListener(this._tbx,"keydown",t=>{t.keyCode==wijmo_1.Key.Enter&&this._commitText()})}get inputElement(){return this._tbx}get inputType(){return this._tbx.type}set inputType(t){this._tbx.type=wijmo_1.asString(t)}get value(){return this._tbx.value}set value(t){if(t!=this.value){this._tbx.value=wijmo_1.asString(t);t=this._msk._applyMask();this._tbx.value=t;this.onValueChanged()}}get rawValue(){return this._msk.getRawValue()}set rawValue(t){t!=this.rawValue&&(this.value=wijmo_1.asString(t))}get mask(){return this._msk.mask||""}set mask(t){let e=this.value;this._msk.mask=wijmo_1.asString(t);this.value!=e&&this.onValueChanged()}get promptChar(){return this._msk.promptChar}set promptChar(t){let e=this.value;this._msk.promptChar=t;this.value!=e&&this.onValueChanged()}get overwriteMode(){return this._msk.overwriteMode}set overwriteMode(t){this._msk.overwriteMode=wijmo_1.asBoolean(t)}get placeholder(){return this._tbx.placeholder}set placeholder(t){this._tbx.placeholder=t}get maskFull(){return this._msk.maskFull}get isRequired(){return this._tbx.required}set isRequired(t){this._tbx.required=wijmo_1.asBoolean(t)}get isReadOnly(){return this._tbx.readOnly}set isReadOnly(t){this._tbx.readOnly=wijmo_1.asBoolean(t);wijmo_1.toggleClass(this.hostElement,"wj-state-readonly",this.isReadOnly)}selectAll(){let t=this._msk.getMaskRange();wijmo_1.setSelectionRange(this._tbx,t[0],t[1]+1)}onValueChanged(t){if(this.value!=this._oldValue){this._oldValue=this.value;this.valueChanged.raise(this,t)}this._updateState()}_commitText(){(this.rawValue||this.isRequired)&&(this.maskFull||this.onInvalidInput(new wijmo_1.CancelEventArgs));this._updateState()}dispose(){this._msk.input=null;super.dispose()}refresh(t=!0){super.refresh(t);this.hostElement&&this._msk.refresh()}_isGridImeEnabled(){const t=this._tbx.closest(".wj-flexgrid");return!(!t||!t["$WJ-CTRL"]._imeHdl)}onGotFocus(t){super.onGotFocus(t);this._isGridImeEnabled()&&!this._fullEdit||this.selectAll()}}InputMask.controlTemplate='<div class="wj-input"><div class="wj-input-group"><input wj-part="input" class="wj-form-control"/></div></div>';exports.InputMask=InputMask;class ColorPicker extends wijmo_1.Control{constructor(t,e){super(t);this._hsb=[.5,1,1];this._alpha=1;this.valueChanged=new wijmo_1.Event;let i=this.getTemplate();this.applyTemplate("wj-control wj-content wj-colorpicker",i,{_eSB:"div-sb",_eHue:"div-hue",_eAlpha:"div-alpha",_ePreview:"div-pv",_ePal:"div-pal",_eText:"div-text"});this._palette="#FFF,#000,#F00,#FFC000,#FFFF00,#92D050,#00B050,#00B0F0,#0070C0,#7030A0".split(",");this._updatePalette();this._eHue.style.backgroundImage="url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAD4CAIAAACi6hsPAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuM4zml1AAAAGvSURBVDhPXdBPaM9xHMfxz4pWaxcmtoOhpdXSVpiyHWxqmVpDjaU5rK34XfypjTJ/p+ZPay6jhsOsRrKwaJElf9IQq03WIkv4FeMwMq221tfje1ByeFzfvd7PEKWGEKWTQRZLySWfVRRTQjmVbKWGOhLsZT+HaeY0bbTTQSfdXOcWffTzmAFeMcwoYyT5ygS/mA5hNgphip98J8kHRnnNSwZ4yH1uc4OrdHGR87RximYO0cgedlLLdqqoYAPrWMtKVrCcJSxiPmnMJUQp/Bsyk2xyyKOAQooopYwKtlDNDur5G7SBJo7RQiv/B+2hl3s84CkvGGKEOOYnxolj/mYmhBmDJ5ngCx95xxsGecYj4pB3iENeoZMO2mmlhaMcpIE4ZII6aqhmM3HMMkooopB88sghm0wySCeVlCjMCVFIYx4LWUwOeRSwhmLWU84mqqihll3sppEmjnOSs5zjEl1c4yZ99POE5wwxwns+840fTDFLFKaZZIJxkozxlmEGGSC+GF++Sy89dHOZC8Rr4lVnOMERDrCPBPXEX22jko2UEn+/mnxyWUYWC0gnNUQh/AEc0HJs6cex0gAAAABJRU5ErkJggg==)";this._eHue.style.backgroundSize="contain";if(navigator.appVersion.indexOf("MSIE 9")>-1){this._eSB.children[0].style.filter="progid:DXImageTransform.Microsoft.gradient(startColorstr=#ffffffff,endColorstr=#00ffffff,GradientType=1)";this._eSB.children[1].style.filter="progid:DXImageTransform.Microsoft.gradient(startColorstr=#00000000,endColorstr=#ff000000,GradientType=0)"}i=ColorPicker._tplCursor;this._cSB=wijmo_1.createElement(i);this._cHue=wijmo_1.createElement(i);this._cHue.style.width="100%";this._cAlpha=wijmo_1.createElement(i);this._cAlpha.style.height="100%";this._eSB.appendChild(this._cSB);this._eHue.appendChild(this._cHue);this._eAlpha.appendChild(this._cAlpha);let s=this.addEventListener.bind(this),h=this.removeEventListener.bind(this),n=document;s(this.hostElement,"mousedown",t=>{s(n,"mousemove",mouseMove);s(n,"mouseup",mouseUp);this._mouseDown(t)});s(this.hostElement,"touchstart",t=>{s(n,"touchmove",mouseMove);s(n,"touchend",mouseUp);this._mouseDown(t)});let mouseMove=t=>{this._mouseMove(t)},mouseUp=t=>{h(n,"mousemove",mouseMove);h(n,"mouseup",mouseUp);h(n,"touchmove",mouseMove);h(n,"touchend",mouseUp);this._mouseUp(t)};s(this.hostElement,"click",t=>{let e=t.target;if(e&&"DIV"==e.tagName&&wijmo_1.contains(this._ePal,e)){let t=e.style.backgroundColor;t&&(this.value=new wijmo_1.Color(t).toString())}});this.value="#ffffff";this.initialize(e);this._updatePanels()}get showAlphaChannel(){return"none"!=this._eAlpha.parentElement.style.display}set showAlphaChannel(t){this._eAlpha.parentElement.style.display=wijmo_1.asBoolean(t)?"":"none"}get showColorString(){return"none"!=this._eText.style.display}set showColorString(t){this._eText.style.display=wijmo_1.asBoolean(t)?"":"none"}get value(){return this._value}set value(t){if(t!=this.value){t=(t=wijmo_1.asString(t)).trim();let e=wijmo_1.Color.fromString(t);if(e){this._value=t;this._eText.innerText=t;let i=e.getHsb();if(this._hsb[0]!=i[0]||this._hsb[1]!=i[1]||this._hsb[2]!=i[2]||this._alpha!=e.a){if(0==i[2]){i[0]=this._hsb[0];i[1]=this._hsb[1]}else 0==i[1]&&(i[0]=this._hsb[0]);this._hsb=i;this._alpha=e.a;this._updatePanels();this.onValueChanged()}}}}get palette(){return this._palette}set palette(t){if((t=(t=wijmo_1.asArray(t)).slice(0,10)).every(t=>null!=wijmo_1.Color.fromString(t))){this._palette=t;this._updatePalette()}}onValueChanged(t){this._updatePanels();this.valueChanged.raise(this,t)}_mouseDown(t){this._htDown=this._getTargetPanel(t);if(this._htDown){t.preventDefault();this.focus();this._mouseMove(t)}}_mouseMove(t){var e=t.touches?t.touches[0]:t,i=this._htDown;if(i){let t=i.getBoundingClientRect(),s=this._hsb;if(i==this._eHue)s[0]=wijmo_1.clamp((e.clientY-t.top)/t.height,0,.99);else if(i==this._eSB){s[1]=wijmo_1.clamp((e.clientX-t.left)/t.width,0,1);s[2]=wijmo_1.clamp(1-(e.clientY-t.top)/t.height,0,1)}else i==this._eAlpha&&(this._alpha=wijmo_1.clamp((e.clientX-t.left)/t.width,0,1));this._updateColor()}}_mouseUp(t){this._htDown=null}_updateColor(){let t=wijmo_1.Color.fromHsb(this._hsb[0],this._hsb[1],this._hsb[2],this._alpha);this.value=t.toString();this._updatePanels()}_updatePalette(){let t=new wijmo_1.Color("#fff"),e=new wijmo_1.Color("#000");this._ePal.innerHTML="";for(let i=0;i<this._palette.length;i++){let s=wijmo_1.createElement('<div style="float:left;width:10%;box-sizing:border-box;padding:1px">'),h=new wijmo_1.Color(this._palette[i]),n=h.getHsb();s.appendChild(this._makePalEntry(h,4));for(let i=0;i<5;i++){if(0==n[1]){let s=.1*i+(n[2]>.5?.05:.55);h=wijmo_1.Color.interpolate(t,e,s)}else h=wijmo_1.Color.fromHsb(n[0],.1+.2*i,1-.1*i);s.appendChild(this._makePalEntry(h,0))}this._ePal.appendChild(s)}}_makePalEntry(t,e){let i=document.createElement("div");wijmo_1.setCss(i,{cursor:"pointer",backgroundColor:t.toString(),marginBottom:e||""});i.innerHTML=" ";return i}_updatePanels(){let t=wijmo_1.Color.fromHsb(this._hsb[0],1,1,1),e=wijmo_1.Color.fromHsb(this._hsb[0],this._hsb[1],this._hsb[2],1);this._eSB.style.backgroundColor=t.toString();this._eAlpha.style.background="linear-gradient(to right, transparent 0%, "+e.toString()+" 100%)";navigator.appVersion.indexOf("MSIE 9")>-1&&(this._eAlpha.style.filter="progid:DXImageTransform.Microsoft.gradient(startColorstr=#00000000,endColorstr="+e.toString()+", GradientType = 1)");this._ePreview.style.backgroundColor=this.value;this._cHue.style.top=(100*this._hsb[0]).toFixed(0)+"%";this._cSB.style.left=(100*this._hsb[1]).toFixed(0)+"%";this._cSB.style.top=(100-100*this._hsb[2]).toFixed(0)+"%";this._cAlpha.style.left=(100*this._alpha).toFixed(0)+"%"}_getTargetPanel(t){let e=t.target;return wijmo_1.contains(this._eSB,e)?this._eSB:wijmo_1.contains(this._eHue,e)?this._eHue:wijmo_1.contains(this._eAlpha,e)?this._eAlpha:null}}ColorPicker.controlTemplate='<div style="position:relative;width:100%;height:100%"><div style="float:left;width:50%;height:100%;box-sizing:border-box;padding:2px"><div wj-part="div-pal"><div style="float:left;width:10%;box-sizing:border-box;padding:2px"><div style="background-color:black;width:100%"> </div><div style="height:6px"></div></div></div><div wj-part="div-text" style="position:absolute;bottom:0px;display:none"></div></div><div style="float:left;width:50%;height:100%;box-sizing:border-box;padding:2px"><div wj-part="div-sb" class="wj-colorbox" style="float:left;width:89%;height:89%"><div style="position:absolute;width:100%;height:100%;background:linear-gradient(to right, white 0%,transparent 100%)"></div><div style="position:absolute;width:100%;height:100%;background:linear-gradient(to top, black 0%,transparent 100%)"></div></div><div style="float:left;width:1%;height:89%"></div><div style="float:left;width:10%;height:89%"><div wj-part="div-hue" class="wj-colorbox"></div></div><div style="float:left;width:89%;height:1%"></div><div style="float:left;width:89%;height:10%"><div style="width:100%;height:100%;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAIAAABLbSncAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAYdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuM4zml1AAAAAcSURBVBhXY/iPBBYgAWpKQGkwgMqDAdUk/v8HAM7Mm6GatDUYAAAAAElFTkSuQmCC)"><div wj-part="div-alpha" class="wj-colorbox"></div></div></div><div style="float:left;width:1%;height:10%"></div><div style="float:left;width:10%;height:10%"><div wj-part="div-pv" class="wj-colorbox" style="position:static"></div></div></div></div>';ColorPicker._tplCursor='<div style="position:absolute;left:50%;top:50%;width:7px;height:7px;transform:translate(-50%,-50%);border:2px solid #f0f0f0;border-radius:50px;box-shadow:0px 0px 4px 2px #0f0f0f"></div>';exports.ColorPicker=ColorPicker;class CollectionViewNavigator extends wijmo_1.Control{constructor(t,e){super(t);this._view=null;this._byPage=!1;this._fmt="{current:n0} / {count:n0}";let i=this.getTemplate();this.applyTemplate("wj-control wj-content wj-pager wj-collectionview-navigator",i,{_btnFirst:"btn-first",_btnPrev:"btn-prev",_txtCurr:"txt-curr",_btnNext:"btn-next",_btnLast:"btn-last"},"input");this._rptNext=new wijmo_1._ClickRepeater(this._btnNext.querySelector("button"));this._rptPrev=new wijmo_1._ClickRepeater(this._btnPrev.querySelector("button"));this.addEventListener(this.hostElement,"click",this._click.bind(this));this.initialize(e);this._update()}get cv(){return this._view}set cv(t){if(t!=this._view){let e=this._view;if(e){e.collectionChanged.removeHandler(this._collectionChanged);e.currentChanged.removeHandler(this._currentChanged)}e=this._view=wijmo_1.asType(t,"ICollectionView",!0);this._update();if(e){e.collectionChanged.addHandler(this._collectionChanged,this);e.currentChanged.addHandler(this._currentChanged,this)}}}get byPage(){return this._byPage}set byPage(t){if(t!=this._byPage){this._byPage=wijmo_1.asBoolean(t);this._update()}}get headerFormat(){return this._fmt}set headerFormat(t){if(t!=this._fmt){this._fmt=wijmo_1.asString(t);this._update()}}get repeatButtons(){return!this._rptNext.disabled}set repeatButtons(t){this._rptNext.disabled=this._rptPrev.disabled=!wijmo_1.asBoolean(t)}_update(){let t=this._view,e=this._byPage,i=t?e?t.pageIndex:t.currentPosition:0,s=t?e?t.pageCount:t.itemCount:0;wijmo_1.enable(this._btnFirst,t&&i>0);wijmo_1.enable(this._btnPrev,t&&i>0);wijmo_1.enable(this._txtCurr,null!=t);wijmo_1.enable(this._btnNext,t&&i<s-1);wijmo_1.enable(this._btnLast,t&&i<s-1);this._txtCurr.value=wijmo_1.format(this._fmt,{current:t?i+1:0,count:t?s:0,currentItem:t?t.currentPosition+1:0,itemCount:t?t.itemCount:0,currentPage:t?t.pageIndex+1:0,pageCount:t?t.pageCount:0})}_currentChanged(){this._update()}_collectionChanged(){this._update()}_click(t){let e=t.target,i=this._view,s=this._byPage;if(i){wijmo_1.contains(this._btnFirst,e)?s?i.moveToFirstPage():i.moveCurrentToFirst():wijmo_1.contains(this._btnPrev,e)?s?i.moveToPreviousPage():i.moveCurrentToPrevious():wijmo_1.contains(this._btnNext,e)?s?i.moveToNextPage():i.moveCurrentToNext():wijmo_1.contains(this._btnLast,e)&&(s?i.moveToLastPage():i.moveCurrentToLast());t.preventDefault()}}}CollectionViewNavigator.controlTemplate='<div class="wj-input-group"><span wj-part="btn-first" class="wj-input-group-btn"><button class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-step-backward"></span></button></span><span wj-part="btn-prev" class="wj-input-group-btn"> <button class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-left"></span> </button></span><input wj-part="txt-curr" class="wj-form-control" readonly><span wj-part="btn-next" class="wj-input-group-btn"><button class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-right"></span></button></span><span wj-part="btn-last" class="wj-input-group-btn"><button class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-step-forward"></span></button></span></div>';exports.CollectionViewNavigator=CollectionViewNavigator;class ListBox extends wijmo_1.Control{constructor(t,e){super(t,null,!0);this._cv=null;this._itemFormatter=null;this._pathDisplay=new wijmo_1.Binding("");this._pathValue=new wijmo_1.Binding("");this._pathChecked=new wijmo_1.Binding("");this._html=!1;this._shGroups=!1;this._checkedItems=[];this._itemRole="option";this._caseSensitive=!1;this._addMode=!1;this._vThreshold=ListBox._VTHRESH;this._isVirtual=!1;this._children=[];this._clientHeight=-1;this._itemHeight=30;this._itemsAbove=-1;this._itemsBelow=-1;this._eSizer=document.createElement("div");this._ePadTop=document.createElement("div");this._ePadBot=document.createElement("div");this._checking=!1;this._ignoredItemChangedEvents=!1;this._search="";this._fmtItemHandlers=0;this._itemCount=0;this._oldSel=null;this._container=null;this._oldSelectedIndex=-1;this.selectedIndexChanged=new wijmo_1.Event;this.itemsChanged=new wijmo_1.Event;this.loadingItems=new wijmo_1.Event;this.loadedItems=new wijmo_1.Event;this.itemChecked=new wijmo_1.Event;this.checkedItemsChanged=new wijmo_1.Event;this.formatItem=new wijmo_1.Event(()=>{this.invalidate()});this.applyTemplate("wj-control wj-content wj-listbox",null,null);let i=this.hostElement;wijmo_1.setAttribute(i,"role","listbox",!0);"SELECT"==this._orgTag&&this._initFromSelect(this.hostElement);this.addEventListener(i,"click",this._click.bind(this));this.addEventListener(i,"keydown",this._keydown.bind(this));this.addEventListener(i,"keypress",this._keypress.bind(this));this.addEventListener(i,"wheel",t=>{if(i.scrollHeight>i.offsetHeight&&(t.deltaY<0&&0==i.scrollTop||t.deltaY>0&&i.scrollTop+i.offsetHeight>=i.scrollHeight)){t.preventDefault();t.stopPropagation();t.stopImmediatePropagation()}});[this._eSizer,this._ePadTop,this._ePadBot].forEach(t=>{t.tabIndex=-1;wijmo_1.setAttribute(t,"aria-hidden",!0);wijmo_1.setCss(t,{pointerEvents:"none",opacity:"0"})});this.initialize(e);this._updateViewRange();this.hostElement.addEventListener("scroll",t=>{this._updateViewRange()})}get itemsSource(){return this._items}set itemsSource(t){if(this._items!=t){if(this._cv){this._cv.currentChanged.removeHandler(this._cvCurrentChanged,this);this._cv.collectionChanged.removeHandler(this._cvCollectionChanged,this);this._cv=null}this._items=t;this._cv=wijmo_1.asCollectionView(t);if(null!=this._cv){this._cv.currentChanged.addHandler(this._cvCurrentChanged,this);this._cv.collectionChanged.addHandler(this._cvCollectionChanged,this)}this._populateList();this.onItemsChanged();this.onSelectedIndexChanged()}}get collectionView(){return this._cv}get virtualizationThreshold(){return this._vThreshold}set virtualizationThreshold(t){if(t!=this._vThreshold){let e=this._getVirtual();this._vThreshold=wijmo_1.asNumber(t,!1,!0);e!=this._getVirtual()&&this._populateList()}}get showGroups(){return this._shGroups}set showGroups(t){if(t!=this._shGroups){this._shGroups=wijmo_1.asBoolean(t);this._populateList()}}get isContentHtml(){return this._html}set isContentHtml(t){if(t!=this._html){this._html=wijmo_1.asBoolean(t);this._populateList()}}get itemFormatter(){return this._itemFormatter}set itemFormatter(t){if(t!=this._itemFormatter){this._itemFormatter=wijmo_1.asFunction(t);this._populateList()}}get displayMemberPath(){return this._pathDisplay.path}set displayMemberPath(t){if(t!=this.displayMemberPath){this._pathDisplay.path=wijmo_1.asString(t);this._populateList()}}get selectedValuePath(){return this._pathValue.path}set selectedValuePath(t){this._pathValue.path=wijmo_1.asString(t)}get checkedMemberPath(){return this._pathChecked.path}set checkedMemberPath(t){if(t!=this.checkedMemberPath){this._pathChecked.path=wijmo_1.asString(t);this._populateList()}}get caseSensitiveSearch(){return this._caseSensitive}set caseSensitiveSearch(t){this._caseSensitive=wijmo_1.asBoolean(t)}get itemRole(){return this._itemRole}set itemRole(t){if(t!=this.itemRole){this._itemRole=wijmo_1.asString(t);this._populateList()}}getDisplayValue(t){let e=null;if(t>-1&&wijmo_1.hasItems(this._cv)){e=this._cv.items[t];this.displayMemberPath&&(e=this._pathDisplay.getValue(e))}let i=null!=e?e.toString():"";this._itemFormatter&&(i=this._itemFormatter(t,i));return i}getDisplayText(t){let e=this._getChild(t);return null!=e?e.textContent:""}isItemEnabled(t){var e=this._getChild(t);return null!=e&&!e.hasAttribute("disabled")&&!wijmo_1.hasClass(e,"wj-state-disabled")&&!wijmo_1.hasClass(e,"wj-separator")}get selectedIndex(){return this._cv?this._cv.currentPosition:-1}set selectedIndex(t){if(this._cv){this._oldSelectedIndex=this._cv.currentPosition;this._cv.moveCurrentToPosition(wijmo_1.asNumber(t))}}get selectedItem(){return this._cv?this._cv.currentItem:null}set selectedItem(t){this._cv&&this._cv.moveCurrentTo(t)}get selectedValue(){let t=this.selectedItem;t&&this.selectedValuePath&&(t=this._pathValue.getValue(t));return t}set selectedValue(t){let e=this._cv,i=e?e.items:null,s=this.selectedValuePath,h=-1;if(i){for(let e=0;e<i.length;e++){let n=i[e],o=s?this._pathValue.getValue(n):n;if(o===t||wijmo_1.DateTime.equals(o,t)){h=e;break}if(this.isContentHtml&&wijmo_1.isString(o)&&o.indexOf("<")>-1&&wijmo_1.toPlainText(o)===t){h=e;break}}this.selectedIndex=h}}get maxHeight(){let t=this.hostElement,e=t?parseFloat(t.style.maxHeight):null;return isNaN(e)?null:e}set maxHeight(t){let e=this.hostElement;if(e){t=wijmo_1.asNumber(t,!0);e.style.maxHeight=null==t?"":t+"px"}}showSelection(t=this.containsFocus()){let e=this.hostElement,i=this._children,s=this._getSelectedElement(!1),h=new wijmo_1.Rect(0,0,0,0);if(s!=this._oldSel){this._updateItemAttributes(s,!0);this._updateItemAttributes(this._oldSel,!1);this._oldSel=s}s instanceof HTMLElement?h=this._getBoundingClientRect(s):this._children.length>0&&(h=this._getBoundingClientRect(this._getChild(0)));let n=this._getBoundingClientRect(e),o=0;if(this._shGroups){o=this._itemHeight;if(!this._isVirtual){let t=i[0];t.offsetHeight&&wijmo_1.hasClass(t,"wj-header")&&(o=t.offsetHeight)}}h.bottom>n.bottom?e.scrollTop+=h.bottom-n.bottom:h.top<n.top+o&&(e.scrollTop-=n.top+o-h.top);this._updateViewRange();s=this._getSelectedElement(!0);if(t){(s&&!wijmo_1.contains(s,wijmo_1.getActiveElement())?s:e).focus()}e.tabIndex=s?-1:this._orgTabIndex}loadList(){this._populateList()}getItemChecked(t){let e=this._cv.items[t],i=this._pathChecked;if(wijmo_1.isObject(e)&&i.path)return i.getValue(e);let s=this._getCheckbox(t);return!!s&&s.checked}setItemChecked(t,e){this._setItemChecked(t,e,!0)}toggleItemChecked(t){this.setItemChecked(t,!this.getItemChecked(t))}get checkedItems(){return this._checkedItems}set checkedItems(t){t=Array.from(new Set(t));let e=wijmo_1.asArray(t,!1);if(!this._arrayEquals(e,this._checkedItems)){this._updateCheckedList(e);if(!this._arrayEquals(e,this._checkedItems)){this._checkedItems=e;this.onCheckedItemsChanged()}}}indexOf(t){return(t=wijmo_1.closest(t,".wj-listbox-item"))?t[ListBox._DIDX_KEY]:-1}onSelectedIndexChanged(t){this.selectedIndexChanged.raise(this,t)}onItemsChanged(t){this.itemsChanged.raise(this,t)}onLoadingItems(t){this.loadingItems.raise(this,t)}onLoadedItems(t){this.loadedItems.raise(this,t)}onItemChecked(t){this.itemChecked.raise(this,t)}onCheckedItemsChanged(t){this.checkedItemsChanged.raise(this,t)}onFormatItem(t){this.formatItem.raise(this,t)}refresh(t=!0){super.refresh(t);if(this.hostElement){let t=this._cv?this._cv.items.length:0,e=this.formatItem.handlerCount;if(t!=this._itemCount||e!=this._fmtItemHandlers){this._fmtItemHandlers=e;this._populateList()}else this._updateViewRange()}}_updateCheckedList(t){let e=this._cv,i=this._pathChecked,s=new Map;if(i&&e){let h=e.sourceCollection;if(h&&h.length){wijmo_1.isObject(h[0])||(i=null);t.forEach(t=>s.set(t,!0));this._checking=!0;let e=[];h.forEach(t=>{let h=s.has(t);h&&e.push(t);i&&i.setValue(t,h)});this._checking=!1;t=e}e.items.forEach((t,e)=>{this._setItemChecked(e,s.has(t),!1)})}}_getBoundingClientRect(t){if(!t.offsetHeight){let e=this.indexOf(t),i=this.hostElement;if(e>-1&&i){e=this._getElementIndex(e);let t=i.getBoundingClientRect();return new wijmo_1.Rect(0,t.top-i.scrollTop+e*this._itemHeight,t.width,this._itemHeight)}}return wijmo_1.Rect.fromBoundingRect(t.getBoundingClientRect())}_updateItemAttributes(t,e){if(t){let i=this.checkedMemberPath?this._getCheckbox(this.indexOf(t)):null,s=i?i.checked:null;wijmo_1.toggleClass(t,"wj-state-selected",e);wijmo_1.setAttribute(t,"aria-selected",this._getAriaSelected(e,s));t.tabIndex=e?this._orgTabIndex:-1}}_getCheckedItems(){let t=this._cv,e=this._pathChecked,i=[];t&&e&&e.path&&(i=t.sourceCollection.filter((i,s)=>{if(t.filter&&!t.filter(i))return!!this._addMode&&e.getValue(i);if(wijmo_1.isObject(i))return e.getValue(i);{let e=t.items[s]==i?s:t.items.indexOf(i);return this.getItemChecked(e)}}));return i}_arrayEquals(t,e){if(t==e)return!0;if(!t||!e||t.length!=e.length)return!1;for(let i=0;i<t.length;i++)if(t[i]!==e[i])return!1;return!0}_getChild(t){t=this._getElementIndex(t);return this._children[t]}_getElementIndex(t){if(this._shGroups){let e=this._children;for(let i=0;i<=t&&i<e.length;i++){let s=e[i];wijmo_1.hasClass(s,"wj-header")&&t++}}return t}_setItemChecked(t,e,i=!0){let s=this._cv.items[t],h=this._pathChecked,n=!1,o=this.selectedIndex,l=this._checking;if(wijmo_1.isObject(s)&&h.path){if(!!h.getValue(s)!=e){let t=wijmo_1.tryCast(this._cv,"IEditableCollectionView");n=!0;this._checking=!0;if(t){t.editItem(s);h.setValue(s,e);t.commitEdit()}else{h.setValue(s,e);t.refresh()}this._checking=l}}else if(i){let t=this._checkedItems.indexOf(s);(e&&t<0||!e&&t>=0)&&(n=!0)}let a=this._getCheckbox(t);if(a){a.checked=e;let t=wijmo_1.closest(a,".wj-listbox-item");if(t){wijmo_1.toggleClass(t,"wj-state-checked",e);wijmo_1.setAttribute(t,"aria-selected",!!e||null)}}if(i){if(n){this._checkedItems=this._checkedItemsUpdate(s,e);this.onItemChecked();this.onCheckedItemsChanged()}o!=this.selectedIndex&&this.onSelectedIndexChanged()}return n}_checkedItemsUpdate(t,e){let i=this._cv.sourceCollection,s=this._checkedItems,h=0;if(e){for(var n=0;n<i.length;n++){let e=i[n];if(e===s[h]&&h<s.length)h++;else if(e===t)return s.slice(0,h).concat([t]).concat(s.slice(h))}return s}{let e=s.indexOf(t);return s.slice(0,e).concat(s.slice(e+1))}}_cvCollectionChanged(){if(!this._checking){this._populateList();this.onItemsChanged()}}_cvCurrentChanged(){if(!this._checking){this.showSelection();this._ignoredItemChangedEvents||this.onSelectedIndexChanged()}}_populateList(){let t=this.hostElement,e=this._cv;this._itemCount=e?e.items.length:0;this._isVirtual=this._getVirtual();this._oldSel=null;this._itemsAbove=-1;this._itemsBelow=-1;if(t){let i,s=this.containsFocus();this.onLoadingItems();let h=this._children=[];t.textContent="";if(e){let s,n=0,o=[];if(this._shGroups&&e.groups&&e.groups.length){i={};for(let t=0;t<e.groups.length;t++){let h=e.groups[t];i[n]=h;s=this._createHeaderItem(h);o.push(s);for(let t=0;t<h.items.length;t++,n++){s=this._createItem(n);o.push(s)}}}else for(let t=0;t<e.items.length;t++,n++){s=this._createItem(n);o.push(s)}let l=this._isVirtual?document.createElement("div"):t,a=0;l.innerHTML=o.join("");for(let t=0;t<l.children.length;t++){let i=l.children[t];a==e.currentPosition&&(this._oldSel=i);i[ListBox._DIDX_KEY]=i.className.indexOf("wj-header")<0?a++:-1;h.push(i)}}if(this.formatItem.hasHandlers&&e){let t=0,s=e.items,n=new FormatItemEventArgs(0,null,null);for(let e=0;e<h.length;e++){n._item=h[e];if(this._shGroups&&wijmo_1.hasClass(n._item,"wj-header")){n._index=-1;n._data=i[t]}else{n._index=t;n._data=s[t++]}this.onFormatItem(n)}}if(this._isVirtual){let e=this._getCanvasContext(),i=null,s=0;for(let t=0;t<h.length;t++){let n=h[t],o=e.measureText(n.textContent);if(o.width>s){i=n;s=o.width}}if(i){let e=!1,s=t.style.display,n=t.style.position;if(!t.parentElement){e=!0;(this._container||document.body).appendChild(t);wijmo_1.setCss(t,{display:"",position:"absolute"})}t.appendChild(i);let o=i.style.whiteSpace;i.style.whiteSpace="nowrap";this._ePadTop.style.width=i.offsetWidth+"px";this._itemHeight=i.offsetHeight||this._itemHeight;i.style.whiteSpace=o;this._eSizer.style.height=h.length*this._itemHeight+"px";t.appendChild(this._eSizer);this._clientHeight=t.clientHeight;wijmo_1.removeChild(this._eSizer);if(e){wijmo_1.removeChild(t);wijmo_1.setCss(t,{display:s,position:n})}wijmo_1.removeChild(i)}else this._ePadTop.style.width="";this._updateViewRange()}this.checkedItems=this._getCheckedItems();let n=this._getSelectedElement(!0);if(s){(n||t).focus()}else n&&this.showSelection();t.tabIndex=n?-1:this._orgTabIndex;this.onLoadedItems()}}_getCanvasContext(){let t=document.createElement("canvas").getContext("2d"),e=getComputedStyle(this.hostElement);e.fontSize&&e.fontFamily&&(t.font=e.fontSize+" "+e.fontFamily.split(",")[0]);return t}_getVirtual(){if(this._itemCount<=this._vThreshold)return!1;let t=this.hostElement;if(t){let e=getComputedStyle(t);if(parseInt(e.columnCount)>1||e.display.indexOf("flex")>-1||e.display.indexOf("grid")>-1)return!1}return!0}_getMaxSupportedCssHeight(){let t=265e5;wijmo_1.isIE()?t=15e5:wijmo_1.isFirefox()&&(t=175e5);return t}_updateViewRange(){let t=this.hostElement,e=this._itemHeight,i=this._children;if(!(t&&t.parentElement&&this._isVirtual&&i))return!1;let s=t.scrollTop;wijmo_1.assert(e*i.length<this._getMaxSupportedCssHeight(),`The number of items (${i.length}) exceeds the maximum number of items (${Math.floor(this._getMaxSupportedCssHeight()/e)}) allowed for this browser.`);let h=Math.max(t.clientHeight,this._clientHeight),n=Math.floor(s/e),o=Math.min(i.length,Math.ceil((s+h)/e)-n),l=Math.max(0,i.length-n-o);if(n==this._itemsAbove&&l==this._itemsBelow)return!1;this._itemsAbove=n;this._itemsBelow=l;let a=document.createDocumentFragment(),r=this.containsFocus();this._ePadTop.style.height=n*e+"px";a.appendChild(this._ePadTop);if(this.showGroups&&!wijmo_1.hasClass(i[n],"wj-header"))for(let t=n;t>=0;t--)if(wijmo_1.hasClass(i[t],"wj-header")){a.appendChild(i[t]);break}for(let t=n;t<=n+o&&t<i.length;t++)a.appendChild(i[t]);this._ePadBot.style.height=l*e+"px";a.appendChild(this._ePadBot);t.textContent="";t.appendChild(a);let d=(n+o+l)*e-t.scrollHeight;this._ePadBot.style.height=this._ePadBot.offsetHeight-d+"px";let _=this._getSelectedElement(!0);if(r){(_||t).focus({preventScroll:!0})}t.tabIndex=_?-1:this._orgTabIndex;return!0}_getSelectedElement(t){let e=this.selectedIndex,i=this._getElementIndex(e),s=i>-1?this._children[i]:null;t&&s&&!s.offsetHeight&&(s=null);return s}_handleResize(){this._updateViewRange()}_createItem(t){let e=this._cv.items[t],i=t==this._cv.currentPosition,s=this.getDisplayValue(t);1!=this._html&&(s=wijmo_1.escapeHtml(s));let h=null;if(this.checkedMemberPath){h=!1;wijmo_1.isObject(e)?h=!!this._pathChecked.getValue(e):this._checkedItems&&(h=this._checkedItems.indexOf(e)>-1);s='<label><input type="checkbox" tabindex="-1"'+(h?" checked":"")+"><span></span> "+s+"</label>"}let n="wj-listbox-item";i&&(n+=" wj-state-selected");h&&(n+=" wj-state-checked");if(this._html){let t=["wj-separator","wj-state-disabled"];if(s.indexOf(t[0])>-1||s.indexOf(t[1])>-1){let e=wijmo_1.createElement(s);t.forEach(t=>{wijmo_1.hasClass(e,t)&&(n+=" "+t)})}}return'<div class="'+n+'" role="'+this.itemRole+'" '+(this._getAriaSelected(i,h)?'aria-selected="true" ':"")+'tabindex="'+(i&&!this.isDisabled?this._orgTabIndex:-1)+'">'+s+"</div>"}_getAriaSelected(t,e){return!!(null!=e?e:t)||null}_createHeaderItem(t){return'<div class="wj-listbox-item wj-header wj-state-disabled" role="presentation" tabindex="-1">'+wijmo_1.escapeHtml(t.name)+"</div>"}_click(t){if(0==t.button&&!t.defaultPrevented){let e=this.indexOf(t.target);if(e>-1){this.selectedIndex=e;if(this.checkedMemberPath){let i=this._getCheckbox(e),s=wijmo_1.closest(i,".wj-listbox-item");if(t.target==i||t.target==s){s.focus({preventScroll:!0});this.setItemChecked(e,i.checked)}}else{wijmo_1.closest(t.target,".wj-listbox-item").focus({preventScroll:!0})}}}}_keydown(t){let e=this.selectedIndex;if(!t.defaultPrevented){if(65==t.keyCode&&(t.ctrlKey||t.metaKey)){let e=this.collectionView;if(this.checkedMemberPath&&wijmo_1.hasItems(e)){this.checkedItems=this.checkedItems.length!=e.items.length?e.items:[];t.preventDefault();return}}if(!(t.ctrlKey||t.shiftKey||t.altKey||t.metaKey))switch(t.keyCode){case wijmo_1.Key.Down:t.preventDefault();this._selectNext();break;case wijmo_1.Key.Up:t.preventDefault();this._selectPrev();break;case wijmo_1.Key.Home:t.preventDefault();this._selectFirst();break;case wijmo_1.Key.End:t.preventDefault();this._selectLast();break;case wijmo_1.Key.PageDown:t.preventDefault();this._selectNextPage();break;case wijmo_1.Key.PageUp:t.preventDefault();this._selectPrevPage();break;case wijmo_1.Key.Space:if(this.checkedMemberPath&&e>-1){let i=this._getCheckbox(e);if(i&&this.isItemEnabled(e)){this.setItemChecked(e,!i.checked);t.preventDefault()}}}}}_keypress(t){if(!t.defaultPrevented&&!(t.target instanceof HTMLInputElement)&&(t.charCode>32||32==t.charCode&&this._search)){t.preventDefault();this._search+=String.fromCharCode(t.charCode);this._toSearch&&clearTimeout(this._toSearch);this._toSearch=setTimeout(()=>{this._toSearch=null;this._search=""},wijmo_1.Control._SEARCH_DELAY);let e=this._findNext();if(e<0&&this._search.length>1){this._search=this._search[this._search.length-1];e=this._findNext()}e>-1&&(this.selectedIndex=e)}}_selectNext(){for(let t=this.selectedIndex+1;t<this._children.length;t++)if(this.isItemEnabled(t)){this.selectedIndex=t;return!0}return!1}_selectPrev(){for(let t=this.selectedIndex-1;t>=0;t--)if(this.isItemEnabled(t)){this.selectedIndex=t;return!0}return!1}_selectFirst(){for(let t=0;t<this._children.length;t++)if(this.isItemEnabled(t)){this.selectedIndex=t;return!0}return!1}_selectLast(){for(let t=this._children.length-1;t>=0;t--)if(this.isItemEnabled(t)){this.selectedIndex=t;return!0}return!1}_selectNextPage(){let t=this.hostElement.offsetHeight,e=this._children,i=this._cv?this._cv.items.length:0,s=0;if(t>0)for(let h=this.selectedIndex+1;h<i;h++){let i=e[h].scrollHeight||this._itemHeight;if(s+i>t&&this.isItemEnabled(h)){this.selectedIndex=h;return!0}s+=i}return this._selectLast()}_selectPrevPage(){let t=this.hostElement.offsetHeight,e=this._children,i=0;if(t>0)for(let s=this.selectedIndex-1;s>0;s--){let h=e[s].scrollHeight||this._itemHeight;if(i+h>t&&this.isItemEnabled(s)){this.selectedIndex=s;return!0}i+=h}return this._selectFirst()}_findNext(){if(this.hostElement){let t=this._children.length,e=this.selectedIndex;(e<0||1==this._search.length)&&e++;let i=this._search,s=this.caseSensitiveSearch;s||(i=i.toLowerCase());for(let h=0;h<t;h++){let n=(e+h)%t;if(this.isItemEnabled(n)){let t=this.getDisplayText(n).trim();s||(t=t.toLowerCase());if(0==t.indexOf(i))return n}}}return-1}_getCheckbox(t){let e=this._children;t=this._getElementIndex(t);return this.hostElement&&t>-1&&t<e.length?e[t].querySelector("input[type=checkbox]"):null}_initFromSelect(t){let e=t.children,i=[],s=-1;for(let h=0;h<e.length;h++){let n=e[h];if("OPTION"==n.tagName){n.hasAttribute("selected")&&(s=i.length);n.innerHTML?i.push({hdr:n.innerHTML,val:n.getAttribute("value"),cmdParam:n.getAttribute("cmd-param")}):i.push({hdr:'<div class="wj-separator"></div>'});t.removeChild(n);h--}}if(i){this.displayMemberPath="hdr";this.selectedValuePath="val";this.itemsSource=i;this.selectedIndex=s}}_setIsDisabled(t){super._setIsDisabled(t);this._updateTabIndex()}_setTabOrder(t){super._setTabOrder(t);this.isDisabled||this._updateTabIndex()}_updateTabIndex(){let t=this.hostElement,e=this._getSelectedElement(!0);if(e){e.tabIndex=this.isDisabled?-1:this._orgTabIndex;t.tabIndex=-1}else t.tabIndex=this.isDisabled?-1:this._orgTabIndex}}ListBox._DIDX_KEY="$WJ-DIDX";ListBox._VTHRESH=Number.MAX_VALUE/2;exports.ListBox=ListBox;class FormatItemEventArgs extends wijmo_1.EventArgs{constructor(t,e,i){super();this._index=wijmo_1.asNumber(t);this._data=e;this._item=wijmo_1.asType(i,HTMLElement,!0)}get index(){return this._index}get data(){return this._data}get item(){return this._item}}exports.FormatItemEventArgs=FormatItemEventArgs;wijmo_1._addCultureInfo("MultiSelectListBox",{filterPlaceholder:"Filter",selectAll:"Select All"});class MultiSelectListBox extends wijmo_1.Control{constructor(t,e){super(t);this._selectAllLabel=null;this._filterPlaceholder=null;this._filterText="";this._checkOnFilter=!0;this._delay=wijmo_1.Control._SEARCH_DELAY;this.checkedItemsChanged=new wijmo_1.Event;this.selectedIndexChanged=new wijmo_1.Event;let i=this.getTemplate();this.applyTemplate("wj-control wj-content wj-multiselectlistbox",i,{_selectAll:"select-all",_filter:"filter",_lbHost:"list-box"});this._selectAll.style.display="none";this._filter.style.display="none";this._lbx=new ListBox(this._lbHost,{checkedMemberPath:MultiSelectListBox._DEF_CHECKED_PATH,loadedItems:()=>this._updateCheckAllCheckbox(),checkedItemsChanged:t=>this.onCheckedItemsChanged(t),selectedIndexChanged:()=>this.onSelectedIndexChanged()});this._cbSelectAll=this._selectAll.querySelector("input[type=checkbox]");this._spSelectAll=this._selectAll.querySelector("label>span");let s=wijmo_1.culture.MultiSelectListBox;wijmo_1.setText(this._spSelectAll,s.selectAll);this._filter.placeholder=s.filterPlaceholder;this.initialize(e);this.addEventListener(this._filter,"input",()=>{if(this._filter.value!=this._filterText){this._filterText=this._filter.value;this._toSearch&&clearTimeout(this._toSearch);this._toSearch=setTimeout(()=>{this._toSearch=null;this._applyFilter()},this.delay)}});this.addEventListener(this._cbSelectAll,"click",t=>{let e=this._lbx.collectionView;wijmo_1.hasItems(e)&&(this.checkedItems=t.target.checked?e.items:[])});this.addEventListener(this.hostElement,"keydown",t=>{let e=this.showFilterInput?this._filter:null,i=this._lbx;if(e&&t.keyCode==wijmo_1.Key.F3){wijmo_1.setSelectionRange(e,0,e.value.length);t.preventDefault()}if(wijmo_1.getActiveElement()==e){let e=!t.altKey;switch(t.keyCode){case wijmo_1.Key.Escape:case wijmo_1.Key.F4:e=!1}e&&t.stopPropagation()}if(!i.containsFocus())switch(t.keyCode){case wijmo_1.Key.Up:case wijmo_1.Key.Down:this._lbx.focus();let e=i.selectedIndex+(t.keyCode==wijmo_1.Key.Up?-1:1);i.selectedIndex=Math.max(0,e);t.preventDefault()}},!0);this.hostElement.tabIndex=-1;this._lbx.tabOrder=this._orgTabIndex}get itemsSource(){return this._lbx.itemsSource}set itemsSource(t){this._lbx.itemsSource=t}get collectionView(){return this._lbx.collectionView}get virtualizationThreshold(){return this._lbx.virtualizationThreshold}set virtualizationThreshold(t){this._lbx.virtualizationThreshold=t}get displayMemberPath(){return this._lbx.displayMemberPath}set displayMemberPath(t){this._lbx.displayMemberPath=t}get isContentHtml(){return this._lbx.isContentHtml}set isContentHtml(t){this._lbx.isContentHtml=t}get caseSensitiveSearch(){return this._lbx.caseSensitiveSearch}set caseSensitiveSearch(t){this._lbx.caseSensitiveSearch=t}get delay(){return this._delay}set delay(t){this._delay=wijmo_1.asNumber(t,!1,!0)}get showGroups(){return this._lbx.showGroups}set showGroups(t){this._lbx.showGroups=t}get checkOnFilter(){return this._checkOnFilter}set checkOnFilter(t){if(t!=this.checkOnFilter){this._checkOnFilter=wijmo_1.asBoolean(t);this.checkedItems=[]}}get selectedIndex(){return this._lbx.selectedIndex}set selectedIndex(t){this._lbx.selectedIndex=t}get listBox(){return this._lbx}get showFilterInput(){return""==this._filter.style.display}set showFilterInput(t){if(t!=this.showFilterInput){this._filter.style.display=wijmo_1.asBoolean(t)?"":"none";if(!this.showFilterInput){this._filter.value="";this._applyFilter()}}}get filterInputPlaceholder(){return this._filterPlaceholder}set filterInputPlaceholder(t){if(t!=this._filterPlaceholder){this._filterPlaceholder=wijmo_1.asString(t);this.refresh()}}get showSelectAllCheckbox(){return""==this._selectAll.style.display}set showSelectAllCheckbox(t){this._selectAll.style.display=wijmo_1.asBoolean(t)?"":"none"}get selectAllLabel(){return this._selectAllLabel}set selectAllLabel(t){if(t!=this._selectAllLabel){this._selectAllLabel=wijmo_1.asString(t);this.refresh()}}get checkedMemberPath(){let t=this.listBox.checkedMemberPath;return t!=MultiSelectListBox._DEF_CHECKED_PATH?t:null}set checkedMemberPath(t){t=wijmo_1.asString(t);this.listBox.checkedMemberPath=t||MultiSelectListBox._DEF_CHECKED_PATH}get checkedItems(){return this.listBox.checkedItems}set checkedItems(t){this.listBox.checkedItems=wijmo_1.asArray(t)}onCheckedItemsChanged(t){this._updateCheckAllCheckbox();this.checkedItemsChanged.raise(this,t);"object"==typeof t._items[0]&&(this.checkedMemberPath||MultiSelectListBox._DEF_CHECKED_PATH)in t._items[0]&&setTimeout(()=>{this._lbx._updateCheckedList(this.checkedItems)},0)}onSelectedIndexChanged(t){this.selectedIndexChanged.raise(this,t)}refresh(t=!0){super.refresh(t);if(this.hostElement){let t=wijmo_1.culture.MultiSelectListBox;this._filter.placeholder=null!=this._filterPlaceholder?this._filterPlaceholder:t.filterPlaceholder;this._spSelectAll&&wijmo_1.setText(this._spSelectAll,null!=this._selectAllLabel?this._selectAllLabel:t.selectAll);this._updateCheckAllCheckbox()}}dispose(){this.listBox.dispose();super.dispose()}_applyFilter(){let t=this._lbx,e=t.collectionView,i=this._filter.value,s=i?new RegExp(wijmo_1.escapeRegExp(i),t.caseSensitiveSearch?"":"i"):null,h=this.displayMemberPath,n=h?new wijmo_1.Binding(h):null,o=this.checkOnFilter?null:this.checkedItems;e.filter=t=>{if(null!=s){if(o&&o.indexOf(t)>-1)return!0;n&&(t=n.getValue(t));this.isContentHtml&&(t=wijmo_1.toPlainText(t));return null!=t&&s.test(t.toString())}return!0};t.selectedIndex=Math.max(0,t.selectedIndex);this._checkOnFilter&&(this.checkedItems=s?e.items:[])}_updateCheckAllCheckbox(){let t=this._lbx.collectionView,e=this._cbSelectAll;if(wijmo_1.hasItems(t)){let i=t.items.length,s=this.checkedItems.length;wijmo_1.setChecked(e,s==i||0!=s&&null);e.disabled=!1}else{wijmo_1.setChecked(e,!1);e.checked=!1;e.disabled=!0}}_setIsDisabled(t){super._setIsDisabled(t);this.hostElement.tabIndex=-1;this.isDisabled?this._lbx.tabOrder=-1:this._lbx.tabOrder=this._orgTabIndex}_setTabOrder(t){this._orgTabIndex=t;this._lbx.tabOrder=t}tryForceClearDelayAndFilter(){if(this._toSearch){let t=this._delay;this._filterText=this._filter.value;this._toSearch&&clearTimeout(this._toSearch);this._toSearch=setTimeout(()=>{this._toSearch=null;this._applyFilter()},0);this._delay=t}}onLostFocus(){this.tryForceClearDelayAndFilter();super.onLostFocus()}}MultiSelectListBox._DEF_CHECKED_PATH="$checked";MultiSelectListBox.controlTemplate='<div class="wj-template wj-listbox"><input wj-part="filter" class="wj-form-control" tabindex="-1"><div wj-part="select-all" class="wj-header wj-select-all wj-listbox-item"><label><input type="checkbox" tabindex="-1"> <span></span></label></div><div wj-part="list-box"/></div>';exports.MultiSelectListBox=MultiSelectListBox;wijmo_1._addCultureInfo("Calendar",{ariaLabels:{calendar:"Calendar",monthView:"Month View",yearView:"Year View",prvMo:"Previous Month",today:"Select Today",nxtMo:"Next Month",prvYr:"Previous Year",currMo:"Current Month",nxtYr:"Next Year"}});var DateSelectionMode,ShowMonthPicker,ClickAction,PopupTrigger,_Edges;!function(t){t[t.None=0]="None";t[t.Day=1]="Day";t[t.Month=2]="Month";t[t.Range=3]="Range"}(DateSelectionMode=exports.DateSelectionMode||(exports.DateSelectionMode={}));!function(t){t[t.None=0]="None";t[t.FirstMonth=1]="FirstMonth";t[t.LastMonth=2]="LastMonth";t[t.FirstAndLastMonths=3]="FirstAndLastMonths";t[t.AllMonths=4]="AllMonths";t[t.Outside=5]="Outside"}(ShowMonthPicker=exports.ShowMonthPicker||(exports.ShowMonthPicker={}));class Calendar extends wijmo_1.Control{constructor(t,e){super(t);this._yrPicker=!0;this._mtPicker=ShowMonthPicker.FirstMonth;this._wksBefore=0;this._wksAfter=0;this._rngMin=0;this._rngMax=0;this._min=null;this._max=null;this._readOnly=!1;this._handleWheel=!0;this._fdw=null;this._selMode=DateSelectionMode.Day;this._tmYrHidden=0;this._fmtYrMo="y";this._fmtYr="yyyy";this._fmtDayHdr="ddd";this._fmtDay="d ";this._fmtMonths="MMM";this.valueChanged=new wijmo_1.Event;this.rangeEndChanged=new wijmo_1.Event;this.rangeChanged=new wijmo_1.Event;this.displayMonthChanged=new wijmo_1.Event;this.formatItem=new wijmo_1.Event(()=>{this.invalidate()});this._value=this._rngEnd=wijmo_1.DateTime.newDate();this._month=this._getMonth(this._value);this._cals=[this];this._createChildren();this._createYearPicker();let i=this.hostElement,s=this.addEventListener.bind(this);s(i,"keydown",this._keydown.bind(this));s(i,"click",this._click.bind(this));this._rptUp=new wijmo_1._ClickRepeater(this._btnPrv);this._rptDn=new wijmo_1._ClickRepeater(this._btnNxt);this.addEventListener(i,"wheel",t=>{if(this.handleWheel&&!t.defaultPrevented&&!this.isReadOnly&&this.containsFocus()){t.deltaY<0?this._btnPrv.click():this._btnNxt.click();t.preventDefault()}});this.initialize(e);this.refresh(!0)}get value(){return this._value}set value(t){if(t!==this._value){this._clearingRangeEnd=!wijmo_1.DateTime.equals(this._value,t);this.rangeEnd=null;this._clearingRangeEnd=!1;t=wijmo_1.asDate(t,!0);t=this._clamp(t);if(this._valid(t)||null==t){this.ensureVisible(t||new Date);if(!wijmo_1.DateTime.equals(this._value,t)){this._value=t;this.invalidate(!1);this.onValueChanged()}}if(!this.value){let t=this.min,e=this.max,i=this.displayMonth;e&&e<i?this.ensureVisible(e):t&&t>i&&this.ensureVisible(t)}}}get rangeEnd(){return this._rngEnd}set rangeEnd(t){t=wijmo_1.asDate(t,!0);if((t=this._clamp(t))&&this._value&&this._rngMode()){t<this._value&&(t=this._value);let e=this._rngMin,i=this._rngMax;if(e&&e>0||i&&i>0){let s=this._value,h=Math.ceil((t.getTime()-s.getTime())/864e5)+1;e&&e>0&&h<e&&(t=wijmo_1.DateTime.addDays(s,e-1));i&&i>0&&h>i&&(t=wijmo_1.DateTime.addDays(s,i-1))}}if((this._valid(t)||null==t)&&!wijmo_1.DateTime.equals(this._rngEnd,t)){this._rngEnd=t;this.ensureVisible(t);this.invalidate(!1);this._clearingRangeEnd||this.onRangeEndChanged()}}get rangeMin(){return this._rngMin}set rangeMin(t){if((t=wijmo_1.asNumber(t,!0,!0))!=this._rngMin){this._rngMin=t;this._syncProp(this,"rangeMin");this._rngMode()&&this._rngEnd&&(this.rangeEnd=this._rngEnd)}}get rangeMax(){return this._rngMax}set rangeMax(t){if((t=wijmo_1.asNumber(t,!0,!0))!=this._rngMax){this._rngMax=t;this._syncProp(this,"rangeMax");this._rngMode()&&this._rngEnd&&(this.rangeEnd=this._rngEnd)}}get min(){return this._min}set min(t){if((t=wijmo_1.asDate(t,!0))!=this.min){this._min=t;this._syncProp(this,"min");this.refresh();!this.value&&t&&t>this.displayMonth&&this.ensureVisible(t)}}get max(){return this._max}set max(t){if((t=wijmo_1.asDate(t,!0))!=this.max){this._max=t;this._syncProp(this,"max");this.refresh();!this.value&&t&&t<this.displayMonth&&this.ensureVisible(t)}}get selectionMode(){return this._selMode}set selectionMode(t){let e=DateSelectionMode;if((t=wijmo_1.asEnum(t,e))!=this._selMode){this._selMode=t;this._mthMode()&&(this.monthView=!1);this._rngEnd=t==e.Range?this._value:null;this.refresh();this._syncProp(this,"selectionMode")}}get isReadOnly(){return this._readOnly}set isReadOnly(t){this._readOnly=wijmo_1.asBoolean(t);wijmo_1.toggleClass(this.hostElement,"wj-state-readonly",this.isReadOnly);this._syncProp(this,"isReadOnly")}get handleWheel(){return this._handleWheel}set handleWheel(t){this._handleWheel=wijmo_1.asBoolean(t);this._syncProp(this,"handleWheel")}get repeatButtons(){return!this._rptUp.disabled}set repeatButtons(t){this._rptUp.disabled=this._rptDn.disabled=!wijmo_1.asBoolean(t);this._syncProp(this,"repeatButtons")}get showYearPicker(){return this._yrPicker}set showYearPicker(t){if(t!=this._yrPicker){this._yrPicker=wijmo_1.asBoolean(t);this._syncProp(this,"showYearPicker")}}get showMonthPicker(){return this._mtPicker}set showMonthPicker(t){if(t!=this._mtPicker){let e=ShowMonthPicker;wijmo_1.isBoolean(t)&&(t=t?e.FirstMonth:e.None);this._mtPicker=wijmo_1.asEnum(t,e);wijmo_1.toggleClass(this.hostElement,"wj-btns-outside",this._getShowMonthPicker()==e.Outside);this.refresh();this._syncProp(this,"showMonthPicker")}}get firstDayOfWeek(){return this._fdw}set firstDayOfWeek(t){if(t!=this._fdw){if((t=wijmo_1.asNumber(t,!0))&&(t>6||t<0))throw"firstDayOfWeek must be between 0 and 6 (Sunday to Saturday).";this._fdw=t;this.refresh();this._syncProp(this,"firstDayOfWeek")}}get displayMonth(){return this._month}set displayMonth(t){t=wijmo_1.asDate(t);t=this._getMonth(t);let e=this._getDisplayMonthRange();e.to&&t>e.to&&(t=e.to);e.from&&t<e.from&&(t=e.from);if(!wijmo_1.DateTime.equals(this.displayMonth,t)){this._month=t;this.invalidate(!0);this.onDisplayMonthChanged()}}get monthCount(){let t=this.hostElement;return t?t.querySelectorAll(".wj-calendar").length+1:0}set monthCount(t){let e=this.hostElement;if(t!=this.monthCount&&e){let i=e.querySelectorAll(".wj-calendar");t=wijmo_1.asInt(t,!1);wijmo_1.assert(t>0,"monthCount must be >= 1.");wijmo_1.assert(1==t||!wijmo_1.closest(e.parentElement,".wj-calendar"),"Only top-level calendars can set monthCount.");for(let t=0;t<i.length;t++){let e=i[t];wijmo_1.removeChild(e);this._getCalendar(e).dispose()}this._cals=[this];for(let i=1;i<t;i++){let t=new Calendar(document.createElement("div"),{itemFormatter:this.itemFormatter,itemValidator:this.itemValidator,formatItem:(t,e)=>this.onFormatItem(e)});t._selMode=this._selMode;t._value=this._value;t._rngEnd=this._rngEnd;for(let e in this)if(!/^(_.*|constructor|displayMonth|monthCount|hostElement|rightToLeft|isUpdating|isTouching)$/.test(e)){let i=this[e];wijmo_1.isFunction(i)||i instanceof wijmo_1.Event||(t[e]=i)}this._cals.push(t);e.appendChild(t.hostElement)}wijmo_1.toggleClass(e,"wj-calendar-multimonth",t>1);this._syncProp(this,"displayMonth")}}get formatYearMonth(){return this._fmtYrMo}set formatYearMonth(t){if(t!=this._fmtYrMo){this._fmtYrMo=wijmo_1.asString(t);this._syncProp(this,"formatYearMonth");this.invalidate()}}get formatDayHeaders(){return this._fmtDayHdr}set formatDayHeaders(t){if(t!=this._fmtDayHdr){this._fmtDayHdr=wijmo_1.asString(t);this._syncProp(this,"formatDayHeaders");this.invalidate()}}get formatDays(){return this._fmtDay}set formatDays(t){if(t!=this._fmtDay){this._fmtDay=wijmo_1.asString(t);this._syncProp(this,"formatDays");this.invalidate()}}get formatYear(){return this._fmtYr}set formatYear(t){if(t!=this._fmtYr){this._fmtYr=wijmo_1.asString(t);this._syncProp(this,"formatYear");this.invalidate()}}get formatMonths(){return this._fmtMonths}set formatMonths(t){if(t!=this._fmtMonths){this._fmtMonths=wijmo_1.asString(t);this._syncProp(this,"formatMonths");this.invalidate()}}get showHeader(){return"none"!=this._tbHdr.style.display}set showHeader(t){if(t!=this.showHeader){this._tbHdr.style.display=wijmo_1.asBoolean(t)?"":"none";this._syncProp(this,"showHeader")}}get monthView(){return"none"!=this._tbMth.style.display}set monthView(t){if(t!=this.monthView){this._tbMth.style.display=t?"":"none";this._tbYr.style.display=t?"none":"";this.refresh();let e=wijmo_1.culture.Calendar.ariaLabels;wijmo_1.setAriaLabel(this._btnPrv,t?e.prvMo:e.prvYr);wijmo_1.setAriaLabel(this._btnTdy,t?e.today:e.currMo);wijmo_1.setAriaLabel(this._btnNxt,t?e.nxtMo:e.nxtYr);wijmo_1.setAriaLabel(this._btnMth,t?e.monthView:e.yearView);this._syncProp(this,"monthView")}}get weeksBefore(){return this._wksBefore}set weeksBefore(t){if(t!=this._wksBefore){this._wksBefore=Math.floor(wijmo_1.asNumber(t,!1,!0));this._syncProp(this,"weeksBefore");this.invalidate()}}get weeksAfter(){return this._wksAfter}set weeksAfter(t){if(t!=this._wksAfter){this._wksAfter=Math.floor(wijmo_1.asNumber(t,!1,!0));this._syncProp(this,"weeksAfter");this.invalidate()}}get itemFormatter(){return this._itemFormatter}set itemFormatter(t){if(t!=this._itemFormatter){this._itemFormatter=wijmo_1.asFunction(t);this._syncProp(this,"itemFormatter");this.invalidate()}}get itemValidator(){return this._itemValidator}set itemValidator(t){if(t!=this._itemValidator){this._itemValidator=wijmo_1.asFunction(t);this._syncProp(this,"itemValidator");this.invalidate()}}hitTest(t){let e=t instanceof MouseEvent?t.target:t instanceof Element?t:null;wijmo_1.assert(null!=e,"MouseEvent or Element expected");return e?e[Calendar._DATE_KEY]:null}ensureVisible(t){if(null!=t){let e=this._getCalendars(),i=e.indexOf(this),s=e[0],h=e[e.length-1];t<s.displayMonth?this.displayMonth=wijmo_1.DateTime.addMonths(this._getMonth(t),i):t>h.displayMonth&&(this.displayMonth=wijmo_1.DateTime.addMonths(this._getMonth(t),i-e.length+1))}}onValueChanged(t){this.valueChanged.raise(this,t);this._syncProp(this,"value")}onRangeEndChanged(t){this.rangeEndChanged.raise(this,t);this._syncProp(this,"rangeEnd");this._value&&this._rngEnd&&this.onRangeChanged(t)}onRangeChanged(t){this.rangeChanged.raise(this,t)}onDisplayMonthChanged(t){this.displayMonthChanged.raise(this,t);this._syncProp(this,"displayMonth")}onFormatItem(t){this.formatItem.raise(this,t)}_containsFocusImpl(t){return super._containsFocusImpl(t)||this._lbYears._containsFocusImpl(t)}dispose(){this._rptUp.element=null;this._rptDn.element=null;this._lbYears.dispose();super.dispose()}refresh(t=!0){let e=this.hostElement,i=this.containsFocus();if(!e)return;super.refresh(t);t&&this._updateContent();this._updateSelection();let s=this._getDisplayMonthRange(),h=this.displayMonth;wijmo_1.enable(this._btnPrv,null==s.from||h>s.from);wijmo_1.enable(this._btnNxt,null==s.to||h<s.to);if(i){let t=(this.monthView?this._tbMth:this._tbYr).querySelector("td.wj-state-selected")||e;t&&t.focus()}let n=this._getCalendars();n.length>1&&this==n[0]&&n.forEach((e,i)=>{i>0&&e.refresh(t)})}_getShowMonthPicker(){let t=ShowMonthPicker,e=this._getCalendars(),i=e.indexOf(this),s=this.showMonthPicker;switch(s){case t.FirstMonth:case t.Outside:return 0==i?s:0;case t.LastMonth:return i==e.length-1?s:0;case t.FirstAndLastMonths:return 0==i||i==e.length-1?s:0;case t.AllMonths:return s}return 0}_getDisplayMonthRange(){let t={from:null,to:null};if(this.min||this.max){let e=this._getCalendars(),i=e.indexOf(this),s=this._mthMode()?wijmo_1.DateTime.addYears:wijmo_1.DateTime.addMonths;this.min&&(t.from=s(this._getMonth(this.min),i));this.max&&(t.to=s(this._getMonth(this.max),i-e.length+1))}return t}_getCalendar(t){return wijmo_1.Control.getControl(t)}_getCalendars(){let t=wijmo_1.closest(this.hostElement,".wj-calendar-multimonth");return(t?this._getCalendar(t):this)._cals}_syncProp(t,e){if(!this._syncing){let i=this._getCalendars();if(i&&i.length>1){let s=t[e],h=this._mthMode()?wijmo_1.DateTime.addYears:wijmo_1.DateTime.addMonths;"displayMonth"==e&&(s=h(s,-i.indexOf(t)));i[0].deferUpdate(()=>{this._syncing=!0;i.forEach((i,n)=>{if(i!=t){let t=i.displayMonth;i[e]="displayMonth"==e?h(s,n):s;if("value"==e){i.displayMonth=t;this._rngMode()&&(i.rangeEnd=null)}}});this._syncing=!1})}}}_updateContent(){let t=this.displayMonth,e=wijmo_1.Globalize.format,i=wijmo_1.DateTime,s=this._getShowMonthPicker();wijmo_1.setText(this._spMth,e(t,this._fmtYrMo));let h=this._btnMth.querySelector(".wj-glyph-down");h&&(h.style.display=this._mthMode()||!s?"none":"");let n=wijmo_1.closest(this._btnTdy,".wj-btn-group");n&&(n.style.display=s?"":"none");let o=null!=this._fdw?this._fdw:wijmo_1.Globalize.getFirstDayOfWeek(),l=i.addDays(t,-(t.getDay()-o+7)%7),a=i.monthLast(t),r=this._tbMth.querySelectorAll("td");for(let t=0;t<7&&t<r.length;t++){let s=i.addDays(l,t);wijmo_1.setText(r[t],e(s,this._fmtDayHdr))}let d=this._tbMth.querySelectorAll("tr");for(let t=1;t<d.length;t++)wijmo_1.removeChild(d[t]);let _=i.addDays(l,-7*this._wksBefore);for(let t=0;t<this._wksBefore;t++)_=this._addWeek(_,"wj-week-before");for(;_<=a;)_=this._addWeek(_);for(let t=0;t<this._wksAfter;t++)_=this._addWeek(_,"wj-week-after");(r=this._tbYr.querySelectorAll("td")).length&&wijmo_1.setText(r[0],e(t,this._fmtYr));for(let s=1;s<r.length;s++){_=i.newDate(t.getFullYear(),s-1,1);let h=r[s],n=!this._monthInValidRange(_);h[Calendar._DATE_KEY]=_;wijmo_1.setText(h,e(_,this._fmtMonths));wijmo_1.toggleClass(h,"wj-state-disabled",n);wijmo_1.setAriaLabel(h,wijmo_1.Globalize.format(_,"MMMM yyyy"))}}_updateSelection(){let t=Calendar._DATE_KEY,e=wijmo_1.DateTime,i=this._tbMth.querySelectorAll("td");for(let s=7;s<i.length;s++){let h=i[s],n=h[t],o=this.value,l=this.rangeEnd,a=this._selMode&&null!=o&&e.sameDate(n,o),r=this._selMode&&null!=o&&e.sameDate(n,l),d=this._selMode&&null!=o&&n>o&&null!=l&&n<=l;wijmo_1.toggleClass(h,"wj-state-selected",a);wijmo_1.toggleClass(h,"wj-state-multi-selected",d);wijmo_1.toggleClass(h,"wj-state-last-selected",r);wijmo_1.setAttribute(h,"aria-selected",!!a||null);this._customizeCell(s,n,h)}i=this._tbYr.querySelectorAll("td");for(let e=0;e<i.length;e++){let s=i[e],h=s[t],n=this._sameMonth(h,this.value);wijmo_1.toggleClass(s,"wj-state-selected",n);wijmo_1.setAttribute(s,"aria-selected",!!n||null)}}_addWeek(t,e){let i=this._createElement("tr",this._tbMth,e),s=wijmo_1.DateTime;for(let e=0;e<7;e++){let h=this._createElement("td",i),n=s.addDays(t,e);h[Calendar._DATE_KEY]=n;wijmo_1.setText(h,wijmo_1.Globalize.format(n,this._fmtDay));wijmo_1.setAriaLabel(h,wijmo_1.Globalize.format(n,"D"));let o=!1,l=!1,a=n.getDay(),r=n.getMonth()!=this.displayMonth.getMonth();wijmo_1.isDate(n)&&wijmo_1.DateTime.sameDate(n,this._clamp(n))||(l=!0);wijmo_1.isFunction(this.itemValidator)&&(o=!this.itemValidator(n));wijmo_1.toggleClass(h,"wj-day-today",s.sameDate(n,s.newDate()));wijmo_1.toggleClass(h,"wj-day-weekend",0==a||6==a);wijmo_1.toggleClass(h,"wj-day-othermonth",r||!this._inValidRange(n)||l);wijmo_1.toggleClass(h,"wj-state-invalid",o)}return s.addDays(t,7)}_customizeCell(t,e,i){wijmo_1.isFunction(this.itemFormatter)&&this.itemFormatter(e,i);if(this.formatItem.hasHandlers){let s=new FormatItemEventArgs(t,e,i);this.onFormatItem(s)}}_canChangeValue(){return!this._readOnly&&this._selMode!=DateSelectionMode.None}_valid(t){return!(!wijmo_1.isDate(t)||!wijmo_1.DateTime.sameDate(t,this._clamp(t)))&&(!wijmo_1.isFunction(this.itemValidator)||this.itemValidator(t))}_inValidRange(t){let e=wijmo_1.DateTime.fromDateTime;return!(this.min&&t<e(this.min,t))&&!(this.max&&t>e(this.max,t))}_monthInValidRange(t){if(this.min||this.max){let e=t.getFullYear(),i=t.getMonth(),s=wijmo_1.DateTime,h=s.newDate(e,i,1),n=s.newDate(e,i+1,0);if(this.min&&this.min>n)return!1;if(this.max&&this.max<h)return!1}return!0}_sameMonth(t,e){return wijmo_1.isDate(t)&&wijmo_1.isDate(e)&&t.getMonth()==e.getMonth()&&t.getFullYear()==e.getFullYear()}_getValidDate(t,e){if(wijmo_1.isDate(t)){let i=t.getFullYear(),s=t.getMonth()+(e?0:1),h=e?1:0,n=wijmo_1.DateTime,o=n.newDate(i,s,h),l=e?1:-1;for(let t=0;t<31;t++){if(this._valid(o))return o;o=n.addDays(o,l)}}return null}_clamp(t){if(t){let e=wijmo_1.DateTime.fromDateTime;if(this.min){let i=e(this.min,t);t<i&&(t=i)}if(this.max){let i=e(this.max,t);t>i&&(t=i)}}return t}_createChildren(){let t=this.getTemplate();this.applyTemplate("wj-control wj-calendar",t,{_tbHdr:"tbl-header",_btnMth:"btn-month",_spMth:"span-month",_btnPrv:"btn-prev",_btnTdy:"btn-today",_btnNxt:"btn-next",_tbMth:"tbl-month",_tbYr:"tbl-year"});this._tbYr.style.display="none";let e=wijmo_1.culture.Calendar.ariaLabels;wijmo_1.setAriaLabel(this._tbMth,e.calendar);wijmo_1.setAriaLabel(this._tbYr,e.calendar);wijmo_1.setAriaLabel(this._btnPrv,e.calendar);wijmo_1.setAriaLabel(this._btnMth,e.monthView);wijmo_1.setAriaLabel(this._btnPrv,e.prvMo);wijmo_1.setAriaLabel(this._btnTdy,e.today);wijmo_1.setAriaLabel(this._btnNxt,e.nxtMo);let i=this._createElement("tr",this._tbMth,"wj-header");for(let t=0;t<7;t++)this._createElement("td",i);i=this._createElement("tr",this._tbYr,"wj-header");this._createElement("td",i).setAttribute("colspan","4");for(let t=0;t<3;t++){i=this._createElement("tr",this._tbYr);for(let t=0;t<4;t++)this._createElement("td",i)}}_createYearPicker(){let t=this.hostElement,e=this._createElement("div",null,"wj-dropdown-panel wj-yearpicker");e.tabIndex=this._orgTabIndex;this._lbYears=new ListBox(e,{lostFocus:t=>{wijmo_1.hidePopup(e);this._tmYrHidden=Date.now();this.removeEventListener(window,"touchstart");if(t.selectedIndex>-1){let e=wijmo_1.DateTime.clone(this.displayMonth);e.setFullYear(t.selectedIndex+t.itemsSource[0]);this.displayMonth=e}}});this.addEventListener(e,"keydown",e=>{switch(e.keyCode){case wijmo_1.Key.Enter:t.focus();break;case wijmo_1.Key.Escape:this._lbYears.selectedIndex=-1;t.focus()}e.defaultPrevented&&e.stopPropagation()});this.addEventListener(e,"click",e=>{t.focus()})}_createElement(t,e,i){let s=document.createElement(t);i&&wijmo_1.addClass(s,i);e&&e.appendChild(s);return s}_click(t){if(!t.defaultPrevented&&0==t.button){let o=!1,l=t.target;if(wijmo_1.contains(this._btnMth,l)&&!this._mthMode()&&this._getShowMonthPicker()){this.monthView=!this.monthView;o=!0}else if(wijmo_1.contains(this._btnPrv,l)){this._navigate(-1);o=!0}else if(wijmo_1.contains(this._btnNxt,l)){this._navigate(1);o=!0}else if(wijmo_1.contains(this._btnTdy,l)){this._navigate(0);o=!0}if(l&&!o&&this._yrPicker&&wijmo_1.contains(this._tbYr,l)&&wijmo_1.closest(l,".wj-header")){if(Date.now()-this._tmYrHidden<600){t.preventDefault();return}for(var e=this.displayMonth.getFullYear(),i=this.min?this.min.getFullYear():e-100,s=this.max?this.max.getFullYear():e+100,h=[],n=i;n<=s;n++)h.push(n);let o=this._lbYears,a=o.hostElement,r=wijmo_1.closest(l,".wj-header"),d=this.hostElement,_=wijmo_1.closest(d,".wj-inputdate-dropdown")||d;o.itemsSource=h;o.selectedIndex=e-h[0];wijmo_1.setAttribute(a,"dir",this.rightToLeft?"rtl":null);wijmo_1.setCss(a,{minWidth:"",width:r.offsetWidth});wijmo_1.showPopup(a,r,!1,!1,_);requestAnimationFrame(()=>{o.showSelection(!0)});this.addEventListener(window,"touchstart",t=>{if(!wijmo_1.contains(a,t.target)){wijmo_1.hidePopup(a);this._tmYrHidden=Date.now();this.removeEventListener(window,"touchstart")}});t.preventDefault();return}if(l&&!o){let t=wijmo_1.closest(l,"td");if(t){let e=this.hitTest(t),i=wijmo_1.DateTime.fromDateTime;if(this.monthView){if(e&&this._canChangeValue()){let t=i(e,this._value);this._inValidRange(t)&&this._valid(t)&&(this._rngMode()&&this.value&&!this.rangeEnd&&t>=this.value?this.rangeEnd=t:this.value=t);o=!0}}else if(e){this.displayMonth=e;if(this._mthMode()){if(this._canChangeValue()){let t=i(this.displayMonth,this.value);this._inValidRange(t)&&(this.value=t)}}else this.monthView=!0;o=!0}}}if(o){t.preventDefault();this.focus()}}}_keydown(t){if(t.defaultPrevented)return;if(t.altKey)switch(t.keyCode){case wijmo_1.Key.Up:case wijmo_1.Key.Down:return;case wijmo_1.Key.End:this._navigate(0);t.preventDefault();return}if(t.ctrlKey||t.metaKey||t.shiftKey&&!this._rngMode())return;let e=this._getKeyCode(t),i=0,s=0,h=!0;if(this.monthView)switch(e){case wijmo_1.Key.Left:i=-1;break;case wijmo_1.Key.Right:i=1;break;case wijmo_1.Key.Up:i=-7;break;case wijmo_1.Key.Down:i=7;break;case wijmo_1.Key.PageDown:s=t.altKey?12:1;break;case wijmo_1.Key.PageUp:s=t.altKey?-12:-1;break;case wijmo_1.Key.Home:case wijmo_1.Key.End:if(this._canChangeValue()&&!t.shiftKey){let t=this.value||this.displayMonth,i=this._getValidDate(t,e==wijmo_1.Key.Home);if(i){this.value=wijmo_1.DateTime.fromDateTime(i,this.value);this._rngEnd=null}}break;default:h=!1}else switch(e){case wijmo_1.Key.Left:s=-1;break;case wijmo_1.Key.Right:s=1;break;case wijmo_1.Key.Up:s=-4;break;case wijmo_1.Key.Down:s=4;break;case wijmo_1.Key.PageDown:s=t.altKey?120:12;break;case wijmo_1.Key.PageUp:s=t.altKey?-120:-12;break;case wijmo_1.Key.Home:s=this.value?-this.value.getMonth():0;break;case wijmo_1.Key.End:s=this.value?11-this.value.getMonth():0;break;case wijmo_1.Key.Enter:this._mthMode()?h=!1:this.monthView=!0;break;default:h=!1}if(this._canChangeValue()&&(i||s)){let e=t.shiftKey&&null!=this.rangeEnd?this.rangeEnd:this.value,h=wijmo_1.DateTime;if(e){e=h.addDays(e,i);e=h.addMonths(e,s)}else e=this._getValidDate(new Date,!0);if(s&&!this._valid(e)){let t=e.getMonth();for(let i=1;i<31&&!this._valid(e);i++){let s=h.addDays(e,+i),n=h.addDays(e,-i);this._valid(s)&&s.getMonth()==t?e=s:this._valid(n)&&n.getMonth()==t&&(e=n)}}for(let t=0;t<31&&!this._valid(e);t++)e=h.addDays(e,i>0||s>0?1:-1);t.shiftKey&&e>this.value?this.rangeEnd=e:this.value=e}h&&t.preventDefault()}_getMonth(t){let e=wijmo_1.DateTime;t=t||e.newDate();return e.newDate(t.getFullYear(),t.getMonth(),1)}_mthMode(){return this.selectionMode==DateSelectionMode.Month}_rngMode(){return this.selectionMode==DateSelectionMode.Range}_navigate(t){let e=this.monthView,i=this.displayMonth,s=wijmo_1.DateTime;switch(t){case 0:let t=s.newDate();this._canChangeValue()&&(this.value=e?s.fromDateTime(t,this.value):this._getMonth(t));i=this._getMonth(t);break;case 1:i=s.addMonths(i,e?1:12);break;case-1:i=s.addMonths(i,e?-1:-12)}this.displayMonth=i}_setTabOrder(t){super._setTabOrder(t);this._lbYears.tabOrder=this._orgTabIndex}}Calendar._DATE_KEY="$WJ-DATE";Calendar.controlTemplate='<div class="wj-content wj-calendar-outer"><div wj-part="tbl-header" class="wj-calendar-header"><div wj-part="btn-month" class="wj-month-select" role="button"><span wj-part="span-month"></span> <span class="wj-glyph-down"></span></div><div class="wj-btn-group"><button wj-part="btn-prev" class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-left"></span></button><button wj-part="btn-today" class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-circle"></span></button><button wj-part="btn-next" class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-right"></span></button></div></div><table wj-part="tbl-month" class="wj-calendar-month" role="grid"></table><table wj-part="tbl-year" class="wj-calendar-year" role="grid"></table></div>';exports.Calendar=Calendar;wijmo_1._addCultureInfo("DropDown",{ariaLabels:{tgl:"Toggle Dropdown"}});!function(t){t[t.Select=0]="Select";t[t.Open=1]="Open";t[t.Toggle=2]="Toggle"}(ClickAction=exports.ClickAction||(exports.ClickAction={}));class DropDown extends wijmo_1.Control{constructor(t,e){super(t);this._clickAction=ClickAction.Select;this._showBtn=!0;this._autoExpand=!0;this._animate=!1;this._internalSettingText=!1;this._oldText="";this.textChanged=new wijmo_1.Event;this.isDroppedDownChanging=new wijmo_1.Event;this.isDroppedDownChanged=new wijmo_1.Event;let i,s=this.getTemplate();this.applyTemplate("wj-control wj-content wj-dropdown",s,{_tbx:"input",_btn:"btn",_dropDown:"dropdown"},"input");this.hostElement&&this.hostElement.id&&(i=this.hostElement.id);i&&this._dropDown&&this._dropDown.setAttribute("dropdown-id",i);this._dropDown.style.display="none";let h=wijmo_1.culture.DropDown.ariaLabels;wijmo_1.setAriaLabel(this._btn.querySelector("button"),h.tgl);let n=this._elRef=this._tbx;wijmo_1.disableAutoComplete(n);this._createDropDown();this._updateBtn();let o=this.hostElement;wijmo_1.addClass(o,"wj-state-collapsed");this.addEventListener(window,"resize",()=>{this.isDroppedDown&&this.invalidate()});let l=this.dropDown,a=this.addEventListener.bind(this),r=this._updateFocusState.bind(this);a(l,"blur",r,!0);a(l,"focus",r);let d=this._keydown.bind(this);a(o,"keydown",d);a(l,"keydown",d);let _=this._keypress.bind(this);a(o,"keypress",_,!0);a(l,"keypress",_,!0);a(n,"input",this._input.bind(this));a(n,"blur",()=>{this._commitText(!0)},!0);a(n,"click",()=>{this._autoExpand&&this._expandSelection()});a(n,"mousedown",t=>{switch(this._clickAction){case ClickAction.Open:if(!this.isDroppedDown){t.preventDefault();this.focus();this.isDroppedDown=!0}break;case ClickAction.Toggle:t.preventDefault();this.focus();this.isDroppedDown=!this.isDroppedDown}});a(this._btn,"mousedown",t=>{this._btnclick(t)});wijmo_1.removeChild(l);wijmo_1.isIE()&&this._elRef==this._tbx&&a(o,"mouseup",t=>{if(!t.defaultPrevented&&0==t.button&&wijmo_1.hasClass(t.target,"wj-btn")){let e=wijmo_1.getActiveElement();e&&e!=t.target&&setTimeout(()=>{e.focus()})}});wijmo_1.isIE9()&&a(n,"keyup",()=>{this._setText(this.text,!1)});a(l,"click",this._dropDownClick.bind(this))}get text(){return this._tbx.value}set text(t){if(t!=this.text){this._setText(t,!0);this._commitText()}}get inputElement(){return this._tbx}get inputType(){return this._tbx.type}set inputType(t){this._tbx.type=wijmo_1.asString(t)}get isReadOnly(){return this._tbx.readOnly}set isReadOnly(t){this._tbx.readOnly=wijmo_1.asBoolean(t);wijmo_1.toggleClass(this.hostElement,"wj-state-readonly",this.isReadOnly);this.isReadOnly&&this._toogleDropDown(!1)}get isRequired(){return this._tbx.required}set isRequired(t){this._tbx.required=wijmo_1.asBoolean("boolean"==typeof t?t:this.isRequired)}get placeholder(){return this._tbx.placeholder}set placeholder(t){this._tbx.placeholder=t}get clickAction(){return this._clickAction}set clickAction(t){this._clickAction=wijmo_1.asEnum(t,ClickAction)}get isDroppedDown(){let t=this._dropDown;return t&&"none"!=t.style.display}set isDroppedDown(t){let e=this.hostElement,i=this._dropDown,s=this.containsFocus();if(e&&i){t=wijmo_1.asBoolean(t)&&!this.isDisabled&&!this.isReadOnly&&e.offsetWidth>0;this.isDroppedDown&&!t&&this.isDisabled&&(t=this.isDroppedDown);if(t!=this.isDroppedDown&&this.onIsDroppedDownChanging(new wijmo_1.CancelEventArgs)){this._toogleDropDown(t);s&&(this.isTouching&&this.showDropDownButton?e.focus():this.selectAll());this._updateFocusState();wijmo_1.toggleClass(e,"wj-state-collapsed",!this.isDroppedDown);this.onIsDroppedDownChanged()}}}_toogleDropDown(t){let e=this.hostElement,i=this._dropDown;if(t){this._minWidthDropdown=i.style.minWidth;i.style.display="";this._updateDropDown();this.addEventListener(window,"touchstart",t=>{let i=wijmo_1.Control._touching;for(let i=t.target;i;){if(i==e)return;i=i[wijmo_1.Control._OWNR_KEY]||i.parentNode}wijmo_1.Control._touching=!0;this.isDroppedDown=!1;wijmo_1.Control._touching=i})}else{this.removeEventListener(window,"touchstart");wijmo_1.hidePopup(i);i.style.minWidth=this._minWidthDropdown}}get dropDown(){return this._dropDown}get dropDownCssClass(){return this._cssClass}set dropDownCssClass(t){if(t!=this._cssClass){wijmo_1.removeClass(this._dropDown,this._cssClass);this._cssClass=wijmo_1.asString(t);wijmo_1.addClass(this._dropDown,this._cssClass)}}get showDropDownButton(){return this._showBtn}set showDropDownButton(t){this._showBtn=wijmo_1.asBoolean(t);this._updateBtn()}get autoExpandSelection(){return this._autoExpand}set autoExpandSelection(t){this._autoExpand=wijmo_1.asBoolean(t)}get isAnimated(){return this._animate}set isAnimated(t){this._animate=wijmo_1.asBoolean(t)}selectAll(){let t=this._tbx;this._elRef==t&&wijmo_1.setSelectionRange(t,0,this.text.length);this.containsFocus()||this.focus()}onTextChanged(t){this.textChanged.raise(this,t);this._updateState()}onIsDroppedDownChanging(t){this.isDroppedDownChanging.raise(this,t);return!t.cancel}onIsDroppedDownChanged(t){this.isDroppedDownChanged.raise(this,t)}onGotFocus(t){this.isTouching||wijmo_1.contains(this._dropDown,wijmo_1.getActiveElement())||this.selectAll();super.onGotFocus(t)}onLostFocus(t){this._commitText();this.isDroppedDown=!1;super.onLostFocus(t)}_containsFocusImpl(t){return super._containsFocusImpl(t)||this.isDroppedDown&&wijmo_1.contains(this._dropDown,t)}dispose(){this.isDroppedDown=!1;let t=this._dropDown;if(t){this._dropDown=null;wijmo_1.removeChild(t);let e=wijmo_1.Control.getControl(t);e&&e.dispose()}super.dispose()}refresh(t=!0){super.refresh(t);let e=this.hostElement;if(e&&e.offsetHeight&&this.isDroppedDown){let t=wijmo_1.getActiveElement();this.isAnimated&&""!=this._dropDown.style.opacity||wijmo_1.showPopup(this._dropDown,e,!1,!1,null==this.dropDownCssClass);t instanceof HTMLElement&&t!=wijmo_1.getActiveElement()&&t.focus()}}_handleResize(){this.isDroppedDown&&this.refresh()}_dropDownClick(t){t.stopPropagation()}_expandSelection(){let t=this._tbx,e=t.value,i=t.selectionStart,s=t.selectionEnd;if(e&&i==s){let h=this._getCharType(e,i);if(h>-1){for(;s<e.length&&this._getCharType(e,s)==h;s++);for(;i>0&&this._getCharType(e,i-1)==h;i--);i!=s&&wijmo_1.setSelectionRange(t,i,s)}}}_getCharType(t,e){let i=t[e];return i>="0"&&i<="9"?0:i>="a"&&i<="z"||i>="A"&&i<="Z"?1:-1}_keydown(t){if(!t.defaultPrevented&&!this._isHiddenEditor()){switch(t.keyCode){case wijmo_1.Key.Tab:case wijmo_1.Key.Escape:case wijmo_1.Key.Enter:if(this.isDroppedDown){this.isDroppedDown=!1;t.keyCode==wijmo_1.Key.Tab||this.containsFocus()||this.focus();t.preventDefault()}break;case wijmo_1.Key.F4:case wijmo_1.Key.Up:case wijmo_1.Key.Down:if(t.keyCode==wijmo_1.Key.F4||t.altKey){let e=this.hostElement;if(e&&e.offsetHeight){this.isDroppedDown=!this.isDroppedDown;t.preventDefault()}}}if(!t.defaultPrevented&&t.keyCode==wijmo_1.Key.Escape&&wijmo_1.isIE()){let e=this._tbx;if(t.target==e){let t=e.value;e.value=t+" ";e.value=t}}}}_isHiddenEditor(){return wijmo_1.hasClass(this._tbx,"wj-grid-ime")}_keypress(t){"AltLeft"!=t.code&&"AltRight"!=t.code||t.preventDefault()}_input(t){this._setText(this.text,!1)}_btnclick(t){if(!t.defaultPrevented&&0==t.button){t.preventDefault();this.isTouching?this._containsFocus()||this.hostElement.focus():this.focus();this.isDroppedDown=!this.isDroppedDown}}_setText(t,e,i,s){let h=!1;if((t=(t||"").toString())!=this._tbx.value){this._tbx.value=t;if(i||!t){this.onTextChanged();h=!0}}if(t!=this._oldText){this._oldText=t;this._internalSettingText||h||this.onTextChanged()}s&&(this._tbx.value=this._tbx.value.trim());this._updateState()}_updateBtn(){this._btn.style.display=this._showBtn?"":"none"}_createDropDown(){}_commitText(t){}_updateDropDown(){if(this.isDroppedDown){this._commitText();let t=this.dropDown;wijmo_1.setAttribute(t,"dir",this.rightToLeft?"rtl":null);wijmo_1.showPopup(t,this.hostElement,!1,this._animate,null==this.dropDownCssClass)}}}DropDown.controlTemplate='<div class="wj-template"><div class="wj-input"><div class="wj-input-group wj-input-btn-visible"><input wj-part="input" type="text" class="wj-form-control"><span wj-part="btn" class="wj-input-group-btn"><button class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-down"></span></button></span></div></div><div wj-part="dropdown" class="wj-content wj-dropdown-panel"></div></div>';exports.DropDown=DropDown;!function(t){t[t.None=0]="None";t[t.ClickOwner=1]="ClickOwner";t[t.ClickPopup=2]="ClickPopup";t[t.Click=3]="Click";t[t.BlurOwner=4]="BlurOwner";t[t.BlurPopup=8]="BlurPopup";t[t.Blur=12]="Blur";t[t.ClickOrBlur=15]="ClickOrBlur";t[t.DownOwner=16]="DownOwner";t[t.DownPopup=32]="DownPopup";t[t.Down=48]="Down";t[t.EnterOwner=64]="EnterOwner";t[t.EnterPopup=128]="EnterPopup";t[t.Enter=192]="Enter";t[t.LeaveOwner=256]="LeaveOwner";t[t.LeavePopup=512]="LeavePopup";t[t.Leave=768]="Leave"}(PopupTrigger=exports.PopupTrigger||(exports.PopupTrigger={}));!function(t){t[t.None=0]="None";t[t.Left=1]="Left";t[t.Top=2]="Top";t[t.Right=4]="Right";t[t.Bottom=8]="Bottom";t[t.LeftTop=3]="LeftTop";t[t.RightTop=6]="RightTop";t[t.RightBottom=12]="RightBottom";t[t.LeftBottom=9]="LeftBottom"}(_Edges||(_Edges={}));class Popup extends wijmo_1.Control{constructor(t,e){super(t);this._owner=null;this._modal=!1;this._position=wijmo_1.PopupPosition.BelowLeft;this._showTrigger=PopupTrigger.ClickOwner;this._hideTrigger=PopupTrigger.Blur;this._hideAnim=[];this._fadeIn=!0;this._fadeOut=!0;this._removeOnHide=!0;this._draggable=!1;this._resizable=!1;this._result=null;this._resultEnter=null;this._resultSubmit=null;this._callback=null;this._visible=!1;this._ownerClickBnd=this._ownerClick.bind(this);this._ownerDownBnd=this._ownerDown.bind(this);this._ownerBlurBnd=this._ownerBlur.bind(this);this._ownerEnterBnd=this._ownerEnter.bind(this);this._ownerLeaveBnd=this._ownerLeave.bind(this);this._mousedownBnd=this._mousedown.bind(this);this._mousemoveBnd=this._mousemove.bind(this);this._mousedragBnd=this._mousedrag.bind(this);this._mouseupBnd=this._mouseup.bind(this);this._hideBnd=this.hide.bind(this);this._lastShow=0;this.showing=new wijmo_1.Event;this.shown=new wijmo_1.Event;this.hiding=new wijmo_1.Event;this.hidden=new wijmo_1.Event;this.resizing=new wijmo_1.Event;this.resized=new wijmo_1.Event;this.dragging=new wijmo_1.Event;this.dragged=new wijmo_1.Event;this.sizeChanging=new wijmo_1.Event;this.sizeChanged=new wijmo_1.Event;this.positionChanging=new wijmo_1.Event;this.positionChanged=new wijmo_1.Event;let i=this.hostElement;wijmo_1.addClass(i,"wj-control wj-content wj-popup");i.getAttribute("tabindex")||(i.tabIndex=0);wijmo_1.hidePopup(i,!1);let s=this.addEventListener.bind(this);s(i,"compositionstart",()=>{this._composing=!0});s(i,"compositionend",()=>{this._composing=!1});s(window,"resize",()=>{!this.isVisible||this._dragged||this.isTouching||this.invalidate()});s(i,"keydown",t=>{if(!t.defaultPrevented){if(t.keyCode==wijmo_1.Key.Escape&&!this._composing){t.preventDefault();this.hide()}if(t.keyCode==wijmo_1.Key.Enter&&!this._composing){let e=this.dialogResultEnter;if(e){t.preventDefault();this._validateAndHide(e)}}if(t.keyCode==wijmo_1.Key.Tab&&this.modal){t.preventDefault();wijmo_1.moveFocus(i,t.shiftKey?-1:1)}}});s(i,"click",t=>{let e=t.target;if(e instanceof HTMLElement){if(e instanceof HTMLButtonElement&&"submit"==e.type){let e=this.hostElement,i=this.dialogResultSubmit;if(e instanceof HTMLFormElement&&i&&e.reportValidity()){t.preventDefault();this.hide(i)}}let i=e.className.match(/\bwj-hide[\S]*\b/);if(i&&i.length>0){t.preventDefault();t.stopPropagation();this.hide(i[0])}}});let h=this._toggle.bind(this),n=PopupTrigger;this.addEventListener(i,"click",t=>{this._ignoreClick||h(t,n.ClickPopup)},!0);this.addEventListener(i,"mousedown",t=>{this._ignoreClick=!1;h(t,n.DownPopup)},!0);this.addEventListener(i,"mouseenter",t=>{t.target==i&&h(t,n.EnterPopup)},!0);this.addEventListener(i,"mouseleave",t=>{t.target==i&&h(t,n.LeavePopup)},!0);this.addEventListener(i,"blur",t=>{this.containsFocus()||h(t,n.BlurPopup)},!0);s(document,"wheel",t=>{if(this.isVisible&&this._modal){for(let e=t.target;e&&e!=document.body;e=e.parentElement)if(e.scrollHeight>e.clientHeight)return;t.preventDefault()}});this.initialize(e)}get owner(){return this._owner}set owner(t){let e=this._owner;if(e){this.removeEventListener(e,"click");this.removeEventListener(e,"mousedown");this.removeEventListener(e,"mouseenter");this.removeEventListener(e,"mouseleave");this.removeEventListener(e,"blur")}if(e=this._owner=null!=t?wijmo_1.getElement(t):null){this.addEventListener(e,"click",this._ownerClickBnd,!0);this.addEventListener(e,"mousedown",this._ownerDownBnd,!0);this.addEventListener(e,"mouseenter",this._ownerEnterBnd,!0);this.addEventListener(e,"mouseleave",this._ownerLeaveBnd,!0);this.addEventListener(e,"blur",this._ownerBlurBnd,!0)}}get position(){return this._position}set position(t){this._position=wijmo_1.asEnum(t,wijmo_1.PopupPosition)}get content(){return this.hostElement.firstElementChild}set content(t){if(t!=this.content){this.hostElement.innerHTML="";t instanceof HTMLElement&&this.hostElement.appendChild(t)}}get showTrigger(){return this._showTrigger}set showTrigger(t){this._showTrigger=wijmo_1.asEnum(t,PopupTrigger)}get hideTrigger(){return this._hideTrigger}set hideTrigger(t){this._hideTrigger=wijmo_1.asEnum(t,PopupTrigger)}get fadeIn(){return this._fadeIn}set fadeIn(t){this._fadeIn=wijmo_1.asBoolean(t)}get fadeOut(){return this._fadeOut}set fadeOut(t){this._fadeOut=wijmo_1.asBoolean(t)}get removeOnHide(){return this._removeOnHide}set removeOnHide(t){if((t=wijmo_1.asBoolean(t))!=this.removeOnHide){this._removeOnHide=t;if(!this.isVisible){let e=this.hostElement;if(t)wijmo_1.removeChild(e);else if(e&&document.body){e.style.display="none";document.body.appendChild(e)}}}}get modal(){return this._modal}set modal(t){this._modal=wijmo_1.asBoolean(t)}get isDraggable(){return this._draggable}set isDraggable(t){this._draggable=wijmo_1.asBoolean(t)}get isResizable(){return this._resizable}set isResizable(t){this._resizable=wijmo_1.asBoolean(t)}get dialogResult(){return this._result}set dialogResult(t){this._result=t}get dialogResultEnter(){return this._resultEnter}set dialogResultEnter(t){this._resultEnter=t}get dialogResultSubmit(){return this._resultSubmit}set dialogResultSubmit(t){this._resultSubmit=wijmo_1.asString(t)}get isVisible(){let t=this.hostElement;return this._visible&&null!=t&&t.offsetHeight>0}show(t,e){this._lastShow=Date.now();if(!this.isVisible){let i=this.hostElement;this.dialogResult=null;this._callback=null;this._oldFocus=null;this._myFocus=null;this._hideAnim.forEach(t=>{clearInterval(t)});if(this._hideAnim.length>0){this._hideAnim.length=0;if(this._bkDrop){wijmo_1.hidePopup(this._bkDrop,this.removeOnHide);this._bkDrop.style.opacity=""}wijmo_1.hidePopup(i,this.removeOnHide);i.style.opacity=""}let s=new wijmo_1.CancelEventArgs;if(this.onShowing(s)){null!=t&&(this.modal=wijmo_1.asBoolean(t));null!=e&&(this._callback=wijmo_1.asFunction(e));this._oldFocus=wijmo_1.getActiveElement();wijmo_1.showPopup(i,this._owner,this._position,this._fadeIn,!1,this._hideBnd);this._modal&&this._showBackdrop();this._composing=!1;this._visible=!0;this.onShown(s);this._clearTimeouts();if(this.modal){this.addEventListener(window,"focus",()=>{if(!this.containsFocus()){let t=this._myFocus;t&&t.offsetHeight?t.focus():wijmo_1.moveFocus(i,0)}});this.addEventListener(i,"focusin",()=>{let t=wijmo_1.getActiveElement();t&&wijmo_1.contains(i,t)&&(t.tabIndex>-1||!this._myFocus)&&(this._myFocus=t)})}this._resized=this._dragged=this._ignoreClick=!1;this._handleDragResize(!0);this.addEventListener(window,"touchstart",t=>{this._hideTrigger&PopupTrigger.Blur&&!wijmo_1.contains(i,t.target,!0)&&this.hide()});setTimeout(()=>{this.addEventListener(window,"click",t=>{this._hideTrigger&PopupTrigger.BlurPopup&&this.isDisabled&&!wijmo_1.contains(i,t.target,!0)&&this.hide()})});setTimeout(()=>{if(!this.isDisabled&&!this.containsFocus()&&!this.isTouching){let t=i.querySelector("[autofocus]");if(t&&t.clientHeight>0&&!t.disabled&&t.tabIndex>-1&&!wijmo_1.closest(t,"[disabled],.wj-state-disabled")){t.focus();wijmo_1.isFunction(t.select)&&t.select()}else wijmo_1.moveFocus(i,0)}if(!this.isDisabled&&!this.containsFocus()){i.tabIndex=0;i.focus()}},100)}}}hide(t){this.removeEventListener(window,"touchstart");this.removeEventListener(window,"click");if(this.isVisible){wijmo_1.isUndefined(t)||(this.dialogResult=t);let e=new wijmo_1.CancelEventArgs,i=this.hostElement;if(this.onHiding(e)){this._handleDragResize(!1);let t=this.containsFocus()?this._oldFocus:null,s=i.querySelectorAll(".wj-control.wj-dropdown");for(let t=0;t<s.length;t++){let e=wijmo_1.Control.getControl(s[t]);e instanceof DropDown&&(e.isDroppedDown=!1)}let h=this.removeOnHide,n=this.fadeOut;setTimeout(()=>{this._updateState();this.onHidden(e);this._callback&&this._callback(this);if(this.hideTrigger&PopupTrigger.LeavePopup){let t=wijmo_1.Control.getControl(wijmo_1.closest(this.owner,".wj-popup"));if(t instanceof Popup&&0!=(t.hideTrigger&PopupTrigger.Leave)){let e=Popup._evtHover,i=e?document.elementFromPoint(e.clientX,e.clientY):null,s=wijmo_1.Control.getControl(wijmo_1.closest(i,".wj-popup"));s instanceof Popup&&!s.isVisible&&(i=null);i&&wijmo_1.contains(t.hostElement,i,!0)||t.hide()}}},wijmo_1.Control._FOCUS_INTERVAL+50);this._bkDrop&&this._hideAnim.push(wijmo_1.hidePopup(this._bkDrop,h,n));this._hideAnim.push(wijmo_1.hidePopup(i,h,n));this._visible=!1;this._oldFocus=null;this._myFocus=null;this.removeEventListener(window,"focus");this.removeEventListener(i,"focusin");this.containsFocus()&&wijmo_1.getActiveElement().blur();this._clearTimeouts();!this.isVisible&&t&&t.offsetHeight&&t.focus()}}}onShowing(t){this.showing.raise(this,t);return!t.cancel}onShown(t){this.shown.raise(this,t)}onHiding(t){this.hiding.raise(this,t);return!t.cancel}onHidden(t){this._wasVisible=!1;this.hidden.raise(this,t)}onResizing(t){this.resizing.raise(this,t);return!t.cancel}onResized(t){this.resized.raise(this,t)}onDragging(t){this.dragging.raise(this,t);return!t.cancel}onDragged(t){this.dragged.raise(this,t)}onSizeChanging(t){this.sizeChanging.raise(this,t);return!t.cancel}onSizeChanged(t){this.sizeChanged.raise(this,t)}onPositionChanging(t){this.positionChanging.raise(this,t);return!t.cancel}onPositionChanged(t){this.positionChanged.raise(this,t)}onLostFocus(t){super.onLostFocus(t);if(this._hideTrigger&PopupTrigger.BlurPopup&&!this.containsFocus()){let t=document.createEvent("Event");t.initEvent("blur",!0,!0);this._toggle(t,PopupTrigger.BlurPopup)}}dispose(){this.owner=null;super.dispose()}refresh(t=!0){let e=this.hostElement;super.refresh(t);if(this.isVisible&&!this._refreshing&&e){this._refreshing=!0;let t=wijmo_1.getActiveElement(),i=this._owner?this._owner.getBoundingClientRect():null,s=[],h=e.querySelectorAll(".wj-dropdown");for(let t=0;t<h.length;t++){let e=wijmo_1.Control.getControl(h[t]);if(e instanceof DropDown&&e.isDroppedDown){s.push(e);e.dropDown.style.display="none"}}wijmo_1.showPopup(e,i,this._position);s.forEach(t=>{t.dropDown.style.display="";t._updateDropDown()});this._modal&&t instanceof HTMLElement&&t!=wijmo_1.getActiveElement()&&t.focus();this._refreshing=!1}}_clearTimeouts(){if(this._toShow){clearTimeout(this._toShow);this._toShow=null}if(this._toHideLeave){clearTimeout(this._toHideLeave);this._toHideLeave=null}if(this._toHideBlur){clearTimeout(this._toHideBlur);this._toHideBlur=null}}_handleDragResize(t){let e=this.hostElement,i=this._draggable?this._getHeaderElement():null,s=this.addEventListener.bind(this),h=this.removeEventListener.bind(this),n=this._mousemoveBnd,o=this._mousedownBnd;if(t){s(e,"mousemove",n);s(e,"mousedown",o);s(e,"touchstart",o);i&&(i.style.touchAction="none")}else{this._mousedownEvt=null;this._rcBounds=null;h(e,"mousemove",n);h(e,"mousedown",o);h(e,"touchstart",o);h(document,"mousemove",this._mousedragBnd);h(document,"mouseup",this._mouseupBnd);i&&(i.style.touchAction="")}}_mousemove(t){if(!this._mousedownEvt){let e=this.hostElement,i=this._getEdges(e,t),s="",h=_Edges;this._edges=i;this._resizable&&(i==h.LeftTop||i==h.RightBottom?s="nwse-resize":i==h.LeftBottom||i==h.RightTop?s="nesw-resize":i==h.Left||i==h.Right?s="ew-resize":i!=h.Top&&i!=h.Bottom||(s="ns-resize"));this._draggable&&!s&&this._getClosestHeader(t.target)&&(s="move");e.style.cursor=s}}_mousedown(t){if(!t.defaultPrevented){let e=t.touches&&t.touches.length>0?t.touches[0]:t;this._edges=this._getEdges(this.hostElement,e);if(this._edges||this._draggable&&this._getClosestHeader(t.target)){let t=new wijmo_1.CancelEventArgs;if(this._edges?this.onResizing(t):this.onDragging(t)){this._mousedownEvt=e;this._rcBounds=this.hostElement.getBoundingClientRect();let t=this.addEventListener.bind(this),i=document,s=this._mousedragBnd,h=this._mouseupBnd;t(i,"mousemove",s);t(i,"touchmove",s);t(i,"mouseup",h);t(i,"touchend",h)}}this._ignoreClick=!1}}_mouseup(){this._mousedownEvt=null;this._rcBounds=null;let t=this.removeEventListener.bind(this),e=document,i=this._mousedragBnd,s=this._mouseupBnd;t(e,"mousemove",i);t(e,"touchmove",i);t(e,"mouseup",s);t(e,"touchend",s);this._resized?this.onResized():this._dragged&&this.onDragged();this._resized=this._dragged=this._ignoreClick=!1}_mousedrag(t){if(!t.defaultPrevented){let e=this.hostElement,i=this._mousedownEvt,s=t.touches&&t.touches.length>0?t.touches[0]:t,h=s.clientX-i.clientX,n=s.clientY-i.clientY,o=this._rcBounds,l=this._edges,a=Popup._SZ_MIN,r=wijmo_1.Rect.fromBoundingRect(o);if(l){const t=window.getComputedStyle(e),i=parseInt(t.getPropertyValue("min-width"))||a,s=parseInt(t.getPropertyValue("min-height"))||a;if(l&_Edges.Left){const t=r.right-i;r.left=Math.min(r.left+h,t);r.width=Math.max(r.width-h,i)}else l&_Edges.Right&&(r.width=Math.max(r.width+h,i));if(l&_Edges.Top){const t=r.bottom-s;r.top=Math.min(r.top+n,t);r.height=Math.max(r.height-n,s)}else l&_Edges.Bottom&&(r.height=Math.max(r.height+n,s));if(this.onSizeChanging(new PopupBoundsChangingEventArgs(r))){wijmo_1.setCss(e,{left:r.left+window.scrollX,top:r.top+window.scrollY,width:r.width,height:r.height,transform:"none"});this._resized=this._dragged=this._ignoreClick=!0;this.onSizeChanged()}if(!window.ResizeObserver){let t=this.hostElement.children;for(let e=0;e<t.length;e++)wijmo_1.Control.invalidateAll(t[e])}}else if(this._draggable&&(this._dragged||Math.abs(h)+Math.abs(n)>Popup._DRAG_THRESHOLD)){r.left=Math.max(o.left+h+(s.pageX-s.clientX),50-o.width);r.top=Math.max(o.top+n+(s.pageY-s.clientY),0);if(this.onPositionChanging(new PopupBoundsChangingEventArgs(r))){wijmo_1.setCss(e,{left:r.left,top:r.top});this._dragged=this._ignoreClick=!0;this.onPositionChanged()}}}}_getEdges(t,e){let i=0;if(this._resizable){let s=t.getBoundingClientRect(),h=Popup._SZ_EDGE;e.clientX-s.left<h&&(i|=_Edges.Left);e.clientY-s.top<h&&(i|=_Edges.Top);s.right-e.clientX<h&&(i|=_Edges.Right);s.bottom-e.clientY<h&&(i|=_Edges.Bottom)}return i}_ownerClick(t){this._toggle(t,PopupTrigger.ClickOwner)}_ownerDown(t){this._wasVisible=this.isVisible;this._toggle(t,PopupTrigger.DownOwner)}_ownerBlur(t){wijmo_1.contains(this._owner,wijmo_1.getActiveElement())||this._toggle(t,PopupTrigger.BlurOwner)}_ownerEnter(t){t.target==this._owner&&this._toggle(t,PopupTrigger.EnterOwner)}_ownerLeave(t){t.target==this._owner&&this._toggle(t,PopupTrigger.LeaveOwner)}_toggle(t,e){t instanceof MouseEvent&&(Popup._evtHover=t);if(!("mouseenter"==t.type&&Date.now()-this._lastShow<300||t.defaultPrevented)){let t=0!=(this._hideTrigger&e),i=0!=(this._showTrigger&e),s=PopupTrigger;(t||i)&&this._clearTimeouts();t&&this.isVisible&&(e&s.Leave?this._toHideLeave=setTimeout(()=>{let t=Popup._evtHover,e=t?document.elementFromPoint(t.clientX,t.clientY):null;e&&wijmo_1.contains(this.hostElement,e,!0)||this.hide()},wijmo_1.Control._LEAVE_DELAY):e&s.Blur?this._toHideBlur=setTimeout(()=>{this.containsFocus()||wijmo_1.contains(this._owner,wijmo_1.getActiveElement())||this.hide()},wijmo_1.Control._FOCUS_INTERVAL+50):this.hide());i&&e!=s.ClickPopup&&(this._wasVisible||(e&s.Enter?this._toShow=setTimeout(()=>{this.show()},wijmo_1.Control._HOVER_DELAY):this.show()))}}_getHeaderElement(){let t=this.hostElement;return t.querySelector(".wj-dialog-header")||t.querySelector(".modal-header")}_getClosestHeader(t){return wijmo_1.closest(t,".wj-dialog-header")||wijmo_1.closest(t,".modal-header")}_showBackdrop(){if(!this._bkDrop){this._bkDrop=document.createElement("div");this._bkDrop.tabIndex=-1;wijmo_1.addClass(this._bkDrop,"wj-popup-backdrop");this.addEventListener(this._bkDrop,"mousedown",t=>{t.preventDefault();t.stopPropagation();this.hostElement.focus();this.hideTrigger&PopupTrigger.Blur&&this.hide()})}wijmo_1.setCss(this._bkDrop,{zIndex:wijmo_1.Control._POPUP_ZINDEX,display:""});let t=this.hostElement;t.parentElement.insertBefore(this._bkDrop,t)}_validateAndHide(t){let e=this.hostElement;if(e instanceof HTMLFormElement)e.reportValidity()&&this.hide(t);else{let e=this.hostElement.querySelector(":invalid");e?e.focus():this.hide(t)}}}Popup._DRAG_THRESHOLD=6;Popup._SZ_EDGE=10;Popup._SZ_MIN=40;exports.Popup=Popup;class PopupBoundsChangingEventArgs extends wijmo_1.CancelEventArgs{constructor(t){super();this._rc=t}get bounds(){return this._rc}}exports.PopupBoundsChangingEventArgs=PopupBoundsChangingEventArgs;class InputDate extends DropDown{constructor(t,e){super(t);this._fmt="d";this._sep=" - ";this._rngs=null;this._showCal=!1;this._clsOnSel=!0;this._handleWheel=!0;this._clicked=!1;this._rangeChanged=!1;this._textInitialized=!1;this.valueChanged=new wijmo_1.Event;this.rangeEndChanged=new wijmo_1.Event;this.rangeChanged=new wijmo_1.Event;wijmo_1.addClass(this.hostElement,"wj-inputdate");this._msk=new wijmo_1._MaskProvider(this._tbx);wijmo_1.isIE9()||(this.inputType="tel");this._tbx.type.match(/^(tel|text|)$/i)||(this.inputType="text");this.addEventListener(this.hostElement,"wheel",t=>{if(this.handleWheel&&!t.defaultPrevented&&!this.isDroppedDown&&this.containsFocus()&&null!=this.value&&this._canChangeValue()){let e=wijmo_1.clamp(-t.deltaY,-1,1),i=this.value;this.value=this.selectionMode==DateSelectionMode.Month?wijmo_1.DateTime.addMonths(i,e):wijmo_1.DateTime.addDays(i,e);this.selectAll();t.preventDefault()}});let i=this._lbx=new ListBox(document.createElement("div"),{displayMemberPath:"name",selectedIndexChanged:t=>{let e=t.selectedItem,i=wijmo_1.DateTime.fromDateTime,s=wijmo_1.DateTime.sameDate;if(e&&e.from&&e.to){if(!s(e.from,this.value)||!s(e.to,this.rangeEnd)){let t=this.value;this.value=i(e.from,t);this.rangeEnd=i(e.to,t)}this._selectAll()}else this._cal.hostElement.style.display=""}}),s=this._cal=new Calendar(document.createElement("div")),h=this._dropDown;wijmo_1.addClass(h,"wj-inputdate-dropdown");h.appendChild(i.hostElement);h.appendChild(s.hostElement);this.addEventListener(h,"click",()=>{this._clicked=!0;setTimeout(()=>{this._clicked=!1},50)},!0);if("INPUT"==this._orgTag){let t=this._tbx.getAttribute("value");t&&(s.value=s.rangeEnd=wijmo_1.Globalize.parseDate(t,"yyyy-MM-dd"))}this.isRequired=!0;this._tbx.value=this._oldText=this._getText();this.initialize(e);if(this._textInitialized&&this._tbx.value!==this._oldText){this._oldText=this._tbx.value;this._commitText();this.onTextChanged();this._textInitialized=!1}this._updateState();s.valueChanged.addHandler((t,e)=>{this._refreshText();this.onValueChanged(e);this._closeOnChange()});s.rangeEndChanged.addHandler((t,e)=>{if(s._rngMode()){this.onRangeEndChanged(e);this._closeOnChange();s._clearingRangeEnd||this._refreshText()}});s.hostElement.addEventListener("click",t=>{if(s.selectionMode&&!s._rngMode()){let e=t.target,i=s.hitTest(e);if(wijmo_1.DateTime.sameDate(this.value,i)||wijmo_1.closest(e,"[wj-part=btn-today]")){this._closeOnChange();this._refreshText()}}})}get value(){return this._cal.value}set value(t){this._cal.value=t;(this.text||this.isRequired)&&this._refreshText()}get rangeEnd(){return this._cal.rangeEnd}set rangeEnd(t){this._cal.rangeEnd=t;(this.text||this.isRequired)&&this._refreshText()}get rangeMin(){return this._cal.rangeMin}set rangeMin(t){this._cal.rangeMin=t}get rangeMax(){return this._cal.rangeMax}set rangeMax(t){this._cal.rangeMax=t}get text(){return this._tbx.value}set text(t){let e=(t||"").toString();if(e!=this.text){e!=this._tbx.value&&(this._tbx.value=e);e!=this._oldText&&(this._oldText=e);this._commitText();this.onTextChanged()}}get format(){return this._fmt}set format(t){if(t!=this.format){this._fmt=wijmo_1.asString(t);this._refreshText()}}get separator(){return this._sep}set separator(t){if(t!=this._sep){this._sep=wijmo_1.asString(t,!1);this.invalidate()}}get mask(){return this._msk.mask}set mask(t){this._msk.mask=wijmo_1.asString(t)}get closeOnSelection(){return this._clsOnSel}set closeOnSelection(t){this._clsOnSel=wijmo_1.asBoolean(t)}get handleWheel(){return this._handleWheel}set handleWheel(t){t=wijmo_1.asBoolean(t);this._handleWheel=t;t||(this.calendar.handleWheel=t)}get predefinedRanges(){return this._rngs}set predefinedRanges(t){if(this._rngs!=t){wijmo_1.assert(null==t||wijmo_1.isObject(t),"Object expected");this._rngs=t;this._lbx.itemsSource=this._getRanges(t);this.invalidate()}}get alwaysShowCalendar(){return this._showCal}set alwaysShowCalendar(t){this._showCal=wijmo_1.asBoolean(t)}get min(){return this._cal.min}set min(t){this._cal.min=wijmo_1.asDate(t,!0)}get max(){return this._cal.max}set max(t){this._cal.max=wijmo_1.asDate(t,!0)}get repeatButtons(){return this._cal.repeatButtons}set repeatButtons(t){this._cal.repeatButtons=wijmo_1.asBoolean(t)}get showYearPicker(){return this._cal.showYearPicker}set showYearPicker(t){this._cal.showYearPicker=wijmo_1.asBoolean(t)}get showMonthPicker(){return this._cal.showMonthPicker}set showMonthPicker(t){this._cal.showMonthPicker=t}get showHeader(){return this._cal.showHeader}set showHeader(t){this._cal.showHeader=t}get weeksBefore(){return this._cal.weeksBefore}set weeksBefore(t){this._cal.weeksBefore=t}get weeksAfter(){return this._cal.weeksAfter}set weeksAfter(t){this._cal.weeksAfter=t}get selectionMode(){return this._cal.selectionMode}set selectionMode(t){if(t!=this.selectionMode){this._cal.selectionMode=t;this._refreshText()}}get monthCount(){return this._cal.monthCount}set monthCount(t){this._cal.monthCount=t}get calendar(){return this._cal}get inputElement(){return this._tbx}get inputType(){return this._tbx.type}set inputType(t){t.match(/^(tel|text|)$/i)?this._tbx.type=wijmo_1.asString(t):console.warn(`invalid input type '${t}', don't use any input types other than 'tel' or 'text'`)}get itemValidator(){return this._cal.itemValidator}set itemValidator(t){if(t!=this.itemValidator){this._cal.itemValidator=wijmo_1.asFunction(t);this.invalidate()}}get itemFormatter(){return this._cal.itemFormatter}set itemFormatter(t){this._cal.itemFormatter=wijmo_1.asFunction(t)}onValueChanged(t){this.valueChanged.raise(this,t)}onRangeEndChanged(t){this.rangeEndChanged.raise(this,t);this.rangeEnd&&(this.isDroppedDown?this._rangeChanged=!0:this.onRangeChanged(t))}onRangeChanged(t){this._rangeChanged=!1;this.rangeChanged.raise(this,t)}refresh(t=!0){super.refresh(t);if(this.hostElement){this._msk&&this._msk.refresh();this._cal&&this._cal.refresh();this._refreshText()}}onIsDroppedDownChanging(t){if(this.isDroppedDown){let t=this._cal;t._rngMode()&&t.value&&!t.rangeEnd&&(t.rangeEnd=t.value)}else{let t=this._lbx,e=this._cal,i=t.collectionView,s=t.hostElement.style,h=e.hostElement.style;if(e._rngMode()&&wijmo_1.hasItems(i)){let t=this._updateRangeSelection();s.display="";h.display=!this._showCal&&t&&t.from&&i.items.some(t=>!t.to)?"none":""}else{s.display="none";h.display=""}e._mthMode()||(e.monthView=!0)}return super.onIsDroppedDownChanging(t)}onIsDroppedDownChanged(t){super.onIsDroppedDownChanged(t);let e=this.containsFocus();if(this.isDroppedDown){e&&(this._tryFocus(this._cal)||this._tryFocus(this._lbx)||this.dropDown.focus());this._lbx.showSelection();this._cal.refresh()}else{this._commitText();this._rangeChanged&&this.onRangeChanged()}}_updateDropDown(){this._commitText();let t=getComputedStyle(this.hostElement);this._dropDown.style.minWidth=18*parseFloat(t.fontSize)+"px";this._cal.refresh();super._updateDropDown()}_keydown(t){if(!(t.defaultPrevented||t.altKey||t.ctrlKey||t.metaKey)){if(this._isHiddenEditor())return;switch(t.keyCode){case wijmo_1.Key.Enter:this.isDroppedDown?this._refreshText():this._commitText();break;case wijmo_1.Key.Escape:this.text=this._getText();this.selectAll();break;case wijmo_1.Key.Tab:if(this._cal._rngMode()){let e=this._tbx,i=this._sep,s=e.value,h=s.indexOf(i);if(h>-1){let n=s.length,o=e.selectionStart,l=e.selectionEnd,a=null;e.selectionEnd<=h&&!t.shiftKey?a=0==o&&0==l:t.shiftKey&&e.selectionStart>=h+i.length&&(a=o<n||l<n);if(null!=a){a?wijmo_1.setSelectionRange(e,0,h):wijmo_1.setSelectionRange(e,h+i.length,n);t.preventDefault()}}}break;case wijmo_1.Key.Up:case wijmo_1.Key.Down:if(!this.isDroppedDown&&this.value&&this._canChangeValue()){let e=t.keyCode==wijmo_1.Key.Up?1:-1,i=this.selectionMode==DateSelectionMode.Month?wijmo_1.DateTime.addMonths(this.value,e):wijmo_1.DateTime.addDays(this.value,e);this.value=this._fromDateTime(i);this.selectAll();t.preventDefault()}}}super._keydown(t)}_expandSelection(){if(this._cal._rngMode()){let t=this._tbx,e=t.value,i=t.selectionStart,s=t.selectionEnd,h=this._sep,n=e.indexOf(h);n>-1&&i==s&&(s<=n?wijmo_1.setSelectionRange(t,0,n):i>=n+h.length&&wijmo_1.setSelectionRange(t,n+h.length,t.value.length))}else super._expandSelection()}_refreshText(){let t=this._getText();if(t!=this.text||t!==this._oldText){this._tbx.value=this._oldText=t;this.onTextChanged()}}_selectAll(){this.isDroppedDown||!this.containsFocus()||this.isTouching||this.selectAll()}_closeOnChange(){if(this._clsOnSel&&this._clicked){let t=this._cal;(!t._rngMode()||t.value&&t.rangeEnd)&&setTimeout(()=>{this.isDroppedDown=!1})}}_tryFocus(t){let e=t.hostElement;if(e&&e.offsetHeight){e.focus();return!0}return!1}_clamp(t){return this._cal._clamp(t)}_getText(){let t=wijmo_1.Globalize.format,e=this._fmt,i=t(this.value,e);this._cal._rngMode()&&i&&(i+=this._sep+t(this.rangeEnd,e));return i}_commitText(t){let e=this._tbx.value;if(e!=this._getText()){let t=!1,i=this._fmt,s=this._cal,h=wijmo_1.Globalize.parseDate;if(e||this.isRequired)if(s._rngMode()){let n=e.split(this._sep);if(2==n.length&&n[0]){let e=h(n[0],i,this.value);if(e){let o=h(n[1],i,this.value);s.value=this._fromDateTime(e);s.rangeEnd=o&&o>=e?this._fromDateTime(o):e;t=!0}}}else{let s=h(e,i,this.value);if(s){this.value=this._fromDateTime(s);t=!0}}else{this.value=this.rangeEnd=null;t=!0}(t||!this._containsFocus()&&this.onInvalidInput(new wijmo_1.CancelEventArgs))&&(this.text=this._getText())}t||this._selectAll()}_fromDateTime(t){return wijmo_1.DateTime.fromDateTime(t,this.value)}_canChangeValue(){return!this.isReadOnly&&!this.isDisabled&&this.selectionMode!=DateSelectionMode.None}_isValidDate(t){if(t){if(this._clamp(t)!=t)return!1;if(this.itemValidator&&!this.itemValidator(t))return!1}return!0}_getRanges(t){let e=[];if(wijmo_1.isObject(t))for(let i in t){let s=t[i];e.push({name:i,from:s?s[0]:null,to:s?s[1]:null})}return new wijmo_1.CollectionView(e,{currentItem:null})}_updateRangeSelection(){let t=this._lbx,e=-1;if(wijmo_1.hasItems(t.collectionView)){let t=this._lbx.collectionView.items,i=wijmo_1.DateTime.sameDate;for(let s=0;s<t.length;s++){let h=t[s];if(h.from){if(i(h.from,this.value)&&i(h.to,this.rangeEnd)){e=s;break}}else e=s}}t.selectedIndex=e;return t.selectedItem}_copy(t,e){if("text"===t){let t=(e||"").toString();if(t!==this.text){this._tbx.value=t;this._textInitialized=!0}return!0}return!1}}exports.InputDate=InputDate;class InputDateRange extends InputDate{constructor(t,e){super(t,{selectionMode:DateSelectionMode.Range,showMonthPicker:"Outside",monthCount:2});wijmo_1.addClass(this.hostElement,"wj-inputdaterange");this._tbx.value=this._oldText=this._getText();this.initialize(e);if(this._tbx.value!==this._oldText){this._oldText=this._tbx.value;this._commitText()}}get selectionMode(){return this.calendar.selectionMode}set selectionMode(t){t=wijmo_1.asEnum(t,DateSelectionMode);wijmo_1.assert(t==DateSelectionMode.Range,'InputDateRange.selectionMode must be "Range"');this.calendar.selectionMode=t}}exports.InputDateRange=InputDateRange;class InputColor extends DropDown{constructor(t,e){super(t);this._textInitialized=!1;this.valueChanged=new wijmo_1.Event;wijmo_1.addClass(this.hostElement,"wj-inputcolor");this._ePreview=wijmo_1.createElement('<div class="wj-inputcolorbox"></div>',this.hostElement.firstElementChild);if("INPUT"==this._orgTag){this._tbx.type="";this._commitText()}this.value="#ffffff";this.isRequired=!0;this._tbx.value=this._oldText=this.value;this.initialize(e);if(this._textInitialized&&this._tbx.value!==this._oldText){this._oldText=this._tbx.value;this.onTextChanged();this._commitText();this._textInitialized=!1}this.addEventListener(this._colorPicker.hostElement,"click",t=>{let e=t.target;if(e&&"DIV"==e.tagName&&(wijmo_1.closest(e,'[wj-part="div-pal"]')||wijmo_1.closest(e,'[wj-part="div-pv"]'))){e.style.backgroundColor&&(this.isDroppedDown=!1)}})}get value(){return this._value}set value(t){this.text=t}get text(){return this._tbx.value}set text(t){if((t=wijmo_1.asString(t))!=this.text&&(t||!this.isRequired)&&(!t||wijmo_1.Color.fromString(t))){this._setText(t,!0);this._commitText()}}get showAlphaChannel(){return this._colorPicker.showAlphaChannel}set showAlphaChannel(t){this._colorPicker.showAlphaChannel=t}get showColorString(){return this._colorPicker.showColorString}set showColorString(t){this._colorPicker.showColorString=t}get palette(){return this._colorPicker.palette}set palette(t){this._colorPicker.palette=t}get colorPicker(){return this._colorPicker}onValueChanged(t){this.valueChanged.raise(this,t)}onIsDroppedDownChanged(t){super.onIsDroppedDownChanged(t);this.isDroppedDown&&!this.isTouching&&this.selectAll()}_createDropDown(){this._colorPicker=new ColorPicker(this._dropDown);wijmo_1.setCss(this._dropDown,{minWidth:420,minHeight:200});this._colorPicker.valueChanged.addHandler(()=>{this.value=this._colorPicker.value})}_keydown(t){if(!t.defaultPrevented)switch(t.keyCode){case wijmo_1.Key.Enter:this._commitText();this.selectAll();break;case wijmo_1.Key.Escape:this.text=this.value;this.selectAll()}super._keydown(t)}_commitText(){if(this._value!=this.text){if(!this.isRequired&&!this.text){this._value=this.text;this._ePreview.style.backgroundColor="";this.onValueChanged();return}if(wijmo_1.Color.fromString(this.text.replace(/\s+/g,""))){if(this.text&&this.text!==this.text.replace(/\s+/g,"")){this.text=this.text.replace(/\s+/g,"");return}let t=this._colorPicker;t.value=this.text;this._value=t.value;this._ePreview.style.backgroundColor=this.value;this.onValueChanged()}else this.onInvalidInput(new wijmo_1.CancelEventArgs)&&(this.text=this._value?this._value:"")}}_copy(t,e){if("text"===t){let t=(e||"").toString();if(t!==this.text){this._tbx.value=t;this._textInitialized=!0}return!0}return!1}}exports.InputColor=InputColor;class ComboBox extends DropDown{constructor(t,e){super(t);this._editable=!1;this._trimText=!0;this._handleWheel=!0;this._delKey=0;this._draggingText=!1;this._pathHdr=new wijmo_1.Binding(null);this._bsCollapse=!0;this._fmtItemHandlers=0;this._emptyValueAction=!1;this._oldIndexToBeRestoredOnBlur=null;this._restoreComboboxTbxVal=!1;this._isWheel=!1;this.itemsSourceChanged=new wijmo_1.Event;this.selectedIndexChanged=new wijmo_1.Event;let i=this.hostElement;wijmo_1.addClass(i,"wj-combobox");this.dropDown.id=wijmo_1.getUniqueId(i.id+"_dropdown");this.autoExpandSelection=!1;let s=this._tbx;this.addEventListener(s,"compositionstart",()=>{this._composing=!0});this.addEventListener(s,"compositionend",()=>{this._composing=!1;this._setText(this.text,!0)});this.addEventListener(s,"drag",()=>{this._draggingText=!0});this.addEventListener(i,"wheel",this._wheel.bind(this));"SELECT"==this._orgTag&&this._lbx._initFromSelect(i);let h=this._lbx;h.loadedItems.addHandler(t=>{this.selectedIndex>-1&&(this.selectedIndex=h.selectedIndex)});this.isRequired=!0;this.initialize(e)}get itemsSource(){return this._lbx.itemsSource}set itemsSource(t){if(this._lbx.itemsSource!=t){this._lbx.itemsSource=t;this.onItemsSourceChanged()}this._updateBtn()}get collectionView(){return this._lbx.collectionView}get virtualizationThreshold(){return this._lbx.virtualizationThreshold}set virtualizationThreshold(t){this._lbx.virtualizationThreshold=t}get showGroups(){return this._lbx.showGroups}set showGroups(t){this._lbx.showGroups=t}get displayMemberPath(){return this._lbx.displayMemberPath}set displayMemberPath(t){this._lbx.displayMemberPath=t;let e=this.getDisplayText();this.text!=e&&this._setText(e,!0)}get headerPath(){return this._pathHdr.path}set headerPath(t){this._pathHdr.path=wijmo_1.asString(t);let e=this.getDisplayText();this.text!=e&&this._setText(e,!0)}get selectedValuePath(){return this._lbx.selectedValuePath}set selectedValuePath(t){this._lbx.selectedValuePath=t}get isContentHtml(){return this._lbx.isContentHtml}set isContentHtml(t){if(t!=this.isContentHtml){this._lbx.isContentHtml=wijmo_1.asBoolean(t);let e=this.getDisplayText();this.text!=e&&this._setText(e,!0)}}get caseSensitiveSearch(){return this._lbx.caseSensitiveSearch}set caseSensitiveSearch(t){this._lbx.caseSensitiveSearch=wijmo_1.asBoolean(t)}get trimText(){return this._trimText}set trimText(t){if(t!=this._trimText){this._trimText=wijmo_1.asBoolean(t);this.invalidate()}}get itemFormatter(){return this._lbx.itemFormatter}set itemFormatter(t){this._lbx.itemFormatter=wijmo_1.asFunction(t);this.selectedIndex=this._lbx.selectedIndex}get formatItem(){return this._lbx.formatItem}get selectedIndex(){return this._lbx.selectedIndex}set selectedIndex(t){t!=this.selectedIndex&&wijmo_1.isNumber(t)&&(this._lbx.selectedIndex=t);let e=this._lbx._oldSelectedIndex!=this.selectedIndex;t=this.selectedIndex;let i=this.getDisplayText(t);if(this.text!=i||e){let t=this._internalSettingText;this._internalSettingText=this._lbx._ignoredItemChangedEvents;this._setText(i,!0);""!=this.text&&(this._emptyValueAction=!1);this._internalSettingText=t}}get selectedItem(){return this._lbx.selectedItem}set selectedItem(t){this._lbx.selectedItem=t}get selectedValue(){return this.collectionView?this._lbx.selectedValue:this.text}set selectedValue(t){this.collectionView?this._lbx.selectedValue=t:null!=t&&(this.text=t.toString())}get isEditable(){return this._editable}set isEditable(t){this._editable=wijmo_1.asBoolean(t)}get handleWheel(){return this._handleWheel}set handleWheel(t){this._handleWheel=wijmo_1.asBoolean(t)}get maxDropDownHeight(){return this._lbx.maxHeight}set maxDropDownHeight(t){this._lbx.maxHeight=t}get maxDropDownWidth(){let t=this._dropDown,e=t?parseInt(t.style.maxWidth):null;return isNaN(e)?null:e}set maxDropDownWidth(t){let e=this._dropDown.style;t=wijmo_1.asNumber(t,!0);e.maxWidth=null==t?"":t+"px";e.minWidth=""}getDisplayText(t=this.selectedIndex,e=this._trimText){let i,s=this.collectionView;if(this.headerPath&&t>-1&&wijmo_1.hasItems(s)){let e=s.items[t];i=null!=(i=e?this._pathHdr.getValue(e):null)?i.toString():"";this.isContentHtml&&(i=wijmo_1.toPlainText(i))}else i=this._lbx.getDisplayText(t);return e?i.trim():i}indexOf(t,e,i=!1){let s=this.collectionView,h=this.caseSensitiveSearch;if(wijmo_1.hasItems(s)&&null!=t){t=t.toString();h||(t=t.toLowerCase());if(this._trimText&&!i){-1!==this.indexOf(t,!1,!0)||(t=t.trim())}let n=this.selectedIndex,o=this.getDisplayText(n);if(e){h||(o=o.toLowerCase());if(t==o)return n}else if(!t&&""==o)return n;for(let i=0;i<s.items.length;i++)if(this._lbx.isItemEnabled(i)){o=this.getDisplayText(i);this.trimText&&(o=o.trim());h||(o=o.toLowerCase());if(e){if(o==t&&!1===this._emptyValueAction)return i}else if(t&&0==o.indexOf(t)||!t&&""==o&&!1===this._emptyValueAction)return i}}return-1}get listBox(){return this._lbx}onItemsSourceChanged(t){this.itemsSourceChanged.raise(this,t)}onSelectedIndexChanged(t){this._updateBtn();this.selectedIndexChanged.raise(this,t)}refresh(t=!0){super.refresh(t);if(this.hostElement&&wijmo_1.hasItems(this.collectionView)){this._lbx.refresh();this.selectedIndex>-1&&(this.selectedIndex=this._lbx.selectedIndex)}}onLostFocus(t,e,i){this._trimText&&(this.text=this.text.trim());if(this._composing){this._composing=!1;this._setText(this.text,!0)}if((!this.text&&this.isRequired||i)&&wijmo_1.hasItems(this.collectionView)){void 0!==e&&(this.selectedIndex=-1!==e?e:0);null!==this._oldIndexToBeRestoredOnBlur?this.selectedIndex=-1!==this._oldIndexToBeRestoredOnBlur?this._oldIndexToBeRestoredOnBlur:0:null==this.collectionView.currentItem&&(this.selectedIndex=0)}let s=this.text,h=this.collectionView?this.collectionView.items.length:0;super.onLostFocus(t);let n=this.collectionView?this.collectionView.items.length:0;this._trySelectionUpdateOnItemsSourceChanged(n!==h,s)}onIsDroppedDownChanging(t){if(!this.isDroppedDown&&!this._hasItems()){t.cancel=!0;return!1}return super.onIsDroppedDownChanging(t)}onIsDroppedDownChanged(t){super.onIsDroppedDownChanged(t);if(this.isDroppedDown){this._fmtItemHandlers=this.formatItem.handlerCount;this._lbx.showSelection()}this._updateAria()}_trySelectionUpdateOnItemsSourceChanged(t,e){if(t&&e){let t=this.indexOf(e,!0);t<0&&(t=this.indexOf(e,!1));this.selectedIndex=t}}_setIsDisabled(t){super._setIsDisabled(t);this._updateBtn()}_updateBtn(){let t=this.collectionView,e=this._tbx,i=this._hasItems();super._updateBtn();this._btn.style.display=this._showBtn&&null!=t?"":"none";wijmo_1.enable(this._btn,i&&!this.isDisabled);wijmo_1.setAttribute(e,"role",i?"combobox":null);wijmo_1.setAttribute(e,"aria-autocomplete",i?"both":null);this._updateAria()}_hasItems(){return wijmo_1.hasItems(this.collectionView)}_updateAria(){let t=this._tbx,e=this.isDroppedDown,i=this.dropDown?this.dropDown.id:null,s=i&&wijmo_1.hasItems(this.collectionView);wijmo_1.setAttribute(t,"aria-owns",s&&e?i:null);wijmo_1.setAttribute(t,"aria-expanded",s?e:null)}_createDropDown(){if(!this._lbx){this._lbx=new ListBox(this._dropDown);this._lbx._container=this.hostElement}this._lbx.maxHeight=200;this._lbx.selectedIndexChanged.addHandler(()=>{this._updateBtn();let t=this._lbx.selectedIndex,e=this._lbx.hostElement.children,i=t>-1&&t<e.length?e[t].id:null;wijmo_1.setAttribute(this._tbx,"aria-activedescendant",i&&i.length?i:null);this.selectedIndex=t;this.onSelectedIndexChanged()});this._lbx.itemsChanged.addHandler(()=>{this._updateBtn()})}_wheel(t){this._isWheel=!0;if(this.handleWheel&&!t.defaultPrevented&&!this.isDroppedDown&&!this.isReadOnly&&this.containsFocus()&&this.selectedIndex>-1){let e=this._findNext("",t.deltaY>0?1:-1);e>-1&&(this.selectedIndex=e);t.preventDefault()}this._isWheel=!1}_dropDownClick(t){t.defaultPrevented||t.target!=this._dropDown&&(this.isDroppedDown=!1);this._restoreComboboxTbxVal&&(this._tbx.value=this.getDisplayText(this.selectedIndex));super._dropDownClick(t)}_setText(t,e){if(this._composing||this._settingText)return;this._settingText=!0;if(this.containsFocus()){let t=this.formatItem.handlerCount;if(this._fmtItemHandlers!=t){this._fmtItemHandlers=t;this._lbx.loadList()}}t=[null,void 0,NaN].includes(t)?"":t.toString();let i=this.selectedIndex,s=this.collectionView,h=this._getSelStart(),n=-1,o=!0;if(this.isEditable&&(this._delKey||this._getSelEnd()<t.length||!this.containsFocus())){e=!0;o=!1}i=this.indexOf(t,e);if(o){i<0&&e&&(i=this.indexOf(t,!1));i<0&&h>0&&(i=this.indexOf(t.substr(0,h),!1));if(!e){let e=this.indexOf(t,!0);e>-1&&i>-1&&e!=i&&(i=e)}}i<0&&this._delKey&&(i=this.indexOf(t,e));if(i<0&&!this.isEditable&&wijmo_1.hasItems(s)&&(t&&this.isRequired||this.containsFocus()&&(t||this.isRequired))){let e=this._oldText||"";i=Math.max(0,this.indexOf(e,!1));h=0;for(let i=0;i<t.length&&i<e.length;i++)if(t[i]!=e[i]){h=i;break}}if((!this._delKey||!this.isEditable||this._delKey&&this.isEditable&&t==this.getDisplayText(i))&&(!this._pristine||this._pristine&&!this.isEditable)||this._isWheel||this._delKey&&""==t&&i>-1){if(i>-1){n=h;t=this.getDisplayText(i)}let e=this._tbx;t!=e.value&&(e.value=t);n>-1&&this.containsFocus()&&!this.isTouching&&this._updateInputSelection(n)}if(s){if(!t||this.trimText&&""==t.trim()&&!this.containsFocus()&&this.isEditable)if(i>-1)this._oldIndexToBeRestoredOnBlur=i;else{this._oldIndexToBeRestoredOnBlur=this.indexOf(this._oldText,!0);this._oldIndexToBeRestoredOnBlur=this._oldIndexToBeRestoredOnBlur<0?this.indexOf(this._oldText,!1):this._oldIndexToBeRestoredOnBlur}this._restoreComboboxTbxVal=t&&i>-1;s.moveCurrentToPosition(i)}this.containsFocus()||this.isEditable||this.isRequired||t!=t.trim()||!this.trimText||(this._tbx.value=this.getDisplayText(i,this.trimText));!this.containsFocus()&&i>-1&&this.isEditable&&(t=this.getDisplayText(i,this.trimText));!this.containsFocus()&&i<0&&!this.isEditable&&!this.isRequired&&(t="");let l=!1;!t&&i<0&&this.isRequired&&!this.containsFocus()&&(l=!0);this.trimText&&!this.containsFocus()&&this.isEditable&&(this.isRequired&&""==t.trim()?l=!0:t=t.trim());if(l){this.selectedIndex=this._oldIndexToBeRestoredOnBlur;this.selectedIndex<0&&(this.selectedIndex=0)}let a=!this.containsFocus()&&!this.isRequired&&!this.isEditable&&this.trimText;a&&(this._tbx.value=this.getDisplayText(i,!0));this._delKey=0;this._settingText=!1;super._setText(l?this.getDisplayText(this.selectedIndex):t,e,l,a)}_findNext(t,e,i=this.selectedIndex){let s=this.collectionView,h=s?s.items.length:0,n=this._lbx,o=this.caseSensitiveSearch;if(s&&h&&e){o||(t=t.toLowerCase());for(let s=i+e;s>-1&&s<h;s+=e){let e=this.getDisplayText(s);o||(e=e.toLowerCase());if(0==e.indexOf(t)){if(!this.dropDown.children[s]||n.isItemEnabled(s))return s}}}return i}_keydown(t){super._keydown(t);if(t.defaultPrevented||this.isReadOnly)return;if(t.altKey)return;if(!wijmo_1.hasItems(this.collectionView))return;if(this._elRef!=this._tbx)return;if(this._isHiddenEditor())return;this._delKey=0;let e=this._getSelStart(),i=this._getSelEnd();switch(t.keyCode){case wijmo_1.Key.Back:case wijmo_1.Key.Delete:case 88:if(!t.ctrlKey&&!t.metaKey&&88==t.keyCode)break;if(this._bsCollapse&&!this.isEditable&&e>0&&i==this._tbx.value.length&&wijmo_1.hasItems(this.collectionView)){this._setSelRange(e-1,i);e-=1}this._delKey=t.keyCode;break;case wijmo_1.Key.Up:case wijmo_1.Key.Down:e==this.text.length&&(e=0);this.selectedIndex=this._findNext(this.text.substr(0,e),t.keyCode==wijmo_1.Key.Up?-1:1);this._setSelRange(e,this.text.length);t.preventDefault();break;case wijmo_1.Key.PageUp:this._lbx._selectPrevPage();this.selectAll();t.preventDefault();break;case wijmo_1.Key.PageDown:this._lbx._selectNextPage();this.selectAll();t.preventDefault()}this.text.length>0&&["Backspace","Delete","x"].includes(t.key)&&0===e&&i===this.text.length||this._delKey&&1===this.text.length?this._emptyValueAction=!0:this._composing||(this._emptyValueAction=!1)}_input(t){this._draggingText&&(""===this.text?this._emptyValueAction=!0:this._emptyValueAction=!1);this._setText(this.text,!1);""!=this.text&&(this._emptyValueAction=!1);this._draggingText=!1}_updateInputSelection(t){let e=this._tbx;this._elRef==e&&this._setSelRange(t,e.value.length)}_getSelStart(){let t=this._tbx;return t&&t.value?t.selectionStart:0}_getSelEnd(){let t=this._tbx;return t&&t.value?t.selectionEnd:0}_setSelRange(t,e){let i=this._tbx;this._elRef!=i||i.readOnly||wijmo_1.setSelectionRange(i,t,e)}}exports.ComboBox=ComboBox;wijmo_1._addCultureInfo("MultiSelect",{itemsSelected:"{count:n0} items selected",selectAll:"Select All"});class MultiSelect extends ComboBox{constructor(t,e){super(t);this._maxHdrItems=2;this._readOnly=!1;this._hdrFmt=null;this.checkedItemsChanged=new wijmo_1.Event;wijmo_1.addClass(this.hostElement,"wj-multiselect");this._tbx.readOnly=!0;this.checkedMemberPath=null;this.removeEventListener(this.dropDown,"click");this._lbx.itemsChanged.addHandler(()=>{this._updateHeader(!1)});this._lbx.checkedItemsChanged.addHandler(()=>{this._updateHeader(!1);this.onCheckedItemsChanged()});this.clickAction=ClickAction.Toggle;this.initialize(e)}get showSelectAllCheckbox(){return this._msLbx.showSelectAllCheckbox}set showSelectAllCheckbox(t){this._msLbx.showSelectAllCheckbox=wijmo_1.asBoolean(t)}get showFilterInput(){return this._msLbx.showFilterInput}set showFilterInput(t){this._msLbx.showFilterInput=wijmo_1.asBoolean(t)}get delay(){return this._msLbx.delay}set delay(t){this._msLbx.delay=t}get caseSensitiveSearch(){return this._msLbx.caseSensitiveSearch}set caseSensitiveSearch(t){this._msLbx.caseSensitiveSearch=t}get filterInputPlaceholder(){return this._msLbx.filterInputPlaceholder}set filterInputPlaceholder(t){this._msLbx.filterInputPlaceholder=wijmo_1.asString(t)}get checkOnFilter(){return this._msLbx.checkOnFilter}set checkOnFilter(t){if(t!=this.checkOnFilter){this._msLbx.checkOnFilter=wijmo_1.asBoolean(t);this.checkedItems=[]}}get selectAllLabel(){return this._msLbx.selectAllLabel}set selectAllLabel(t){this._msLbx.selectAllLabel=wijmo_1.asString(t)}get checkedMemberPath(){return this._msLbx.checkedMemberPath}set checkedMemberPath(t){this._msLbx.checkedMemberPath=wijmo_1.asString(t)}get maxHeaderItems(){return this._maxHdrItems}set maxHeaderItems(t){if(this._maxHdrItems!=t){this._maxHdrItems=wijmo_1.asNumber(t);this._updateHeader()}}get headerFormat(){return this._hdrFmt}set headerFormat(t){if(t!=this._hdrFmt){this._hdrFmt=wijmo_1.asString(t);this._updateHeader()}}get headerFormatter(){return this._hdrFormatter}set headerFormatter(t){if(t!=this._hdrFormatter){this._hdrFormatter=wijmo_1.asFunction(t);this._updateHeader()}}get checkedItems(){return this._msLbx.checkedItems}set checkedItems(t){this._msLbx.checkedItems=null==t?[]:wijmo_1.asArray(t);this._updateHeader()}onCheckedItemsChanged(t){this.checkedItemsChanged.raise(this,t)}dispose(){this._lbx.dispose();super.dispose()}onIsDroppedDownChanged(t){super.onIsDroppedDownChanged(t);setTimeout(()=>{if(this.isDroppedDown&&this.containsFocus())if(this.showFilterInput&&!this.isTouching)this._msLbx._filter.focus();else{let t=this.listBox;if(t.selectedIndex<0){let e=0,i=t.checkedItems;i.length&&(e=t.collectionView.items.indexOf(i[0]));t.selectedIndex=Math.max(0,e)}t.showSelection(!0);t.focus()}})}onLostFocus(){this._msLbx.onLostFocus();this.isDroppedDown=!1;super.onLostFocus()}_createDropDown(){let t=wijmo_1.createElement("<div></div>",this._dropDown);this._msLbx=new MultiSelectListBox(t);this._lbx=this._msLbx.listBox;super._createDropDown()}get isReadOnly(){return this._readOnly}set isReadOnly(t){this._readOnly=wijmo_1.asBoolean(t);wijmo_1.toggleClass(this.hostElement,"wj-state-readonly",this.isReadOnly)}refresh(t=!0){super.refresh(t);this.hostElement&&this._updateHeader()}_setText(t,e){}_keydown(t){super._keydown(t);wijmo_1.hasClass(this._tbx,"wj-grid-ime")||!t.defaultPrevented&&wijmo_1.hasItems(this.collectionView)&&t.keyCode>32&&(this.isDroppedDown=!0)}_hasItems(){let t=this.collectionView,e=t?t.sourceCollection:null;return wijmo_1.hasItems(t)||e&&e.length&&this.showFilterInput}_updateHeader(t=!0){let e="";if(wijmo_1.isFunction(this._hdrFormatter))e=this._hdrFormatter(this);else{let t=this.checkedItems,i=[];if(this.displayMemberPath){let e=new wijmo_1.Binding(this.displayMemberPath);i=t.reduce((t,i)=>{t.find(t=>e.getValue(t)===e.getValue(i))||t.push(i);return t},[]);t=i}if(t.length>0)if(t.length<=this._maxHdrItems){if(this.headerPath){let e=new wijmo_1.Binding(this.headerPath);t=t.map(t=>e.getValue(t))}else if(this.displayMemberPath){let e=new wijmo_1.Binding(this.displayMemberPath);t=t.map(t=>e.getValue(t))}this.isContentHtml&&(t=t.map(t=>wijmo_1.toPlainText(t)));this.trimText&&(t=t.map(t=>t?t.toString().trim():""));e=t.join(", ")}else e=wijmo_1.format(this.headerFormat||wijmo_1.culture.MultiSelect.itemsSelected,{count:t.length})}let i=this.inputElement;if(e!=i.value){i.value=e;this.onTextChanged()}t&&this._lbx._updateCheckedList(this.checkedItems);this._updateState()}}MultiSelect._DEF_CHECKED_PATH="$checked";exports.MultiSelect=MultiSelect;class Menu extends ComboBox{constructor(t,e){super(t);this._closing=!1;this._cmd=null;this._cmdPath=null;this._cmdParamPath=null;this._subPath=null;this._owner=null;this._isButton=!1;this._openOnHover=!1;this._closeOnLeave=!0;this._subMenu=null;this._hoverEnterBnd=this._hoverEnter.bind(this);this._hoverLeaveBnd=this._hoverLeave.bind(this);this._hoverOverBnd=this._hoverOver.bind(this);this.itemClicked=new wijmo_1.Event;let i=this.hostElement,s=this._tbx,h=this._lbx,n=this.dropDown;wijmo_1.addClass(i,"wj-menu");s.style.display="none";this._hdr=this._elRef=wijmo_1.createElement('<div wj-part="header" class="wj-form-control"/>');s.parentElement.insertBefore(this._hdr,this._tbx);i.tabIndex=this.isDisabled?-1:this._orgTabIndex;this.isRequired=!1;wijmo_1.setAttribute(i,"role","menubar",!0);wijmo_1.setAttribute(s,"role",null);wijmo_1.setAttribute(s,"aria-autocomplete",null);wijmo_1.setAttribute(s,"aria-owns",null);wijmo_1.setAttribute(n,"role","menu");h.itemRole="menuitem";if("SELECT"==this._orgTag){this.header=i.getAttribute("header");this._lbx.itemsSource&&(this.commandParameterPath="cmdParam")}this.isContentHtml=!0;this.maxDropDownHeight=500;this.addEventListener(this._hdr,"click",t=>{if(!t.defaultPrevented){this._clearHover(t);if(this._isButton){this.isDroppedDown=!1;this._raiseCommand()}else this.isDroppedDown=!this.isDroppedDown}});h.lostFocus.addHandler(()=>{this.containsFocus()||(this.isDroppedDown=!1)});wijmo_1.addClass(n,"wj-menu-items");h.formatItem.addHandler(this._formatMenuItem.bind(this));this.initialize(e)}get header(){return this._hdr.innerHTML}set header(t){this._hdr.innerHTML=wijmo_1.asString(t)}get command(){return this._cmd}set command(t){this._cmd=t}get commandPath(){return this._cmdPath}set commandPath(t){this._cmdPath=wijmo_1.asString(t)}get commandParameterPath(){return this._cmdParamPath}set commandParameterPath(t){this._cmdParamPath=wijmo_1.asString(t)}get subItemsPath(){return this._subPath}set subItemsPath(t){if(t!=this._subPath){this._subPath=t;this.refresh(!0)}}get openOnHover(){return this._openOnHover}set openOnHover(t){this._openOnHover=wijmo_1.asBoolean(t);this._updateHoverEvents()}get closeOnLeave(){return this._closeOnLeave}set closeOnLeave(t){this._closeOnLeave=wijmo_1.asBoolean(t);this._updateHoverEvents()}get isButton(){return this._isButton}set isButton(t){this._isButton=wijmo_1.asBoolean(t)}get owner(){return this._owner}set owner(t){this._owner=wijmo_1.asType(t,HTMLElement,!0);this._enableDisableItems()}show(t){if(!this.isDroppedDown){let e=this._lbx._ignoredItemChangedEvents;this._lbx._ignoredItemChangedEvents=!0;this.selectedIndex=-1;this._lbx._ignoredItemChangedEvents=e;if(this.onIsDroppedDownChanging(new wijmo_1.CancelEventArgs)){let e=this.dropDown,i=this.owner;!i&&t instanceof MouseEvent&&(i=t.target);i instanceof HTMLElement&&(e[wijmo_1.Control._OWNR_KEY]=i);if(t instanceof MouseEvent&&this.openOnHover&&this.closeOnLeave){let e=2;t=new wijmo_1.Point(t.pageX-pageXOffset-e,t.pageY-pageYOffset-e)}wijmo_1.showPopup(e,t,!1,this.isAnimated);this.onIsDroppedDownChanged();e.focus()}}}hide(){if(this.isDroppedDown&&this.onIsDroppedDownChanging(new wijmo_1.CancelEventArgs)){wijmo_1.hidePopup(this.dropDown);this.onIsDroppedDownChanged()}}onItemClicked(t){this.itemClicked.raise(this,t)}refresh(t=!0){super.refresh(t);this.hostElement&&this._enableDisableItems()}onIsDroppedDownChanged(t){super.onIsDroppedDownChanged(t);if(this.isDroppedDown){this._closing=!0;let t=this._lbx._ignoredItemChangedEvents;this._lbx._ignoredItemChangedEvents=!0;this._defaultItem=this.selectedItem;this.isRequired=!1;this.selectedIndex=-1;this._enableDisableItems();this._closing=!1;this._lbx._ignoredItemChangedEvents=t;this.dropDown.focus()}else{if(!this.selectedItem){let t=this._lbx._checking;this._lbx._checking=!0;this.selectedItem=this._defaultItem;this._lbx._checking=t}let t=this._subMenu;t&&(t.isDroppedDown=!1)}}_updateHoverEvents(){let t=this.hostElement,e=this.dropDown,i=this.addEventListener.bind(this),s=this.removeEventListener.bind(this),h="mouseleave";s(t,"mouseenter",this._hoverEnterBnd);s(t,h,this._hoverLeaveBnd);s(e,"mouseover",this._hoverOverBnd);s(e,h,this._hoverLeaveBnd);if(this._openOnHover){i(t,"mouseenter",this._hoverEnterBnd);i(e,"mouseover",this._hoverOverBnd);if(this._closeOnLeave){i(t,h,this._hoverLeaveBnd);i(e,h,this._hoverLeaveBnd)}}}_getSubItems(t){let e=this.subItemsPath,i=t&&e?t[e]:null;return wijmo_1.isArray(i)&&i.length?i:null}_formatMenuItem(t,e){let i=e.item;if(this._getSubItems(e.data))wijmo_1.addClass(i,"wj-subitems");else if("-"==i.innerHTML){i.innerHTML="";wijmo_1.addClass(i,"wj-separator")}}_keydown(t){if(!t.defaultPrevented){let i=this._getKeyCode(t);if(this.isDroppedDown)switch(i){case wijmo_1.Key.Enter:case wijmo_1.Key.Right:if(this._showSubMenu()){t.preventDefault();return}break;case wijmo_1.Key.Left:var e=wijmo_1.Control.getControl(this.owner);if(e instanceof Menu){let i=e.dropDown,s=e.selectedIndex;(s>-1?i.children[s]:i).focus();t.preventDefault();return}}if(i==wijmo_1.Key.Enter)if(this.isDroppedDown)this.selectedIndex>-1&&this._raiseCommand();else{this.isDroppedDown=!0;t.preventDefault()}}super._keydown(t)}_dropDownClick(t){if(!t.defaultPrevented&&t.target!=this.dropDown){this._clearHover(t);if(this._showSubMenu()){t.preventDefault();return}this.selectedIndex>-1&&this._raiseCommand()}super._dropDownClick(t)}_showSubMenu(){let t=this._getSubItems(this.selectedItem);if(!t)return null;let e=this.dropDown.children[this.selectedIndex].getBoundingClientRect(),i=new wijmo_1.Point(e.right,e.top);if(0==e.height)return null;let s=this.rightToLeft||"rtl"==this.dropDown.getAttribute("dir");s&&(i.x=e.left);let h=this._subMenu;h&&(h.isDroppedDown=!1);h=new Menu(document.createElement("div"),{owner:this.hostElement,itemsSource:t,itemClicked:(t,e)=>{this.itemClicked.raise(t,e)},formatItem:(t,e)=>{this.formatItem.raise(t,e)}});let n=this.collectionView,o=h.collectionView;n&&n.filter&&o&&!o.filter&&(o.filter=n.filter);"displayMemberPath,selectedValuePath,isContentHtml,command,commandPath,commandParameterPath,maxDropDownWidth,maxDropDownHeight,dropDownCssClass,isAnimated,subItemsPath,openOnHover,closeOnLeave".split(",").forEach(t=>{h[t]=this[t]});let l=h.dropDown;wijmo_1.setAttribute(l,"dir",s?"rtl":null);h.show(i);l[wijmo_1.Control._OWNR_KEY]=this.dropDown;l.focus();return h}_raiseCommand(t){let e=this.selectedItem,i=this._getSubItems(e),s=this._getCommand(e);if(s&&!i){let t=this._getCommandParm(e);if(!this._canExecuteCommand(s,t))return;this._executeCommand(s,t)}let h=this.headerPath;if(h){let t=new wijmo_1.Binding(h).getValue(e);t=null==t?"":t.toString();this.header=this.isContentHtml?t:wijmo_1.escapeHtml(t)}this.onItemClicked(t);if(this.containsFocus()){let t=this;for(;t&&t.owner;){let e=wijmo_1.Control.getControl(t.owner);if(!(e instanceof Menu))break;t=e}let e=t.owner;!e&&t.dropDown&&(e=t.dropDown[wijmo_1.Control._OWNR_KEY]);t.isDroppedDown=!1;t.focus();if(!t.containsFocus()&&e instanceof HTMLElement&&e.offsetHeight)if(wijmo_1.isIE){let t=document.documentElement,i=t.scrollLeft,s=t.scrollTop;e.focus();t.scrollLeft=i,t.scrollTop=s}else e.focus()}}_getCommand(t){let e=t&&this._cmdPath?t[this._cmdPath]:null;return e||this._cmd}_getCommandParm(t){let e=this._cmdParamPath;return t&&e?t[e]:t}_executeCommand(t,e){t&&!wijmo_1.isFunction(t)&&(t=t.executeCommand);wijmo_1.isFunction(t)&&t(e)}_canExecuteCommand(t,e){if(t){let i=t.canExecuteCommand;if(wijmo_1.isFunction(i))return i(e)}return!0}_enableDisableItems(){if(this.collectionView&&(this._cmd||this._cmdPath)){let t=this.collectionView.items;for(let e=0;e<t.length;e++){let i=t[e],s=this._getCommand(i);if(s){let t=this._lbx.hostElement.children[e],h=this._getCommandParm(i);wijmo_1.toggleClass(t,"wj-state-disabled",!this._canExecuteCommand(s,h))}}}}_clearHover(t){this._toHover&&clearTimeout(this._toHover);this._toHover=null;Menu._evtHover=t}_isTargetDisabled(t){return wijmo_1.hasClass(t.target,"wj-state-disabled")}_hoverEnter(t){this._clearHover(t);this._toHover=setTimeout(()=>{this._toHover=null;this.isDroppedDown=!0},wijmo_1.Control._HOVER_DELAY)}_hoverOver(t){this._clearHover(t);this._toHover=setTimeout(()=>{this._toHover=null;let e=this.listBox.indexOf(t.target);if(e>-1&&!wijmo_1.hasClass(t.target,"wj-state-disabled")){this.selectedIndex=e;this._subMenu=this._showSubMenu()}},wijmo_1.Control._HOVER_DELAY)}_hoverLeave(t){this._clearHover(t);this.isDroppedDown&&(this._toHover=setTimeout(()=>{let e=(t=Menu._evtHover)?document.elementFromPoint(t.clientX,t.clientY):null,i=wijmo_1.closest(e,".wj-listbox.wj-menu-items"),s=this._subMenu;if(!i&&!wijmo_1.contains(this.hostElement,e,!0)){this.isDroppedDown=!1;s&&(s.isDroppedDown=!1)}},wijmo_1.Control._LEAVE_DELAY))}_setIsDisabled(t){super._setIsDisabled(t);this.hostElement.tabIndex=this.isDisabled?-1:this._orgTabIndex}_setTabOrder(t){super._setTabOrder(t);this.hostElement.tabIndex=this.isDisabled?-1:this._orgTabIndex}}exports.Menu=Menu;class InputTime extends ComboBox{constructor(t,e){super(t);this._format="t";this.valueChanged=new wijmo_1.Event;wijmo_1.addClass(this.hostElement,"wj-inputtime");this.isEditable=!0;this._value=wijmo_1.DateTime.newDate();this._min=this._max=null;this._msk=new wijmo_1._MaskProvider(this._tbx);wijmo_1.isIE9()||(this._tbx.type="tel");if("INPUT"==this._orgTag){let t=this._tbx.getAttribute("value");t&&(this.value=wijmo_1.Globalize.parseDate(t,"HH:mm:ss"))}this.step=15;this.autoExpandSelection=!0;this.initialize(e);this._commitText()}get inputElement(){return this._tbx}get inputType(){return this._tbx.type}set inputType(t){this._tbx.type=wijmo_1.asString(t)}get value(){return this._value}set value(t){(t=wijmo_1.asDate(t,!this.isRequired))&&(t=this._clamp(t));this._setText(t?wijmo_1.Globalize.format(t,this.format):"",!0);this.selectedItem&&this.selectedItem.value&&(t=wijmo_1.DateTime.fromDateTime(t,this.selectedItem.value));if(t!=this._value&&!wijmo_1.DateTime.equals(t,this._value)){this._value=t;this.onValueChanged()}}get text(){return this._tbx.value}set text(t){if(t!=this.text&&(this.text||!this.isRequired)){this._setText(t,!0);this._commitText()}!this.text&&this.isRequired&&(this.selectedIndex=this._oldIndexToBeRestoredOnBlur<0?0:this._oldIndexToBeRestoredOnBlur)}get min(){return this._min}set min(t){this._min=wijmo_1.asDate(t,!0);this.isDroppedDown=!1;this._updateItems()}get max(){return this._max}set max(t){this._max=wijmo_1.asDate(t,!0);this.isDroppedDown=!1;this._updateItems()}get step(){return this._step}set step(t){if(t!=this.step){this._step=wijmo_1.asNumber(t,!0);this.isDroppedDown=!1;this._updateItems()}}get format(){return this._format}set format(t){if(t!=this.format){this._format=wijmo_1.asString(t);this._tbx.value=wijmo_1.Globalize.format(this.value,this.format);wijmo_1.hasItems(this.collectionView)&&this._updateItems()}}get mask(){return this._msk.mask}set mask(t){this._msk.mask=wijmo_1.asString(t)}onLostFocus(){super.onLostFocus()}onValueChanged(t){this.valueChanged.raise(this,t)}onItemsSourceChanged(t){super.onItemsSourceChanged(t);this._hasCustomItems=null!=this.itemsSource}refresh(t=!0){super.refresh(t);if(this.hostElement){this._msk.refresh();this._tbx.value=wijmo_1.Globalize.format(this.value,this.format);this._updateItems()}}onSelectedIndexChanged(t){if(this.selectedIndex>-1&&!this._settingText){let t=this.value?this.value:wijmo_1.DateTime.newDate(),e=null!=this.selectedItem.value?this.selectedItem.value:wijmo_1.Globalize.parseDate(this.text,this.format,this.value);this.value=wijmo_1.DateTime.fromDateTime(t,e)}super.onSelectedIndexChanged(t)}_clamp(t){null!=this._min&&this._getTime(t)<this._getTime(this._min)&&(t=wijmo_1.DateTime.fromDateTime(t,this._min));null!=this._max&&this._getTime(t)>this._getTime(this._max)&&(t=wijmo_1.DateTime.fromDateTime(t,this._max));return t}_wheel(t){if(!t.defaultPrevented&&!this.isDroppedDown&&!this.isReadOnly&&this.containsFocus()&&this.selectedIndex<0&&this.value&&wijmo_1.isNumber(this.step)&&this.step>0){let e=wijmo_1.DateTime.addMinutes(this.value,this.step*wijmo_1.clamp(t.deltaY,-1,1));this.value=this._clamp(e);this.selectAll();t.preventDefault()}super._wheel(t)}_updateInputSelection(t){if(this._delKey)super._updateInputSelection(t);else{let e=this._tbx.value;for(;t<e.length&&!e[t].match(/[a-z0-9]/i);)t++;wijmo_1.setSelectionRange(this._tbx,t,this._tbx.value.length)}}_updateItems(){if(this._hasCustomItems)return;let t=[],e=new Date(2020,0),i=new Date(2020,0,1,23,59,59),s=this.step;this.min&&e.setHours(this.min.getHours(),this.min.getMinutes(),this.min.getSeconds());this.max&&i.setHours(this.max.getHours(),this.max.getMinutes(),this.max.getSeconds());if(wijmo_1.isNumber(s)&&s>=1)for(let h=e;h<=i;h=wijmo_1.DateTime.addMinutes(h,s))t.push({value:h,text:wijmo_1.Globalize.format(h,this.format)});let h=this.value;this._settingText=!0;this.displayMemberPath="text";this.selectedValuePath="text";this.itemsSource=t;this._hasCustomItems=!1;this._settingText=!1;!h&&this.isRequired||(this.value=h)}_getTime(t){return 3600*t.getHours()+60*t.getMinutes()+t.getSeconds()}_keydown(t){super._keydown(t);if(!t.defaultPrevented)switch(t.keyCode){case wijmo_1.Key.Enter:if(!this.isDroppedDown){this._commitText();this.selectAll()}break;case wijmo_1.Key.Escape:this.text=wijmo_1.Globalize.format(this.value,this.format);this.selectAll()}}_commitText(){if(this.text||this.isRequired){let t=this.value?wijmo_1.Globalize.format(this.value,this.format):"";if(this.text!=t){let e=this.selectedItem&&this.selectedItem.value?this.selectedItem.value:wijmo_1.Globalize.parseDate(this.text,this.format,this.value);e?(wijmo_1.DateTime.sameTime(e,this._clamp(e))||this.onInvalidInput(new wijmo_1.CancelEventArgs))&&(this.value=wijmo_1.DateTime.fromDateTime(this.value,e)):this.onInvalidInput(new wijmo_1.CancelEventArgs)&&(this.text=t)}}else this.value=null}_copy(t,e){if("text"===t){(e||"").toString()!==this.text&&this._setText(e,!0);return!0}return!1}}exports.InputTime=InputTime;wijmo_1._addCultureInfo("InputDateTime",{ariaLabels:{tglDate:"Toggle Calendar",tglTime:"Toggle Time List"}});class InputDateTime extends InputDate{constructor(t,e){super(t);wijmo_1.addClass(this.hostElement,"wj-inputdatetime");let i=wijmo_1.culture.InputDateTime.ariaLabels;wijmo_1.setAriaLabel(this._btn,i.tglDate);wijmo_1.setAriaLabel(this._btnTm,i.tglTime);this.value=new Date;this.format="g";this._inputTime=new InputTime(document.createElement("div"),{valueChanged:t=>{let e=this.rangeEnd;this.value=wijmo_1.DateTime.fromDateTime(this.value,t.value);this.calendar._rngMode()&&e&&(this.rangeEnd=wijmo_1.DateTime.fromDateTime(e,t.value))},isDroppedDownChanged:t=>{t.listBox.containsFocus()&&this.inputElement.focus();this._selectAll()}});let s=this.addEventListener.bind(this);this._btnTm=this.hostElement.querySelector('[wj-part="btn-tm"]');s(this._btnTm,"mousedown",t=>{this._btnclick(t)});this._ddDate=this._dropDown;let h=this._ddTime=this._inputTime.dropDown;s(h,"keydown",this._keydown.bind(this),!0);s(h,"blur",()=>{this._updateFocusState()},!0);s(h,"click",t=>{t.defaultPrevented||t.target!=h&&this.hostElement.focus()},!0);this.initialize(e);this._commitText()}get timeMin(){return this._inputTime.min}set timeMin(t){this._inputTime.min=t}get timeMax(){return this._inputTime.max}set timeMax(t){this._inputTime.max=t}get timeFormat(){return this._inputTime.format}set timeFormat(t){this._inputTime.format=t}get timeStep(){return this._inputTime.step}set timeStep(t){this._inputTime.step=t;this._btnTm.style.display=wijmo_1.isNumber(t)&&t>0?"":"none"}get inputTime(){return this._inputTime}_fromDateTime(t){return t}_btnclick(t){let e=wijmo_1.closest(t.target,"button")==this._btn?this._ddDate:this._ddTime;this._setDropdown(e);super._btnclick(t)}dispose(){this._setDropdown(this._ddDate);super.dispose();this._inputTime.dispose()}refresh(t=!0){this._inputTime.refresh();super.refresh(t)}_updateBtn(){super._updateBtn();if(this._btnTm){this._btnTm.tabIndex=this._btn.tabIndex;this._btnTm.parentElement.style.display=this._btn.style.display}}_setDropdown(t){if(this._dropDown==t)return!1;this.isDroppedDown&&(this.isDroppedDown=!1);var e=this.dropDownCssClass;this.dropDownCssClass="";this._dropDown=t;this.dropDownCssClass=e;return!0}_updateDropDown(){let t=this._inputTime;if(this._dropDown==t.dropDown){this._commitText();super._updateDropDown();t.isRequired=this.isRequired&&null!=this.value;t.value=this.value;this.isDroppedDown&&t.listBox.showSelection()}else super._updateDropDown()}}InputDateTime.controlTemplate='<div class="wj-template"><div class="wj-input"><div class="wj-input-group wj-input-btn-visible"><input wj-part="input" type="text" class="wj-form-control"/><span class="wj-input-group-btn"><button wj-part="btn" class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-calendar"></span></button><button wj-part="btn-tm" class="wj-btn wj-btn-default" tabindex="-1"><span class="wj-glyph-clock"></span></button></span></div></div><div wj-part="dropdown" class="wj-content wj-dropdown-panel"></div></div>';exports.InputDateTime=InputDateTime;class AutoComplete extends ComboBox{constructor(t,e){super(t);this._cssMatch="wj-state-match";this._minLength=2;this._maxItems=6;this._itemCount=0;this._beginsWith=!1;this._delay=wijmo_1.Control._SEARCH_DELAY;this._query="";this._inCallback=!1;this._srchProps=[];this._oldSelectedIndex=-1;wijmo_1.addClass(this.hostElement,"wj-autocomplete");this._bsCollapse=!1;this.isEditable=!0;this.isRequired=!1;this.listBox.formatItem.addHandler(this._formatListItem,this);this._itemsSourceFnCallbackBnd=this._itemSourceFunctionCallback.bind(this);this.initialize(e)}get minLength(){return this._minLength}set minLength(t){this._minLength=wijmo_1.asNumber(t,!1,!0)}get beginsWithSearch(){return this._beginsWith}set beginsWithSearch(t){this._beginsWith=wijmo_1.asBoolean(t)}get maxItems(){return this._maxItems}set maxItems(t){this._maxItems=wijmo_1.asNumber(t,!1,!0)}get delay(){return this._delay}set delay(t){this._delay=wijmo_1.asNumber(t,!1,!0)}get searchMemberPath(){return this._srchProp}set searchMemberPath(t){this._srchProp=wijmo_1.asString(t);this._srchProps=t?t.trim().split(/\s*,\s*/):[]}get itemsSourceFunction(){return this._itemsSourceFn}set itemsSourceFunction(t){this._itemsSourceFn=wijmo_1.asFunction(t);wijmo_1.isFunction(this._itemsSourceFn)&&this.itemsSourceFunction(this.text,this.maxItems,this._itemsSourceFnCallbackBnd)}get cssMatch(){return this._cssMatch}set cssMatch(t){this._cssMatch=wijmo_1.asString(t)}onSelectedIndexChanged(t){this._settingText||super.onSelectedIndexChanged(t)}_keydown(t){if(!t.defaultPrevented&&this.isDroppedDown)switch(t.keyCode){case wijmo_1.Key.Up:case wijmo_1.Key.Down:this.selectAll()}super._keydown(t)}_setText(t){this.trimText&&!this.containsFocus()&&"string"==typeof t&&(t=t.trim());if(this._composing&&t!=this._oldText){this._oldText=t;this.onTextChanged()}if(!this._inCallback&&!this._settingText){this._toSearch||(this._oldSelectedIndex=this.selectedIndex);if(this.selectedIndex>-1&&this.getDisplayText()!=t){this._settingText=!0;this.selectedIndex=-1;this._settingText=!1}this._toSearch&&clearTimeout(this._toSearch);if(t!=this._oldText){"string"!=typeof t&&(t="");let e=this._tbx;const i=this._tbx.selectionStart;e.value!=t&&(e.value=t);this._isWheel&&this.containsFocus()&&this._updateInputSelection(i);this._oldText=t;this.onTextChanged();let s=this.collectionView;if(!t&&s){(this._query||this.selectedIndex<0)&&(this.isDroppedDown=!1);this._query=this._rxHighlight=null;s.filter=null;let t=this.itemsSourceFunction;if(wijmo_1.isFunction(t)){this.isDroppedDown=!1;t(this._query,this.maxItems,this._itemsSourceFnCallbackBnd)}if(this.isRequired&&!this.containsFocus()){const t=this._oldSelectedIndex>-1?this._oldSelectedIndex:0;this.selectedIndex=t}-1==this.selectedIndex&&-1!=this._oldSelectedIndex&&this.onSelectedIndexChanged();return}}if(t!=this.getDisplayText()){if(!this.containsFocus()&&this.trimText)if(this.isRequired&&!this.text.trim().length){const t=this._oldSelectedIndex>-1?this._oldSelectedIndex:0;this.selectedIndex=t}else this._tbx.value=this._tbx.value.trim();if(!this.containsFocus()&&t.length<this.minLength)return;if(!this.containsFocus()&&(!t||this.trimText&&!this.text.trim().length||this.indexOf(t,!0)<0&&this.indexOf(t,!1)<0)&&this.isRequired&&!this.isEditable){const t=this._oldSelectedIndex>-1?this._oldSelectedIndex:0;this.selectedIndex=t}else if(!this.containsFocus()&&t&&this.indexOf(t,!0)<0&&this.indexOf(t,!1)<0&&!this.isRequired&&!this.isEditable){this._tbx.value="";this.selectedIndex=-1;this.onSelectedIndexChanged()}else this._toSearch=setTimeout(()=>{this._toSearch=null;let e=this.text;if(e.trim().length>=this._minLength&&e!=this._query){this._query=e.trim();e=wijmo_1.escapeRegExp(e);let t=wijmo_1.escapeHtml(e.trim()),i=this.caseSensitiveSearch?"":"i";this._beginsWith||(i+="g");this._rxSrch=this._beginsWith?new RegExp("^"+e+".*",i):new RegExp("(?=.*"+e.replace(/ /g,")(?=.*")+")",i);this._rxHighlight=this._beginsWith?new RegExp("^"+e,i):new RegExp("("+t.replace(/\s+/g,"|")+")",i);let s=this.itemsSourceFunction;wijmo_1.isFunction(s)?s(this._query,this.maxItems,this._itemsSourceFnCallbackBnd):this._updateItems()}!t.trim().length&&!this.isEditable&&this.indexOf(t,!0)<0&&(this.selectedIndex=-1);-1==this.selectedIndex&&-1!=this._oldSelectedIndex&&this.onSelectedIndexChanged()},this._delay)}}}onLostFocus(t){let e=!1;if(this.isRequired&&!this.isEditable&&this.text){if(this.text.length<this.minLength)return;e=!0;let t=this.indexOf(this.text,!0);t<0&&(t=this.indexOf(this.text,!1));t>-1&&(this._oldSelectedIndex=t);t<0&&(this._oldSelectedIndex=0)}if(this._toSearch){clearTimeout(this._toSearch);let t=this._delay;this._delay=0;this._setText(this.text);this.delay=t}super.onLostFocus(t,this._oldSelectedIndex,e)}_itemSourceFunctionCallback(t){this._inCallback=!0;let e=wijmo_1.asCollectionView(t||[]);e.moveCurrentToPosition(-1);this.itemsSource=e;this._inCallback=!1;if(this.containsFocus()){let t=this._tbx,e=t.selectionStart,i=t.selectionEnd,s=this.collectionView;this.isDroppedDown=null!=s&&s.items.length>0;wijmo_1.setSelectionRange(t,e,i);this.refresh()}}onIsDroppedDownChanged(t){super.onIsDroppedDownChanged(t);if(this.containsFocus()&&!this.isTouching){let t=this.collectionView;if(this.selectedIndex<0&&t){let e=t.items,i=this.text;1==e.length&&e[0]==i?this.selectedIndex=0:wijmo_1.setSelectionRange(this._tbx,i.length)}}this._query=""}_updateItems(){let t=this.collectionView;if(t){this._inCallback=!0;t.beginUpdate();this._itemCount=0;t.filter=this._filter.bind(this);t.moveCurrentToPosition(-1);t.endUpdate();this._inCallback=!1;let e=t.items.length,i=this._tbx,s=i.selectionStart,h=i.selectionEnd;this.text.trim()||(e=0);this.isDroppedDown=e>0&&this.containsFocus();e||this.isEditable||(this.selectedIndex=-1);if(1==e&&this.selectedIndex<0){let e=this._getItemText(t.items[0],!1),s=i.value;if(!this.caseSensitiveSearch){e=e.toLowerCase();s=s.toLowerCase()}(e==s||this.trimText&&e.trim()==s)&&(this.selectedIndex=0)}this.isDroppedDown&&wijmo_1.setSelectionRange(i,s,h);this.refresh()}}_filter(t){if(this._itemCount>=this._maxItems&&this._query)return!1;let e=[this._getItemText(t,!1)];this._srchProps&&this._srchProps.forEach(i=>{let s=t[i];null!=s&&e.push(s)});this.isContentHtml&&(e=e.map(t=>t.replace(/(<[^>]*>|&[^;]*;)/g,"")));for(let t=0;t<e.length;t++)if(this._rxSrch.test(e[t])){this._itemCount++;return!0}return!1}_getItemText(t,e){let i=t?t.toString():"",s=e&&this.headerPath?this._pathHdr:this._lbx._pathDisplay;s&&(i=null!=(i=s.getValue(t))?i.toString():"");return i}_formatListItem(t,e){this._cssMatch&&this._rxHighlight&&this._query&&(e.item.innerHTML=e.item.innerHTML.replace(this._rxHighlight,(t,e,i,s)=>this._enclosed(s,i,"<",">")||this._enclosed(s,i,"&",";")?t:'<span class="'+this._cssMatch+'">'+t+"</span>"))}_enclosed(t,e,i,s){for(let h=e;h>=0&&t[h]!=s;h--)if(t[h]==i)for(let h=e;h<t.length&&t[h]!=i;h++)if(t[h]==s)return!0;return!1}_wheel(t){super._wheel(t)}}exports.AutoComplete=AutoComplete;class MultiAutoComplete extends AutoComplete{constructor(t,e){super(t);this._selItems=[];this._maxSelItems=null;this._lastInputValue="";this._selPath=new wijmo_1.Binding(null);this._notAddItm=!1;this.selectedItemsChanged=new wijmo_1.Event;wijmo_1.addClass(this.hostElement,"wj-multi-autocomplete");this._wjTpl=this.hostElement.querySelector(".wj-template");this._wjInput=this.hostElement.querySelector(".wj-input");this.showDropDownButton=!1;this.initialize(e);this.addEventListener(this.hostElement,"keyup",this._keyup.bind(this),!0);this.addEventListener(window,"resize",this._adjustInputWidth.bind(this));this.addEventListener(this._tbx,"focus",()=>{this._itemOff()});this._addHelperInput();this._initSeltems();this.listBox.itemsChanged.addHandler(()=>this.selectedIndex=-1);this._refreshHeader();this._updateTabIndex()}set showDropDownButton(t){this._showBtn=!1}get maxSelectedItems(){return this._maxSelItems}set maxSelectedItems(t){if(this._maxSelItems!=t){this._maxSelItems=wijmo_1.asNumber(t,!0);this._updateMaxItems();this._refreshHeader();this._clearSelIndex()}}get selectedMemberPath(){return this._selPath.path}set selectedMemberPath(t){if((t=wijmo_1.asString(t))!==this.selectedMemberPath){this._selPath.path=t;this._initSeltems();this._refreshHeader();this.onSelectedItemsChanged()}}get selectedItems(){return this._selItems}set selectedItems(t){t=Array.from(new Set(t));let e=this._selItems===t;e||null==this._selItems||null==t||this._selItems.length!==t.length||(e=this._selItems.every((e,i)=>e===t[i]));this._selItems=wijmo_1.asArray(t);if(!e){if(this.selectedMemberPath&&""!==this.selectedMemberPath&&this._selItems)for(let t=0;t<this._selItems.length;t++){let e=this._selItems[t];this._setSelItem(e,!1)}this._updateMaxItems();this.onSelectedItemsChanged();this._refreshHeader();this._clearSelIndex()}}onSelectedItemsChanged(t){this.selectedItemsChanged.raise(this,t)}onIsDroppedDownChanged(t){!this.isDroppedDown&&this.selectedIndex>-1&&!this._notAddItm&&this._addItem(!0);this._notAddItm=!1;super.onIsDroppedDownChanged(t)}refresh(t=!0){super.refresh(t);if(this.hostElement){this._initSeltems();this.isDroppedDown||this._refreshHeader()}}_keydown(t){if(!this.isReadOnly){if(!t.defaultPrevented)switch(t.keyCode){case wijmo_1.Key.Back:this._lastInputValue=this._tbx.value;break;case wijmo_1.Key.Enter:this._itemOff();this._addItem(!0);wijmo_1.isIE()&&wijmo_1.setSelectionRange(this._tbx,this._tbx.textContent.length,this._tbx.textContent.length);break;case wijmo_1.Key.Tab:if(this.isDroppedDown){this._addItem(!1);this._tbx.value="";this._lbx.selectedIndex=-1;this.isDroppedDown=!1;this.containsFocus()||this.focus();t.preventDefault()}else this._updateFocus();break;case wijmo_1.Key.Space:if(""!==this._tbx.value)return;if(!this.isDroppedDown&&!this._tbx.disabled){this.isDroppedDown=!0;this._clearSelIndex()}break;case wijmo_1.Key.Escape:this.isDroppedDown&&(this._notAddItm=!0);break;case wijmo_1.Key.Left:this._itemOn(!this.rightToLeft);break;case wijmo_1.Key.Right:this._itemOn(!!this.rightToLeft);break;case wijmo_1.Key.Up:case wijmo_1.Key.Down:let e=wijmo_1.getActiveElement();if(t.altKey){if(this._tbx==e){this.isDroppedDown=!this.isDroppedDown;this.isDroppedDown||this._tbx.focus();t.preventDefault();return}}else if(this._tbx!==e)return;default:if(t.keyCode===wijmo_1.Key.Back||t.keyCode===wijmo_1.Key.Delete)return;this._itemOff();null!=this._maxSelItems&&this._selItems.length>=this._maxSelItems&&t.preventDefault()}this._tbx.disabled||super._keydown(t)}}_updateState(){super._updateState();this._wjTpl&&(wijmo_1.hasClass(this.hostElement,"wj-state-focused")||this._itemOff())}_keyup(t){if(!this.isReadOnly&&!t.defaultPrevented)switch(t.keyCode){case wijmo_1.Key.Back:0===this._tbx.value.length&&0===this._lastInputValue.length&&this._delItem(!1);break;case wijmo_1.Key.Delete:this._delItem(!0)}}_addHelperInput(){let t=document.createElement("input");t.type="text";t.tabIndex=-1;t.className="wj-token-helper";t.readOnly=!0;this._wjTpl.insertBefore(t,this._wjInput);this._helperInput=t}_refreshHeader(){let t=this.hostElement.querySelectorAll(".wj-token");for(let e=0;e<t.length;e++)this._wjTpl.removeChild(t[e]);let e=this.selectedItems;if(e&&0!==e.length){for(let t=0;t<e.length;t++)this._insertToken(e[t]);this._wjInput.style.cssFloat=this.rightToLeft?"right":"left";this._adjustInputWidth()}else{this._wjInput.style.cssFloat=this.rightToLeft?"right":"left";this._adjustInputWidth()}}_insertToken(t){let e=this._getItemText(t,!0);this.isContentHtml||(e=wijmo_1.escapeHtml(e));this._wjTpl.insertBefore(this._createItem(e),this._wjInput)}_updateMaxItems(){null!=this._maxSelItems&&this._selItems&&this._selItems.length>this._maxSelItems&&(this._selItems=this._selItems.slice(0,this._maxSelItems))}_updateFocus(){let t=this._wjTpl.querySelector("."+MultiAutoComplete._clsActive);if(t){wijmo_1.removeClass(t,MultiAutoComplete._clsActive);setTimeout(()=>{this._tbx.focus()})}else this._clearSelIndex()}_addItem(t){if(this.selectedItems.indexOf(this.selectedItem)>-1)this._clearSelIndex();else if(this.selectedIndex>-1){this._updateSelItems(this.selectedItem,!0);this._refreshHeader();t&&this._clearSelIndex();this._disableInput(!0)}}_delItem(t){let e,i,s=this._wjTpl.querySelector("."+MultiAutoComplete._clsActive),h=!1;if(!t||s){if(s){if((i=this._getItemIndex(s))>-1){e=this._selItems[i];h=!0}}else if(this._selItems.length>0){e=this._selItems[this._selItems.length-1];h=!0}if(h){this._updateSelItems(e,!1);this._refreshHeader();this._clearSelIndex();this._disableInput(!1)}this._tbx.focus()}}_updateSelItems(t,e){if(e){this._selItems&&0!==this._selItems.length||(this._selItems=[]);if(null!=this._maxSelItems&&this._selItems.length>=this._maxSelItems)return;this._selItems.push(t)}else{let e=this._selItems.indexOf(t);this._selItems.splice(e,1)}this._hasSelectedMemeberPath()&&this._setSelItem(t,e);this.onSelectedItemsChanged()}_createItem(t){let e=document.createElement("div"),i=document.createElement("span"),s=document.createElement("a");e.appendChild(i);e.appendChild(s);e.className="wj-token";i.className="wj-token-label";i.innerHTML=t;s.className="wj-token-close";s.href="#";s.tabIndex=-1;s.text="×";e.style.cssFloat=this.rightToLeft?"right":"left";this.addEventListener(e,"click",t=>{this._helperInput.focus();let i=this._wjTpl.querySelector("."+MultiAutoComplete._clsActive);i&&wijmo_1.removeClass(i,MultiAutoComplete._clsActive);wijmo_1.addClass(e,MultiAutoComplete._clsActive);t.stopPropagation();t.preventDefault()});this.addEventListener(s,"click",t=>{if(this.isReadOnly)return;let i=this._getItemIndex(e);if(i>-1){let t=this._selItems[i];this._updateSelItems(t,!1)}this._wjTpl.removeChild(e);this._adjustInputWidth();this._disableInput(!1);this._tbx.focus();t.stopPropagation();t.preventDefault()});return e}_itemOn(t){let e,i,s,h=wijmo_1.getActiveElement();if((this._tbx!=h||0===this._tbx.value.length)&&0!==(e=this._wjTpl.querySelectorAll(".wj-token")).length){i=this._wjTpl.querySelector("."+MultiAutoComplete._clsActive);s=this._getItemIndex(i);if(t){if(0===s)return;if(-1===s){wijmo_1.addClass(e[e.length-1],MultiAutoComplete._clsActive);this._helperInput.focus()}else{wijmo_1.removeClass(i,MultiAutoComplete._clsActive);wijmo_1.addClass(e[s-1],MultiAutoComplete._clsActive);this._helperInput.focus()}}else if(!t){if(-1===s)return;if(s!==e.length-1){wijmo_1.removeClass(i,MultiAutoComplete._clsActive);wijmo_1.addClass(e[s+1],MultiAutoComplete._clsActive);this._helperInput.focus()}else{wijmo_1.removeClass(i,MultiAutoComplete._clsActive);this._tbx.focus()}}}}_itemOff(){let t=this._wjTpl.querySelector("."+MultiAutoComplete._clsActive);t&&wijmo_1.removeClass(t,MultiAutoComplete._clsActive)}_initSeltems(){if(this.selectedMemberPath){this._selItems.splice(0,this._selItems.length);let t=this.collectionView;if(t)for(let e=0;e<t.sourceCollection.length;e++)this._getSelItem(e)&&this._selItems.push(t.sourceCollection[e])}}_getSelItem(t){let e=this.collectionView,i=e?e.sourceCollection[t]:null;return!(!wijmo_1.isObject(i)||!this.selectedMemberPath)&&this._selPath.getValue(i)}_setSelItem(t,e){this.itemsSource;wijmo_1.isObject(t)&&this._selPath.getValue(t)!=e&&this._selPath.setValue(t,e)}_clearSelIndex(){this.selectedIndex=-1}_hasSelectedMemeberPath(){return this.selectedMemberPath&&""!==this.selectedMemberPath}_disableInput(t){if(null!=this._maxSelItems)if(this._selItems.length<this._maxSelItems){this._tbx.disabled=!1;this._tbx.focus()}else{this._tbx.disabled=!0;this.hostElement.focus()}}_adjustInputWidth(){this._tbx.style.width="60px";let t,e=wijmo_1.getElementRect(this.hostElement),i=wijmo_1.getElementRect(this._tbx),s=getComputedStyle(this._tbx),h=parseInt(s.paddingLeft,10),n=parseInt(s.paddingRight,10);t=this.rightToLeft?i.left+i.width-e.left-h-n-8:e.left+e.width-i.left-h-n-8;this._tbx.style.width=t+"px"}_getItemIndex(t){let e=this.hostElement.querySelectorAll(".wj-token");for(let i=0;i<e.length;i++)if(t===e[i])return i;return-1}_setIsDisabled(t){super._setIsDisabled(t);this._updateTabIndex()}_setTabOrder(t){this._orgTabIndex=t;this._updateTabIndex()}_updateTabIndex(){let t=this.hostElement;this._tbx.tabIndex=this.isDisabled?-1:this._orgTabIndex;t.tabIndex=-1}}MultiAutoComplete._clsActive="wj-token-active";exports.MultiAutoComplete=MultiAutoComplete;wijmo_1._registerModule("wijmo.input",selfModule);
|