calcite-input.entry.js 34 KB

123456
  1. var __awaiter=this&&this.__awaiter||function(t,e,i,n){function a(t){return t instanceof i?t:new i((function(e){e(t)}))}return new(i||(i=Promise))((function(i,r){function o(t){try{s(n.next(t))}catch(t){r(t)}}function l(t){try{s(n["throw"](t))}catch(t){r(t)}}function s(t){t.done?i(t.value):a(t.value).then(o,l)}s((n=n.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var i={label:0,sent:function(){if(r[0]&1)throw r[1];return r[1]},trys:[],ops:[]},n,a,r,o;return o={next:l(0),throw:l(1),return:l(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function l(t){return function(e){return s([t,e])}}function s(o){if(n)throw new TypeError("Generator is already executing.");while(i)try{if(n=1,a&&(r=o[0]&2?a["return"]:o[0]?a["throw"]||((r=a["return"])&&r.call(a),0):a.next)&&!(r=r.call(a,o[1])).done)return r;if(a=0,r)o=[o[0]&2,r.value];switch(o[0]){case 0:case 1:r=o;break;case 4:i.label++;return{value:o[1],done:false};case 5:i.label++;a=o[1];o=[0];continue;case 7:o=i.ops.pop();i.trys.pop();continue;default:if(!(r=i.trys,r=r.length>0&&r[r.length-1])&&(o[0]===6||o[0]===2)){i=0;continue}if(o[0]===3&&(!r||o[1]>r[0]&&o[1]<r[3])){i.label=o[1];break}if(o[0]===6&&i.label<r[1]){i.label=r[1];r=o;break}if(r&&i.label<r[2]){i.label=r[2];i.ops.push(o);break}if(r[2])i.ops.pop();i.trys.pop();continue}o=e.call(t,i)}catch(t){o=[6,t];a=0}finally{n=r=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};var __spreadArray=this&&this.__spreadArray||function(t,e,i){if(i||arguments.length===2)for(var n=0,a=e.length,r;n<a;n++){if(r||!(n in e)){if(!r)r=Array.prototype.slice.call(e,0,n);r[n]=e[n]}}return t.concat(r||Array.prototype.slice.call(e))};
  2. /*!
  3. * All material copyright ESRI, All Rights Reserved, unless otherwise specified.
  4. * See https://github.com/Esri/calcite-components/blob/master/LICENSE.md for details.
  5. * v1.0.0-beta.82
  6. */import{r as registerInstance,c as createEvent,h,H as Host,g as getElement}from"./index-8ece2564.js";import{T as TEXT$1,g as getSlotted,s as setRequestedIcon,d as getElementProp,a as getElementDir,C as CSS_UTILITY}from"./dom-da697a3f.js";import{c as connectLabel,d as disconnectLabel,g as getLabelText}from"./label-50132b90.js";import{s as submitForm,c as connectForm,d as disconnectForm,H as HiddenFormInputSlot}from"./form-bca481e1.js";import{d as delocalizeNumberString,g as getDecimalSeparator,l as localizeNumberString}from"./locale-7ce850e5.js";import{i as isValidNumber,p as parseNumberString,s as sanitizeNumberString,n as numberKeys}from"./number-237e74a9.js";import{d as decimalPlaces}from"./math-2e4483eb.js";import{c as createObserver}from"./observers-b198f831.js";import{u as updateHostInteraction}from"./interactive-cb5bf285.js";import"./guid-b4461004.js";var CSS={loader:"loader",clearButton:"clear-button",editingEnabled:"editing-enabled",inlineChild:"inline-child",inputIcon:"icon",prefix:"prefix",suffix:"suffix",numberButtonWrapper:"number-button-wrapper",buttonItemHorizontal:"number-button-item--horizontal",wrapper:"element-wrapper",inputWrapper:"wrapper",actionWrapper:"action-wrapper",resizeIconWrapper:"resize-icon-wrapper",numberButtonItem:"number-button-item"};var INPUT_TYPE_ICONS={tel:"phone",password:"lock",email:"email-address",date:"calendar",time:"clock",search:"search"};var SLOTS={action:"action"};var TEXT={clear:"Clear value"};var inputCss="@-webkit-keyframes in{0%{opacity:0}100%{opacity:1}}@keyframes in{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-down{0%{opacity:0;-webkit-transform:translate3D(0, -5px, 0);transform:translate3D(0, -5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@keyframes in-up{0%{opacity:0;-webkit-transform:translate3D(0, 5px, 0);transform:translate3D(0, 5px, 0)}100%{opacity:1;-webkit-transform:translate3D(0, 0, 0);transform:translate3D(0, 0, 0)}}@-webkit-keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}@keyframes in-scale{0%{opacity:0;-webkit-transform:scale3D(0.95, 0.95, 1);transform:scale3D(0.95, 0.95, 1)}100%{opacity:1;-webkit-transform:scale3D(1, 1, 1);transform:scale3D(1, 1, 1)}}:root{--calcite-animation-timing:calc(150ms * var(--calcite-internal-duration-factor));--calcite-internal-duration-factor:var(--calcite-duration-factor, 1);--calcite-internal-animation-timing-fast:calc(100ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-medium:calc(200ms * var(--calcite-internal-duration-factor));--calcite-internal-animation-timing-slow:calc(300ms * var(--calcite-internal-duration-factor))}.calcite-animate{opacity:0;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:var(--calcite-animation-timing);animation-duration:var(--calcite-animation-timing)}.calcite-animate__in{-webkit-animation-name:in;animation-name:in}.calcite-animate__in-down{-webkit-animation-name:in-down;animation-name:in-down}.calcite-animate__in-up{-webkit-animation-name:in-up;animation-name:in-up}.calcite-animate__in-scale{-webkit-animation-name:in-scale;animation-name:in-scale}:root{--calcite-popper-transition:var(--calcite-animation-timing)}:host([hidden]){display:none}:host{display:block}:host([scale=s]) input,:host([scale=s]) .prefix,:host([scale=s]) .suffix{height:1.5rem;padding:0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem}:host([scale=s]) textarea{height:1.5rem;min-height:1.5rem}:host([scale=s]) .number-button-wrapper,:host([scale=s]) .action-wrapper calcite-button,:host([scale=s]) .action-wrapper calcite-button button{height:1.5rem}:host([scale=s]) input[type=file]{height:1.5rem}:host([scale=s]) .clear-button{min-height:1.5rem;min-width:1.5rem}:host([scale=s]) textarea{height:auto;padding-top:0.25rem;padding-bottom:0.25rem;padding-left:0.5rem;padding-right:0.5rem;font-size:var(--calcite-font-size--2);line-height:1rem}:host([scale=m]) input,:host([scale=m]) .prefix,:host([scale=m]) .suffix{height:2rem;padding:0.75rem;font-size:var(--calcite-font-size--1);line-height:1rem}:host([scale=m]) textarea{min-height:2rem}:host([scale=m]) .number-button-wrapper,:host([scale=m]) .action-wrapper calcite-button,:host([scale=m]) .action-wrapper calcite-button button{height:2rem}:host([scale=m]) input[type=file]{height:2rem}:host([scale=m]) .clear-button{min-height:2rem;min-width:2rem}:host([scale=m]) textarea{height:auto;padding-top:0.5rem;padding-bottom:0.5rem;padding-left:0.75rem;padding-right:0.75rem;font-size:var(--calcite-font-size--1);line-height:1rem}:host([scale=l]) input,:host([scale=l]) .prefix,:host([scale=l]) .suffix{height:2.75rem;padding:1rem;font-size:var(--calcite-font-size-0);line-height:1.25rem}:host([scale=l]) textarea{min-height:2.75rem}:host([scale=l]) .number-button-wrapper,:host([scale=l]) .action-wrapper calcite-button,:host([scale=l]) .action-wrapper calcite-button button{height:2.75rem}:host([scale=l]) input[type=file]{height:2.75rem}:host([scale=l]) .clear-button{min-height:2.75rem;min-width:2.75rem}:host([scale=l]) textarea{height:auto;padding-top:0.75rem;padding-bottom:0.75rem;padding-left:1rem;padding-right:1rem;font-size:var(--calcite-font-size-0);line-height:1.25rem}:host([disabled]){pointer-events:none;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:var(--calcite-ui-opacity-disabled)}:host([disabled]) textarea{resize:none}:host([disabled]) ::slotted([calcite-hydrated][disabled]),:host([disabled]) [calcite-hydrated][disabled]{opacity:1}:host textarea,:host input{-webkit-transition:var(--calcite-animation-timing), height 0s;transition:var(--calcite-animation-timing), height 0s;-webkit-appearance:none;position:relative;margin:0px;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;max-height:100%;width:100%;max-width:100%;-ms-flex:1 1 0%;flex:1 1 0%;border-radius:0px;background-color:var(--calcite-ui-foreground-1);font-family:inherit;font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-1)}:host input[type=search]::-webkit-search-decoration{-webkit-appearance:none}:host input,:host textarea{border-width:1px;border-style:solid;border-color:var(--calcite-ui-border-input);color:var(--calcite-ui-text-1)}:host input:-ms-input-placeholder,:host textarea:-ms-input-placeholder{font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-3)}:host input::-ms-input-placeholder,:host textarea::-ms-input-placeholder{font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-3)}:host input::placeholder,:host input:-ms-input-placeholder,:host input::-ms-input-placeholder,:host textarea::placeholder,:host textarea:-ms-input-placeholder,:host textarea::-ms-input-placeholder{font-weight:var(--calcite-font-weight-normal);color:var(--calcite-ui-text-3)}:host input:focus,:host textarea:focus{border-color:var(--calcite-ui-brand);color:var(--calcite-ui-text-1)}:host input[readonly],:host textarea[readonly]{background-color:var(--calcite-ui-background);font-weight:var(--calcite-font-weight-medium)}:host input[readonly]:focus,:host textarea[readonly]:focus{color:var(--calcite-ui-text-1)}:host calcite-icon{color:var(--calcite-ui-text-3)}:host textarea,:host input{outline-offset:0;outline-color:transparent;-webkit-transition:outline-offset 100ms ease-in-out, outline-color 100ms ease-in-out;transition:outline-offset 100ms ease-in-out, outline-color 100ms ease-in-out}:host textarea:focus,:host input:focus{outline:2px solid var(--calcite-ui-brand);outline-offset:-2px}:host([status=invalid]) input,:host([status=invalid]) textarea{border-color:var(--calcite-ui-danger)}:host([status=invalid]) input:focus,:host([status=invalid]) textarea:focus{outline:2px solid var(--calcite-ui-danger);outline-offset:-2px}:host([scale=s]) .icon{inset-inline-start:0.5rem}:host([scale=m]) .icon{inset-inline-start:0.75rem}:host([scale=l]) .icon{inset-inline-start:1rem}:host([icon][scale=s]) input{-webkit-padding-start:2rem;padding-inline-start:2rem}:host([icon][scale=m]) input{-webkit-padding-start:2.5rem;padding-inline-start:2.5rem}:host([icon][scale=l]) input{-webkit-padding-start:3rem;padding-inline-start:3rem}.element-wrapper{position:relative;-ms-flex-order:3;order:3;display:-ms-inline-flexbox;display:inline-flex;-ms-flex:1 1 0%;flex:1 1 0%;-ms-flex-align:center;align-items:center}.icon{pointer-events:none;position:absolute;z-index:10;display:block;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s}input[type=text]::-ms-clear,input[type=text]::-ms-reveal{display:none;height:0px;width:0px}input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration,input[type=date]::-webkit-clear-button,input[type=time]::-webkit-clear-button{display:none}.clear-button{pointer-events:initial;-ms-flex-order:4;order:4;margin:0px;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;min-height:100%;cursor:pointer;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;-ms-flex-item-align:stretch;align-self:stretch;border-width:1px;border-style:solid;border-color:var(--calcite-ui-border-input);background-color:var(--calcite-ui-foreground-1);outline-offset:0;outline-color:transparent;-webkit-transition:outline-offset 100ms ease-in-out, outline-color 100ms ease-in-out;transition:outline-offset 100ms ease-in-out, outline-color 100ms ease-in-out;border-inline-start-width:0px}.clear-button:hover{background-color:var(--calcite-ui-foreground-2);-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s}.clear-button:hover calcite-icon{color:var(--calcite-ui-text-1);-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s}.clear-button:active{background-color:var(--calcite-ui-foreground-3)}.clear-button:active calcite-icon{color:var(--calcite-ui-text-1)}.clear-button:focus{outline:2px solid var(--calcite-ui-brand);outline-offset:-2px}.clear-button:disabled{opacity:var(--calcite-ui-opacity-disabled)}.loader{top:1px;left:1px;right:1px;pointer-events:none;position:absolute;display:block}.action-wrapper{-ms-flex-order:7;order:7;display:-ms-flexbox;display:flex}.prefix,.suffix{-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;height:auto;min-height:100%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-ms-flex-line-pack:center;align-content:center;-ms-flex-align:center;align-items:center;overflow-wrap:break-word;border-width:1px;border-style:solid;border-color:var(--calcite-ui-border-input);background-color:var(--calcite-ui-background);font-weight:var(--calcite-font-weight-medium);line-height:1;color:var(--calcite-ui-text-2)}.prefix{-ms-flex-order:2;order:2;border-inline-end-width:0px}.suffix{-ms-flex-order:5;order:5;border-inline-start-width:0px}:host([alignment=start]) textarea,:host([alignment=start]) input{text-align:start}:host([alignment=end]) textarea,:host([alignment=end]) input{text-align:end}:host input[type=number]{-moz-appearance:textfield}:host input[type=number]::-webkit-inner-spin-button,:host input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:textfield;margin:0px}.number-button-wrapper{pointer-events:none;-ms-flex-order:6;order:6;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s}:host([number-button-type=vertical]) .wrapper{-ms-flex-direction:row;flex-direction:row;display:-ms-flexbox;display:flex}:host([number-button-type=vertical]) input,:host([number-button-type=vertical]) textarea{-ms-flex-order:2;order:2}:host([number-button-type=horizontal]) .calcite--rtl .number-button-item[data-adjustment=down] calcite-icon{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host([number-button-type=horizontal]) .calcite--rtl .number-button-item[data-adjustment=up] calcite-icon{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}.number-button-item.number-button-item--horizontal[data-adjustment=down],.number-button-item.number-button-item--horizontal[data-adjustment=up]{-ms-flex-order:1;order:1;max-height:100%;min-height:100%;-ms-flex-item-align:stretch;align-self:stretch}.number-button-item.number-button-item--horizontal[data-adjustment=down] calcite-icon,.number-button-item.number-button-item--horizontal[data-adjustment=up] calcite-icon{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.number-button-item.number-button-item--horizontal[data-adjustment=down]{border-width:1px;border-style:solid;border-color:var(--calcite-ui-border-input);border-inline-end-width:0px}.number-button-item.number-button-item--horizontal[data-adjustment=down]:hover{background-color:var(--calcite-ui-foreground-2)}.number-button-item.number-button-item--horizontal[data-adjustment=down]:hover calcite-icon{color:var(--calcite-ui-text-1)}.number-button-item.number-button-item--horizontal[data-adjustment=up]{-ms-flex-order:5;order:5}.number-button-item.number-button-item--horizontal[data-adjustment=up]:hover{background-color:var(--calcite-ui-foreground-2)}.number-button-item.number-button-item--horizontal[data-adjustment=up]:hover calcite-icon{color:var(--calcite-ui-text-1)}:host([number-button-type=vertical]) .number-button-item[data-adjustment=down]:hover{background-color:var(--calcite-ui-foreground-2)}:host([number-button-type=vertical]) .number-button-item[data-adjustment=down]:hover calcite-icon{color:var(--calcite-ui-text-1)}:host([number-button-type=vertical]) .number-button-item[data-adjustment=up]:hover{background-color:var(--calcite-ui-foreground-2)}:host([number-button-type=vertical]) .number-button-item[data-adjustment=up]:hover calcite-icon{color:var(--calcite-ui-text-1)}:host([number-button-type=vertical]) .number-button-item[data-adjustment=down]{border-top-width:0px}.number-button-item{max-height:50%;min-height:50%;pointer-events:initial;margin:0px;-webkit-box-sizing:border-box;box-sizing:border-box;display:-ms-flexbox;display:flex;cursor:pointer;-ms-flex-align:center;align-items:center;-ms-flex-item-align:center;align-self:center;border-width:1px;border-style:solid;border-color:var(--calcite-ui-border-input);background-color:var(--calcite-ui-foreground-1);padding-top:0px;padding-bottom:0px;padding-left:0.5rem;padding-right:0.5rem;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s;border-inline-start-width:0px}.number-button-item calcite-icon{pointer-events:none;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s}.number-button-item:focus{background-color:var(--calcite-ui-foreground-2)}.number-button-item:focus calcite-icon{color:var(--calcite-ui-text-1)}.number-button-item:active{background-color:var(--calcite-ui-foreground-3)}.wrapper{position:relative;display:-ms-flexbox;display:flex;-ms-flex-direction:row;flex-direction:row;-ms-flex-align:center;align-items:center}:host input::-webkit-calendar-picker-indicator{display:none}:host input[type=date]::-webkit-input-placeholder{visibility:hidden !important}:host textarea::-webkit-resizer{position:absolute;bottom:0px;-webkit-box-sizing:border-box;box-sizing:border-box;padding-top:0px;padding-bottom:0px;padding-left:0.25rem;padding-right:0.25rem;inset-inline-end:0}.resize-icon-wrapper{bottom:2px;inset-inline-end:2px;pointer-events:none;position:absolute;z-index:10;height:0.75rem;width:0.75rem;background-color:var(--calcite-ui-foreground-1);color:var(--calcite-ui-text-3)}.resize-icon-wrapper calcite-icon{bottom:0.25rem;inset-inline-end:0.25rem;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.calcite--rtl .resize-icon-wrapper calcite-icon{-webkit-transform:rotate(45deg);transform:rotate(45deg)}:host([type=color]) input{padding:0.25rem}:host([type=file]) input{cursor:pointer;border-width:1px;border-style:dashed;border-color:var(--calcite-ui-border-input);background-color:var(--calcite-ui-foreground-1);text-align:center}:host([type=file][scale=s]) input{padding-top:1px;padding-bottom:1px;padding-left:0.5rem;padding-right:0.5rem}:host([type=file][scale=m]) input{padding-top:0.25rem;padding-bottom:0.25rem;padding-left:0.75rem;padding-right:0.75rem}:host([type=file][scale=l]) input{padding-top:0.5rem;padding-bottom:0.5rem;padding-left:1rem;padding-right:1rem}:host(.no-bottom-border) input{border-bottom-width:0px}:host(.border-top-color-one) input{border-top-color:var(--calcite-ui-border-1)}:host .inline-child{background-color:transparent;-webkit-transition-property:all;transition-property:all;-webkit-transition-duration:var(--calcite-animation-timing);transition-duration:var(--calcite-animation-timing);-webkit-transition-timing-function:ease-in-out;transition-timing-function:ease-in-out;-webkit-transition-delay:0s;transition-delay:0s}:host .inline-child .editing-enabled{background-color:inherit}:host .inline-child:not(.editing-enabled){display:-ms-flexbox;display:flex;cursor:pointer;border-color:transparent;-webkit-padding-start:0;padding-inline-start:0}::slotted(input[slot=hidden-form-input]){bottom:0 !important;left:0 !important;margin:0 !important;opacity:0 !important;outline:none !important;padding:0 !important;position:absolute !important;right:0 !important;top:0 !important;-webkit-transform:none !important;transform:none !important;-webkit-appearance:none !important;z-index:-1 !important}";var Input=function(){function t(t){var e=this;registerInstance(this,t);this.calciteInputFocus=createEvent(this,"calciteInputFocus",7);this.calciteInputBlur=createEvent(this,"calciteInputBlur",7);this.calciteInputInput=createEvent(this,"calciteInputInput",7);this.calciteInputChange=createEvent(this,"calciteInputChange",7);this.alignment="start";this.autofocus=false;this.clearable=false;this.disabled=false;this.groupSeparator=false;this.hidden=false;this.intlLoading=TEXT$1.loading;this.iconFlipRtl=false;this.loading=false;this.locale=document.documentElement.lang||"en";this.localeFormat=false;this.numberButtonType="vertical";this.readOnly=false;this.required=false;this.scale="m";this.status="idle";this.editingEnabled=false;this.type="text";this.value="";this.childElType="input";this.previousValueOrigin="initial";this.mutationObserver=createObserver("mutation",(function(){return e.setDisabledAction()}));this.userChangedValue=false;this.keyDownHandler=function(t){if(e.readOnly||e.disabled){return}if(e.isClearable&&t.key==="Escape"){e.clearInputValue(t);t.preventDefault()}if(t.key==="Enter"&&!t.defaultPrevented){submitForm(e)}};this.clearInputValue=function(t){e.setValue({committing:true,nativeEvent:t,origin:"user",value:""})};this.emitChangeIfUserModified=function(){if(e.previousValueOrigin==="user"&&e.value!==e.previousEmittedValue){e.calciteInputChange.emit()}e.previousEmittedValue=e.value};this.inputBlurHandler=function(){e.calciteInputBlur.emit({element:e.childEl,value:e.value});e.emitChangeIfUserModified()};this.inputFocusHandler=function(t){var i=getSlotted(e.el,"action");if(t.target!==i){e.setFocus()}e.calciteInputFocus.emit({element:e.childEl,value:e.value})};this.inputInputHandler=function(t){if(e.disabled||e.readOnly){return}e.setValue({nativeEvent:t,origin:"user",value:t.target.value})};this.inputKeyDownHandler=function(t){if(e.disabled||e.readOnly){return}if(t.key==="Enter"){e.emitChangeIfUserModified()}};this.inputNumberInputHandler=function(t){if(e.disabled||e.readOnly){return}var i=t.target.value;var n=delocalizeNumberString(i,e.locale);if(t.inputType==="insertFromPaste"){if(!isValidNumber(n)){t.preventDefault()}e.setValue({nativeEvent:t,origin:"user",value:parseNumberString(n)});e.childNumberEl.value=e.localizedValue}else{e.setValue({nativeEvent:t,origin:"user",value:n})}};this.inputNumberKeyDownHandler=function(t){if(e.type!=="number"||e.disabled||e.readOnly){return}if(t.key==="ArrowUp"){t.preventDefault();e.nudgeNumberValue("up",t);return}if(t.key==="ArrowDown"){e.nudgeNumberValue("down",t);return}var i=__spreadArray(__spreadArray([],numberKeys,true),["ArrowLeft","ArrowRight","Backspace","Delete","Enter","Escape","Tab"],false);if(t.altKey||t.ctrlKey||t.metaKey){return}var n=t.shiftKey&&t.key==="Tab";if(i.includes(t.key)&&(!t.shiftKey||n)){if(t.key==="Enter"){e.emitChangeIfUserModified()}return}var a=getDecimalSeparator(e.locale);if(t.key===a){if(!e.value&&!e.childNumberEl.value){return}if(e.value&&e.childNumberEl.value.indexOf(a)===-1){return}}if(/[eE]/.test(t.key)){if(!e.value&&!e.childNumberEl.value){return}if(e.value&&!/[eE]/.test(e.childNumberEl.value)){return}}if(t.key==="-"){if(!e.value&&!e.childNumberEl.value){return}if(e.value&&e.childNumberEl.value.split("-").length<=2){return}}t.preventDefault()};this.nudgeNumberValue=function(t,i){if(i instanceof KeyboardEvent&&i.repeat||e.type!=="number"){return}var n=e.maxString?parseFloat(e.maxString):null;var a=e.minString?parseFloat(e.minString):null;var r=100;e.incrementOrDecrementNumberValue(t,n,a,i);if(e.nudgeNumberValueIntervalId){window.clearInterval(e.nudgeNumberValueIntervalId)}var o=true;e.nudgeNumberValueIntervalId=window.setInterval((function(){if(o){o=false;return}e.incrementOrDecrementNumberValue(t,n,a,i)}),r)};this.numberButtonMouseUpAndMouseOutHandler=function(){window.clearInterval(e.nudgeNumberValueIntervalId)};this.numberButtonMouseDownHandler=function(t){t.preventDefault();var i=t.target.dataset.adjustment;e.nudgeNumberValue(i,t)};this.setChildElRef=function(t){e.childEl=t};this.setChildNumberElRef=function(t){e.childNumberEl=t};this.setInputValue=function(t){if(e.type==="text"&&!e.childEl){return}if(e.type==="number"&&!e.childNumberEl){return}e["child".concat(e.type==="number"?"Number":"","El")].value=t};this.setPreviousEmittedValue=function(t){e.previousEmittedValue=e.type==="number"?isValidNumber(t)?t:"":t};this.setPreviousValue=function(t){e.previousValue=e.type==="number"?isValidNumber(t)?t:"":t};this.setValue=function(t){var i=t.committing,n=i===void 0?false:i,a=t.nativeEvent,r=t.origin,o=t.previousValue,l=t.value;var s=e.type==="number"?localizeNumberString(e.previousValue,e.locale,e.groupSeparator):"";var u=e.type==="number"?sanitizeNumberString(l):l;var c=e.type==="number"&&l&&!u?isValidNumber(e.previousValue)?e.previousValue:"":u;var d=e.type==="number"?localizeNumberString(c,e.locale,e.groupSeparator):"";e.setPreviousValue(o||e.value);e.previousValueOrigin=r;e.userChangedValue=r==="user"&&e.value!==c;e.value=c;if(e.type==="number"){e.localizedValue=d}if(r==="direct"){e.setInputValue(e.type==="number"?d:c)}if(a){var p=e.calciteInputInput.emit({element:e.childEl,nativeEvent:a,value:e.value});if(p.defaultPrevented){e.value=e.previousValue;e.localizedValue=s}else if(n){e.emitChangeIfUserModified()}}};this.inputKeyUpHandler=function(){window.clearInterval(e.nudgeNumberValueIntervalId)}}t.prototype.disabledWatcher=function(){this.setDisabledAction()};t.prototype.maxWatcher=function(){var t;this.maxString=((t=this.max)===null||t===void 0?void 0:t.toString())||null};t.prototype.minWatcher=function(){var t;this.minString=((t=this.min)===null||t===void 0?void 0:t.toString())||null};t.prototype.valueWatcher=function(t,e){if(!this.userChangedValue){this.setValue({origin:"direct",previousValue:e,value:t==null||t==""?"":this.type==="number"?isValidNumber(t)?t:this.previousValue||"":t});this.warnAboutInvalidNumberValue(t)}this.userChangedValue=false};t.prototype.updateRequestedIcon=function(){this.requestedIcon=setRequestedIcon(INPUT_TYPE_ICONS,this.icon,this.type)};Object.defineProperty(t.prototype,"isClearable",{get:function(){return!this.isTextarea&&(this.clearable||this.type==="search")&&this.value.length>0},enumerable:false,configurable:true});Object.defineProperty(t.prototype,"isTextarea",{get:function(){return this.childElType==="textarea"},enumerable:false,configurable:true});t.prototype.connectedCallback=function(){var t;this.scale=getElementProp(this.el,"scale",this.scale);this.status=getElementProp(this.el,"status",this.status);this.inlineEditableEl=this.el.closest("calcite-inline-editable");if(this.inlineEditableEl){this.editingEnabled=this.inlineEditableEl.editingEnabled||false}this.setPreviousEmittedValue(this.value);this.setPreviousValue(this.value);if(this.type==="number"){this.warnAboutInvalidNumberValue(this.value);this.setValue({origin:"connected",value:isValidNumber(this.value)?this.value:""})}connectLabel(this);connectForm(this);(t=this.mutationObserver)===null||t===void 0?void 0:t.observe(this.el,{childList:true});this.setDisabledAction()};t.prototype.disconnectedCallback=function(){var t;disconnectLabel(this);disconnectForm(this);(t=this.mutationObserver)===null||t===void 0?void 0:t.disconnect()};t.prototype.componentWillLoad=function(){var t,e;this.childElType=this.type==="textarea"?"textarea":"input";this.maxString=(t=this.max)===null||t===void 0?void 0:t.toString();this.minString=(e=this.min)===null||e===void 0?void 0:e.toString();this.requestedIcon=setRequestedIcon(INPUT_TYPE_ICONS,this.icon,this.type)};t.prototype.componentShouldUpdate=function(t,e,i){if(this.type==="number"&&i==="value"&&t&&!isValidNumber(t)){this.setValue({origin:"reset",value:e});return false}return true};t.prototype.componentDidRender=function(){updateHostInteraction(this)};t.prototype.setFocus=function(){return __awaiter(this,void 0,void 0,(function(){var t,e;return __generator(this,(function(i){if(this.type==="number"){(t=this.childNumberEl)===null||t===void 0?void 0:t.focus()}else{(e=this.childEl)===null||e===void 0?void 0:e.focus()}return[2]}))}))};t.prototype.onLabelClick=function(){this.setFocus()};t.prototype.incrementOrDecrementNumberValue=function(t,e,i,n){var a=this.value;var r=this.step==="any"?1:Math.abs(this.step||1);var o=a&&a!==""?parseFloat(a):0;var l=t==="up"?1:-1;var s=o+r*l;var u=typeof i==="number"&&!isNaN(i)&&s<i||typeof e==="number"&&!isNaN(e)&&s>e?o:s;var c=decimalPlaces(o);var d=decimalPlaces(r);this.setValue({committing:true,nativeEvent:n,origin:"user",value:u.toFixed(Math.max(c,d))})};t.prototype.onFormReset=function(){this.setValue({origin:"reset",value:this.defaultValue})};t.prototype.syncHiddenFormInput=function(t){var e,i,n,a;if(this.type==="number"){t.type="number";t.min=(i=(e=this.min)===null||e===void 0?void 0:e.toString(10))!==null&&i!==void 0?i:"";t.max=(a=(n=this.max)===null||n===void 0?void 0:n.toString(10))!==null&&a!==void 0?a:""}else if(this.type==="text"){t.type="text";if(this.minLength!=null){t.minLength=this.minLength}if(this.maxLength!=null){t.maxLength=this.maxLength}}else if(this.type==="password"){t.type="password"}};t.prototype.setDisabledAction=function(){var t=getSlotted(this.el,"action");if(!t){return}this.disabled?t.setAttribute("disabled",""):t.removeAttribute("disabled")};t.prototype.warnAboutInvalidNumberValue=function(t){if(this.type==="number"&&t&&!isValidNumber(t)){console.warn('The specified value "'.concat(t,'" cannot be parsed, or is out of range.'))}};t.prototype.render=function(){var t,e,i,n;var a=getElementDir(this.el);var r=h("div",{class:CSS.loader},h("calcite-progress",{label:this.intlLoading,type:"indeterminate"}));var o=h("button",{"aria-label":this.intlClear||TEXT.clear,class:CSS.clearButton,disabled:this.disabled||this.readOnly,onClick:this.clearInputValue,tabIndex:this.disabled?-1:0,type:"button"},h("calcite-icon",{icon:"x",scale:"s"}));var l=h("calcite-icon",{class:CSS.inputIcon,flipRtl:this.iconFlipRtl,icon:this.requestedIcon,scale:"s"});var s=this.numberButtonType==="horizontal";var u=h("button",{class:(t={},t[CSS.numberButtonItem]=true,t[CSS.buttonItemHorizontal]=s,t),"data-adjustment":"up",disabled:this.disabled||this.readOnly,onMouseDown:this.numberButtonMouseDownHandler,onMouseOut:this.numberButtonMouseUpAndMouseOutHandler,onMouseUp:this.numberButtonMouseUpAndMouseOutHandler,tabIndex:-1,type:"button"},h("calcite-icon",{icon:"chevron-up",scale:"s"}));var c=h("button",{class:(e={},e[CSS.numberButtonItem]=true,e[CSS.buttonItemHorizontal]=s,e),"data-adjustment":"down",disabled:this.disabled||this.readOnly,onMouseDown:this.numberButtonMouseDownHandler,onMouseOut:this.numberButtonMouseUpAndMouseOutHandler,onMouseUp:this.numberButtonMouseUpAndMouseOutHandler,tabIndex:-1,type:"button"},h("calcite-icon",{icon:"chevron-down",scale:"s"}));var d=h("div",{class:CSS.numberButtonWrapper},u,c);var p=h("div",{class:CSS.prefix},this.prefixText);var m=h("div",{class:CSS.suffix},this.suffixText);var b=this.type==="number"?h("input",{"aria-label":getLabelText(this),autofocus:this.autofocus?true:null,defaultValue:this.defaultValue,disabled:this.disabled?true:null,enterKeyHint:this.el.enterKeyHint,inputMode:this.el.inputMode,key:"localized-input",maxLength:this.maxLength,minLength:this.minLength,name:undefined,onBlur:this.inputBlurHandler,onFocus:this.inputFocusHandler,onInput:this.inputNumberInputHandler,onKeyDown:this.inputNumberKeyDownHandler,onKeyUp:this.inputKeyUpHandler,placeholder:this.placeholder||"",readOnly:this.readOnly,ref:this.setChildNumberElRef,type:"text",value:this.localizedValue}):null;var f=this.type!=="number"?[h(this.childElType,{"aria-label":getLabelText(this),autofocus:this.autofocus?true:null,class:(i={},i[CSS.editingEnabled]=this.editingEnabled,i[CSS.inlineChild]=!!this.inlineEditableEl,i),defaultValue:this.defaultValue,disabled:this.disabled?true:null,enterKeyHint:this.el.enterKeyHint,inputMode:this.el.inputMode,max:this.maxString,maxLength:this.maxLength,min:this.minString,minLength:this.minLength,name:this.name,onBlur:this.inputBlurHandler,onFocus:this.inputFocusHandler,onInput:this.inputInputHandler,onKeyDown:this.inputKeyDownHandler,onKeyUp:this.inputKeyUpHandler,placeholder:this.placeholder||"",readOnly:this.readOnly,ref:this.setChildElRef,required:this.required?true:null,step:this.step,tabIndex:this.disabled||this.inlineEditableEl&&!this.editingEnabled?-1:null,type:this.type,value:this.value}),this.isTextarea?h("div",{class:CSS.resizeIconWrapper},h("calcite-icon",{icon:"chevron-down",scale:"s"})):null]:null;return h(Host,{onClick:this.inputFocusHandler,onKeyDown:this.keyDownHandler},h("div",{class:(n={},n[CSS.inputWrapper]=true,n[CSS_UTILITY.rtl]=a==="rtl",n)},this.type==="number"&&this.numberButtonType==="horizontal"&&!this.readOnly?c:null,this.prefixText?p:null,h("div",{class:CSS.wrapper},b,f,this.isClearable?o:null,this.requestedIcon?l:null,this.loading?r:null),h("div",{class:CSS.actionWrapper},h("slot",{name:SLOTS.action})),this.type==="number"&&this.numberButtonType==="vertical"&&!this.readOnly?d:null,this.suffixText?m:null,this.type==="number"&&this.numberButtonType==="horizontal"&&!this.readOnly?u:null,h(HiddenFormInputSlot,{component:this})))};Object.defineProperty(t.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{disabled:["disabledWatcher"],max:["maxWatcher"],min:["minWatcher"],value:["valueWatcher"],icon:["updateRequestedIcon"],type:["updateRequestedIcon"]}},enumerable:false,configurable:true});return t}();Input.style=inputCss;export{Input as calcite_input};