-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path42-es2015.ae2214b90f7e1cfbd4a6.js
1 lines (1 loc) · 28 KB
/
42-es2015.ae2214b90f7e1cfbd4a6.js
1
(window.webpackJsonp=window.webpackJsonp||[]).push([[42],{X0Dk:function(t,e,i){"use strict";i.r(e),i.d(e,"ion_datetime",(function(){return Z})),i.d(e,"ion_picker",(function(){return G})),i.d(e,"ion_picker_column",(function(){return Q}));var o=i("dSyh"),n=(i("AfW+"),i("aiEM")),r=i("+4pY"),s=i("pori"),a=i("Dl6n"),l=i("opz7");const d=(t,e,i,o)=>{if(t!==S&&t!==F){if(t===P)return void 0!==i&&void 0!==i.hour?i.hour<12?"AM":"PM":e?e.toUpperCase():"";if(t===$)return void 0!==i&&void 0!==i.hour?i.hour<12?"am":"pm":e||"";if(null==e)return"";if(t===M||t===C||t===Y||t===I||t===N||t===z)return x(e);if(t===O)return w(e);if(t===j)return(o.monthNames?o.monthNames:W)[e-1];if(t===D)return(o.monthShortNames?o.monthShortNames:B)[e-1];if(t===E||t===T){if(0===e)return"12";if(e>12&&(e-=12),t===E&&e<10)return"0"+e}return e.toString()}try{return e=new Date(i.year,i.month-1,i.day).getDay(),t===S?(o.dayNames?o.dayNames:V)[e]:(o.dayShortNames?o.dayShortNames:H)[e]}catch(n){}},h=(t,e,i,o=0,n=0)=>parseInt(`1${w(t)}${x(e)}${x(i)}${x(o)}${x(n)}`,10),c=t=>h(t.year,t.month,t.day,t.hour,t.minute),p=/^(\d{4}|[+\-]\d{6})(?:-(\d{2})(?:-(\d{2}))?)?(?:T(\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{3}))?)?(?:(Z)|([+\-])(\d{2})(?::(\d{2}))?)?)?$/,m=/^((\d{2}):(\d{2})(?::(\d{2})(?:\.(\d{3}))?)?(?:(Z)|([+\-])(\d{2})(?::(\d{2}))?)?)?$/,u=t=>{let e=null;if(null!=t&&""!==t&&((e=m.exec(t))?(e.unshift(void 0,void 0),e[2]=e[3]=void 0):e=p.exec(t)),null===e)return;for(let o=1;o<8;o++)e[o]=void 0!==e[o]?parseInt(e[o],10):void 0;let i=0;return e[9]&&e[10]&&(i=60*parseInt(e[10],10),e[11]&&(i+=parseInt(e[11],10)),"-"===e[9]&&(i*=-1)),{year:e[1],month:e[2],day:e[3],hour:e[4],minute:e[5],second:e[6],millisecond:e[7],tzOffset:i}},g=(t,e)=>e===P||e===$?t.hour<12?"am":"pm":e===E||e===T?t.hour>12?t.hour-12:0===t.hour?12:t.hour:t[f(e)],f=t=>{for(const e in A)if(A[e].f===t)return A[e].k},b=t=>{let e="";return void 0!==t.year?(e=w(t.year),void 0!==t.month&&(e+="-"+x(t.month),void 0!==t.day&&(e+="-"+x(t.day),void 0!==t.hour&&(e+=`T${x(t.hour)}:${x(t.minute)}:${x(t.second)}`,t.millisecond>0&&(e+="."+y(t.millisecond)),e+=void 0===t.tzOffset?"Z":(t.tzOffset>0?"+":"-")+x(Math.floor(Math.abs(t.tzOffset/60)))+":"+x(t.tzOffset%60))))):void 0!==t.hour&&(e=x(t.hour)+":"+x(t.minute),void 0!==t.second&&(e+=":"+x(t.second),void 0!==t.millisecond&&(e+="."+y(t.millisecond)))),e},k=(t,e)=>{if(null==t)return;let i;return"string"==typeof t&&(t=t.replace(/\[|\]/g,"").split(",")),Array.isArray(t)&&(i=t.map(t=>t.toString().trim())),void 0!==i&&0!==i.length||console.warn(`Invalid "${e}Names". Must be an array of strings, or a comma separated string.`),i},v=(t,e)=>{let i;return"string"==typeof t&&(t=t.replace(/\[|\]|\s/g,"").split(",")),0===(i=Array.isArray(t)?t.map(t=>parseInt(t,10)).filter(isFinite):[t]).length&&console.warn(`Invalid "${e}Values". Must be an array of numbers, or a comma separated string of numbers.`),i},x=t=>("0"+(void 0!==t?Math.abs(t):"0")).slice(-2),y=t=>("00"+(void 0!==t?Math.abs(t):"0")).slice(-3),w=t=>("000"+(void 0!==t?Math.abs(t):"0")).slice(-4),O="YYYY",M="YY",j="MMMM",D="MMM",C="MM",S="DDDD",F="DDD",Y="DD",I="HH",E="hh",T="h",N="mm",z="ss",P="A",$="a",A=[{f:O,k:"year"},{f:j,k:"month"},{f:S,k:"day"},{f:D,k:"month"},{f:F,k:"day"},{f:M,k:"year"},{f:C,k:"month"},{f:Y,k:"day"},{f:I,k:"hour"},{f:E,k:"hour"},{f:N,k:"minute"},{f:z,k:"second"},{f:"M",k:"month"},{f:"D",k:"day"},{f:"H",k:"hour"},{f:T,k:"hour"},{f:"m",k:"minute"},{f:"s",k:"second"},{f:P,k:"ampm"},{f:$,k:"ampm"}],V=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],H=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],W=["January","February","March","April","May","June","July","August","September","October","November","December"],B=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],J=[E,T,N,"m",z,"s"],Z=class{constructor(t){Object(o.l)(this,t),this.inputId=`ion-dt-${_++}`,this.locale={},this.datetimeMin={},this.datetimeMax={},this.datetimeValue={},this.isExpanded=!1,this.name=this.inputId,this.disabled=!1,this.readonly=!1,this.displayFormat="MMM D, YYYY",this.cancelText="Cancel",this.doneText="Done",this.onClick=()=>{this.setFocus(),this.open()},this.onFocus=()=>{this.ionFocus.emit()},this.onBlur=()=>{this.ionBlur.emit()},this.ionCancel=Object(o.d)(this,"ionCancel",7),this.ionChange=Object(o.d)(this,"ionChange",7),this.ionFocus=Object(o.d)(this,"ionFocus",7),this.ionBlur=Object(o.d)(this,"ionBlur",7),this.ionStyle=Object(o.d)(this,"ionStyle",7)}disabledChanged(){this.emitStyle()}valueChanged(){this.updateDatetimeValue(this.value),this.emitStyle(),this.ionChange.emit({value:this.value})}componentWillLoad(){this.locale={monthNames:k(this.monthNames,"monthNames"),monthShortNames:k(this.monthShortNames,"monthShortNames"),dayNames:k(this.dayNames,"dayNames"),dayShortNames:k(this.dayShortNames,"dayShortNames")},this.updateDatetimeValue(this.value),this.emitStyle()}async open(){if(this.disabled||this.isExpanded)return;const t=this.generatePickerOptions(),e=await s.o.create(t);this.isExpanded=!0,e.onDidDismiss().then(()=>{this.isExpanded=!1,this.setFocus()}),e.addEventListener("ionPickerColChange",async t=>{const i=t.detail,o={};o[i.name]={value:i.options[i.selectedIndex].value},this.updateDatetimeValue(o),e.columns=this.generateColumns()}),await e.present()}emitStyle(){this.ionStyle.emit({interactive:!0,datetime:!0,"has-placeholder":null!=this.placeholder,"has-value":this.hasValue(),"interactive-disabled":this.disabled})}updateDatetimeValue(t){((t,e)=>{if(!e||"string"==typeof e){const t=((t="")=>{null==t&&(t=""),10!==t.length&&7!==t.length||(t+=" ");const e="string"==typeof t&&t.length>0?new Date(t):new Date;return new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()))})(e);Number.isNaN(t.getTime())||(e=t.toISOString())}if(e&&""!==e){if("string"==typeof e){if(e=u(e))return Object.assign(t,e),!0}else{if(e.year||e.hour||e.month||e.day||e.minute||e.second){e.ampm&&e.hour&&(e.hour.value="pm"===e.ampm.value?12===e.hour.value?12:e.hour.value+12:12===e.hour.value?0:e.hour.value);for(const i of Object.keys(e))t[i]=e[i].value;return!0}if(e.ampm)return e.hour={value:e.hour?e.hour.value:"pm"===e.ampm.value?t.hour<12?t.hour+12:t.hour:t.hour>=12?t.hour-12:t.hour},t.hour=e.hour.value,!0}console.warn(`Error parsing date: "${e}". Please provide a valid ISO 8601 datetime format: https://www.w3.org/TR/NOTE-datetime`)}else for(const i in t)t.hasOwnProperty(i)&&delete t[i]})(this.datetimeValue,t)}generatePickerOptions(){const t=Object(o.e)(this),e=Object.assign(Object.assign({mode:t},this.pickerOptions),{columns:this.generateColumns()}),i=e.buttons;return i&&0!==i.length||(e.buttons=[{text:this.cancelText,role:"cancel",handler:()=>{this.updateDatetimeValue(this.value),this.ionCancel.emit()}},{text:this.doneText,handler:t=>{this.updateDatetimeValue(t);const e=new Date(b(this.datetimeValue));this.datetimeValue.tzOffset=-1*e.getTimezoneOffset(),this.value=b(this.datetimeValue)}}]),e}generateColumns(){let t=this.pickerFormat||this.displayFormat||q;if(0===t.length)return[];this.calcMinMax(),-1===(t=t.replace("DDDD","{~}").replace("DDD","{~}")).indexOf("D")&&(t=t.replace("{~}","D"));const e=(t=>{const e=[];t=t.replace(/[^\w\s]/gi," "),A.forEach(e=>{e.f.length>1&&t.indexOf(e.f)>-1&&t.indexOf(e.f+e.f.charAt(0))<0&&(t=t.replace(e.f," "+e.f+" "))});const i=t.split(" ").filter(t=>t.length>0);return i.forEach((t,o)=>{A.forEach(n=>{if(t===n.f){if((t===P||t===$)&&(e.indexOf(T)<0&&e.indexOf(E)<0||-1===J.indexOf(i[o-1])))return;e.push(t)}})}),e})(t=t.replace(/{~}/g,"")).map(t=>{const e=f(t);let i;const o=(i=this[e+"Values"]?v(this[e+"Values"],e):((t,e,i)=>{const o=[];if(t===O||t===M){if(void 0===i.year||void 0===e.year)throw new Error("min and max year is undefined");for(let t=i.year;t>=e.year;t--)o.push(t)}else if(t===j||t===D||t===C||"M"===t||t===E||t===T)for(let n=1;n<13;n++)o.push(n);else if(t===S||t===F||t===Y||"D"===t)for(let n=1;n<32;n++)o.push(n);else if(t===I||"H"===t)for(let n=0;n<24;n++)o.push(n);else if(t===N||"m"===t)for(let n=0;n<60;n++)o.push(n);else if(t===z||"s"===t)for(let n=0;n<60;n++)o.push(n);else t!==P&&t!==$||o.push("am","pm");return o})(t,this.datetimeMin,this.datetimeMax)).map(e=>({value:e,text:d(t,e,void 0,this.locale)})),n=((t,e)=>{const i=g(this.datetimeValue,e);if(void 0!==i)return i;const o=u((new Date).toISOString());return g(o,e)})(0,t),r=o.findIndex(t=>t.value===n);return{name:e,selectedIndex:r>=0?r:0,options:o}}),i=this.datetimeMin,o=this.datetimeMax;return["month","day","hour","minute"].filter(t=>!e.find(e=>e.name===t)).forEach(t=>{i[t]=0,o[t]=0}),this.validateColumns(L(e))}validateColumns(t){const e=new Date,i=c(this.datetimeMin),o=c(this.datetimeMax),n=t.find(t=>"year"===t.name);let r=e.getFullYear();if(n){n.options.find(t=>t.value===e.getFullYear())||(r=n.options[0].value);const t=n.selectedIndex;if(void 0!==t){const e=n.options[t];e&&(r=e.value)}}const s=this.validateColumn(t,"month",1,i,o,[r,0,0,0,0],[r,12,31,23,59]),a=((t,e)=>4===t||6===t||9===t||11===t?30:2===t?(t=>t%4==0&&t%100!=0||t%400==0)(e)?29:28:31)(s,r),l=this.validateColumn(t,"day",2,i,o,[r,s,0,0,0],[r,s,a,23,59]),d=this.validateColumn(t,"hour",3,i,o,[r,s,l,0,0],[r,s,l,23,59]);return this.validateColumn(t,"minute",4,i,o,[r,s,l,d,0],[r,s,l,d,59]),t}calcMinMax(){const t=(new Date).getFullYear();if(void 0!==this.yearValues){const t=v(this.yearValues,"year");void 0===this.min&&(this.min=Math.min(...t).toString()),void 0===this.max&&(this.max=Math.max(...t).toString())}else void 0===this.min&&(this.min=(t-100).toString()),void 0===this.max&&(this.max=t.toString());const e=this.datetimeMin=u(this.min),i=this.datetimeMax=u(this.max);e.year=e.year||t,i.year=i.year||t,e.month=e.month||1,i.month=i.month||12,e.day=e.day||1,i.day=i.day||31,e.hour=e.hour||0,i.hour=i.hour||23,e.minute=e.minute||0,i.minute=i.minute||59,e.second=e.second||0,i.second=i.second||59,e.year>i.year&&(console.error("min.year > max.year"),e.year=i.year-100),e.year===i.year&&(e.month>i.month?(console.error("min.month > max.month"),e.month=1):e.month===i.month&&e.day>i.day&&(console.error("min.day > max.day"),e.day=1))}validateColumn(t,e,i,o,r,s,a){const l=t.find(t=>t.name===e);if(!l)return 0;const d=s.slice(),c=a.slice(),p=l.options;let m=p.length-1,u=0;for(let n=0;n<p.length;n++){const t=p[n],e=t.value;d[i]=t.value,c[i]=t.value,(t.disabled=e<s[i]||e>a[i]||h(c[0],c[1],c[2],c[3],c[4])<o||h(d[0],d[1],d[2],d[3],d[4])>r)||(m=Math.min(m,n),u=Math.max(u,n))}const g=l.selectedIndex=Object(n.c)(m,l.selectedIndex,u),f=l.options[g];return f?f.value:0}get text(){if(null!=this.value&&0!==this.value.length)return((t,e,i)=>{if(void 0===e)return;const o=[];let n=!1;if(A.forEach((r,s)=>{if(t.indexOf(r.f)>-1){const a="{"+s+"}",l=d(r.f,e[r.k],e,i);n||void 0===l||null==e[r.k]||(n=!0),o.push(a,l||""),t=t.replace(r.f,a)}}),n){for(let e=0;e<o.length;e+=2)t=t.replace(o[e],o[e+1]);return t}})(this.displayFormat||this.pickerFormat||q,this.datetimeValue,this.locale)}hasValue(){return void 0!==this.text}setFocus(){this.buttonEl&&this.buttonEl.focus()}render(){const{inputId:t,text:e,disabled:i,readonly:r,isExpanded:s,el:l,placeholder:d}=this,h=Object(o.e)(this),c=t+"-lbl",p=Object(n.f)(l),m=void 0===e&&null!=d,u=void 0===e?null!=d?d:"":e;return p&&(p.id=c),Object(n.a)(!0,l,this.name,this.value,this.disabled),Object(o.i)(o.a,{onClick:this.onClick,role:"combobox","aria-disabled":i?"true":null,"aria-expanded":`${s}`,"aria-haspopup":"true","aria-labelledby":c,class:{[h]:!0,"datetime-disabled":i,"datetime-readonly":r,"datetime-placeholder":m,"in-item":Object(a.c)("ion-item",l)}},Object(o.i)("div",{class:"datetime-text"},u),Object(o.i)("button",{type:"button",onFocus:this.onFocus,onBlur:this.onBlur,disabled:this.disabled,ref:t=>this.buttonEl=t}))}get el(){return Object(o.f)(this)}static get watchers(){return{disabled:["disabledChanged"],value:["valueChanged"]}}static get style(){return":host{padding-left:var(--padding-start);padding-right:var(--padding-end);padding-top:var(--padding-top);padding-bottom:var(--padding-bottom);display:-ms-flexbox;display:flex;position:relative;min-width:16px;min-height:1.2em;font-family:var(--ion-font-family,inherit);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;z-index:2}@supports ((-webkit-margin-start:0) or (margin-inline-start:0)) or (-webkit-margin-start:0){:host{padding-left:unset;padding-right:unset;-webkit-padding-start:var(--padding-start);padding-inline-start:var(--padding-start);-webkit-padding-end:var(--padding-end);padding-inline-end:var(--padding-end)}}:host(.in-item){position:static}:host(.datetime-placeholder){color:var(--placeholder-color)}:host(.datetime-disabled){opacity:.3;pointer-events:none}:host(.datetime-readonly){pointer-events:none}button{left:0;top:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;position:absolute;width:100%;height:100%;border:0;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none}:host-context([dir=rtl]) button,[dir=rtl] button{left:unset;right:unset;right:0}button::-moz-focus-inner{border:0}.datetime-text{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;-ms-flex:1;flex:1;min-height:inherit;direction:ltr;overflow:inherit}:host-context([dir=rtl]) .datetime-text,[dir=rtl] .datetime-text{direction:rtl}:host{--placeholder-color:var(--ion-placeholder-color,var(--ion-color-step-400,#999));--padding-top:10px;--padding-end:0;--padding-bottom:11px;--padding-start:16px}"}},L=t=>{const e=[];let i,o;for(let n=0;n<t.length;n++){i=t[n],e.push(0);for(const t of i.options)(o=t.text.length)>e[n]&&(e[n]=o)}return 2===e.length?(o=Math.max(e[0],e[1]),t[0].align="right",t[1].align="left",t[0].optionsWidth=t[1].optionsWidth=`${17*o}px`):3===e.length&&(o=Math.max(e[0],e[2]),t[0].align="right",t[1].columnWidth=`${17*e[1]}px`,t[0].optionsWidth=t[2].optionsWidth=`${17*o}px`,t[2].align="left"),t},q="MMM D, YYYY";let _=0;const U=t=>{const e=Object(r.a)(),i=Object(r.a)(),o=Object(r.a)();return i.addElement(t.querySelector("ion-backdrop")).fromTo("opacity",.01,.26),o.addElement(t.querySelector(".picker-wrapper")).fromTo("transform","translateY(100%)","translateY(0%)"),e.addElement(t).easing("cubic-bezier(.36,.66,.04,1)").duration(400).addAnimation([i,o])},X=t=>{const e=Object(r.a)(),i=Object(r.a)(),o=Object(r.a)();return i.addElement(t.querySelector("ion-backdrop")).fromTo("opacity",.26,.01),o.addElement(t.querySelector(".picker-wrapper")).fromTo("transform","translateY(0%)","translateY(100%)"),e.addElement(t).easing("cubic-bezier(.36,.66,.04,1)").duration(400).addAnimation([i,o])},G=class{constructor(t){Object(o.l)(this,t),this.mode=Object(o.e)(this),this.presented=!1,this.keyboardClose=!0,this.buttons=[],this.columns=[],this.duration=0,this.showBackdrop=!0,this.backdropDismiss=!0,this.animated=!0,this.onBackdropTap=()=>{const t=this.buttons.find(t=>"cancel"===t.role);t?this.buttonClick(t):this.dismiss()},Object(s.e)(this.el),this.didPresent=Object(o.d)(this,"ionPickerDidPresent",7),this.willPresent=Object(o.d)(this,"ionPickerWillPresent",7),this.willDismiss=Object(o.d)(this,"ionPickerWillDismiss",7),this.didDismiss=Object(o.d)(this,"ionPickerDidDismiss",7)}async present(){await Object(s.f)(this,"pickerEnter",U,U,void 0),this.duration>0&&(this.durationTimeout=setTimeout(()=>this.dismiss(),this.duration))}dismiss(t,e){return this.durationTimeout&&clearTimeout(this.durationTimeout),Object(s.g)(this,t,e,"pickerLeave",X,X)}onDidDismiss(){return Object(s.h)(this.el,"ionPickerDidDismiss")}onWillDismiss(){return Object(s.h)(this.el,"ionPickerWillDismiss")}getColumn(t){return Promise.resolve(this.columns.find(e=>e.name===t))}buttonClick(t){return!1!==Object(s.p)(t.handler,this.getSelected())?this.dismiss():Promise.resolve(!1)}getSelected(){const t={};return this.columns.forEach((e,i)=>{const o=void 0!==e.selectedIndex?e.options[e.selectedIndex]:void 0;t[e.name]={text:o?o.text:void 0,value:o?o.value:void 0,columnIndex:i}}),t}render(){const t=Object(o.e)(this);return Object(o.i)(o.a,{"aria-modal":"true",class:Object.assign({[t]:!0,[`picker-${t}`]:!0},Object(a.b)(this.cssClass)),style:{zIndex:`${2e4+this.overlayIndex}`},onIonBackdropTap:this.onBackdropTap},Object(o.i)("ion-backdrop",{visible:this.showBackdrop,tappable:this.backdropDismiss}),Object(o.i)("div",{class:"picker-wrapper",role:"dialog"},Object(o.i)("div",{class:"picker-toolbar"},this.buttons.map(t=>Object(o.i)("div",{class:R(t)},Object(o.i)("button",{type:"button",onClick:()=>this.buttonClick(t),class:K(t)},t.text)))),Object(o.i)("div",{class:"picker-columns"},Object(o.i)("div",{class:"picker-above-highlight"}),this.presented&&this.columns.map(t=>Object(o.i)("ion-picker-column",{col:t})),Object(o.i)("div",{class:"picker-below-highlight"}))))}get el(){return Object(o.f)(this)}static get style(){return".sc-ion-picker-md-h{--border-radius:0;--border-style:solid;--min-width:auto;--width:100%;--max-width:500px;--min-height:auto;--max-height:auto;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;left:0;top:0;display:block;position:absolute;width:100%;height:100%;font-family:var(--ion-font-family,inherit);contain:strict;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:1001}[dir=rtl].sc-ion-picker-md-h, [dir=rtl] .sc-ion-picker-md-h{left:unset;right:unset;right:0}.overlay-hidden.sc-ion-picker-md-h{display:none}.picker-wrapper.sc-ion-picker-md{border-radius:var(--border-radius);left:0;right:0;bottom:0;margin-left:auto;margin-right:auto;margin-top:auto;margin-bottom:auto;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);border-width:var(--border-width);border-style:var(--border-style);border-color:var(--border-color);background:var(--background);contain:strict;overflow:hidden;z-index:10}@supports ((-webkit-margin-start:0) or (margin-inline-start:0)) or (-webkit-margin-start:0){.picker-wrapper.sc-ion-picker-md{margin-left:unset;margin-right:unset;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto}}.picker-toolbar.sc-ion-picker-md{width:100%;background:transparent;contain:strict;z-index:1}.picker-button.sc-ion-picker-md{border:0;font-family:inherit}.picker-button.sc-ion-picker-md:active, .picker-button.sc-ion-picker-md:focus{outline:none}.picker-columns.sc-ion-picker-md{display:-ms-flexbox;display:flex;position:relative;-ms-flex-pack:center;justify-content:center;margin-bottom:var(--ion-safe-area-bottom,0);contain:strict;direction:ltr;overflow:hidden}.picker-above-highlight.sc-ion-picker-md, .picker-below-highlight.sc-ion-picker-md{display:none;pointer-events:none}.sc-ion-picker-md-h{--background:var(--ion-background-color,#fff);--border-width:0.55px 0 0;--border-color:var(--ion-item-border-color,var(--ion-border-color,var(--ion-color-step-150,rgba(0,0,0,0.13))));--height:260px;color:var(--ion-item-color,var(--ion-text-color,#000))}.picker-toolbar.sc-ion-picker-md{display:-ms-flexbox;display:flex;-ms-flex-pack:end;justify-content:flex-end;height:44px}.picker-button.sc-ion-picker-md, .picker-button.activated.sc-ion-picker-md{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:1.1em;padding-right:1.1em;padding-top:0;padding-bottom:0;height:44px;background:transparent;color:var(--ion-color-primary,#3880ff);font-size:14px;font-weight:500;text-transform:uppercase;-webkit-box-shadow:none;box-shadow:none}@supports ((-webkit-margin-start:0) or (margin-inline-start:0)) or (-webkit-margin-start:0){.picker-button.sc-ion-picker-md, .picker-button.activated.sc-ion-picker-md{padding-left:unset;padding-right:unset;-webkit-padding-start:1.1em;padding-inline-start:1.1em;-webkit-padding-end:1.1em;padding-inline-end:1.1em}}.picker-columns.sc-ion-picker-md{height:216px;-webkit-perspective:1800px;perspective:1800px}.picker-above-highlight.sc-ion-picker-md{left:0;top:0;-webkit-transform:translateZ(90px);transform:translateZ(90px);position:absolute;width:100%;height:81px;border-bottom:1px solid var(--ion-item-border-color,var(--ion-border-color,var(--ion-color-step-150,rgba(0,0,0,.13))));background:-webkit-gradient(linear,left top,left bottom,color-stop(20%,var(--ion-background-color,#fff)),to(rgba(var(--ion-background-color-rgb,255,255,255),.8)));background:linear-gradient(180deg,var(--ion-background-color,#fff) 20%,rgba(var(--ion-background-color-rgb,255,255,255),.8));z-index:10}[dir=rtl].sc-ion-picker-md-h .picker-above-highlight.sc-ion-picker-md, [dir=rtl] .sc-ion-picker-md-h .picker-above-highlight.sc-ion-picker-md, [dir=rtl].sc-ion-picker-md .picker-above-highlight.sc-ion-picker-md{left:unset;right:unset;right:0}.picker-below-highlight.sc-ion-picker-md{left:0;top:115px;-webkit-transform:translateZ(90px);transform:translateZ(90px);position:absolute;width:100%;height:119px;border-top:1px solid var(--ion-item-border-color,var(--ion-border-color,var(--ion-color-step-150,rgba(0,0,0,.13))));background:-webkit-gradient(linear,left bottom,left top,color-stop(30%,var(--ion-background-color,#fff)),to(rgba(var(--ion-background-color-rgb,255,255,255),.8)));background:linear-gradient(0deg,var(--ion-background-color,#fff) 30%,rgba(var(--ion-background-color-rgb,255,255,255),.8));z-index:11}[dir=rtl].sc-ion-picker-md-h .picker-below-highlight.sc-ion-picker-md, [dir=rtl] .sc-ion-picker-md-h .picker-below-highlight.sc-ion-picker-md, [dir=rtl].sc-ion-picker-md .picker-below-highlight.sc-ion-picker-md{left:unset;right:unset;right:0}"}},R=t=>({[`picker-toolbar-${t.role}`]:void 0!==t.role,"picker-toolbar-button":!0}),K=t=>Object.assign({"picker-button":!0,"ion-activatable":!0},Object(a.b)(t.cssClass)),Q=class{constructor(t){Object(o.l)(this,t),this.optHeight=0,this.rotateFactor=0,this.scaleFactor=1,this.velocity=0,this.y=0,this.noAnimate=!0,this.ionPickerColChange=Object(o.d)(this,"ionPickerColChange",7)}colChanged(){this.refresh()}async connectedCallback(){let t=0,e=.81;"ios"===Object(o.e)(this)&&(t=-.46,e=1),this.rotateFactor=t,this.scaleFactor=e,this.gesture=(await Promise.resolve().then(i.bind(null,"mUkt"))).createGesture({el:this.el,gestureName:"picker-swipe",gesturePriority:100,threshold:0,onStart:t=>this.onStart(t),onMove:t=>this.onMove(t),onEnd:t=>this.onEnd(t)}),this.gesture.setDisabled(!1),this.tmrId=setTimeout(()=>{this.noAnimate=!1,this.refresh(!0)},250)}componentDidLoad(){const t=this.optsEl;t&&(this.optHeight=t.firstElementChild?t.firstElementChild.clientHeight:0),this.refresh()}disconnectedCallback(){cancelAnimationFrame(this.rafId),clearTimeout(this.tmrId),this.gesture&&(this.gesture.destroy(),this.gesture=void 0)}emitColChange(){this.ionPickerColChange.emit(this.col)}setSelected(t,e){const i=t>-1?-t*this.optHeight:0;this.velocity=0,cancelAnimationFrame(this.rafId),this.update(i,e,!0),this.emitColChange()}update(t,e,i){if(!this.optsEl)return;let o=0,n=0;const{col:r,rotateFactor:s}=this,a=r.selectedIndex=this.indexForY(-t),d=0===e?"":e+"ms",h=`scale(${this.scaleFactor})`,c=this.optsEl.children;for(let l=0;l<c.length;l++){const i=c[l],p=r.options[l],m=l*this.optHeight+t;let u="";if(0!==s){const t=m*s;Math.abs(t)<=90?(o=0,n=90,u=`rotateX(${t}deg) `):o=-9999}else n=0,o=m;const g=a===l;u+=`translate3d(0px,${o}px,${n}px) `,1===this.scaleFactor||g||(u+=h),this.noAnimate?(p.duration=0,i.style.transitionDuration=""):e!==p.duration&&(p.duration=e,i.style.transitionDuration=d),u!==p.transform&&(p.transform=u,i.style.transform=u),g!==p.selected&&(p.selected=g,g?i.classList.add(tt):i.classList.remove(tt))}this.col.prevSelected=a,i&&(this.y=t),this.lastIndex!==a&&(Object(l.b)(),this.lastIndex=a)}decelerate(){if(0!==this.velocity){this.velocity*=et,this.velocity=this.velocity>0?Math.max(this.velocity,1):Math.min(this.velocity,-1);let t=this.y+this.velocity;t>this.minY?(t=this.minY,this.velocity=0):t<this.maxY&&(t=this.maxY,this.velocity=0),this.update(t,0,!0),Math.round(t)%this.optHeight!=0||Math.abs(this.velocity)>1?this.rafId=requestAnimationFrame(()=>this.decelerate()):(this.velocity=0,this.emitColChange())}else if(this.y%this.optHeight!=0){const t=Math.abs(this.y%this.optHeight);this.velocity=t>this.optHeight/2?1:-1,this.decelerate()}}indexForY(t){return Math.min(Math.max(Math.abs(Math.round(t/this.optHeight)),0),this.col.options.length-1)}onStart(t){t.event.preventDefault(),t.event.stopPropagation(),cancelAnimationFrame(this.rafId);const e=this.col.options;let i=e.length-1,o=0;for(let n=0;n<e.length;n++)e[n].disabled||(i=Math.min(i,n),o=Math.max(o,n));this.minY=-i*this.optHeight,this.maxY=-o*this.optHeight}onMove(t){t.event.preventDefault(),t.event.stopPropagation();let e=this.y+t.deltaY;e>this.minY?(e=Math.pow(e,.8),this.bounceFrom=e):e<this.maxY?(e+=Math.pow(this.maxY-e,.9),this.bounceFrom=e):this.bounceFrom=0,this.update(e,0,!1)}onEnd(t){if(this.bounceFrom>0)return this.update(this.minY,100,!0),void this.emitColChange();if(this.bounceFrom<0)return this.update(this.maxY,100,!0),void this.emitColChange();if(this.velocity=Object(n.c)(-it,23*t.velocityY,it),0===this.velocity&&0===t.deltaY){const e=t.event.target.closest(".picker-opt");e&&e.hasAttribute("opt-index")&&this.setSelected(parseInt(e.getAttribute("opt-index"),10),ot)}else this.y+=t.deltaY,this.decelerate()}refresh(t){let e=this.col.options.length-1,i=0;const o=this.col.options;for(let n=0;n<o.length;n++)o[n].disabled||(e=Math.min(e,n),i=Math.max(i,n));if(0!==this.velocity)return;const r=Object(n.c)(e,this.col.selectedIndex||0,i);if(this.col.prevSelected!==r||t){const t=r*this.optHeight*-1;this.velocity=0,this.update(t,ot,!0)}}render(){const t=this.col,e=Object(o.e)(this);return Object(o.i)(o.a,{class:{[e]:!0,"picker-col":!0,"picker-opts-left":"left"===this.col.align,"picker-opts-right":"right"===this.col.align},style:{"max-width":this.col.columnWidth}},t.prefix&&Object(o.i)("div",{class:"picker-prefix",style:{width:t.prefixWidth}},t.prefix),Object(o.i)("div",{class:"picker-opts",style:{maxWidth:t.optionsWidth},ref:t=>this.optsEl=t},t.options.map((t,e)=>Object(o.i)("button",{type:"button",class:{"picker-opt":!0,"picker-opt-disabled":!!t.disabled},"opt-index":e},t.text))),t.suffix&&Object(o.i)("div",{class:"picker-suffix",style:{width:t.suffixWidth}},t.suffix))}get el(){return Object(o.f)(this)}static get watchers(){return{col:["colChanged"]}}static get style(){return".picker-col{display:-ms-flexbox;display:flex;position:relative;-ms-flex:1;flex:1;-ms-flex-pack:center;justify-content:center;height:100%;-webkit-box-sizing:content-box;box-sizing:content-box;contain:content}.picker-opts{position:relative;-ms-flex:1;flex:1;max-width:100%}.picker-opt{left:0;top:0;display:block;position:absolute;width:100%;border:0;text-align:center;text-overflow:ellipsis;white-space:nowrap;contain:strict;overflow:hidden;will-change:transform}:host-context([dir=rtl]) .picker-opt,[dir=rtl] .picker-opt{left:unset;right:unset;right:0}.picker-opt.picker-opt-disabled{pointer-events:none}.picker-opt-disabled{opacity:0}.picker-opts-left{-ms-flex-pack:start;justify-content:flex-start}.picker-opts-right{-ms-flex-pack:end;justify-content:flex-end}.picker-opt:active,.picker-opt:focus{outline:none}.picker-prefix{text-align:end}.picker-prefix,.picker-suffix{position:relative;-ms-flex:1;flex:1;white-space:nowrap}.picker-suffix{text-align:start}.picker-col{padding-left:8px;padding-right:8px;padding-top:0;padding-bottom:0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}@supports ((-webkit-margin-start:0) or (margin-inline-start:0)) or (-webkit-margin-start:0){.picker-col{padding-left:unset;padding-right:unset;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px}}.picker-opts,.picker-prefix,.picker-suffix{top:77px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;color:inherit;font-size:22px;line-height:42px;pointer-events:none}.picker-opt{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;height:43px;-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;background:transparent;color:inherit;font-size:22px;line-height:42px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto}.picker-opt.picker-opt-selected,.picker-prefix,.picker-suffix{color:var(--ion-color-primary,#3880ff)}"}},tt="picker-opt-selected",et=.97,it=90,ot=150}}]);