@ionic/core 9.0.9-nightly.20261020 → 9.0.9

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.
Files changed (33) hide show
  1. package/components/ion-action-sheet.js +1 -1
  2. package/components/ion-alert.js +1 -1
  3. package/components/ion-backdrop.js +1 -1
  4. package/components/ion-datetime.js +1 -1
  5. package/components/ion-loading.js +1 -1
  6. package/components/ion-menu.js +1 -1
  7. package/components/ion-modal.js +1 -1
  8. package/components/ion-popover.js +1 -1
  9. package/components/ion-select.js +1 -1
  10. package/components/{p-DhfJAkyd.js → p-CKTjkpAq.js} +1 -1
  11. package/components/{p-DnGlmM4u.js → p-CONpe3oX.js} +1 -1
  12. package/components/p-CVrOcN5N.js +4 -0
  13. package/components/{p-DMPsc_0r.js → p-CW84OFQa.js} +1 -1
  14. package/components/{p-CQKWzUsE.js → p-CYctYy9B.js} +1 -1
  15. package/dist/cjs/ion-backdrop.cjs.entry.js +5 -1
  16. package/dist/cjs/ion-datetime.cjs.entry.js +55 -9
  17. package/dist/collection/components/backdrop/backdrop.js +6 -2
  18. package/dist/collection/components/datetime/datetime.js +56 -10
  19. package/dist/docs.json +3 -3
  20. package/dist/esm/ion-backdrop.entry.js +5 -1
  21. package/dist/esm/ion-datetime.entry.js +55 -9
  22. package/dist/html.html-data.json +1 -1
  23. package/dist/ionic/ionic.esm.js +1 -1
  24. package/dist/ionic/{p-230f510c.entry.js → p-76c189e7.entry.js} +1 -1
  25. package/dist/ionic/p-94f1f7df.entry.js +4 -0
  26. package/dist/types/components/backdrop/backdrop.d.ts +4 -0
  27. package/dist/types/components/datetime/datetime.d.ts +20 -3
  28. package/dist/types/components.d.ts +3 -3
  29. package/hydrate/index.js +60 -10
  30. package/hydrate/index.mjs +60 -10
  31. package/package.json +1 -1
  32. package/components/p-CQnEg-p2.js +0 -4
  33. package/dist/ionic/p-d9a3dfd1.entry.js +0 -4
package/hydrate/index.mjs CHANGED
@@ -12056,6 +12056,10 @@ class Backdrop {
12056
12056
  this.ionBackdropTap = createEvent(this, "ionBackdropTap", 7);
12057
12057
  /**
12058
12058
  * If `true`, the backdrop will be visible.
12059
+ * This property controls whether or not the backdrop's
12060
+ * default background is shown. It does not control whether
12061
+ * or not the backdrop blocks interaction, and it does not
12062
+ * override a custom background set on `ion-backdrop`.
12059
12063
  */
12060
12064
  this.visible = true;
12061
12065
  /**
@@ -12081,7 +12085,7 @@ class Backdrop {
12081
12085
  }
12082
12086
  render() {
12083
12087
  const mode = getIonMode$1(this);
12084
- return (hAsync(Host, { key: '7abaf2c310aa399607451b14063265e8a5846938', "aria-hidden": "true", class: {
12088
+ return (hAsync(Host, { key: '14141148f4a22371b8ad7cb9dcdc32398ec109aa', "aria-hidden": "true", class: {
12085
12089
  [mode]: true,
12086
12090
  'backdrop-hide': !this.visible,
12087
12091
  'backdrop-no-tappable': !this.tappable,
@@ -16486,6 +16490,13 @@ class Datetime {
16486
16490
  this.ionStyle = createEvent(this, "ionStyle", 7);
16487
16491
  this.ionRender = createEvent(this, "ionRender", 7);
16488
16492
  this.inputId = `ion-dt-${datetimeIds++}`;
16493
+ /**
16494
+ * Set when the user selects a value, cleared when it's confirmed
16495
+ * or `processValue` runs (`reset()`, or `value` being set to a
16496
+ * non-empty value). The overlay present listener only discards a
16497
+ * selection while this is set.
16498
+ */
16499
+ this.hasUnconfirmedSelection = false;
16489
16500
  this.prevPresentation = null;
16490
16501
  this.showMonthAndYear = false;
16491
16502
  this.activeParts = [];
@@ -16649,6 +16660,7 @@ class Datetime {
16649
16660
  if (popoverOrModal) {
16650
16661
  popoverOrModal.dismiss(undefined, role);
16651
16662
  }
16663
+ return popoverOrModal !== null;
16652
16664
  };
16653
16665
  this.setWorkingParts = (parts) => {
16654
16666
  this.workingParts = {
@@ -16663,6 +16675,7 @@ class Datetime {
16663
16675
  if (this.readonly) {
16664
16676
  return;
16665
16677
  }
16678
+ this.hasUnconfirmedSelection = true;
16666
16679
  const { multiple, minParts, maxParts, activeParts } = this;
16667
16680
  /**
16668
16681
  * When setting the active parts, it is possible
@@ -17083,7 +17096,8 @@ class Datetime {
17083
17096
  this.loadTimeout = undefined;
17084
17097
  }
17085
17098
  };
17086
- this.processValue = (value) => {
17099
+ this.processValue = (value, animated = true) => {
17100
+ this.hasUnconfirmedSelection = false;
17087
17101
  const hasValue = value !== null && value !== undefined && value !== '' && (!Array.isArray(value) || value.length > 0);
17088
17102
  const valueToProcess = hasValue ? parseDate(value) : this.defaultParts;
17089
17103
  const { minParts, maxParts, workingParts, el } = this;
@@ -17146,13 +17160,14 @@ class Datetime {
17146
17160
  const didChangeMonth = (month !== undefined && month !== workingParts.month) || (year !== undefined && year !== workingParts.year);
17147
17161
  const bodyIsVisible = el.classList.contains('datetime-ready');
17148
17162
  const { isGridStyle, showMonthAndYear } = this;
17149
- if (isGridStyle && didChangeMonth && bodyIsVisible && !showMonthAndYear) {
17163
+ if (isGridStyle && didChangeMonth && bodyIsVisible && !showMonthAndYear && animated) {
17150
17164
  /**
17151
17165
  * Only animate if:
17152
17166
  * 1. We're using grid style (wheel style pickers should just jump to new value)
17153
17167
  * 2. The month and/or year actually changed, and both are defined (otherwise there's nothing to animate to)
17154
17168
  * 3. The calendar body is visible (prevents animation when in collapsed datetime-button, for example)
17155
17169
  * 4. The month/year picker is not open (since you wouldn't see the animation anyway)
17170
+ * 5. The caller did not opt out (e.g. the parent overlay is still hidden)
17156
17171
  */
17157
17172
  this.animateToDate(targetValue);
17158
17173
  }
@@ -17323,6 +17338,7 @@ class Datetime {
17323
17338
  this.setValue(convertDataToISO(activeParts));
17324
17339
  }
17325
17340
  }
17341
+ this.hasUnconfirmedSelection = false;
17326
17342
  if (closeOverlay) {
17327
17343
  this.closeParentOverlay(CONFIRM_ROLE);
17328
17344
  }
@@ -17338,17 +17354,22 @@ class Datetime {
17338
17354
  this.processValue(startDate);
17339
17355
  }
17340
17356
  /**
17341
- * Emits the ionCancel event and
17342
- * optionally closes the popover
17343
- * or modal that the datetime was
17357
+ * Emits the ionCancel event, discards
17358
+ * any unconfirmed selection, and
17359
+ * optionally closes the popover or
17360
+ * modal that the datetime was
17344
17361
  * presented in.
17345
17362
  *
17346
17363
  * @param closeOverlay If `true`, closes the parent overlay. Defaults to `false`.
17347
17364
  */
17348
17365
  async cancel(closeOverlay = false) {
17349
17366
  this.ionCancel.emit();
17350
- if (closeOverlay) {
17351
- this.closeParentOverlay(CANCEL_ROLE);
17367
+ /**
17368
+ * When a parent overlay closes, the present listener discards
17369
+ * the selection on the next open. Otherwise discard it now.
17370
+ */
17371
+ if (!closeOverlay || !this.closeParentOverlay(CANCEL_ROLE)) {
17372
+ this.processValue(this.value);
17352
17373
  }
17353
17374
  }
17354
17375
  /**
@@ -17370,6 +17391,7 @@ class Datetime {
17370
17391
  this.loadTimeout = setTimeout(() => {
17371
17392
  this.ensureReadyIfVisible();
17372
17393
  }, 100);
17394
+ this.initializeOverlayPresentListener();
17373
17395
  }
17374
17396
  disconnectedCallback() {
17375
17397
  if (this.clearFocusVisible) {
@@ -17377,6 +17399,34 @@ class Datetime {
17377
17399
  this.clearFocusVisible = undefined;
17378
17400
  }
17379
17401
  this.loadTimeoutCleanup();
17402
+ if (this.destroyOverlayPresentListener) {
17403
+ this.destroyOverlayPresentListener();
17404
+ this.destroyOverlayPresentListener = undefined;
17405
+ }
17406
+ }
17407
+ /**
17408
+ * A datetime in a modal or popover stays mounted between
17409
+ * presentations, so an unconfirmed selection would still show when
17410
+ * it reopens. Discarding on present rather than dismiss lets app
17411
+ * code that runs on dismiss still confirm or reset the selection,
17412
+ * whatever order its listeners were added in.
17413
+ */
17414
+ initializeOverlayPresentListener() {
17415
+ const overlay = this.el.closest('ion-modal, ion-popover');
17416
+ if (!overlay) {
17417
+ return;
17418
+ }
17419
+ const eventName = overlay.tagName === 'ION-MODAL' ? 'ionModalWillPresent' : 'ionPopoverWillPresent';
17420
+ const onPresent = (ev) => {
17421
+ // Ignore nested overlays and skip when there's nothing to discard.
17422
+ if (ev.target !== overlay || !this.hasUnconfirmedSelection) {
17423
+ return;
17424
+ }
17425
+ // The overlay is still hidden, so skip the month animation.
17426
+ this.processValue(this.value, false);
17427
+ };
17428
+ overlay.addEventListener(eventName, onPresent);
17429
+ this.destroyOverlayPresentListener = () => overlay.removeEventListener(eventName, onPresent);
17380
17430
  }
17381
17431
  initializeListeners() {
17382
17432
  this.initializeCalendarListener();
@@ -18259,7 +18309,7 @@ class Datetime {
18259
18309
  const hasDatePresentation = presentation === 'date' || presentation === 'date-time' || presentation === 'time-date';
18260
18310
  const hasWheelVariant = hasDatePresentation && preferWheel;
18261
18311
  renderHiddenInput(true, el, name, formatValue(value), disabled);
18262
- return (hAsync(Host, { key: 'a9128b5c55464e30a269daf9d725bf430c8c655c', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: {
18312
+ return (hAsync(Host, { key: 'e9b99bb5610fc7fe879200a56dcc865c6e2f1404', "aria-disabled": disabled ? 'true' : null, onFocus: this.onFocus, onBlur: this.onBlur, class: {
18263
18313
  ...createColorClasses$1(color, {
18264
18314
  [mode]: true,
18265
18315
  ['datetime-readonly']: readonly,
@@ -18271,7 +18321,7 @@ class Datetime {
18271
18321
  [`datetime-prefer-wheel`]: hasWheelVariant,
18272
18322
  [`datetime-grid`]: isGridStyle,
18273
18323
  }),
18274
- } }, hAsync("div", { key: 'b49f3a98db2b7cf535d7ea894d518f75f8a1fefb', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
18324
+ } }, hAsync("div", { key: 'a5e61be2989468dc24ec8fb394116d9339b7824c', class: "intersection-tracker", ref: (el) => (this.intersectionTrackerRef = el) }), this.renderDatetime(mode)));
18275
18325
  }
18276
18326
  get el() { return getElement(this); }
18277
18327
  static get watchers() { return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ionic/core",
3
- "version": "9.0.9-nightly.20261020",
3
+ "version": "9.0.9",
4
4
  "description": "Base components for Ionic",
5
5
  "engines": {
6
6
  "node": ">= 16"
@@ -1,4 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import{d as t,H as i,i as o,p as e,w as a,e as s,h as r,f as n,t as d}from"./p-Ct2aBEue.js";import{i as h,b as p,a as l,d as c,r as m,f,p as u}from"./p-V1THdfzs.js";import{C as b,a as x,d as v}from"./p-Ba9_OzSY.js";import{p as w,g,e as k,r as y,j as A,l as Y}from"./p-B4IBdPVJ.js";import{c as D}from"./p-B-hirT0v.js";import{g as C}from"./p-CIGNaXM1.js";import{G as S,O as E,F as O,n as M,d as T,B,h as P,r as I,j as N,k as j,e as z,f as R,g as $}from"./p-B02CcbPD.js";import{g as L}from"./p-byZM6qHV.js";import{e as F,w as W}from"./p-DfDIY2oP.js";import{b as H}from"./p-HthJZjZ6.js";import{KEYBOARD_DID_OPEN as V}from"./p-D7-vHX0A.js";import{c as Z}from"./p-ChsJlFCQ.js";import{g as K}from"./p-hHmYLOfE.js";import{createGesture as _}from"./p-D0YpjgON.js";import{w as G}from"./p-ZjP4CjeZ.js";import{d as J}from"./p-DMPsc_0r.js";var U;!function(t){t.Dark="DARK",t.Light="LIGHT",t.Default="DEFAULT"}(U||(U={}));const X={getEngine(){const t=C();if(t?.isPluginAvailable("StatusBar"))return t.Plugins.StatusBar},setStyle(t){const i=this.getEngine();i&&i.setStyle(t)},getStyle:async function(){const t=this.getEngine();if(!t)return U.Default;const{style:i}=await t.getInfo();return i}},q=(t,i)=>{if(1===i)return 0;const o=1/(1-i);return t*o+-i*o},Q=()=>{!G||G.innerWidth>=768||X.setStyle({style:U.Dark})},tt=(t=U.Default)=>{!G||G.innerWidth>=768||X.setStyle({style:t})},it=t=>{const i=h(t)?g(t).querySelector(".inner-scroll"):t;return!p(t)&&0===i.scrollTop},ot=async(t,i)=>{"function"==typeof t.canDismiss&&await t.canDismiss(void 0,S)&&(i.isRunning()?i.onFinish((()=>{t.dismiss(void 0,"handler")}),{oneTimeCallback:!0}):t.dismiss(void 0,"handler"))},et=t=>.00255275*2.71828**(-14.9619*t)-1.00255*2.71828**(-.0380968*t)+1,at=.915,st=(t,i)=>k(400,t/Math.abs(1.1*i),500),rt=(t,i)=>{const o=window.innerHeight,e=t.getBoundingClientRect().top,a=Math.round(1e3*(1-i/(o-e)))/1e3;return Math.max(0,Math.min(1,a))},nt=t=>{const{currentBreakpoint:i,backdropBreakpoint:o,expandToScroll:e}=t,a=void 0===o||o<i,s=a?`calc(var(--backdrop-opacity) * ${i})`:"0",r=Z("backdropAnimation").fromTo("opacity",0,s);return a&&r.beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),{wrapperAnimation:Z("wrapperAnimation").keyframes([{offset:0,opacity:1,transform:"translateY(100%)"},{offset:1,opacity:1,transform:`translateY(${100-100*i}%)`}]),backdropAnimation:r,contentAnimation:e?void 0:Z("contentAnimation").keyframes([{offset:0,opacity:1,maxHeight:100*(1-i)+"%"},{offset:1,opacity:1,maxHeight:100*i+"%"}])}},dt=t=>{const{currentBreakpoint:i,backdropBreakpoint:o}=t,e=`calc(var(--backdrop-opacity) * ${q(i,o)})`,a=[{offset:0,opacity:e},{offset:1,opacity:0}],s=[{offset:0,opacity:e},{offset:o,opacity:0},{offset:1,opacity:0}],r=Z("backdropAnimation").keyframes(0!==o?s:a);return{wrapperAnimation:Z("wrapperAnimation").keyframes([{offset:0,opacity:1,transform:`translateY(${100-100*i}%)`},{offset:1,opacity:1,transform:"translateY(100%)"}]),backdropAnimation:r}},ht=(t,i)=>{const{presentingEl:o,currentBreakpoint:e,expandToScroll:a}=i,s=g(t),{wrapperAnimation:r,backdropAnimation:n,contentAnimation:d}=void 0!==e?nt(i):{backdropAnimation:Z().fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),wrapperAnimation:Z().fromTo("transform","translateY(100vh)","translateY(0vh)"),contentAnimation:void 0};n.addElement(s.querySelector("ion-backdrop")),r.addElement(s.querySelectorAll(".modal-wrapper, .modal-shadow")).beforeStyles({opacity:1}),!a&&d?.addElement(t.querySelector(".ion-page"));const h=Z("entering-base").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(500).addAnimation([r]);if(d&&h.addAnimation(d),o){const t=window.innerWidth<768,i="ION-MODAL"===o.tagName&&void 0!==o.presentingElement,e=g(o),a=Z().beforeStyles({transform:"translateY(0)","transform-origin":"top center",overflow:"hidden"}),s=document.body;if(t){const t=CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px",e=`translateY(${i?"-10px":t}) scale(0.915)`;a.afterStyles({transform:e}).beforeAddWrite((()=>s.style.setProperty("background-color","black"))).addElement(o).keyframes([{offset:0,filter:"contrast(1)",transform:"translateY(0px) scale(1)",borderRadius:"0px"},{offset:1,filter:"contrast(0.85)",transform:e,borderRadius:"10px 10px 0 0"}]),h.addAnimation(a)}else if(h.addAnimation(n),i){const t=`translateY(-10px) scale(${i?at:1})`;a.afterStyles({transform:t}).addElement(e.querySelector(".modal-wrapper")).keyframes([{offset:0,filter:"contrast(1)",transform:"translateY(0) scale(1)"},{offset:1,filter:"contrast(0.85)",transform:t}]);const o=Z().afterStyles({transform:t}).addElement(e.querySelector(".modal-shadow")).keyframes([{offset:0,opacity:"1",transform:"translateY(0) scale(1)"},{offset:1,opacity:"0",transform:t}]);h.addAnimation([a,o])}else r.fromTo("opacity","0","1")}else h.addAnimation(n);return h},pt=(t,i,o=500)=>{const{presentingEl:e,currentBreakpoint:a}=i,s=g(t),{wrapperAnimation:r,backdropAnimation:n}=void 0!==a?dt(i):{backdropAnimation:Z().fromTo("opacity","var(--backdrop-opacity)",0),wrapperAnimation:Z().fromTo("transform","translateY(0vh)","translateY(100vh)")};n.addElement(s.querySelector("ion-backdrop")),r.addElement(s.querySelectorAll(".modal-wrapper, .modal-shadow")).beforeStyles({opacity:1});const d=Z("leaving-base").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o).addAnimation(r);if(e){const t=window.innerWidth<768,i="ION-MODAL"===e.tagName&&void 0!==e.presentingElement,o=g(e),a=Z().beforeClearStyles(["transform"]).afterClearStyles(["transform"]).onFinish((t=>{1===t&&(e.style.setProperty("overflow",""),Array.from(s.querySelectorAll("ion-modal:not(.overlay-hidden)")).filter((t=>void 0!==t.presentingElement)).length<=1&&s.style.setProperty("background-color",""))})),s=document.body;if(t){const t=CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px",o=`translateY(${i?"-10px":t}) scale(0.915)`;a.addElement(e).keyframes([{offset:0,filter:"contrast(0.85)",transform:o,borderRadius:"10px 10px 0 0"},{offset:1,filter:"contrast(1)",transform:"translateY(0px) scale(1)",borderRadius:"0px"}]),d.addAnimation(a)}else if(d.addAnimation(n),i){const t=`translateY(-10px) scale(${i?at:1})`;a.addElement(o.querySelector(".modal-wrapper")).afterStyles({transform:"translate3d(0, 0, 0)"}).keyframes([{offset:0,filter:"contrast(0.85)",transform:t},{offset:1,filter:"contrast(1)",transform:"translateY(0) scale(1)"}]);const e=Z().addElement(o.querySelector(".modal-shadow")).afterStyles({transform:"translateY(0) scale(1)"}).keyframes([{offset:0,opacity:"0",transform:t},{offset:1,opacity:"1",transform:"translateY(0) scale(1)"}]);d.addAnimation([a,e])}else r.fromTo("opacity","1","0")}else d.addAnimation(n);return d},lt=(t,i)=>{const{currentBreakpoint:o,expandToScroll:e}=i,a=g(t),{wrapperAnimation:s,backdropAnimation:r,contentAnimation:n}=void 0!==o?nt(i):{backdropAnimation:Z().fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]),wrapperAnimation:Z().keyframes([{offset:0,opacity:.01,transform:"translateY(40px)"},{offset:1,opacity:1,transform:"translateY(0px)"}]),contentAnimation:void 0};r.addElement(a.querySelector("ion-backdrop")),s.addElement(a.querySelector(".modal-wrapper")),!e&&n?.addElement(t.querySelector(".ion-page"));const d=Z().addElement(t).easing("cubic-bezier(0.36,0.66,0.04,1)").duration(280).addAnimation([r,s]);return n&&d.addAnimation(n),d},ct=(t,i)=>{const{currentBreakpoint:o}=i,e=g(t),{wrapperAnimation:a,backdropAnimation:s}=void 0!==o?dt(i):{backdropAnimation:Z().fromTo("opacity","var(--backdrop-opacity)",0),wrapperAnimation:Z().keyframes([{offset:0,opacity:.99,transform:"translateY(0px)"},{offset:1,opacity:0,transform:"translateY(40px)"}])};return s.addElement(e.querySelector("ion-backdrop")),a.addElement(e.querySelector(".modal-wrapper")),Z().easing("cubic-bezier(0.47,0,0.745,0.715)").duration(200).addAnimation([s,a])};let mt=null,ft=!1;const ut=()=>{if(null!==mt)return mt;const t=G?.document;if(!t?.body)return 0;const i=t.createElement("div");i.style.cssText="position:fixed;visibility:hidden;pointer-events:none;top:0;left:0;padding-top:var(--ion-safe-area-top,0px);",t.body.appendChild(i);const o=parseFloat(getComputedStyle(i).paddingTop)||0;return i.remove(),mt=o,ft||(ft=!0,y((()=>{mt=null,ft=!1}))),o},bt=t=>{const i=getComputedStyle(t),o=M(i.getPropertyValue("--width")),e=M(i.getPropertyValue("--height"));return"fullscreen"===o&&"fullscreen"===e?{vertical:!0,horizontal:!0}:xt(t)},xt=t=>{const i=t.shadowRoot?.querySelector(".modal-wrapper");if(null==i||void 0===G)return{vertical:!1,horizontal:!1};const o=t.classList.contains("overlay-hidden");o&&t.classList.remove("overlay-hidden");const{width:e,height:a}=i.getBoundingClientRect();return o&&t.classList.add("overlay-hidden"),{vertical:a>=G.innerHeight-5,horizontal:e>=G.innerWidth-5}},vt=(t,i)=>{t.style.setProperty("--ion-safe-area-top",i.top),t.style.setProperty("--ion-safe-area-bottom",i.bottom),t.style.setProperty("--ion-safe-area-left",i.left),t.style.setProperty("--ion-safe-area-right",i.right)},wt=t(class extends i{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.didPresent=o(this,"ionModalDidPresent",7),this.willPresent=o(this,"ionModalWillPresent",7),this.willDismiss=o(this,"ionModalWillDismiss",7),this.didDismiss=o(this,"ionModalDidDismiss",7),this.ionBreakpointDidChange=o(this,"ionBreakpointDidChange",7),this.didPresentShorthand=o(this,"didPresent",7),this.willPresentShorthand=o(this,"willPresent",7),this.willDismissShorthand=o(this,"willDismiss",7),this.didDismissShorthand=o(this,"didDismiss",7),this.ionMount=o(this,"ionMount",7),this.ionDragStart=o(this,"ionDragStart",7),this.ionDragMove=o(this,"ionDragMove",7),this.ionDragEnd=o(this,"ionDragEnd",7),this.lockController=D(),this.triggerController=T(),this.coreDelegate=b(),this.isSheetModal=!1,this.inheritedAttributes={},this.inline=!1,this.gestureAnimationDismissing=!1,this.isPresenting=!1,this.presented=!1,this.hasController=!1,this.keyboardClose=!0,this.expandToScroll=!0,this.backdropBreakpoint=0,this.handleBehavior="cycle",this.backdropDismiss=!0,this.showBackdrop=!0,this.animated=!0,this.isOpen=!1,this.keepContentsMounted=!1,this.focusTrap=!0,this.canDismiss=!0,this.onHandleClick=()=>{const{sheetTransition:t,handleBehavior:i}=this;"cycle"===i&&void 0===t&&this.moveToNextBreakpoint()},this.onBackdropTap=()=>{const{sheetTransition:t}=this;void 0===t&&this.dismiss(void 0,B)},this.onLifecycle=t=>{const i=this.usersElement,o=gt[t.type];if(i&&o){const e=new CustomEvent(o,{bubbles:!1,cancelable:!1,detail:t.detail});i.dispatchEvent(e)}},this.onModalFocus=t=>{const{dragHandleEl:i,el:o}=this;t.target===o&&null==o.shadowRoot?.activeElement&&i&&-1!==i.tabIndex&&i.focus()},this.onSlotChange=({target:t})=>{t.assignedElements().forEach((t=>{t.querySelectorAll("ion-modal").forEach((t=>{null===t.getAttribute("data-parent-ion-modal")&&t.setAttribute("data-parent-ion-modal",this.el.id)}))}))}}onIsOpenChange(t,i){!0===t&&!1===i?this.present():!1===t&&!0===i&&this.dismiss()}triggerChanged(){const{trigger:t,el:i,triggerController:o}=this;t&&o.addClickListener(i,t)}onWindowResize(){this.presented&&(clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout((()=>{const t=this.getSafeAreaContext();if(!t.isCardModal||this.enterAnimation||this.leaveAnimation||this.handleViewTransition(),t.isSheetModal&&this.updateSheetOffsetTop(),!t.isSheetModal&&!t.isCardModal){this.updateSafeAreaOverrides();const{contentEl:t,hasFooter:i}=this.findContentAndFooter();this.clearContentSafeAreaPadding(t),this.applyFullscreenSafeAreaTo(t,i)}}),50))}breakpointsChanged(t){void 0!==t&&(this.sortedBreakpoints=t.sort(((t,i)=>t-i)))}connectedCallback(){const{el:t}=this;P(t),this.triggerChanged(),(this.presented||this.isPresenting)&&this.restoreSafeAreaOverrides(),this.presented&&(I(t),this.initParentRemovalObserver())}disconnectedCallback(){this.triggerController.removeClickListener(),this.cleanupViewTransitionListener(),this.cleanupParentRemovalObserver(),this.cleanupSafeAreaOverrides(),this.presented&&N()}componentWillLoad(){const{breakpoints:t,initialBreakpoint:i,el:o,htmlAttributes:a}=this,s=this.isSheetModal=void 0!==t&&void 0!==i,r=["aria-label","role"];this.inheritedAttributes=A(o,r),o.parentNode&&(this.cachedOriginalParent=o.parentNode),void 0!==a&&r.forEach((t=>{a[t]&&(this.inheritedAttributes={...this.inheritedAttributes,[t]:a[t]},delete a[t])})),s&&(this.currentBreakpoint=this.initialBreakpoint),void 0===t||void 0===i||t.includes(i)||e("[ion-modal] - Your breakpoints array must include the initialBreakpoint value."),this.htmlAttributes?.id||j(this.el)}componentDidLoad(){!0===this.isOpen&&y((()=>this.present())),this.breakpointsChanged(this.breakpoints),this.triggerChanged()}getDelegate(t=!1){if(this.workingDelegate&&!t)return{delegate:this.workingDelegate,inline:this.inline};const i=this.inline=null!==this.el.parentNode&&!this.hasController;return{inline:i,delegate:this.workingDelegate=i?this.delegate||this.coreDelegate:this.delegate}}async checkCanDismiss(t,i){const{canDismiss:o}=this;return"function"==typeof o?o(t,i):o}async present(){const t=await this.lockController.lock();if(this.presented)return void t();const{presentingElement:i,el:o}=this;this.currentBreakpoint=this.initialBreakpoint;const{inline:e,delegate:s}=this.getDelegate(!0);this.ionMount.emit(),this.usersElement=await x(s,o,this.component,["ion-page"],this.componentProps,e),Y(o)?await F(this.usersElement):this.keepContentsMounted||await W(),a((()=>this.el.classList.add("show-modal"))),this.isSheetModal=void 0!==this.breakpoints&&void 0!==this.initialBreakpoint,this.isPresenting=!0;const r=void 0!==i;try{this.setInitialSafeAreaOverrides(),r&&"ios"===H(this)&&(this.statusBarStyle=await X.getStyle(),Q()),await z(this,"modalEnter",ht,lt,{presentingEl:i,currentBreakpoint:this.initialBreakpoint,backdropBreakpoint:this.backdropBreakpoint,expandToScroll:this.expandToScroll})}finally{this.isPresenting=!1}this.updateSafeAreaOverrides(),this.applyFullscreenSafeArea(),"undefined"!=typeof window&&(this.keyboardOpenCallback=()=>{this.gesture&&(this.gesture.enable(!1),y((()=>{this.gesture&&this.gesture.enable(!0)})))},window.addEventListener(V,this.keyboardOpenCallback)),this.isSheetModal?this.initSheetGesture():r&&this.initSwipeToClose(),this.initViewTransitionListener(),this.initParentRemovalObserver(),t()}initSwipeToClose(){if("ios"!==H(this))return;const{el:t}=this,i=this.leaveAnimation||s.get("modalLeave",pt),o=this.animation=i(t,{presentingEl:this.presentingElement,expandToScroll:this.expandToScroll});f(t)?(this.gesture=((t,i,o,e,a,s,r)=>{const n=.5,d=t.offsetHeight;let p=!1,f=!1,u=null,b=!0,x=0;const v=_({el:t,gestureName:"modalSwipeToClose",gesturePriority:E,direction:"y",threshold:10,canStart:t=>{const i=t.event.target;return null===i||!i.closest||(u=l(i),u?it(u):null===i.closest("ion-footer"))},onStart:o=>{const{deltaY:e}=o;window.getSelection()?.removeAllRanges(),b=!u||!h(u)||u.scrollY,f=void 0!==t.canDismiss&&!0!==t.canDismiss,e>0&&u&&c(u),i.progressStart(!0,p?1:0),a()},onMove:e=>{const{deltaY:a}=e;a>0&&u&&c(u);const r=e.deltaY/d,h=r>=0&&f,p=h?.2:.9999,l=h?et(r/p):r,m=k(1e-4,l,p);i.progressStep(m),m>=n&&x<n?tt(o):m<n&&x>=n&&Q(),x=m;const b={currentY:e.currentY,deltaY:e.deltaY,velocityY:e.velocityY,progress:rt(t,e.deltaY)};s(b)},onEnd:o=>{const a=o.velocityY,s=o.deltaY/d,h=s>=0&&f,l=h?.2:.9999,c=h?et(s/l):s,x=k(1e-4,c,l),w=!h&&(o.deltaY+1e3*a)/d>=n;let g=w?-.001:.001;w?(i.easing("cubic-bezier(0.32, 0.72, 0, 1)"),g+=K([0,0],[.32,.72],[0,1],[1,1],x)[0]):(i.easing("cubic-bezier(1, 0, 0.68, 0.28)"),g+=K([0,0],[1,0],[.68,.28],[1,1],x)[0]);const y=st(w?s*d:(1-x)*d,a);p=w,v.enable(!1),u&&m(u,b),i.onFinish((()=>{w||v.enable(!0)})).progressEnd(w?1:0,g,y);const A=h&&x>l/4;A?ot(t,i):w&&e();const Y=h?A&&"function"==typeof t.canDismiss:w,D={currentY:o.currentY,deltaY:o.deltaY,velocityY:o.velocityY,progress:rt(t,o.deltaY),isDismissing:Y};r(D)}});return v})(t,o,this.statusBarStyle??U.Default,(()=>this.cardOnDismiss()),(()=>this.onDragStart()),(t=>this.onDragMove(t)),(t=>this.onDragEnd(t))),this.gesture.enable(!0)):u(t)}initSheetGesture(){const{wrapperEl:t,initialBreakpoint:i,backdropBreakpoint:o}=this;if(!t||void 0===i)return;const e=this.enterAnimation||s.get("modalEnter",ht),a=this.animation=e(this.el,{presentingEl:this.presentingElement,currentBreakpoint:i,backdropBreakpoint:o,expandToScroll:this.expandToScroll});a.progressStart(!0,1);const{gesture:r,moveSheetToBreakpoint:n,resetContentScroll:d}=((t,i,o,e,a,s,r=[],n,d,p,c,m,f,u)=>{const b={WRAPPER_KEYFRAMES:[{offset:0,transform:"translateY(0%)"},{offset:1,transform:"translateY(100%)"}],BACKDROP_KEYFRAMES:0!==a?[{offset:0,opacity:"var(--backdrop-opacity)"},{offset:1-a,opacity:0},{offset:1,opacity:0}]:[{offset:0,opacity:"var(--backdrop-opacity)"},{offset:1,opacity:.01}],CONTENT_KEYFRAMES:[{offset:0,maxHeight:"100%"},{offset:1,maxHeight:"0%"}]},x=t.querySelector("ion-content"),v=x?.scrollY??!0,w=o.clientHeight;let A=e,Y=0,D=!1,C=null,S=null,E=null,M=null;const T=r[r.length-1],B=r[0],P=s.childAnimations.find((t=>"wrapperAnimation"===t.id)),I=s.childAnimations.find((t=>"backdropAnimation"===t.id)),N=s.childAnimations.find((t=>"contentAnimation"===t.id)),j=()=>{!1!==t.focusTrap&&!1!==t.showBackdrop&&(t.style.setProperty("pointer-events","auto"),i.style.setProperty("pointer-events","auto"),t.classList.remove(O))},z=()=>{t.style.setProperty("pointer-events","none"),i.style.setProperty("pointer-events","none"),t.classList.add(O)},R=i=>{if(!S&&(S=Array.from(t.querySelectorAll("ion-footer")),!S.length))return;const o=t.querySelector(".ion-page");if(M=i,"stationary"===i)S.forEach((t=>{t.classList.remove("modal-footer-moving"),t.style.removeProperty("position"),t.style.removeProperty("width"),t.style.removeProperty("height"),t.style.removeProperty("top"),t.style.removeProperty("left"),o?.style.removeProperty("padding-bottom"),o?.appendChild(t)}));else{let i=0;S.forEach(((o,e)=>{const a=o.getBoundingClientRect(),s=document.body.getBoundingClientRect();i+=o.clientHeight;const r=a.top-s.top,n=a.left-s.left;if(o.style.setProperty("--pinned-width",`${o.clientWidth}px`),o.style.setProperty("--pinned-height",`${o.clientHeight}px`),o.style.setProperty("--pinned-top",`${r}px`),o.style.setProperty("--pinned-left",`${n}px`),0===e){E=r;const i=t.querySelector("ion-header");i&&(E-=i.clientHeight)}})),S.forEach((t=>{o?.style.setProperty("padding-bottom",`${i}px`),t.classList.add("modal-footer-moving"),t.style.setProperty("position","absolute"),t.style.setProperty("width","var(--pinned-width)"),t.style.setProperty("height","var(--pinned-height)"),t.style.setProperty("top","var(--pinned-top)"),t.style.setProperty("left","var(--pinned-left)"),document.body.appendChild(t)}))}};P&&I&&(P.keyframes([...b.WRAPPER_KEYFRAMES]),I.keyframes([...b.BACKDROP_KEYFRAMES]),N?.keyframes([...b.CONTENT_KEYFRAMES]),s.progressStart(!0,1-A),A>a&&!1!==t.focusTrap&&!1!==t.showBackdrop?j():z()),x&&A!==T&&n&&(x.scrollY=!1);const $=i=>{const{breakpoint:o,canDismiss:e,breakpointOffset:d,animated:h}=i,l=e&&0===o,m=l?A:o,f=0!==m;return A=0,P&&I&&(P.keyframes([{offset:0,transform:`translateY(${100*d}%)`},{offset:1,transform:`translateY(${100*(1-m)}%)`}]),I.keyframes([{offset:0,opacity:`calc(var(--backdrop-opacity) * ${q(1-d,a)})`},{offset:1,opacity:`calc(var(--backdrop-opacity) * ${q(m,a)})`}]),N&&N.keyframes([{offset:0,maxHeight:100*(1-d)+"%"},{offset:1,maxHeight:100*m+"%"}]),s.progressStep(0)),H.enable(!1),l?ot(t,s):f||p(),!x||m!==r[r.length-1]&&n||(x.scrollY=v),n||0!==m||R("stationary"),new Promise((i=>{s.onFinish((()=>{f?(n||R("stationary"),P&&I?y((()=>{P.keyframes([...b.WRAPPER_KEYFRAMES]),I.keyframes([...b.BACKDROP_KEYFRAMES]),N?.keyframes([...b.CONTENT_KEYFRAMES]),s.progressStart(!0,1-m),A=m,c(A),A>a&&!1!==t.focusTrap&&!1!==t.showBackdrop?j():z(),H.enable(!0),i()})):(H.enable(!0),i())):i()}),{oneTimeCallback:!0}).progressEnd(1,0,h?500:0)}))},L=(t,i)=>{const o=F(t+350*i);return r.reduce(((t,i)=>Math.abs(i-o)<Math.abs(t-o)?i:t))},F=t=>{const i=Math.round(1e3*(A-t/w))/1e3;return k(0,i,1)},W=t=>{const i=(F(t)-B)/(T-B);return k(0,i,1)},H=_({el:o,gestureName:"modalSheet",gesturePriority:40,direction:"y",threshold:10,canStart:t=>{const i=l(t.event.target);return A=d(),!(i&&(!n||1===A))||it(i)},onStart:i=>{if(window.getSelection()?.removeAllRanges(),D=void 0!==t.canDismiss&&!0!==t.canDismiss&&0===B,!n){const t=l(i.event.target);C=t&&h(t)?g(t).querySelector(".inner-scroll"):t}n||R("moving"),i.deltaY>0&&x&&(x.scrollY=!1),y((()=>{t.focus()})),s.progressStart(!0,1-A),m()},onMove:t=>{if(n||null===E||null===M||(t.currentY>=E&&"moving"===M?R("stationary"):t.currentY<E&&"stationary"===M&&R("moving")),!n&&t.deltaY<=0&&C)return;t.deltaY>0&&x&&(x.scrollY=!1);const i=r.length>1?1-r[1]:void 0,o=1-A+t.deltaY/w,e=void 0!==i&&o>=i&&D,a=e?.95:.9999,d=e&&void 0!==i?i+et((o-i)/(a-i)):o;Y=k(1e-4,d,a),s.progressStep(Y);const h=L(t.deltaY,t.velocityY),p={currentY:t.currentY,deltaY:t.deltaY,velocityY:t.velocityY,progress:W(t.deltaY),snapBreakpoint:h};f(p)},onEnd:i=>{const o=L(i.deltaY,i.velocityY),e=D&&0===o?"function"==typeof t.canDismiss:0===o,a={currentY:i.currentY,deltaY:i.deltaY,velocityY:i.velocityY,progress:W(i.deltaY),snapBreakpoint:o,isDismissing:e};if(!n&&i.deltaY<=0&&C&&C.scrollTop>0)return R("stationary"),void u({...a,isDismissing:!1});$({breakpoint:o,breakpointOffset:Y,canDismiss:D,animated:!0}),u(a)}});return{gesture:H,moveSheetToBreakpoint:$,resetContentScroll:()=>{x&&(x.scrollY=v)}}})(this.el,this.backdropEl,t,i,o,a,this.sortedBreakpoints,this.expandToScroll,(()=>this.currentBreakpoint??0),(()=>this.sheetOnDismiss()),(t=>{this.currentBreakpoint!==t&&(this.currentBreakpoint=t,this.ionBreakpointDidChange.emit({breakpoint:t}))}),(()=>this.onDragStart()),(t=>this.onDragMove(t)),(t=>this.onDragEnd(t)));this.gesture=r,this.moveSheetToBreakpoint=n,this.resetSheetContentScroll=d,this.gesture.enable(!0),(!1===this.showBackdrop||!1===this.focusTrap||o>0)&&this.setupChildRoutePassthrough()}setupChildRoutePassthrough(){this.cachedPageParent=this.getOriginalPageParent();const t=this.cachedPageParent;if(!t||"ION-APP"===t.tagName)return;if(Array.from(t.children).some((t=>!(t===this.el||t instanceof i&&"none"===window.getComputedStyle(t).display||"TEMPLATE"===t.tagName||"SLOT"===t.tagName||t.nodeType===Node.TEXT_NODE&&!t.textContent?.trim()))))return;t.classList.add("ion-page-overlay-passthrough");const o=t.parentElement;"ION-ROUTER-OUTLET"===o?.tagName&&"ION-APP"!==o.parentElement?.tagName&&(o.style.setProperty("pointer-events","none"),o.setAttribute("data-overlay-passthrough","true"))}getOriginalPageParent(){if(!this.cachedOriginalParent)return null;let t=this.cachedOriginalParent;for(;t&&!t.classList.contains("ion-page");)t=t.parentElement;return t}cleanupChildRoutePassthrough(){const t=this.cachedPageParent;if(!t)return;t.classList.remove("ion-page-overlay-passthrough");const i=t.parentElement;i?.hasAttribute("data-overlay-passthrough")&&(i.style.removeProperty("pointer-events"),i.removeAttribute("data-overlay-passthrough")),this.cachedPageParent=void 0}sheetOnDismiss(){this.gestureAnimationDismissing=!0,this.animation.onFinish((async()=>{this.currentBreakpoint=0,this.ionBreakpointDidChange.emit({breakpoint:this.currentBreakpoint}),await this.dismiss(void 0,S),this.gestureAnimationDismissing=!1}))}cardOnDismiss(){this.gestureAnimationDismissing=!0,tt(this.statusBarStyle),this.animation.onFinish((async()=>{await this.dismiss(void 0,S),this.gestureAnimationDismissing=!1}))}async dismiss(t,i){if(this.gestureAnimationDismissing&&i!==S)return!1;clearTimeout(this.resizeTimeout),this.resizeTimeout=void 0;const o=await this.lockController.lock();if(await this.dismissNestedModals(),"handler"!==i&&!await this.checkCanDismiss(t,i))return o(),!1;const{presentingElement:e}=this;void 0!==e&&"ios"===H(this)&&tt(this.statusBarStyle),"undefined"!=typeof window&&this.keyboardOpenCallback&&(window.removeEventListener(V,this.keyboardOpenCallback),this.keyboardOpenCallback=void 0);const s=await R(this,t,i,"modalLeave",pt,ct,{presentingEl:e,currentBreakpoint:this.currentBreakpoint??this.initialBreakpoint,backdropBreakpoint:this.backdropBreakpoint,expandToScroll:this.expandToScroll});if(s){const{delegate:t}=this.getDelegate();await v(t,this.usersElement),a((()=>this.el.classList.remove("show-modal"))),this.animation&&this.animation.destroy(),this.gesture&&this.gesture.destroy(),this.resetSheetContentScroll?.(),this.resetSheetContentScroll=void 0,this.cleanupViewTransitionListener(),this.cleanupParentRemovalObserver(),this.cleanupSafeAreaOverrides(),this.cleanupChildRoutePassthrough()}return this.currentBreakpoint=void 0,this.animation=void 0,o(),s}onDidDismiss(){return $(this.el,"ionModalDidDismiss")}onWillDismiss(){return $(this.el,"ionModalWillDismiss")}async setCurrentBreakpoint(t){if(!this.isSheetModal)return void e("[ion-modal] - setCurrentBreakpoint is only supported on sheet modals.");if(!this.breakpoints.includes(t))return void e(`[ion-modal] - Attempted to set invalid breakpoint value ${t}. Please double check that the breakpoint value is part of your defined breakpoints.`);const{currentBreakpoint:i,moveSheetToBreakpoint:o,canDismiss:a,breakpoints:s,animated:r}=this;i!==t&&o&&(this.sheetTransition=o({breakpoint:t,breakpointOffset:1-i,canDismiss:void 0!==a&&!0!==a&&0===s[0],animated:r}),await this.sheetTransition,this.sheetTransition=void 0)}async getCurrentBreakpoint(){return this.currentBreakpoint}async moveToNextBreakpoint(){const{breakpoints:t,currentBreakpoint:i}=this;if(!t||null==i)return!1;const o=t.filter((t=>0!==t)),e=o.indexOf(i),a=o[(e+1)%o.length];return await this.setCurrentBreakpoint(a),!0}initViewTransitionListener(){"ios"!==H(this)||!this.presentingElement||this.enterAnimation||this.leaveAnimation||(this.currentViewIsPortrait=window.innerWidth<768)}handleViewTransition(){if(!this.presented)return;const t=window.innerWidth<768;if(this.currentViewIsPortrait===t)return;this.viewTransitionAnimation&&(this.viewTransitionAnimation.destroy(),this.viewTransitionAnimation=void 0);const{presentingElement:i}=this;if(!i)return;let o;o=this.currentViewIsPortrait&&!t?((t,i,o=300)=>{const{presentingEl:e}=i;if(!e)return Z("portrait-to-landscape-transition");const a="ION-MODAL"===e.tagName&&void 0!==e.presentingElement,s=g(e),r=document.body,n=Z("portrait-to-landscape-transition").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o),d=Z().beforeStyles({transform:"translateY(0)","transform-origin":"top center",overflow:"hidden"});if(a){const t="translateY(-10px) scale(0.915)",i="translateY(0px) scale(1)";d.addElement(e).afterStyles({transform:i}).fromTo("transform",t,i).fromTo("filter","contrast(0.85)","contrast(1)");const o=Z().addElement(s.querySelector(".modal-shadow")).afterStyles({transform:i,opacity:"0"}).fromTo("transform",t,i);n.addAnimation([d,o])}else{const i=g(t),o=Z().addElement(i.querySelectorAll(".modal-wrapper, .modal-shadow")).fromTo("opacity","1","1"),a=Z().addElement(i.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)","var(--backdrop-opacity)"),s=`translateY(${CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px"}) scale(0.915)`;d.addElement(e).afterStyles({transform:"translateY(0px) scale(1)","border-radius":"0px"}).beforeAddWrite((()=>r.style.setProperty("background-color",""))).fromTo("transform",s,"translateY(0px) scale(1)").fromTo("filter","contrast(0.85)","contrast(1)").fromTo("border-radius","10px 10px 0 0","0px"),n.addAnimation([d,o,a])}return n})(this.el,{presentingEl:i}):((t,i,o=300)=>{const{presentingEl:e}=i;if(!e)return Z("landscape-to-portrait-transition");const a="ION-MODAL"===e.tagName&&void 0!==e.presentingElement,s=g(e),r=document.body,n=Z("landscape-to-portrait-transition").addElement(t).easing("cubic-bezier(0.32,0.72,0,1)").duration(o),d=Z().beforeStyles({transform:"translateY(0)","transform-origin":"top center",overflow:"hidden"});if(a){const t="translateY(-10px) scale(0.915)",i="translateY(0) scale(1)";d.addElement(e).afterStyles({transform:i}).fromTo("transform",t,i);const o=Z().addElement(s.querySelector(".modal-shadow")).afterStyles({transform:i,opacity:"0"}).fromTo("transform",t,i);n.addAnimation([d,o])}else{const i=g(t),o=Z().addElement(i.querySelectorAll(".modal-wrapper, .modal-shadow")).fromTo("opacity","1","1"),a=Z().addElement(i.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)","var(--backdrop-opacity)"),s=`translateY(${CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px"}) scale(0.915)`;d.addElement(e).afterStyles({transform:s}).beforeAddWrite((()=>r.style.setProperty("background-color","black"))).keyframes([{offset:0,transform:"translateY(0px) scale(1)",filter:"contrast(1)",borderRadius:"0px"},{offset:.2,transform:"translateY(0px) scale(1)",filter:"contrast(1)",borderRadius:"10px 10px 0 0"},{offset:1,transform:s,filter:"contrast(0.85)",borderRadius:"10px 10px 0 0"}]),n.addAnimation([d,o,a])}return n})(this.el,{presentingEl:i}),this.currentViewIsPortrait=t,this.viewTransitionAnimation=o,o.play().then((()=>{this.viewTransitionAnimation=void 0,y((()=>this.updateSafeAreaOverrides())),this.reinitSwipeToClose()}))}cleanupViewTransitionListener(){this.resizeTimeout&&(clearTimeout(this.resizeTimeout),this.resizeTimeout=void 0),this.viewTransitionAnimation&&(this.viewTransitionAnimation.destroy(),this.viewTransitionAnimation=void 0)}reinitSwipeToClose(){"ios"===H(this)&&this.presentingElement&&(this.gesture&&(this.gesture.destroy(),this.gesture=void 0),this.animation&&(this.animation.progressEnd(0,0,0),this.animation.destroy(),this.animation=void 0),y((()=>{this.ensureCorrectModalPosition(),this.initSwipeToClose()})))}ensureCorrectModalPosition(){const{el:t,presentingElement:i}=this,o=g(t).querySelector(".modal-wrapper");if(o&&(o.style.transform="translateY(0vh)",o.style.opacity="1"),"ION-MODAL"===i?.tagName)if(window.innerWidth<768){const t=CSS.supports("width","max(0px, 1px)")?"max(30px, var(--ion-safe-area-top))":"30px";i.style.transform=`translateY(${t}) scale(0.915)`}else i.style.transform="translateY(0px) scale(1)"}async dismissNestedModals(){const t=document.querySelectorAll(`ion-modal[data-parent-ion-modal="${this.el.id}"]`);t?.forEach((async t=>{await t.dismiss(void 0,"parent-dismissed")}))}initParentRemovalObserver(){"undefined"!=typeof MutationObserver&&"undefined"!=typeof window&&this.cachedOriginalParent&&this.cachedOriginalParent.nodeType!==Node.DOCUMENT_NODE&&this.cachedOriginalParent.nodeType!==Node.DOCUMENT_FRAGMENT_NODE&&(this.hasController||this.cachedOriginalParent===document.body||"ION-APP"===this.cachedOriginalParent.tagName||(this.cleanupParentRemovalObserver(),this.parentRemovalObserver=new MutationObserver((t=>{t.forEach((t=>{"childList"===t.type&&t.removedNodes.length>0&&(Array.from(t.removedNodes).some((t=>{const i=t===this.cachedOriginalParent,o=!!this.cachedOriginalParent&&t.contains?.(this.cachedOriginalParent);return i||o}))||this.cachedOriginalParent&&!this.cachedOriginalParent.isConnected)&&(this.dismiss(void 0,"parent-removed"),this.cachedOriginalParent=void 0)}))})),this.parentRemovalObserver.observe(document.body,{childList:!0,subtree:!0})))}cleanupParentRemovalObserver(){this.parentRemovalObserver?.disconnect(),this.parentRemovalObserver=void 0}onDragStart(){this.ionDragStart.emit()}onDragMove(t){this.ionDragMove.emit(t)}onDragEnd(t){this.ionDragEnd.emit(t)}getSafeAreaContext(){return{isSheetModal:this.isSheetModal,isCardModal:void 0!==this.presentingElement&&"ios"===H(this),presentingElement:this.presentingElement,breakpoints:this.breakpoints,currentBreakpoint:this.currentBreakpoint}}watchHeightForContent(){var t;this.isSheetModal||(this.unsubscribeHeightChange?.(),this.unsubscribeHeightChange=(t=()=>{this.el.querySelectorAll("ion-content").forEach((t=>t.recalculateDimensions()))},w(this.el,"--height",(()=>t()))))}setInitialSafeAreaOverrides(){const t={...this.getSafeAreaContext(),coveredAxes:bt(this.el)},i=(t=>{const{isSheetModal:i,isCardModal:o}=t;if(i)return{top:"0px",bottom:"inherit",left:"0px",right:"0px"};if(o)return{top:"inherit",bottom:"inherit",left:"0px",right:"0px"};const{vertical:e,horizontal:a}=t.coveredAxes??{vertical:!0,horizontal:!0};return{top:e?"inherit":"0px",bottom:e?"inherit":"0px",left:a?"inherit":"0px",right:a?"inherit":"0px"}})(t);var o;vt(this.el,i),this.watchHeightForContent(),t.isSheetModal&&(this.updateSheetOffsetTop(),this.unsubscribeRootSafeAreaTop?.(),this.unsubscribeRootSafeAreaTop=(o=t=>this.updateSheetOffsetTop(t),w(G?.document?.body,"--ion-safe-area-top",o,ut())))}updateSheetOffsetTop(t){const i=t??ut();this.el.style.setProperty("--ion-modal-offset-top",`${i}px`)}updateSafeAreaOverrides(){const{wrapperEl:t,el:i}=this,o=this.getSafeAreaContext();if(o.isSheetModal)return;if(o.isCardModal)return;if(!t)return;const e=(t=>{const i=t.getBoundingClientRect();return{top:i.top<=5?"inherit":"0px",bottom:i.bottom>=(G?.innerHeight??0)-5?"inherit":"0px",left:i.left<=5?"inherit":"0px",right:i.right>=(G?.innerWidth??0)-5?"inherit":"0px"}})(t);vt(i,e)}applyFullscreenSafeArea(){const t=this.getSafeAreaContext();if(t.isSheetModal||t.isCardModal)return;const{contentEl:i,hasFooter:o}=this.findContentAndFooter();this.applyFullscreenSafeAreaTo(i,o)}applyFullscreenSafeAreaTo(t,i){t&&!i&&t.style.setProperty("--internal-content-safe-area-padding-bottom","var(--ion-safe-area-bottom, 0px)")}clearContentSafeAreaPadding(t){t&&t.style.removeProperty("--internal-content-safe-area-padding-bottom")}findContentAndFooter(){let t=null,i=!1;for(const o of Array.from(this.el.children)){"ION-CONTENT"===o.tagName&&(t=o),"ION-FOOTER"===o.tagName&&(i=!0);for(const e of Array.from(o.children))"ION-CONTENT"!==e.tagName||t||(t=e),"ION-FOOTER"===e.tagName&&(i=!0)}return{contentEl:t,hasFooter:i}}cleanupSafeAreaOverrides(){var t;(t=this.el).style.removeProperty("--ion-safe-area-top"),t.style.removeProperty("--ion-safe-area-bottom"),t.style.removeProperty("--ion-safe-area-left"),t.style.removeProperty("--ion-safe-area-right"),this.unsubscribeRootSafeAreaTop?.(),this.unsubscribeRootSafeAreaTop=void 0,this.unsubscribeHeightChange?.(),this.unsubscribeHeightChange=void 0,this.el.style.removeProperty("--ion-modal-offset-top");const{contentEl:i}=this.findContentAndFooter();this.clearContentSafeAreaPadding(i)}restoreSafeAreaOverrides(){this.setInitialSafeAreaOverrides(),this.applyFullscreenSafeArea(),y((()=>{if(!this.presented||!this.el.isConnected||this.isPresenting)return;const{width:t,height:i}=this.el.getBoundingClientRect();0===t&&0===i||this.updateSafeAreaOverrides()}))}render(){const{handle:t,isSheetModal:i,presentingElement:o,htmlAttributes:e,handleBehavior:a,inheritedAttributes:s,focusTrap:d,expandToScroll:h}=this,p=!1!==t&&i,l=H(this),c=void 0!==o&&"ios"===l,m="cycle"===a;return r(n,{key:"17a95bd7722bac2344bea041aff97db17f55c0cf","no-router":!0,tabIndex:m&&i&&p?0:-1,...e,style:{zIndex:`${2e4+this.overlayIndex}`},class:{[l]:!0,"modal-default":!c&&!i,"modal-card":c,"modal-sheet":i,"modal-no-expand-scroll":i&&!h,"overlay-hidden":!0,[O]:!1===d,...L(this.cssClass)},onIonBackdropTap:this.onBackdropTap,onIonModalDidPresent:this.onLifecycle,onIonModalWillPresent:this.onLifecycle,onIonModalWillDismiss:this.onLifecycle,onIonModalDidDismiss:this.onLifecycle,onFocus:this.onModalFocus},r("ion-backdrop",{key:"9dab1ef4771c0d847ba2be8672afbaa2748517f3",ref:t=>this.backdropEl=t,visible:this.showBackdrop,tappable:this.backdropDismiss,part:"backdrop"}),"ios"===l&&r("div",{key:"64af7ed1c5f552b61fc4b9387b926acc76c8a99a",class:"modal-shadow"}),r("div",{key:"7e76d77d5b2e8f0467bb793facf5aa86f8d01bbe",role:"dialog",...s,"aria-modal":"true",tabIndex:-1,class:"modal-wrapper ion-overlay-wrapper",part:"content",ref:t=>this.wrapperEl=t},p&&r("button",{key:"5efc0bb0a59adcc594ac48da9fd90e57908a7ffb",class:"modal-handle",tabIndex:m?0:-1,"aria-label":"Activate to adjust the size of the dialog overlaying the screen",onClick:m?this.onHandleClick:void 0,part:"handle",ref:t=>this.dragHandleEl=t}),r("slot",{key:"6175fcd0b39c086b4e9eb9e96c4d631c2a86774b",onSlotchange:this.onSlotChange})))}get el(){return this}static get watchers(){return{isOpen:[{onIsOpenChange:0}],trigger:[{triggerChanged:0}],breakpoints:[{breakpointsChanged:0}]}}static get style(){return{ios:':host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:100%;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);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);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;outline:none}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.4)}:host(.modal-card),:host(.modal-sheet){--border-radius:10px}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:10px}}.modal-wrapper{-webkit-transform:translate3d(0, 100%, 0);transform:translate3d(0, 100%, 0)}@media screen and (max-width: 767px){@supports (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - max(30px, var(--ion-safe-area-top)) - 10px)}}@supports not (width: max(0px, 1px)){:host(.modal-card){--height:calc(100% - 40px)}}:host(.modal-card) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}:host(.modal-card){--backdrop-opacity:0;--width:100%;-ms-flex-align:end;align-items:flex-end}:host(.modal-card) .modal-shadow{display:none}:host(.modal-card) ion-backdrop{pointer-events:none}}@media screen and (min-width: 768px){:host(.modal-card){--width:calc(100% - 120px);--height:calc(100% - (120px + var(--ion-safe-area-top) + var(--ion-safe-area-bottom)));--max-width:720px;--max-height:1000px;--backdrop-opacity:0;--box-shadow:0px 0px 30px 10px rgba(0, 0, 0, 0.1);-webkit-transition:all 0.5s ease-in-out;transition:all 0.5s ease-in-out}:host(.modal-card) .modal-wrapper{-webkit-box-shadow:none;box-shadow:none}:host(.modal-card) .modal-shadow{-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow)}}:host(.modal-sheet) .modal-wrapper{border-start-start-radius:var(--border-radius);border-start-end-radius:var(--border-radius);border-end-end-radius:0;border-end-start-radius:0}',md:':host{--width:100%;--min-width:auto;--max-width:auto;--height:100%;--min-height:auto;--max-height:100%;--overflow:hidden;--border-radius:0;--border-width:0;--border-style:none;--border-color:transparent;--background:var(--ion-background-color, #fff);--box-shadow:none;--backdrop-opacity:0;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:absolute;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;outline:none;color:var(--ion-text-color, #000);contain:strict}.modal-wrapper,ion-backdrop{pointer-events:auto}:host(.overlay-hidden){display:none}.modal-wrapper,.modal-shadow{border-radius:var(--border-radius);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);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:var(--overflow);z-index:10}.modal-wrapper{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;outline:none}.modal-shadow{position:absolute;background:transparent}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--width:600px;--height:500px}}@media only screen and (min-width: 768px) and (min-height: 768px){:host{--width:600px;--height:600px}}.modal-handle{left:0px;right:0px;top:5px;border-radius:8px;-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;position:absolute;width:36px;height:5px;-webkit-transform:translateZ(0);transform:translateZ(0);border:0;background:var(--ion-color-step-350, var(--ion-background-color-step-350, #c0c0be));cursor:pointer;z-index:11}.modal-handle::before{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;position:absolute;width:36px;height:5px;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%);content:""}:host(.modal-sheet){--height:calc(100% - (var(--ion-modal-offset-top, 0px) + 10px))}:host(.modal-sheet) .modal-wrapper,:host(.modal-sheet) .modal-shadow{position:absolute;bottom:0}:host(.modal-sheet.modal-no-expand-scroll) ion-footer{position:absolute;bottom:0;width:var(--width)}:host{--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}@media only screen and (min-width: 768px) and (min-height: 600px){:host{--border-radius:2px;--box-shadow:0 28px 48px rgba(0, 0, 0, 0.4)}}.modal-wrapper{-webkit-transform:translate3d(0, 40px, 0);transform:translate3d(0, 40px, 0);opacity:0.01}'}}},[289,"ion-modal",{hasController:[4,"has-controller"],overlayIndex:[2,"overlay-index"],delegate:[16],keyboardClose:[4,"keyboard-close"],enterAnimation:[16],leaveAnimation:[16],breakpoints:[16],expandToScroll:[4,"expand-to-scroll"],initialBreakpoint:[2,"initial-breakpoint"],backdropBreakpoint:[2,"backdrop-breakpoint"],handle:[4],handleBehavior:[1,"handle-behavior"],component:[1],componentProps:[16],cssClass:[1,"css-class"],backdropDismiss:[4,"backdrop-dismiss"],showBackdrop:[4,"show-backdrop"],animated:[4],presentingElement:[16],htmlAttributes:[16],isOpen:[4,"is-open"],trigger:[1],keepContentsMounted:[4,"keep-contents-mounted"],focusTrap:[4,"focus-trap"],canDismiss:[4,"can-dismiss"],isSheetModal:[32],presented:[32],present:[64],dismiss:[64],onDidDismiss:[64],onWillDismiss:[64],setCurrentBreakpoint:[64],getCurrentBreakpoint:[64]},[[9,"resize","onWindowResize"]],{isOpen:[{onIsOpenChange:0}],trigger:[{triggerChanged:0}],breakpoints:[{breakpointsChanged:0}]}]),gt={ionModalDidPresent:"ionViewDidEnter",ionModalWillPresent:"ionViewWillEnter",ionModalWillDismiss:"ionViewWillLeave",ionModalDidDismiss:"ionViewDidLeave"};function kt(){"undefined"!=typeof customElements&&["ion-modal","ion-backdrop"].forEach((t=>{switch(t){case"ion-modal":customElements.get(d(t))||customElements.define(d(t),wt);break;case"ion-backdrop":customElements.get(d(t))||J()}}))}export{wt as M,kt as d}
@@ -1,4 +0,0 @@
1
- /*!
2
- * (C) Ionic http://ionicframework.com - MIT License
3
- */
4
- import{c as t,a as e,r as a,d as i,w as o,i as n,h as r,f as s,g as d}from"./p-BpRUsN_W.js";import{startFocusVisible as l}from"./p-BmVRXR1y.js";import{r as c,g as h,a as p}from"./p-Co7eql8D.js";import{F as m}from"./p-C1WYZOZj.js";import{i as y}from"./p-Dojwmvde.js";import{c as u}from"./p-byZM6qHV.js";import{b,d as g,e as x,f,c as v}from"./p-BvabGprD.js";import{b as w}from"./p-SEecsUh7.js";import{r as k,g as C,a as P,b as D,c as $,d as j,e as z,f as T,h as A,i as O,j as V,k as S,l as I,m as W,n as E,o as M,p as B,v as R,q as F,s as G,t as L,u as Z,w as H,x as U,y as q,z as Y,A as N,B as _,C as J,D as K,E as Q,F as X,G as tt,H as et,I as at,J as it,K as ot,L as nt,M as rt,N as st,O as dt,P as lt,Q as ct}from"./p-BO10QT9r.js";import"./p-nCAPr1Ah.js";import"./p-B_gJaBk0.js";const ht=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59],pt=[0,1,2,3,4,5,6,7,8,9,10,11],mt=[0,1,2,3,4,5,6,7,8,9,10,11],yt=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23],ut=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,0],bt=(t,e,a="h12",i,o,n,r)=>{const s=j(t,a),d=W(s);let l=(t=>{switch(t){case"h11":return pt;case"h12":return mt;case"h23":return yt;case"h24":return ut;default:throw new Error(`Invalid hour cycle "${t}"`)}})(s),c=ht,h=!0,p=!0;if(n&&(l=l.filter((t=>n.includes(t)))),r&&(c=c.filter((t=>r.includes(t)))),i)if(S(e,i)){if(void 0!==i.hour&&(l=l.filter((t=>(d?t:"pm"===e.ampm?(t+12)%24:t)>=i.hour)),h=i.hour<13),void 0!==i.minute){let t=!1;void 0!==i.hour&&void 0!==e.hour&&e.hour>i.hour&&(t=!0),c=c.filter((e=>!!t||e>=i.minute))}}else V(e,i)&&(l=[],c=[],h=p=!1);return o&&(S(e,o)?(void 0!==o.hour&&(l=l.filter((t=>(d?t:"pm"===e.ampm?(t+12)%24:t)<=o.hour)),p=o.hour>=12),void 0!==o.minute&&e.hour===o.hour&&(c=c.filter((t=>t<=o.minute)))):I(e,o)&&(l=[],c=[],h=p=!1)),{hours:l,minutes:c,am:h,pm:p}},gt=(t,e)=>{const a={month:t.month,year:t.year,day:t.day};if(void 0!==e&&(t.month!==e.month||t.year!==e.year)){const i={month:e.month,year:e.year,day:e.day};return V(i,a)?[i,a,C(t)]:[P(t),a,i]}return[P(t),a,C(t)]},xt=(t,e,a,i,o,n={day:"numeric"})=>{const{month:r,year:s}=e,d=[],l=E(r,s),c=null!=i?.day&&i.year===s&&i.month===r?i.day:l,h=null!=a?.day&&a.year===s&&a.month===r?a.day:1;if(void 0!==o){let e=o;e=e.filter((t=>t>=h&&t<=c)),e.forEach((e=>{const a=new Date(`${r}/${e}/${s} GMT+0000`),i=new Intl.DateTimeFormat(t,{...n,timeZone:"UTC"}).format(a);d.push({text:i,value:e})}))}else for(let e=h;e<=c;e++){const a=new Date(`${r}/${e}/${s} GMT+0000`),i=new Intl.DateTimeFormat(t,{...n,timeZone:"UTC"}).format(a);d.push({text:i,value:e})}return d},ft=(t,e)=>t.month===e.month&&t.year===e.year?[t]:[t,...ft(C(t),e)],vt=(t,e,a,i)=>null===t.day||void 0!==i&&!i.includes(t.day)||!(!e||!V(t,e))||!(!a||!I(t,a)),wt=(t,e,a,i,o,n,r)=>{const s=void 0!==(Array.isArray(a)?a:[a]).find((t=>S(e,t))),d=S(e,i);return{disabled:vt(e,o,n,r),isActive:s,isToday:d,ariaSelected:s?"true":null,ariaLabel:B(t,d,e),text:null!=e.day?M(t,e):null}},kt=(t,{minParts:e,maxParts:a})=>!!((t,e,a)=>!!(e&&e.year>t)||!!(a&&a.year<t))(t.year,e,a)||!!(e&&V(t,e)||a&&I(t,a)),Ct=(t,a)=>{(a?.date?.timeZone||a?.date?.timeZoneName||a?.time?.timeZone||a?.time?.timeZoneName)&&e('[ion-datetime] - "timeZone" and "timeZoneName" are not supported in "formatOptions".',t)},Pt=(t,a,i)=>{if(i)switch(a){case"date":case"month-year":case"month":case"year":void 0===i.date&&e(`[ion-datetime] - The '${a}' presentation requires a date object in formatOptions.`,t);break;case"time":void 0===i.time&&e("[ion-datetime] - The 'time' presentation requires a time object in formatOptions.",t);break;case"date-time":case"time-date":void 0===i.date&&void 0===i.time&&e(`[ion-datetime] - The '${a}' presentation requires either a date or time object (or both) in formatOptions.`,t)}},Dt=class{constructor(t){a(this,t),this.ionCancel=i(this,"ionCancel",7),this.ionChange=i(this,"ionChange",7),this.ionValueChange=i(this,"ionValueChange",7),this.ionFocus=i(this,"ionFocus",7),this.ionBlur=i(this,"ionBlur",7),this.ionStyle=i(this,"ionStyle",7),this.ionRender=i(this,"ionRender",7),this.inputId="ion-dt-"+$t++,this.prevPresentation=null,this.showMonthAndYear=!1,this.activeParts=[],this.workingParts={month:5,day:28,year:2021,hour:13,minute:52,ampm:"pm",isAdjacentDay:!1},this.isTimePopoverOpen=!1,this.name=this.inputId,this.disabled=!1,this.readonly=!1,this.showAdjacentDays=!1,this.presentation="date-time",this.cancelText="Cancel",this.doneText="Done",this.clearText="Clear",this.locale="default",this.firstDayOfWeek=0,this.multiple=!1,this.showDefaultTitle=!1,this.showDefaultButtons=!1,this.showClearButton=!1,this.showDefaultTimeLabel=!0,this.size="fixed",this.preferWheel=!1,this.warnIfIncorrectValueUsage=()=>{const{multiple:t,value:a}=this;!t&&Array.isArray(a)&&e(`[ion-datetime] - An array of values was passed, but multiple is "false". This is incorrect usage and may result in unexpected behaviors. To dismiss this warning, pass a string to the "value" property when multiple="false".\n\n Value Passed: [${a.map((t=>`'${t}'`)).join(", ")}]\n`,this.el)},this.setValue=t=>{this.value=t,this.ionChange.emit({value:t})},this.getActivePartsWithFallback=()=>{const{defaultParts:t}=this;return this.getActivePart()??t},this.getActivePart=()=>{const{activeParts:t}=this;return Array.isArray(t)?t[0]:t},this.closeParentOverlay=t=>{const e=this.el.closest("ion-modal, ion-popover");e&&e.dismiss(void 0,t)},this.setWorkingParts=t=>{this.workingParts={...t}},this.setActiveParts=(t,e=!1)=>{if(this.readonly)return;const{multiple:a,minParts:i,maxParts:o,activeParts:n}=this,r=R(t,i,o);if(this.setWorkingParts(r),a){const t=Array.isArray(n)?n:[n];this.activeParts=e?t.filter((t=>!S(t,r))):[...t,r]}else this.activeParts={...r};null!==this.el.querySelector('[slot="buttons"]')||this.showDefaultButtons||this.confirm()},this.initializeKeyboardListeners=()=>{const t=this.calendarBodyRef;if(!t)return;const e=this.el.shadowRoot,a=t.querySelector(".calendar-month:nth-of-type(2)"),i=new MutationObserver((e=>{const i=e[0];!i.oldValue?.includes("ion-focused")&&t.classList.contains("ion-focused")&&this.focusWorkingDay(a)}));i.observe(t,{attributeFilter:["class"],attributeOldValue:!0}),this.destroyKeyboardMO=()=>{i?.disconnect()},t.addEventListener("keydown",(t=>{const i=e.activeElement;if(!i||!i.classList.contains("calendar-day"))return;const o=F(i);let n;switch(t.key){case"ArrowDown":t.preventDefault(),n=N(o);break;case"ArrowUp":t.preventDefault(),n=Y(o);break;case"ArrowRight":t.preventDefault(),n=q(o);break;case"ArrowLeft":t.preventDefault(),n=U(o);break;case"Home":t.preventDefault(),n=H(o);break;case"End":t.preventDefault(),n=Z(o);break;case"PageUp":t.preventDefault(),n=t.shiftKey?L(o):P(o);break;case"PageDown":t.preventDefault(),n=t.shiftKey?G(o):C(o);break;default:return}vt(n,this.minParts,this.maxParts)||(this.setWorkingParts({...this.workingParts,...n}),requestAnimationFrame((()=>this.focusWorkingDay(a))))}))},this.focusWorkingDay=t=>{const{day:e,month:a,year:i}=this.workingParts,o=new Date(`${a}/1/${i}`).getDay();if(null===e)return;const n=t.querySelector(`.calendar-day-wrapper:nth-of-type(${(o>=this.firstDayOfWeek?o-this.firstDayOfWeek:7-(this.firstDayOfWeek-o))+e}) .calendar-day`);n&&n.focus()},this.processMinParts=()=>{const{min:t,defaultParts:e}=this;this.minParts=void 0!==t?_(t,e):void 0},this.processMaxParts=()=>{const{max:t,defaultParts:e}=this;this.maxParts=void 0!==t?J(t,e):void 0},this.initializeCalendarListener=()=>{const t=this.calendarBodyRef;if(!t)return;const e=t.querySelectorAll(".calendar-month"),a=e[0],i=e[1],n=e[2],r="ios"===w(this)&&"undefined"!=typeof navigator&&navigator.maxTouchPoints>1;o((()=>{t.scrollLeft=a.clientWidth*(y(this.el)?-1:1);const e=e=>{const i=t.getBoundingClientRect(),o=(y(this.el)?t.scrollLeft>=-2:t.scrollLeft<=2)?a:n,r=o.getBoundingClientRect();if(Math.abs(r.x-i.x)>2)return;const{forceRenderDate:s}=this;return void 0!==s?{month:s.month,year:s.year,day:s.day}:o===a?P(e):o===n?C(e):void 0},s=()=>{r&&(t.style.removeProperty("pointer-events"),l=!1);const a=e(this.workingParts);if(!a)return;const{month:n,day:s,year:d}=a;kt({month:n,year:d,day:null},{minParts:{...this.minParts,day:null},maxParts:{...this.maxParts,day:null}})||(t.style.setProperty("overflow","hidden"),o((()=>{this.setWorkingParts({...this.workingParts,month:n,day:s,year:d}),t.scrollLeft=i.clientWidth*(y(this.el)?-1:1),t.style.removeProperty("overflow"),this.resolveForceDateScrolling&&this.resolveForceDateScrolling();const e=this.el.shadowRoot.activeElement;e&&e.classList.contains("calendar-day")&&e.closest(".calendar-body")?.focus()})))};let d,l=!1;const c=()=>{d&&clearTimeout(d),!l&&r&&(t.style.setProperty("pointer-events","none"),l=!0),d=setTimeout(s,50)};t.addEventListener("scroll",c),this.destroyCalendarListener=()=>{t.removeEventListener("scroll",c)}}))},this.destroyInteractionListeners=()=>{const{destroyCalendarListener:t,destroyKeyboardMO:e}=this;void 0!==t&&t(),void 0!==e&&e()},this.ensureReadyIfVisible=()=>{this.el.classList.contains("datetime-ready")||this.hasLayoutBox()&&this.markReady()},this.hasLayoutBox=()=>{const{width:t,height:e}=this.el.getBoundingClientRect();return t>0&&e>0},this.markReady=()=>{this.el.classList.contains("datetime-ready")||(this.initializeListeners(),o((()=>{this.el.classList.add("datetime-ready")})))},this.loadTimeoutCleanup=()=>{this.loadTimeout&&(clearTimeout(this.loadTimeout),this.loadTimeout=void 0)},this.processValue=t=>{const e=null!=t&&""!==t&&(!Array.isArray(t)||t.length>0),a=e?K(t):this.defaultParts,{minParts:i,maxParts:o,workingParts:n,el:r}=this;if(this.warnIfIncorrectValueUsage(),!a)return;e&&Q(a,i,o);const s=Array.isArray(a)?a[a.length-1]:a,d=tt(s,i,o),{month:l,day:c,year:h,hour:p,minute:m}=d,y=X(p);this.activeParts=e?Array.isArray(a)?[...a]:{month:l,day:c,year:h,hour:p,minute:m,ampm:y}:[];const u=void 0!==l&&l!==n.month||void 0!==h&&h!==n.year,b=r.classList.contains("datetime-ready"),{isGridStyle:g,showMonthAndYear:x}=this;g&&u&&b&&!x?this.animateToDate(d):this.setWorkingParts({month:l,day:c,year:h,hour:p,minute:m,ampm:y})},this.animateToDate=async t=>{const{workingParts:e}=this;this.forceRenderDate=t;const a=new Promise((t=>{this.resolveForceDateScrolling=t}));V(t,e)?this.prevMonth():this.nextMonth(),await a,this.resolveForceDateScrolling=void 0,this.forceRenderDate=void 0},this.onFocus=()=>{this.ionFocus.emit()},this.onBlur=()=>{this.ionBlur.emit()},this.hasValue=()=>null!=this.value,this.nextMonth=()=>{const t=this.calendarBodyRef;if(!t)return;const e=t.querySelector(".calendar-month:last-of-type");if(!e)return;const a=2*e.offsetWidth,i=n.getBoolean("animated",!0)?"smooth":"instant";t.scrollTo({top:0,left:a*(y(this.el)?-1:1),behavior:i})},this.prevMonth=()=>{const t=this.calendarBodyRef;if(!t)return;const e=t.querySelector(".calendar-month:first-of-type");if(!e)return;const a=2*e.offsetWidth,i=n.getBoolean("animated",!0)?"smooth":"instant";t.scrollTo({top:0,left:a*(y(this.el)?1:-1),behavior:i})},this.toggleMonthAndYearView=()=>{this.showMonthAndYear=!this.showMonthAndYear}}formatOptionsChanged(){const{el:t,formatOptions:e,presentation:a}=this;Pt(t,a,e),Ct(t,e)}disabledChanged(){this.emitStyle()}minChanged(){this.processMinParts()}maxChanged(){this.processMaxParts()}presentationChanged(){const{el:t,formatOptions:e,presentation:a}=this;Pt(t,a,e)}get isGridStyle(){const{presentation:t,preferWheel:e}=this;return("date"===t||"date-time"===t||"time-date"===t)&&!e}yearValuesChanged(){this.parsedYearValues=et(this.yearValues)}monthValuesChanged(){this.parsedMonthValues=et(this.monthValues)}dayValuesChanged(){this.parsedDayValues=et(this.dayValues)}hourValuesChanged(){this.parsedHourValues=et(this.hourValues)}minuteValuesChanged(){this.parsedMinuteValues=et(this.minuteValues)}async valueChanged(){const{value:t}=this;this.hasValue()&&this.processValue(t),this.emitStyle(),this.ionValueChange.emit({value:t})}async confirm(t=!1){const{isCalendarPicker:e,activeParts:a,preferWheel:i,workingParts:o}=this;if(void 0!==a||!e){const t=Array.isArray(a);this.setValue(t&&0===a.length?i?at(o):void 0:at(a))}t&&this.closeParentOverlay(zt)}async reset(t){this.processValue(t)}async cancel(t=!1){this.ionCancel.emit(),t&&this.closeParentOverlay(jt)}async getDefaultPart(){return this.defaultParts}get isCalendarPicker(){const{presentation:t}=this;return"date"===t||"date-time"===t||"time-date"===t}connectedCallback(){this.clearFocusVisible=l(this.el).destroy,this.loadTimeout=setTimeout((()=>{this.ensureReadyIfVisible()}),100)}disconnectedCallback(){this.clearFocusVisible&&(this.clearFocusVisible(),this.clearFocusVisible=void 0),this.loadTimeoutCleanup()}initializeListeners(){this.initializeCalendarListener(),this.initializeKeyboardListeners()}componentDidLoad(){const{el:t,intersectionTrackerRef:e}=this,a=new IntersectionObserver((t=>{t[t.length-1].isIntersecting&&this.markReady()}),{threshold:.01,root:t});c((()=>a?.observe(e))),this.loadTimeoutCleanup(),this.loadTimeout=setTimeout((()=>{this.ensureReadyIfVisible()}),100);const i=new IntersectionObserver((t=>{t[t.length-1].isIntersecting||this.hasLayoutBox()||(this.destroyInteractionListeners(),this.showMonthAndYear=!1,o((()=>{this.el.classList.remove("datetime-ready")})))}),{threshold:0,root:t});c((()=>i?.observe(e)));const n=h(this.el);n.addEventListener("ionFocus",(t=>t.stopPropagation())),n.addEventListener("ionBlur",(t=>t.stopPropagation()))}componentDidRender(){const{presentation:t,prevPresentation:e,calendarBodyRef:a,minParts:i,preferWheel:o,forceRenderDate:n}=this,r=!o&&["date-time","time-date","date"].includes(t);if(void 0!==i&&r&&a){const t=a.querySelector(".calendar-month:nth-of-type(1)");t&&void 0===n&&(a.scrollLeft=t.clientWidth*(y(this.el)?-1:1))}null!==e?t!==e&&(this.prevPresentation=t,this.destroyInteractionListeners(),this.initializeListeners(),this.showMonthAndYear=!1,c((()=>{this.ionRender.emit()}))):this.prevPresentation=t}componentWillLoad(){const{el:t,formatOptions:a,highlightedDates:i,multiple:o,presentation:n,preferWheel:r}=this;o&&("date"!==n&&e('[ion-datetime] - Multiple date selection is only supported for presentation="date".',t),r&&e('[ion-datetime] - Multiple date selection is not supported with preferWheel="true".',t)),void 0!==i&&("date"!==n&&"date-time"!==n&&"time-date"!==n&&e("[ion-datetime] - The highlightedDates property is only supported with the date, date-time, and time-date presentations.",t),r&&e('[ion-datetime] - The highlightedDates property is not supported with preferWheel="true".',t)),a&&(Pt(t,n,a),Ct(t,a));const s=this.parsedHourValues=et(this.hourValues),d=this.parsedMinuteValues=et(this.minuteValues),l=this.parsedMonthValues=et(this.monthValues),c=this.parsedYearValues=et(this.yearValues),h=this.parsedDayValues=et(this.dayValues),p=this.todayParts=K(k(new Date).toISOString());this.processMinParts(),this.processMaxParts(),this.defaultParts=it({refParts:p,monthValues:l,dayValues:h,yearValues:c,hourValues:s,minuteValues:d,minParts:this.minParts,maxParts:this.maxParts}),this.processValue(this.value),this.emitStyle()}emitStyle(){this.ionStyle.emit({interactive:!0,datetime:!0,"interactive-disabled":this.disabled})}renderFooter(){const{disabled:t,readonly:e,showDefaultButtons:a,showClearButton:i}=this,o=t||e;if(null===this.el.querySelector('[slot="buttons"]')&&!a&&!i)return;const n=()=>{this.reset(),this.setValue(void 0)};return r("div",{class:"datetime-footer"},r("div",{class:"datetime-buttons"},r("div",{class:{"datetime-action-buttons":!0,"has-clear-button":this.showClearButton}},r("slot",{name:"buttons"},r("ion-buttons",null,a&&r("ion-button",{id:"cancel-button",color:this.color,onClick:()=>this.cancel(!0),disabled:o},this.cancelText),r("div",{class:"datetime-action-buttons-container"},i&&r("ion-button",{id:"clear-button",color:this.color,onClick:()=>n(),disabled:o},this.clearText),a&&r("ion-button",{id:"confirm-button",color:this.color,onClick:()=>this.confirm(!0),disabled:o},this.doneText)))))))}renderWheelPicker(t=this.presentation){const e="time-date"===t?[this.renderTimePickerColumns(t),this.renderDatePickerColumns(t)]:[this.renderDatePickerColumns(t),this.renderTimePickerColumns(t)];return r("ion-picker",{class:m},e)}renderDatePickerColumns(t){return"date-time"===t||"time-date"===t?this.renderCombinedDatePickerColumn():this.renderIndividualDatePickerColumns(t)}renderCombinedDatePickerColumn(){const{defaultParts:e,disabled:a,workingParts:i,locale:o,minParts:n,maxParts:s,todayParts:d,isDateEnabled:l}=this,c=gt(i),h=c[c.length-1];c[0].day=1,h.day=E(h.month,h.year);const p=((t,e,a,i,o,n)=>{let r=[],s=[],d=ft(a,i);return n&&(d=d.filter((({month:t})=>n.includes(t)))),d.forEach((n=>{const d={month:n.month,day:null,year:n.year},l=xt(t,d,a,i,o,{month:"short",day:"numeric",weekday:"short"}),c=[],h=[];l.forEach((a=>{const i=S({...d,day:a.value},e);h.push({text:i?D(t):a.text,value:`${d.year}-${d.month}-${a.value}`}),c.push({month:d.month,year:d.year,day:a.value})})),s=[...s,...c],r=[...r,...h]})),{parts:s,items:r}})(o,d,void 0!==n&&I(n,c[0])?n:c[0],void 0!==s&&V(s,h)?s:h,this.parsedDayValues,this.parsedMonthValues);let m=p.items;const y=p.parts;l&&(m=m.map(((e,a)=>{const i=y[a];let o;try{o=!l(at(i))}catch(e){t("[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.",e)}return{...e,disabled:o}})));const u=null!==i.day?`${i.year}-${i.month}-${i.day}`:`${e.year}-${e.month}-${e.day}`;return r("ion-picker-column",{part:Tt,"aria-label":"Select a date",class:"date-column",color:this.color,disabled:a,value:u,onIonChange:t=>{const{value:e}=t.detail,a=y.find((({month:t,day:a,year:i})=>e===`${i}-${t}-${a}`)),i=this.getActivePartsWithFallback();this.setWorkingParts({...this.workingParts,...a}),this.setActiveParts({...i,...a}),t.stopPropagation()}},m.map((t=>r("ion-picker-column-option",{color:this.color,part:t.value===u?`${At} ${Ot}`:At,key:t.value,disabled:t.disabled,value:t.value},t.text))))}renderIndividualDatePickerColumns(e){const{workingParts:a,isDateEnabled:i}=this,o="year"!==e&&"time"!==e?((t,e,a,i,o,n={month:"long"})=>{const{year:r}=e,s=[];if(void 0!==o){let e=o;void 0!==i?.month&&(e=e.filter((t=>t<=i.month))),void 0!==a?.month&&(e=e.filter((t=>t>=a.month))),e.forEach((e=>{const a=new Date(`${e}/1/${r} GMT+0000`),i=new Intl.DateTimeFormat(t,{...n,timeZone:"UTC"}).format(a);s.push({text:i,value:e})}))}else{const e=i&&i.year===r?i.month:12;for(let i=a&&a.year===r?a.month:1;i<=e;i++){const e=new Date(`${i}/1/${r} GMT+0000`),a=new Intl.DateTimeFormat(t,{...n,timeZone:"UTC"}).format(e);s.push({text:a,value:i})}}return s})(this.locale,a,this.minParts,this.maxParts,this.parsedMonthValues):[];let n="date"===e?xt(this.locale,a,this.minParts,this.maxParts,this.parsedDayValues):[];i&&(n=n.map((e=>{const{value:o}=e,n="string"==typeof o?parseInt(o):o,r={month:a.month,day:n,year:a.year};let s;try{s=!i(at(r))}catch(e){t("[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.",e)}return{...e,disabled:s}})));const r="month"!==e&&"time"!==e?((t,e,a,i,o)=>{let n=[];if(void 0!==o)n=o,void 0!==i?.year&&(n=n.filter((t=>t<=i.year))),void 0!==a?.year&&(n=n.filter((t=>t>=a.year)));else{const{year:t}=e,o=i?.year??t;for(let e=a?.year??t-100;e<=o;e++)n.push(e)}return n.map((a=>({text:$(t,{year:a,month:e.month,day:e.day}),value:a})))})(this.locale,this.defaultParts,this.minParts,this.maxParts,this.parsedYearValues):[];let s=[];return s=ot(this.locale,{month:"numeric",day:"numeric"})?[this.renderMonthPickerColumn(o),this.renderDayPickerColumn(n),this.renderYearPickerColumn(r)]:[this.renderDayPickerColumn(n),this.renderMonthPickerColumn(o),this.renderYearPickerColumn(r)],s}renderDayPickerColumn(t){if(0===t.length)return[];const{disabled:e,workingParts:a}=this,i=(null!==a.day?a.day:this.defaultParts.day)??void 0;return r("ion-picker-column",{part:Tt,"aria-label":"Select a day",class:"day-column",color:this.color,disabled:e,value:i,onIonChange:t=>{const e=this.getActivePartsWithFallback();this.setWorkingParts({...this.workingParts,day:t.detail.value}),this.setActiveParts({...e,day:t.detail.value}),t.stopPropagation()}},t.map((t=>r("ion-picker-column-option",{color:this.color,part:t.value===i?`${At} ${Ot}`:At,key:t.value,disabled:t.disabled,value:t.value},t.text))))}renderMonthPickerColumn(t){if(0===t.length)return[];const{disabled:e,workingParts:a}=this;return r("ion-picker-column",{part:Tt,"aria-label":"Select a month",class:"month-column",color:this.color,disabled:e,value:a.month,onIonChange:t=>{const e=this.getActivePartsWithFallback();this.setWorkingParts({...this.workingParts,month:t.detail.value}),this.multiple||this.setActiveParts({...e,month:t.detail.value}),t.stopPropagation()}},t.map((t=>r("ion-picker-column-option",{color:this.color,part:t.value===a.month?`${At} ${Ot}`:At,key:t.value,disabled:t.disabled,value:t.value},t.text))))}renderYearPickerColumn(t){if(0===t.length)return[];const{disabled:e,workingParts:a}=this;return r("ion-picker-column",{part:Tt,"aria-label":"Select a year",class:"year-column",color:this.color,disabled:e,value:a.year,onIonChange:t=>{const e=this.getActivePartsWithFallback();this.setWorkingParts({...this.workingParts,year:t.detail.value}),this.multiple||this.setActiveParts({...e,year:t.detail.value}),t.stopPropagation()}},t.map((t=>r("ion-picker-column-option",{color:this.color,part:t.value===a.year?`${At} ${Ot}`:At,key:t.value,disabled:t.disabled,value:t.value},t.text))))}renderTimePickerColumns(t){if(["date","month","month-year","year"].includes(t))return[];const e=void 0!==this.getActivePart(),{hoursData:a,minutesData:i,dayPeriodData:o}=((t,e,a,i,o,n,r)=>{const s=j(t,this.hourCycle),d=W(s),{hours:l,minutes:c,am:h,pm:p}=bt(t,e,s,i,o,n,r),m=l.map((t=>({text:T(t,s),value:z(t,d,e.ampm)}))),y=c.map((t=>({text:A(t),value:t}))),u=[];return h&&!d&&u.push({text:O(t,"am"),value:"am"}),p&&!d&&u.push({text:O(t,"pm"),value:"pm"}),{minutesData:y,hoursData:m,dayPeriodData:u}})(this.locale,this.workingParts,0,e?this.minParts:void 0,e?this.maxParts:void 0,this.parsedHourValues,this.parsedMinuteValues);return[this.renderHourPickerColumn(a),this.renderMinutePickerColumn(i),this.renderDayPeriodPickerColumn(o)]}renderHourPickerColumn(t){const{disabled:e}=this;if(0===t.length)return[];const a=this.getActivePartsWithFallback();return r("ion-picker-column",{part:Tt,"aria-label":"Select an hour",color:this.color,disabled:e,value:a.hour,numericInput:!0,onIonChange:t=>{this.setWorkingParts({...this.workingParts,hour:t.detail.value}),this.setActiveParts({...this.getActivePartsWithFallback(),hour:t.detail.value}),t.stopPropagation()}},t.map((t=>r("ion-picker-column-option",{color:this.color,part:t.value===a.hour?`${At} ${Ot}`:At,key:t.value,disabled:t.disabled,value:t.value},t.text))))}renderMinutePickerColumn(t){const{disabled:e}=this;if(0===t.length)return[];const a=this.getActivePartsWithFallback();return r("ion-picker-column",{part:Tt,"aria-label":"Select a minute",color:this.color,disabled:e,value:a.minute,numericInput:!0,onIonChange:t=>{this.setWorkingParts({...this.workingParts,minute:t.detail.value}),this.setActiveParts({...this.getActivePartsWithFallback(),minute:t.detail.value}),t.stopPropagation()}},t.map((t=>r("ion-picker-column-option",{color:this.color,part:t.value===a.minute?`${At} ${Ot}`:At,key:t.value,disabled:t.disabled,value:t.value},t.text))))}renderDayPeriodPickerColumn(t){const{disabled:e}=this;if(0===t.length)return[];const a=this.getActivePartsWithFallback(),i=nt(this.locale);return r("ion-picker-column",{part:Tt,"aria-label":"Select a day period",style:i?{order:"-1"}:{},color:this.color,disabled:e,value:a.ampm,onIonChange:t=>{const e=this.workingParts,a=rt(e,t.detail.value);this.setWorkingParts({...e,ampm:t.detail.value,hour:a}),this.setActiveParts({...this.getActivePartsWithFallback(),ampm:t.detail.value,hour:a}),t.stopPropagation()}},t.map((t=>r("ion-picker-column-option",{color:this.color,part:t.value===a.ampm?`${At} ${Ot}`:At,key:t.value,disabled:t.disabled,value:t.value},t.text))))}renderWheelView(t){const{locale:e}=this,a=ot(e)?"month-first":"year-first";return r("div",{class:{[`wheel-order-${a}`]:!0}},this.renderWheelPicker(t))}renderCalendarHeader(t){const{disabled:e}=this,a="ios"===t?b:g,i="ios"===t?x:f,o=e||((t,e,a)=>{const i={...P(this.workingParts),day:null};return kt(i,{minParts:e,maxParts:a})})(0,this.minParts,this.maxParts),n=e||((t,e)=>{const a={...C(this.workingParts),day:null};return kt(a,{maxParts:e})})(0,this.maxParts),s=this.el.getAttribute("dir")||void 0;return r("div",{class:"calendar-header",part:"calendar-header"},r("div",{class:"calendar-action-buttons"},r("div",{class:"calendar-month-year"},r("button",{class:{"calendar-month-year-toggle":!0,"ion-activatable":!0,"ion-focusable":!0},part:"month-year-button",disabled:e,"aria-label":this.showMonthAndYear?"Hide year picker":"Show year picker",onClick:()=>this.toggleMonthAndYearView()},r("span",{id:"toggle-wrapper"},st(this.locale,this.workingParts),r("ion-icon",{"aria-hidden":"true",icon:this.showMonthAndYear?a:i,lazy:!1,flipRtl:!0})),"md"===t&&r("ion-ripple-effect",null))),r("div",{class:"calendar-next-prev"},r("ion-buttons",null,r("ion-button",{"aria-label":"Previous month",disabled:o,onClick:()=>this.prevMonth(),part:"navigation-button previous-button"},r("ion-icon",{dir:s,"aria-hidden":"true",slot:"icon-only",icon:v,lazy:!1,flipRtl:!0})),r("ion-button",{"aria-label":"Next month",disabled:n,onClick:()=>this.nextMonth(),part:"navigation-button next-button"},r("ion-icon",{dir:s,"aria-hidden":"true",slot:"icon-only",icon:x,lazy:!1,flipRtl:!0}))))),r("div",{class:"calendar-days-of-week","aria-hidden":"true",part:"calendar-days-of-week"},((t,e,a=0)=>{const i=new Intl.DateTimeFormat(this.locale,{weekday:"ios"===e?"short":"narrow"}),o=new Date("11/01/2020"),n=[];for(let t=a;t<a+7;t++){const e=new Date(o);e.setDate(e.getDate()+t),n.push(i.format(e))}return n})(0,t,this.firstDayOfWeek%7).map((t=>r("div",{class:"day-of-week"},t)))))}renderMonth(e,a){const{disabled:i,readonly:o}=this,n=void 0===this.parsedYearValues||this.parsedYearValues.includes(a),s=void 0===this.parsedMonthValues||this.parsedMonthValues.includes(e),d=!n||!s,l=i||o,c=i||kt({month:e,year:a,day:null},{minParts:{...this.minParts,day:null},maxParts:{...this.maxParts,day:null}}),h=this.workingParts.month===e&&this.workingParts.year===a,p=this.getActivePartsWithFallback();return r("div",{"aria-hidden":h?null:"true",class:{"calendar-month":!0,"calendar-month-disabled":!h&&c}},r("div",{class:"calendar-month-grid"},((t,e,a,i=!1)=>{const o=E(t,e);let n;n=1===t?E(12,e-1):E(t-1,e);const r=new Date(`${t}/1/${e}`).getDay(),s=r>=a?r-(a+1):6-(a-r);let d=[];for(let t=1;t<=o;t++)d.push({day:t,dayOfWeek:(s+t)%7,isAdjacentDay:!1});if(i){for(let t=0;t<=s;t++)d=[{day:n-t,dayOfWeek:(n-t)%7,isAdjacentDay:!0},...d];const t=41-(o+s);for(let e=0;e<t;e++)d.push({day:e+1,dayOfWeek:(o+s+e)%7,isAdjacentDay:!0})}else for(let t=0;t<=s;t++)d=[{day:null,dayOfWeek:null,isAdjacentDay:!1},...d];return d})(e,a,this.firstDayOfWeek%7,this.showAdjacentDays).map(((i,o)=>{const{day:n,dayOfWeek:s,isAdjacentDay:c}=i,{el:h,highlightedDates:m,isDateEnabled:y,multiple:u,showAdjacentDays:b}=this;let g=e,x=a;b&&c&&null!==n&&(n>20?1===e?(x=a-1,g=12):g=e-1:n<15&&(12===e?(x=a+1,g=1):g=e+1));const f={month:g,day:n,year:x,isAdjacentDay:c},v=null===n,{isActive:w,isToday:k,ariaLabel:C,ariaSelected:P,disabled:D,text:$}=wt(this.locale,f,this.activeParts,this.todayParts,this.minParts,this.maxParts,this.parsedDayValues),j=at(f);let z=d||D;if(!z&&void 0!==y)try{z=!y(j)}catch(e){t("[ion-datetime] - Exception thrown from provided `isDateEnabled` function. Please check your function and try again.",h,e)}const T=z&&l,A=z||l;let O,V;return void 0===m||w||null===n||c||(O=((e,a,i)=>{if(Array.isArray(e)){const t=a.split("T")[0],i=e.find((e=>e.date===t));if(i)return{textColor:i.textColor,backgroundColor:i.backgroundColor,border:i.border}}else try{return e(a)}catch(e){t("[ion-datetime] - Exception thrown from provided `highlightedDates` callback. Please check your function and try again.",i,e)}})(m,j,h)),v||c?c&&(V="calendar-day"+(z?" disabled":"")):V=`calendar-day${w?" active":""}${k?" today":""}${z?" disabled":""}`,r("div",{class:"calendar-day-wrapper"},r("button",{ref:t=>{t&&(t.style.setProperty("color",`${O?O.textColor:""}`,"important"),t.style.setProperty("background-color",`${O?O.backgroundColor:""}`,"important"),t.style.setProperty("border",`${O?O.border:""}`,"important"))},tabindex:"-1","data-day":n,"data-month":g,"data-year":x,"data-index":o,"data-day-of-week":s,disabled:A,class:{"calendar-day-padding":v,"calendar-day":!0,"calendar-day-active":w,"calendar-day-constrained":T,"calendar-day-today":k,"calendar-day-adjacent-day":c},part:V,"aria-hidden":v?"true":null,"aria-selected":P,"aria-label":C,onClick:()=>{v||(c?(this.el.blur(),this.activeParts={...p,...f},this.animateToDate(f),this.confirm()):(this.setWorkingParts({...this.workingParts,...f}),u?this.setActiveParts(f,w):this.setActiveParts({...p,...f})))}},$))}))))}renderCalendarBody(){return r("div",{class:"calendar-body ion-focusable",ref:t=>this.calendarBodyRef=t,tabindex:"0"},gt(this.workingParts,this.forceRenderDate).map((({month:t,year:e})=>this.renderMonth(t,e))))}renderCalendar(t){return r("div",{class:"datetime-calendar",key:"datetime-calendar"},this.renderCalendarHeader(t),this.renderCalendarBody())}renderTimeLabel(){if(null!==this.el.querySelector('[slot="time-label"]')||this.showDefaultTimeLabel)return r("slot",{name:"time-label"},"Time")}renderTimeOverlay(){const{disabled:t,hourCycle:e,isTimePopoverOpen:a,locale:i,formatOptions:o}=this,n=j(i,e),s=this.getActivePartsWithFallback();return[r("div",{class:"time-header"},this.renderTimeLabel()),r("button",{class:{"time-body":!0,"time-body-active":a},part:"time-button"+(a?" active":""),"aria-expanded":"false","aria-haspopup":"true",disabled:t,onClick:async t=>{const{popoverRef:e}=this;e&&(this.isTimePopoverOpen=!0,e.present(new CustomEvent("ionShadowTarget",{detail:{ionShadowTarget:t.target}})),await e.onWillDismiss(),this.isTimePopoverOpen=!1)}},dt(i,s,n,o?.time)),r("ion-popover",{alignment:"center",translucent:!0,overlayIndex:1,arrow:!1,onWillPresent:t=>{t.target.querySelectorAll("ion-picker-column").forEach((t=>t.scrollActiveItemIntoView()))},style:{"--offset-y":"-10px","--min-width":"fit-content"},keyboardEvents:!0,ref:t=>this.popoverRef=t},this.renderWheelPicker("time"))]}getHeaderSelectedDateText(){const{activeParts:e,formatOptions:a,multiple:i,titleSelectedDatesFormatter:o}=this,n=Array.isArray(e);let r;if(i&&n&&1!==e.length){if(r=`${e.length} days`,void 0!==o)try{r=o(at(e))}catch(e){t("[ion-datetime] - Exception in provided `titleSelectedDatesFormatter`:",e)}}else r=lt(this.locale,this.getActivePartsWithFallback(),a?.date??{weekday:"short",month:"short",day:"numeric"});return r}renderHeader(t=!0){if(null!==this.el.querySelector('[slot="title"]')||this.showDefaultTitle)return r("div",{class:"datetime-header",part:"datetime-header"},r("div",{class:"datetime-title",part:"datetime-title"},r("slot",{name:"title"},"Select Date")),t&&r("div",{class:"datetime-selected-date",part:"datetime-selected-date"},this.getHeaderSelectedDateText()))}renderTime(){const{presentation:t}=this;return r("div",{class:"datetime-time"},"time"===t?this.renderWheelPicker():this.renderTimeOverlay())}renderCalendarViewMonthYearPicker(){return r("div",{class:"datetime-year"},this.renderWheelView("month-year"))}renderDatetime(t){const{presentation:e,preferWheel:a}=this;if(a&&("date"===e||"date-time"===e||"time-date"===e))return[this.renderHeader(!1),this.renderWheelView(),this.renderFooter()];switch(e){case"date-time":return[this.renderHeader(),this.renderCalendar(t),this.renderCalendarViewMonthYearPicker(),this.renderTime(),this.renderFooter()];case"time-date":return[this.renderHeader(),this.renderTime(),this.renderCalendar(t),this.renderCalendarViewMonthYearPicker(),this.renderFooter()];case"time":return[this.renderHeader(!1),this.renderTime(),this.renderFooter()];case"month":case"month-year":case"year":return[this.renderHeader(!1),this.renderWheelView(),this.renderFooter()];default:return[this.renderHeader(),this.renderCalendar(t),this.renderCalendarViewMonthYearPicker(),this.renderFooter()]}}render(){const{name:t,value:e,disabled:a,el:i,color:o,readonly:n,showMonthAndYear:d,preferWheel:l,presentation:c,size:h,isGridStyle:m}=this,y=w(this),b="year"===c||"month"===c||"month-year"===c,g=d||b,x=d&&!b,f=("date"===c||"date-time"===c||"time-date"===c)&&l;return p(!0,i,t,ct(e),a),r(s,{key:"a9128b5c55464e30a269daf9d725bf430c8c655c","aria-disabled":a?"true":null,onFocus:this.onFocus,onBlur:this.onBlur,class:{...u(o,{[y]:!0,"datetime-readonly":n,"datetime-disabled":a,"show-month-and-year":g,"month-year-picker-open":x,[`datetime-presentation-${c}`]:!0,[`datetime-size-${h}`]:!0,"datetime-prefer-wheel":f,"datetime-grid":m})}},r("div",{key:"b49f3a98db2b7cf535d7ea894d518f75f8a1fefb",class:"intersection-tracker",ref:t=>this.intersectionTrackerRef=t}),this.renderDatetime(y))}get el(){return d(this)}static get watchers(){return{formatOptions:[{formatOptionsChanged:0}],disabled:[{disabledChanged:0}],min:[{minChanged:0}],max:[{maxChanged:0}],presentation:[{presentationChanged:0}],yearValues:[{yearValuesChanged:0}],monthValues:[{monthValuesChanged:0}],dayValues:[{dayValuesChanged:0}],hourValues:[{hourValuesChanged:0}],minuteValues:[{minuteValuesChanged:0}],value:[{valueChanged:0}]}}};let $t=0;const jt="datetime-cancel",zt="datetime-confirm",Tt="wheel",At="wheel-item",Ot="active";Dt.style={ios:':host{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;background:var(--background);overflow:hidden}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:-webkit-max-content;max-width:-moz-max-content;max-width:max-content}:host(.datetime-size-cover){width:100%}:host .calendar-body,:host .datetime-year{opacity:0}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .calendar-body{opacity:1}:host(.datetime-ready) .datetime-year{display:none;opacity:1}:host .wheel-order-year-first .day-column{-ms-flex-order:3;order:3;text-align:end}:host .wheel-order-year-first .month-column{-ms-flex-order:2;order:2;text-align:end}:host .wheel-order-year-first .year-column{-ms-flex-order:1;order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-flow:column;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:-ms-flexbox;display:flex}:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled) .calendar-days-of-week,:host(.datetime-disabled) .datetime-time{opacity:0.4}:host(.datetime-readonly){pointer-events:none;}:host(.datetime-readonly) .calendar-action-buttons,:host(.datetime-readonly) .calendar-body,:host(.datetime-readonly) .datetime-year{pointer-events:initial}:host(.datetime-readonly) .calendar-day[disabled]:not(.calendar-day-constrained),:host(.datetime-readonly) .datetime-action-buttons ion-button[disabled]{opacity:1}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons ion-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .datetime-action-buttons ion-button{--color:var(--ion-color-primary, #0054e9)}.datetime-action-buttons .datetime-action-buttons-container{display:-ms-flexbox;display:flex}:host .calendar-action-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .calendar-action-buttons ion-button{--background:transparent}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}.calendar-days-of-week .day-of-week{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}:host .calendar-body{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;scroll-snap-align:start;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:0;min-height:0;overflow:visible}.calendar-day{border-radius:50%;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:0px;padding-bottom:0px;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px;margin-top:0px;margin-bottom:0px;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;font-family:var(--ion-font-family, inherit);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:0}:host .calendar-day[disabled]{pointer-events:none;opacity:0.4}.calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2)}:host(.ion-color) .calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-base-rgb), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2)}:host .datetime-time{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host(.datetime-presentation-time) .datetime-time{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host ion-popover{--height:200px}:host .time-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .time-body{border-radius:8px;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:6px;padding-bottom:6px;display:-ms-flexbox;display:flex;border:none;background:var(--ion-color-step-300, var(--ion-background-color-step-300, #edeef0));color:var(--ion-text-color, #000);font-family:inherit;font-size:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host .time-body-active{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .time-body-active{color:var(--ion-color-base)}:host(.in-item){position:static}:host(.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-primary, #0054e9)}:host(.ion-color.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-base)}.calendar-month-year{min-width:0}.calendar-month-year-toggle{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;position:relative;border:0;outline:none;background:transparent;cursor:pointer;z-index:1}.calendar-month-year-toggle::after{left:0;right:0;top:0;bottom:0;position:absolute;content:"";opacity:0;-webkit-transition:opacity 15ms linear, background-color 15ms linear;transition:opacity 15ms linear, background-color 15ms linear;z-index:-1}.calendar-month-year-toggle.ion-focused::after{background:currentColor}.calendar-month-year-toggle:disabled{opacity:0.3;pointer-events:none}.calendar-month-year-toggle ion-icon{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0;-ms-flex-negative:0;flex-shrink:0}.calendar-month-year-toggle #toggle-wrapper{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}ion-picker{--highlight-background:var(--wheel-highlight-background);--highlight-border-radius:var(--wheel-highlight-border-radius);--fade-background-rgb:var(--wheel-fade-background-rgb)}:host{--background:var(--ion-color-light, #f4f5f8);--background-rgb:var(--ion-color-light-rgb, 244, 245, 248);--title-color:var(--ion-color-step-600, var(--ion-text-color-step-400, #666666))}:host(.datetime-presentation-date-time:not(.datetime-prefer-wheel)),:host(.datetime-presentation-time-date:not(.datetime-prefer-wheel)),:host(.datetime-presentation-date:not(.datetime-prefer-wheel)){min-height:350px}:host .datetime-header{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:16px;padding-bottom:16px;border-bottom:0.55px solid var(--ion-color-step-200, var(--ion-background-color-step-200, #cccccc));font-size:min(0.875rem, 22.4px)}:host .datetime-header .datetime-title{color:var(--title-color)}:host .datetime-header .datetime-selected-date{margin-top:10px}.calendar-month-year-toggle{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:0px;padding-bottom:0px;min-height:44px;font-size:min(1rem, 25.6px);font-weight:600}.calendar-month-year-toggle.ion-focused::after{opacity:0.15}.calendar-month-year-toggle #toggle-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:8px;margin-inline-end:8px;margin-top:10px;margin-bottom:10px}:host .calendar-action-buttons .calendar-month-year-toggle ion-icon,:host .calendar-action-buttons ion-buttons ion-button{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-action-buttons .calendar-month-year-toggle ion-icon,:host(.ion-color) .calendar-action-buttons ion-buttons ion-button{color:var(--ion-color-base)}:host .calendar-action-buttons ion-buttons{-ms-flex-align:stretch;align-items:stretch;height:100%}:host .calendar-action-buttons ion-buttons ion-button{margin-left:0;margin-right:0;margin-top:0;margin-bottom:0}:host .calendar-days-of-week{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:0;padding-bottom:0;color:var(--ion-color-step-300, var(--ion-text-color-step-700, #b3b3b3));font-size:min(0.75rem, 19.2px);font-weight:600;line-height:24px;text-transform:uppercase}@supports (border-radius: mod(1px, 1px)){.calendar-days-of-week .day-of-week{width:clamp(20px, calc(mod(min(1rem, 24px), 24px) * 10), 100%);height:24px;overflow:hidden}.calendar-day{border-radius:max(8px, mod(min(1rem, 24px), 24px) * 10)}}@supports ((border-radius: mod(1px, 1px)) and (background: -webkit-named-image(apple-pay-logo-black)) and (not (contain-intrinsic-size: none))) or (not (border-radius: mod(1px, 1px))){.calendar-days-of-week .day-of-week{width:auto;height:auto;overflow:initial}.calendar-day{border-radius:32px}}:host .calendar-body .calendar-month .calendar-month-grid{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;-ms-flex-align:center;align-items:center;height:calc(100% - 16px)}:host .calendar-day-wrapper{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:4px;padding-inline-end:4px;padding-top:4px;padding-bottom:4px;height:0;min-height:1rem}:host .calendar-day{width:40px;min-width:40px;height:40px;font-size:min(1.25rem, 32px)}.calendar-day.calendar-day-active{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);font-size:min(1.375rem, 35.2px)}:host(.ion-color) .calendar-day.calendar-day-active{background:rgba(var(--ion-color-base-rgb), 0.2)}:host .calendar-day.calendar-day-today{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-today{color:var(--ion-color-base)}:host .calendar-day.calendar-day-active,:host .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-primary, #0054e9);font-weight:600}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-base)}:host .calendar-day.calendar-day-today.calendar-day-active{background:var(--ion-color-primary, #0054e9);color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color) .calendar-day.calendar-day-today.calendar-day-active{background:var(--ion-color-base);color:var(--ion-color-contrast)}:host .calendar-day.calendar-day-adjacent-day{color:var(--ion-color-step-300, var(--ion-text-color-step-700, #b3b3b3))}:host .datetime-time{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:8px;padding-bottom:16px;font-size:min(1rem, 25.6px)}:host .datetime-time .time-header{font-weight:600}:host .datetime-buttons{-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;border-top:0.55px solid var(--ion-color-step-200, var(--ion-background-color-step-200, #cccccc))}:host .datetime-buttons ::slotted(ion-buttons),:host .datetime-buttons ion-buttons{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:justify;justify-content:space-between}:host .datetime-action-buttons{width:100%}',md:':host{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;background:var(--background);overflow:hidden}:host(.datetime-size-fixed){width:auto;height:auto}:host(.datetime-size-fixed:not(.datetime-prefer-wheel)){max-width:350px}:host(.datetime-size-fixed.datetime-prefer-wheel){min-width:350px;max-width:-webkit-max-content;max-width:-moz-max-content;max-width:max-content}:host(.datetime-size-cover){width:100%}:host .calendar-body,:host .datetime-year{opacity:0}:host(:not(.datetime-ready)) .datetime-year{position:absolute;pointer-events:none}:host(.datetime-ready) .calendar-body{opacity:1}:host(.datetime-ready) .datetime-year{display:none;opacity:1}:host .wheel-order-year-first .day-column{-ms-flex-order:3;order:3;text-align:end}:host .wheel-order-year-first .month-column{-ms-flex-order:2;order:2;text-align:end}:host .wheel-order-year-first .year-column{-ms-flex-order:1;order:1;text-align:start}:host .datetime-calendar,:host .datetime-year{display:-ms-flexbox;display:flex;-ms-flex:1 1 auto;flex:1 1 auto;-ms-flex-flow:column;flex-flow:column}:host(.show-month-and-year) .datetime-year{display:-ms-flexbox;display:flex}:host(.show-month-and-year) .calendar-next-prev,:host(.show-month-and-year) .calendar-days-of-week,:host(.show-month-and-year) .calendar-body,:host(.show-month-and-year) .datetime-time{display:none}:host(.month-year-picker-open) .datetime-footer{display:none}:host(.datetime-disabled){pointer-events:none}:host(.datetime-disabled) .calendar-days-of-week,:host(.datetime-disabled) .datetime-time{opacity:0.4}:host(.datetime-readonly){pointer-events:none;}:host(.datetime-readonly) .calendar-action-buttons,:host(.datetime-readonly) .calendar-body,:host(.datetime-readonly) .datetime-year{pointer-events:initial}:host(.datetime-readonly) .calendar-day[disabled]:not(.calendar-day-constrained),:host(.datetime-readonly) .datetime-action-buttons ion-button[disabled]{opacity:1}:host .datetime-header .datetime-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host .datetime-action-buttons.has-clear-button{width:100%}:host .datetime-action-buttons ion-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .datetime-action-buttons ion-button{--color:var(--ion-color-primary, #0054e9)}.datetime-action-buttons .datetime-action-buttons-container{display:-ms-flexbox;display:flex}:host .calendar-action-buttons{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host .calendar-action-buttons ion-button{--background:transparent}:host .calendar-days-of-week{display:grid;grid-template-columns:repeat(7, 1fr);text-align:center}.calendar-days-of-week .day-of-week{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}:host .calendar-body{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-webkit-scroll-snap-type:x mandatory;-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory;overflow-x:scroll;overflow-y:hidden;scrollbar-width:none;outline:none}:host .calendar-body .calendar-month{display:-ms-flexbox;display:flex;-ms-flex-flow:column;flex-flow:column;scroll-snap-align:start;scroll-snap-stop:always;-ms-flex-negative:0;flex-shrink:0;width:100%}:host .calendar-body .calendar-month-disabled{scroll-snap-align:none}:host .calendar-body::-webkit-scrollbar{display:none}:host .calendar-body .calendar-month-grid{display:grid;grid-template-columns:repeat(7, 1fr)}:host .calendar-day-wrapper{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;min-width:0;min-height:0;overflow:visible}.calendar-day{border-radius:50%;-webkit-padding-start:0px;padding-inline-start:0px;-webkit-padding-end:0px;padding-inline-end:0px;padding-top:0px;padding-bottom:0px;-webkit-margin-start:0px;margin-inline-start:0px;-webkit-margin-end:0px;margin-inline-end:0px;margin-top:0px;margin-bottom:0px;display:-ms-flexbox;display:flex;position:relative;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;border:none;outline:none;background:none;color:currentColor;font-family:var(--ion-font-family, inherit);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;z-index:0}:host .calendar-day[disabled]{pointer-events:none;opacity:0.4}.calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-primary-rgb, 0, 84, 233), 0.2)}:host(.ion-color) .calendar-day:not(.calendar-day-adjacent-day):focus{background:rgba(var(--ion-color-base-rgb), 0.2);-webkit-box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2);box-shadow:0px 0px 0px 4px rgba(var(--ion-color-base-rgb), 0.2)}:host .datetime-time{display:-ms-flexbox;display:flex;-ms-flex-pack:justify;justify-content:space-between}:host(.datetime-presentation-time) .datetime-time{padding-left:0;padding-right:0;padding-top:0;padding-bottom:0}:host ion-popover{--height:200px}:host .time-header{display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center}:host .time-body{border-radius:8px;-webkit-padding-start:12px;padding-inline-start:12px;-webkit-padding-end:12px;padding-inline-end:12px;padding-top:6px;padding-bottom:6px;display:-ms-flexbox;display:flex;border:none;background:var(--ion-color-step-300, var(--ion-background-color-step-300, #edeef0));color:var(--ion-text-color, #000);font-family:inherit;font-size:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}:host .time-body-active{color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .time-body-active{color:var(--ion-color-base)}:host(.in-item){position:static}:host(.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-primary, #0054e9)}:host(.ion-color.show-month-and-year) .calendar-action-buttons .calendar-month-year-toggle{color:var(--ion-color-base)}.calendar-month-year{min-width:0}.calendar-month-year-toggle{font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;text-decoration:inherit;text-indent:inherit;text-overflow:inherit;text-transform:inherit;text-align:inherit;white-space:inherit;color:inherit;position:relative;border:0;outline:none;background:transparent;cursor:pointer;z-index:1}.calendar-month-year-toggle::after{left:0;right:0;top:0;bottom:0;position:absolute;content:"";opacity:0;-webkit-transition:opacity 15ms linear, background-color 15ms linear;transition:opacity 15ms linear, background-color 15ms linear;z-index:-1}.calendar-month-year-toggle.ion-focused::after{background:currentColor}.calendar-month-year-toggle:disabled{opacity:0.3;pointer-events:none}.calendar-month-year-toggle ion-icon{-webkit-padding-start:4px;padding-inline-start:4px;-webkit-padding-end:0;padding-inline-end:0;padding-top:0;padding-bottom:0;-ms-flex-negative:0;flex-shrink:0}.calendar-month-year-toggle #toggle-wrapper{display:-ms-inline-flexbox;display:inline-flex;-ms-flex-align:center;align-items:center}ion-picker{--highlight-background:var(--wheel-highlight-background);--highlight-border-radius:var(--wheel-highlight-border-radius);--fade-background-rgb:var(--wheel-fade-background-rgb)}:host{--background:var(--ion-color-step-100, var(--ion-background-color-step-100, #ffffff));--title-color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color){--title-color:var(--ion-color-contrast)}:host .datetime-header{-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:20px;padding-inline-end:20px;padding-top:20px;padding-bottom:20px;background:var(--ion-color-primary, #0054e9);color:var(--title-color)}:host(.ion-color) .datetime-header{background:var(--ion-color-base)}:host .datetime-header .datetime-title{font-size:0.75rem;text-transform:uppercase}:host .datetime-header .datetime-selected-date{margin-top:30px;font-size:2.125rem}:host .calendar-action-buttons ion-button{--color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959))}.calendar-month-year-toggle{-webkit-padding-start:20px;padding-inline-start:20px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:12px;padding-bottom:12px;min-height:48px;background:transparent;color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959));z-index:1}.calendar-month-year-toggle.ion-focused::after{opacity:0.04}.calendar-month-year-toggle ion-ripple-effect{color:currentColor}@media (any-hover: hover){.calendar-month-year-toggle.ion-activatable:not(.ion-focused):hover::after{background:currentColor;opacity:0.04}}:host .calendar-days-of-week{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:0px;padding-bottom:0px;color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray));font-size:0.875rem;line-height:36px}:host .calendar-body .calendar-month .calendar-month-grid{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:4px;padding-bottom:4px;grid-template-rows:repeat(6, 1fr)}:host .calendar-day{width:42px;min-width:42px;height:42px;font-size:0.875rem}:host .calendar-day.calendar-day-today{border:1px solid var(--ion-color-primary, #0054e9);color:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-today{border:1px solid var(--ion-color-base);color:var(--ion-color-base)}:host .calendar-day.calendar-day-active,:host .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-primary-contrast, #fff)}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-adjacent-day.calendar-day-active{color:var(--ion-color-contrast)}.calendar-day.calendar-day-active,.calendar-day.calendar-day-active:focus{border:1px solid var(--ion-color-primary, #0054e9);background:var(--ion-color-primary, #0054e9)}:host(.ion-color) .calendar-day.calendar-day-active,:host(.ion-color) .calendar-day.calendar-day-active:focus{border:1px solid var(--ion-color-base);background:var(--ion-color-base)}:host .calendar-day.calendar-day-adjacent-day{color:var(--ion-color-step-500, var(--ion-text-color-step-500, gray))}:host .datetime-time{-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:8px;padding-bottom:8px}:host .time-header{color:var(--ion-color-step-650, var(--ion-text-color-step-350, #595959))}:host(.datetime-presentation-month) .datetime-year,:host(.datetime-presentation-year) .datetime-year,:host(.datetime-presentation-month-year) .datetime-year{margin-top:20px;margin-bottom:20px}:host .datetime-buttons{-webkit-padding-start:10px;padding-inline-start:10px;-webkit-padding-end:10px;padding-inline-end:10px;padding-top:10px;padding-bottom:10px;display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:end;justify-content:flex-end}'};export{Dt as ion_datetime}