import{__awaiter,__generator,__spreadArray}from"tslib"; /*! * (C) Ionic http://ionicframework.com - MIT License */import{r as registerInstance,d as createEvent,w as writeTask,h,H as Host,f as getElement}from"./index-73fa3fe8.js";import{startFocusVisible}from"./focus-visible-dd40d69f.js";import{r as raf,d as renderHiddenInput,g as getElementRoot,l as clamp}from"./helpers-be245865.js";import{a as printIonError,p as printIonWarning}from"./index-9b0d46f4.js";import{i as isRTL}from"./dir-babeabeb.js";import{c as createColorClasses,g as getClassMap}from"./theme-01f3f29c.js";import{c as chevronBack,o as chevronForward,l as chevronDown,p as caretUpSharp,q as caretDownSharp}from"./index-f7dc70ba.js";import{b as getIonMode}from"./ionic-global-d89a6ff6.js";import{g as generateDayAriaLabel,a as getDay,i as isBefore,b as isAfter,c as isSameDay,d as getPreviousMonth,e as getNextMonth,v as validateParts,f as getPartsFromCalendarDay,h as getNextYear,j as getPreviousYear,k as getEndOfWeek,l as getStartOfWeek,m as getPreviousDay,n as getNextDay,o as getPreviousWeek,p as getNextWeek,q as parseMinParts,r as parseMaxParts,s as parseDate,w as warnIfValueOutOfBounds,t as convertToArrayOfNumbers,u as convertDataToISO,x as getToday,y as getClosestValidDate,z as generateMonths,A as getNumDaysInMonth,B as getCombinedDateColumnData,C as getMonthColumnData,D as getDayColumnData,E as getYearColumnData,F as isMonthFirstLocale,G as getTimeColumnsData,H as isLocaleDayPeriodRTL,I as getDaysOfWeek,J as getMonthAndYear,K as getDaysOfMonth,L as getHourCycle,M as getLocalizedTime,N as getLocalizedDateTime,O as formatValue,P as clampDate,Q as parseAmPm,R as calculateHourFromAMPM}from"./data-bb424ba8.js";import{c as createLockController}from"./lock-controller-316928be.js";import{d as createDelegateController,e as createTriggerController,B as BACKDROP,i as isCancel,j as prepareOverlay,k as setOverlayId,f as present,g as dismiss,h as eventMethod,s as safeCall}from"./overlays-ad4b0449.js";import{c as createAnimation}from"./animation-6a0c5338.js";import{b as hapticSelectionChanged,h as hapticSelectionEnd,a as hapticSelectionStart}from"./haptic-554688a5.js";import"./index-a5d50daf.js";import"./hardware-back-button-65a9e284.js";import"./framework-delegate-ed4ba327.js";import"./capacitor-59395cbd.js";var isYearDisabled=function(t,e,i){if(e&&e.year>t){return true}if(i&&i.year1;writeTask((function(){t.scrollLeft=n.clientWidth*(isRTL(e.el)?-1:1);var i=function(i){var r=t.getBoundingClientRect();var o=t.scrollLeft<=2?n:a;var s=o.getBoundingClientRect();if(Math.abs(s.x-r.x)>2)return;var d=e.forceRenderDate;if(d!==undefined){return{month:d.month,year:d.year,day:d.day}}if(o===n){return getPreviousMonth(i)}else if(o===a){return getNextMonth(i)}else{return}};var o=function(){if(s){t.style.removeProperty("pointer-events");l=false}var n=i(e.workingParts);if(!n)return;var a=n.month,o=n.day,d=n.year;if(isMonthDisabled({month:a,year:d,day:null},{minParts:Object.assign(Object.assign({},e.minParts),{day:null}),maxParts:Object.assign(Object.assign({},e.maxParts),{day:null})})){return}t.style.setProperty("overflow","hidden");writeTask((function(){e.setWorkingParts(Object.assign(Object.assign({},e.workingParts),{month:a,day:o,year:d}));t.scrollLeft=r.clientWidth*(isRTL(e.el)?-1:1);t.style.removeProperty("overflow");if(e.resolveForceDateScrolling){e.resolveForceDateScrolling()}}))};var d;var l=false;var c=function(){if(d){clearTimeout(d)}if(!l&&s){t.style.setProperty("pointer-events","none");l=true}d=setTimeout(o,50)};t.addEventListener("scroll",c);e.destroyCalendarListener=function(){t.removeEventListener("scroll",c)}}))};this.destroyInteractionListeners=function(){var t=e,i=t.destroyCalendarListener,n=t.destroyKeyboardMO;if(i!==undefined){i()}if(n!==undefined){n()}};this.processValue=function(t){var i=t!==null&&t!==undefined&&(!Array.isArray(t)||t.length>0);var n=i?parseDate(t):e.defaultParts;var r=e,a=r.minParts,o=r.maxParts,s=r.workingParts,d=r.el;e.warnIfIncorrectValueUsage();if(!n){return}if(i){warnIfValueOutOfBounds(n,a,o)}var l=Array.isArray(n)?n[0]:n;var c=clampDate(l,a,o);var h=c.month,p=c.day,u=c.year,f=c.hour,m=c.minute;var b=parseAmPm(f);if(i){if(Array.isArray(n)){e.activeParts=__spreadArray([],n,true)}else{e.activeParts={month:h,day:p,year:u,hour:f,minute:m,ampm:b}}}else{e.activeParts=[]}var g=h!==undefined&&h!==s.month||u!==undefined&&u!==s.year;var v=d.classList.contains("datetime-ready");var y=e,x=y.isGridStyle,k=y.showMonthAndYear;var w=true;if(Array.isArray(n)){var C=n[0].month;for(var O=0,D=n;O0){this.durationTimeout=setTimeout((function(){return e.dismiss()}),this.duration)}t();return[2]}}))}))};t.prototype.dismiss=function(t,e){return __awaiter(this,void 0,void 0,(function(){var i,n;return __generator(this,(function(r){switch(r.label){case 0:return[4,this.lockController.lock()];case 1:i=r.sent();if(this.durationTimeout){clearTimeout(this.durationTimeout)}return[4,dismiss(this,t,e,"pickerLeave",iosLeaveAnimation,iosLeaveAnimation)];case 2:n=r.sent();if(n){this.delegateController.removeViewFromDom()}i();return[2,n]}}))}))};t.prototype.onDidDismiss=function(){return eventMethod(this.el,"ionPickerDidDismiss")};t.prototype.onWillDismiss=function(){return eventMethod(this.el,"ionPickerWillDismiss")};t.prototype.getColumn=function(t){return Promise.resolve(this.columns.find((function(e){return e.name===t})))};t.prototype.buttonClick=function(t){return __awaiter(this,void 0,void 0,(function(){var e,i;return __generator(this,(function(n){switch(n.label){case 0:e=t.role;if(isCancel(e)){return[2,this.dismiss(undefined,e)]}return[4,this.callButtonHandler(t)];case 1:i=n.sent();if(i){return[2,this.dismiss(this.getSelected(),t.role)]}return[2,Promise.resolve()]}}))}))};t.prototype.callButtonHandler=function(t){return __awaiter(this,void 0,void 0,(function(){var e;return __generator(this,(function(i){switch(i.label){case 0:if(!t)return[3,2];return[4,safeCall(t.handler,this.getSelected())];case 1:e=i.sent();if(e===false){return[2,false]}i.label=2;case 2:return[2,true]}}))}))};t.prototype.getSelected=function(){var t={};this.columns.forEach((function(e,i){var n=e.selectedIndex!==undefined?e.options[e.selectedIndex]:undefined;t[e.name]={text:n?n.text:undefined,value:n?n.value:undefined,columnIndex:i}}));return t};t.prototype.render=function(){var t;var e=this;var i=this.htmlAttributes;var n=getIonMode(this);return h(Host,Object.assign({key:"d2a0406625c8de0604a926a807f63c7f25bf4bab","aria-modal":"true",tabindex:"-1"},i,{style:{zIndex:"".concat(2e4+this.overlayIndex)},class:Object.assign((t={},t[n]=true,t["picker-".concat(n)]=true,t["overlay-hidden"]=true,t),getClassMap(this.cssClass)),onIonBackdropTap:this.onBackdropTap,onIonPickerWillDismiss:this.dispatchCancelHandler}),h("ion-backdrop",{key:"776a45c3df93ab4683727bb5c8ba0085f4336586",visible:this.showBackdrop,tappable:this.backdropDismiss}),h("div",{key:"fc34d3838cfc5c38097dac9e749dbf7433e1a10a",tabindex:"0"}),h("div",{key:"49bf9e92e301cbe12e2e683df110cccd6c9b8042",class:"picker-wrapper ion-overlay-wrapper",role:"dialog"},h("div",{key:"f2810a07ea067be31c169f36cbb44ca8a5dc219b",class:"picker-toolbar"},this.buttons.map((function(t){return h("div",{class:buttonWrapperClass(t)},h("button",{type:"button",onClick:function(){return e.buttonClick(t)},class:buttonClass(t)},t.text))}))),h("div",{key:"f2d2a4652a8e368e40d4462d2b5e4c8095001b64",class:"picker-columns"},h("div",{key:"143ee78c8e0543f3a2f897097ff09e18f5b68016",class:"picker-above-highlight"}),this.presented&&this.columns.map((function(t){return h("ion-picker-column",{col:t})})),h("div",{key:"47716d2e923ca096a0bd48a07fee2deae1b1a567",class:"picker-below-highlight"}))),h("div",{key:"ecd3b459cae6492330c7c5847c2b4cd214c9c615",tabindex:"0"}))};Object.defineProperty(t.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(t,"watchers",{get:function(){return{isOpen:["onIsOpenChange"],trigger:["triggerChanged"]}},enumerable:false,configurable:true});return t}();var buttonWrapperClass=function(t){var e;return e={},e["picker-toolbar-".concat(t.role)]=t.role!==undefined,e["picker-toolbar-button"]=true,e};var buttonClass=function(t){return Object.assign({"picker-button":true,"ion-activatable":true},getClassMap(t.cssClass))};Picker.style={ios:IonPickerIosStyle0,md:IonPickerMdStyle0};var pickerColumnIosCss=".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{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}@supports (inset-inline-start: 0){.picker-opt{inset-inline-start:0}}@supports not (inset-inline-start: 0){.picker-opt{left:0}:host-context([dir=rtl]) .picker-opt{left:unset;right:unset;right:0}[dir=rtl] .picker-opt{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.picker-opt:dir(rtl){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{position:relative;-ms-flex:1;flex:1;text-align:end;white-space:nowrap}.picker-suffix{position:relative;-ms-flex:1;flex:1;text-align:start;white-space:nowrap}.picker-col{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:0;padding-bottom:0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.picker-prefix,.picker-suffix,.picker-opts{top:77px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;color:inherit;font-size:20px;line-height:42px;pointer-events:none}.picker-opt{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0;margin-left:0;margin-right:0;margin-top:0;margin-bottom:0;-webkit-transform-origin:center center;transform-origin:center center;height:46px;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;background:transparent;color:inherit;font-size:20px;line-height:42px;-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:auto}:host-context([dir=rtl]) .picker-opt{-webkit-transform-origin:calc(100% - center) center;transform-origin:calc(100% - center) center}[dir=rtl] .picker-opt{-webkit-transform-origin:calc(100% - center) center;transform-origin:calc(100% - center) center}@supports selector(:dir(rtl)){.picker-opt:dir(rtl){-webkit-transform-origin:calc(100% - center) center;transform-origin:calc(100% - center) center}}";var IonPickerColumnIosStyle0=pickerColumnIosCss;var pickerColumnMdCss=".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{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}@supports (inset-inline-start: 0){.picker-opt{inset-inline-start:0}}@supports not (inset-inline-start: 0){.picker-opt{left:0}:host-context([dir=rtl]) .picker-opt{left:unset;right:unset;right:0}[dir=rtl] .picker-opt{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.picker-opt:dir(rtl){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{position:relative;-ms-flex:1;flex:1;text-align:end;white-space:nowrap}.picker-suffix{position:relative;-ms-flex:1;flex:1;text-align:start;white-space:nowrap}.picker-col{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:0;padding-bottom:0;-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.picker-prefix,.picker-suffix,.picker-opts{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-prefix,.picker-suffix,.picker-opt.picker-opt-selected{color:var(--ion-color-primary, #3880ff)}";var IonPickerColumnMdStyle0=pickerColumnMdCss;var PickerColumnCmp=function(){function t(t){registerInstance(this,t);this.ionPickerColChange=createEvent(this,"ionPickerColChange",7);this.optHeight=0;this.rotateFactor=0;this.scaleFactor=1;this.velocity=0;this.y=0;this.noAnimate=true;this.colDidChange=false;this.col=undefined}t.prototype.colChanged=function(){this.colDidChange=true};t.prototype.connectedCallback=function(){return __awaiter(this,void 0,void 0,(function(){var t,e,i,n;var r=this;return __generator(this,(function(a){switch(a.label){case 0:t=0;e=.81;i=getIonMode(this);if(i==="ios"){t=-.46;e=1}this.rotateFactor=t;this.scaleFactor=e;n=this;return[4,import("./index-2cf77112.js")];case 1:n.gesture=a.sent().createGesture({el:this.el,gestureName:"picker-swipe",gesturePriority:100,threshold:0,passive:false,onStart:function(t){return r.onStart(t)},onMove:function(t){return r.onMove(t)},onEnd:function(t){return r.onEnd(t)}});this.gesture.enable();this.tmrId=setTimeout((function(){r.noAnimate=false;r.refresh(true)}),250);return[2]}}))}))};t.prototype.componentDidLoad=function(){this.onDomChange()};t.prototype.componentDidUpdate=function(){if(this.colDidChange){this.onDomChange(true,false);this.colDidChange=false}};t.prototype.disconnectedCallback=function(){if(this.rafId!==undefined)cancelAnimationFrame(this.rafId);if(this.tmrId)clearTimeout(this.tmrId);if(this.gesture){this.gesture.destroy();this.gesture=undefined}};t.prototype.emitColChange=function(){this.ionPickerColChange.emit(this.col)};t.prototype.setSelected=function(t,e){var i=t>-1?-(t*this.optHeight):0;this.velocity=0;if(this.rafId!==undefined)cancelAnimationFrame(this.rafId);this.update(i,e,true);this.emitColChange()};t.prototype.update=function(t,e,i){if(!this.optsEl){return}var n=0;var r=0;var a=this,o=a.col,s=a.rotateFactor;var d=o.selectedIndex;var l=o.selectedIndex=this.indexForY(-t);var c=e===0?"":e+"ms";var h="scale(".concat(this.scaleFactor,")");var p=this.optsEl.children;for(var u=0;u0?Math.max(this.velocity,1):Math.min(this.velocity,-1);var e=this.y+this.velocity;if(e>this.minY){e=this.minY;this.velocity=0}else if(e1;if(i){this.rafId=requestAnimationFrame((function(){return t.decelerate()}))}else{this.velocity=0;this.emitColChange();hapticSelectionEnd()}}else if(this.y%this.optHeight!==0){var n=Math.abs(this.y%this.optHeight);this.velocity=n>this.optHeight/2?1:-1;this.decelerate()}};t.prototype.indexForY=function(t){return Math.min(Math.max(Math.abs(Math.round(t/this.optHeight)),0),this.col.options.length-1)};t.prototype.onStart=function(t){if(t.event.cancelable){t.event.preventDefault()}t.event.stopPropagation();hapticSelectionStart();if(this.rafId!==undefined)cancelAnimationFrame(this.rafId);var e=this.col.options;var i=e.length-1;var n=0;for(var r=0;rthis.minY){e=Math.pow(e,.8);this.bounceFrom=e}else if(e0){this.update(this.minY,100,true);this.emitColChange();return}else if(this.bounceFrom<0){this.update(this.maxY,100,true);this.emitColChange();return}this.velocity=clamp(-MAX_PICKER_SPEED,t.velocityY*23,MAX_PICKER_SPEED);if(this.velocity===0&&t.deltaY===0){var e=t.event.target.closest(".picker-opt");if(e===null||e===void 0?void 0:e.hasAttribute("opt-index")){this.setSelected(parseInt(e.getAttribute("opt-index"),10),TRANSITION_DURATION)}}else{this.y+=t.deltaY;if(Math.abs(t.velocityY)<.05){var i=t.deltaY>0;var n=Math.abs(this.y)%this.optHeight/this.optHeight;if(i&&n>.5){this.velocity=Math.abs(this.velocity)*-1}else if(!i&&n<=.5){this.velocity=Math.abs(this.velocity)}}this.decelerate()}};t.prototype.refresh=function(t,e){var i;var n=this.col.options.length-1;var r=0;var a=this.col.options;for(var o=0;o