@awc-ui/core 1.0.0-beta.13 → 1.0.0-beta.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/templates/astro/package.json +2 -2
- package/bin/templates/html/index.html +2 -2
- package/bin/templates/html/package.json +2 -2
- package/bin/templates/next/package.json +3 -3
- package/bin/templates/nuxt/package.json +2 -2
- package/bin/templates/sveltekit/package.json +2 -2
- package/dist/cjs/md-text-field.cjs.entry.js +19 -9
- package/dist/cjs/md-text-field.cjs.entry.js.map +1 -1
- package/dist/collection/components/md-text-field/md-text-field.js +19 -11
- package/dist/collection/components/md-text-field/md-text-field.js.map +1 -1
- package/dist/components/md-autocomplete.js +1 -1
- package/dist/components/md-date-picker.js +1 -1
- package/dist/components/md-multi-select.js +1 -1
- package/dist/components/md-number-field.js +1 -1
- package/dist/components/md-select.js +1 -1
- package/dist/components/md-table-pagination.js +1 -1
- package/dist/components/md-text-field.js +1 -1
- package/dist/components/md-time-picker.js +1 -1
- package/dist/components/md-transfer-list.js +1 -1
- package/dist/components/{p-yTagOl1N.js → p-B89I5ETZ.js} +2 -2
- package/dist/components/{p-oa3iIi7G.js → p-CpQwlYEw.js} +2 -2
- package/dist/components/p-CpQwlYEw.js.map +1 -0
- package/dist/components-csr/md-autocomplete.js +1 -1
- package/dist/components-csr/md-date-picker.js +1 -1
- package/dist/components-csr/md-multi-select.js +1 -1
- package/dist/components-csr/md-number-field.js +1 -1
- package/dist/components-csr/md-select.js +1 -1
- package/dist/components-csr/md-table-pagination.js +1 -1
- package/dist/components-csr/md-text-field.js +1 -1
- package/dist/components-csr/md-time-picker.js +1 -1
- package/dist/components-csr/md-transfer-list.js +1 -1
- package/dist/components-csr/{p-DfiO8Z3H.js → p-CAZGJ13q.js} +2 -2
- package/dist/components-csr/{p-mlihRBVo.js → p-Dlwb8Ytw.js} +2 -2
- package/dist/components-csr/p-Dlwb8Ytw.js.map +1 -0
- package/dist/esm/md-text-field.entry.js +19 -9
- package/dist/esm/md-text-field.entry.js.map +1 -1
- package/dist/md3/md3.esm.js +1 -1
- package/dist/md3/{p-8ddddeea.entry.js → p-f1566dea.entry.js} +2 -2
- package/dist/md3/p-f1566dea.entry.js.map +1 -0
- package/dist/sources/{fa66a646f8a88412406c9a78776ca3a57d863ce80aa53d65eb860ff680bf2d97 → 08be276da49a9f7b46a1b5780107c9d03e37acea47fdcd7126baf12e2e943237}/md-text-field.tsx +10 -4
- package/hydrate/index.js +19 -9
- package/hydrate/index.mjs +19 -9
- package/package.json +2 -2
- package/dist/components/p-oa3iIi7G.js.map +0 -1
- package/dist/components-csr/p-mlihRBVo.js.map +0 -1
- package/dist/md3/p-8ddddeea.entry.js.map +0 -1
- /package/dist/components/{p-yTagOl1N.js.map → p-B89I5ETZ.js.map} +0 -0
- /package/dist/components-csr/{p-DfiO8Z3H.js.map → p-CAZGJ13q.js.map} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{p as e,H as t,c as i,h as r,d as a,t as n}from"./p-B7GMP_JD.js";import{w as s}from"./p-DYBUr7K_.js";import{s as o,a as d,g as l,c,r as h}from"./p-DrC4gWIo.js";import{d as m}from"./p-0aOSIGsO.js";import{d as p}from"./p-DRxQo6x0.js";import{d as u}from"./p-DqSCH9qe.js";import{d as f}from"./p-D21hBBkH.js";import{d as _}from"./p-BMizw_F3.js";import{d as k}from"./p-mlihRBVo.js";import{d as y}from"./p-DC2ZvxAb.js";function b(e){return e<10?`0${e}`:String(e)}function v(e){return`${e.getFullYear()}-${b(e.getMonth()+1)}-${b(e.getDate())}`}function g(e,t,i){if(t<1||t>12||i<1||i>31)return null;const r=new Date(e,t-1,i);if(r.getFullYear()!==e||r.getMonth()!==t-1||r.getDate()!==i){return null}return r}function x(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function w(e,t){if(t&&t.length>0)return t;try{const t=new Intl.DateTimeFormat(e||"en-US",{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(2e3,11,31));const i=t.find((e=>e.type==="literal"));return i?.value??"/"}catch{return"/"}}function z(e,t,i){const r=w(t,i);const a=new Intl.DateTimeFormat(t||undefined,{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(e);return a.map((t=>{switch(t.type){case"day":return b(e.getDate());case"month":return b(e.getMonth()+1);case"year":return String(e.getFullYear());case"literal":return r;default:return""}})).join("")}function D(e,t){const i=w(e,t);const r=new Intl.DateTimeFormat(e||"en-US",{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(2e3,11,31));return r.map((e=>{switch(e.type){case"day":return"DD";case"month":return"MM";case"year":return"YYYY";case"literal":return i;default:return""}})).join("")}function M(e){try{const t=new Intl.DateTimeFormat(e||"en-US").formatToParts(new Date(2025,3,3));const i=t.findIndex((e=>e.type==="day"));const r=t.findIndex((e=>e.type==="month"));return i>=0&&r>=0&&i<r}catch{return false}}function C(e,t){if(e.length===8){const i=Number.parseInt(e.slice(0,2),10);const r=Number.parseInt(e.slice(2,4),10);const a=Number.parseInt(e.slice(4,8),10);let n;let s;if(i>12&&r<=12){s=i;n=r}else if(r>12&&i<=12){n=i;s=r}else if(i>12&&r>12){return null}else if(M(t)){s=i;n=r}else{n=i;s=r}return g(a,n,s)}if(e.length===7){const i=Number.parseInt(e.slice(3,7),10);const r=[{month:Number.parseInt(e.slice(0,1),10),day:Number.parseInt(e.slice(1,3),10),pattern:"MDD"},{day:Number.parseInt(e.slice(0,2),10),month:Number.parseInt(e.slice(2,3),10),pattern:"DDM"},{month:Number.parseInt(e.slice(0,2),10),day:Number.parseInt(e.slice(2,3),10),pattern:"MMD"}];const a=r.map((e=>({...e,date:g(i,e.month,e.day)}))).filter((e=>e.date!==null));if(a.length===0)return null;if(a.length===1)return a[0].date;const n=Number.parseInt(e.slice(1,3),10);const s=Number.parseInt(e.slice(0,1),10);if(s>=1&&s<=9&&n>=10){const e=a.find((e=>e.pattern==="MDD"));if(e)return e.date}const o=Number.parseInt(e.slice(0,2),10);if(o>12){const e=a.find((e=>e.pattern==="DDM"));if(e)return e.date}const d=Number.parseInt(e.slice(0,2),10);if(d>12){const e=a.find((e=>e.pattern==="MMD"));if(e)return e.date}const l=M(t)?"DDM":"MMD";const c=a.find((e=>e.pattern===l))??a[0];return c.date}return null}function S(e,t,i){const r=e.trim();if(!r)return null;const a=F(r);if(a)return a;if(/^\d+$/.test(r)){return C(r,t)}let n;if(i&&i.length>0){n=r.split(new RegExp(x(i))).filter(Boolean)}else{n=r.split(/[/\-.]|\s+/).filter(Boolean)}if(n.length!==3)return null;const s=n.map((e=>Number.parseInt(e,10)));if(s.some((e=>Number.isNaN(e))))return null;let o;let d;let l;if(n[0].length===4||s[0]>31){[o,d,l]=s}else if(n[2].length===4||s[2]>31){if(s[0]>12&&s[1]<=12){[l,d,o]=s}else if(s[1]>12&&s[0]<=12){[d,l,o]=s}else if(M(t)){[l,d,o]=s}else{[d,l,o]=s}}else{return null}return g(o,d,l)}function F(e){if(!e)return null;const t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e.trim());if(!t)return null;const i=Number(t[1]);const r=Number(t[2])-1;const a=Number(t[3]);const n=new Date(i,r,a);if(n.getFullYear()!==i||n.getMonth()!==r||n.getDate()!==a){return null}return n}function P(e,t){return new Date(e,t+1,0).getDate()}function Y(e){try{const t=Intl;const i=new t.Locale(e||"en-US");if(typeof i.getWeekInfo==="function"){const e=i.getWeekInfo();if(e&&typeof e.firstDay==="number"){return e.firstDay===7?0:e.firstDay}}if(i.weekInfo&&typeof i.weekInfo.firstDay==="number"){return i.weekInfo.firstDay===7?0:i.weekInfo.firstDay}}catch{}return 0}function I(e,t){return e<=t}function A(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}function E(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate()+t)}function T(e,t){const i=new Date(e.getFullYear(),e.getMonth()+t,1);const r=P(i.getFullYear(),i.getMonth());return new Date(i.getFullYear(),i.getMonth(),Math.min(e.getDate(),r))}function N(e,t,i){const r=v(e);if(t&&!I(t,r)){return F(t)??e}if(i&&!I(r,i)){return F(i)??e}return e}function $(e,t,i){const r=v(e);if(t&&!I(t,r))return true;if(i&&!I(r,i))return true;return false}function L(e,t,i){const r=new Date(e,t,1);const a=r.getDay();const n=(a-i+7)%7;const s=E(r,-n);const o=[];for(let e=0;e<42;e++){const i=E(s,e);o.push({date:i,outOfMonth:i.getMonth()!==t})}return o}function j(e,t,i="narrow"){const r=new Intl.DateTimeFormat(e||undefined,{weekday:i});const a=[];for(let e=0;e<7;e++){const i=(t+e)%7;a.push(r.format(new Date(2024,0,7+i)))}return a}const B=()=>`:host{--_selection-bloom-duration:var( --md-date-picker-selection-bloom-duration, var(--md-sys-motion-duration-long1, 450ms) );--_selection-bloom-easing:var( --md-date-picker-selection-bloom-easing, var(--md-sys-motion-easing-emphasized-decelerate, cubic-bezier(0.05, 0.7, 0.1, 1)) );--_selection-bloom-out-duration:var( --md-date-picker-selection-bloom-out-duration, var(--md-sys-motion-duration-short4, 200ms) );--_calendar-bloom-duration:var( --md-date-picker-calendar-bloom-duration, var(--md-sys-motion-duration-medium2, 300ms) );--_grid-slide-duration:var( --md-date-picker-grid-slide-duration, var(--md-sys-motion-duration-medium2, 300ms) );--_grid-slide-easing:var( --md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1) );--_panel-bloom-out-duration:var( --md-date-picker-panel-bloom-out-duration, var(--md-sys-motion-duration-short4, 200ms) );--_selection-bloom-out-easing:var( --md-sys-motion-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15) );--_container-color:var(--md-date-picker-container-color, var(--md-sys-color-surface));--_header-color:var(--md-date-picker-header-color, var(--md-sys-color-surface-container-high));--_container-shape:var(--md-date-picker-container-shape, var(--md-sys-shape-corner-extra-large, 28px));--_field-color:var(--md-date-picker-field-color, var(--md-sys-color-outline));--_field-focus-color:var(--md-date-picker-field-focus-color, var(--md-sys-color-primary));--_field-text-color:var(--md-date-picker-field-text-color, var(--md-sys-color-on-surface));--_field-container-color:var( --md-date-picker-field-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9) );--_field-container-shape:var( --md-date-picker-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px) );--_field-supporting-color:var( --md-date-picker-field-supporting-color, var(--md-sys-color-on-surface-variant) );--_label-color:var(--md-date-picker-label-color, var(--md-sys-color-on-surface-variant));--_headline-color:var(--md-date-picker-headline-color, var(--md-sys-color-on-surface));--_supporting-color:var(--md-date-picker-supporting-color, var(--md-sys-color-on-surface-variant));--_weekday-color:var(--md-date-picker-weekday-color, var(--md-sys-color-on-surface));--_weekday-size:24px;--_day-color:var(--md-date-picker-day-color, var(--md-sys-color-on-surface));--_day-outside-color:var(--md-date-picker-day-outside-color, var(--md-sys-color-on-surface-variant, #49454f));--_day-selected-color:var(--md-date-picker-day-selected-color, var(--md-sys-color-on-primary));--_day-selected-bg:var(--md-date-picker-day-selected-bg, var(--md-sys-color-primary));--_today-outline-color:var(--md-date-picker-today-outline-color, var(--md-sys-color-primary));--_action-color:var(--md-date-picker-action-color, var(--md-sys-color-primary));--_menu-color:var(--md-date-picker-menu-color, var(--md-sys-color-surface-container-high));--_scrim-color:var(--md-date-picker-scrim-color, var(--md-sys-color-scrim, #000));--_icon-color:var(--md-date-picker-icon-color, var(--md-sys-color-on-surface-variant));--_panel-width:var(--md-date-picker-panel-width, max(288px, calc(380px + var(--md-sys-density-scale, 0) * 20px)));--_panel-max-block-size:var(--md-date-picker-panel-max-block-size, 524px);--_error-color:var(--md-sys-color-error);--_icon-size:var(--md-date-picker-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_day-size:max(28px, calc(40px + var(--md-sys-density-scale, 0) * 3px));--_year-inline-size:var(--md-date-picker-year-inline-size, max(48px, calc(72px + var(--md-sys-density-scale, 0) * 6px)));--_year-block-size:var(--md-date-picker-year-block-size, max(24px, calc(36px + var(--md-sys-density-scale, 0) * 3px)));--_year-grid-gap:var(--md-date-picker-year-grid-gap, max(4px, calc(12px + var(--md-sys-density-scale, 0) * 2px)));--_year-grid-padding-inline:var(--md-date-picker-year-grid-padding-inline, 30px);--_year-grid-viewport-block-size:var(--md-date-picker-year-grid-viewport-block-size, max(180px, calc(288px + var(--md-sys-density-scale, 0) * 24px)));--_grid-gap:max(2px, calc(6px + var(--md-sys-density-scale, 0) * 1px));--_caret-fade-duration:var(--md-sys-motion-duration-short3, 150ms);--_caret-fade-easing:var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));display:inline-block;inline-size:100%;max-inline-size:var(--md-date-picker-trigger-max-width, 360px);font-family:var(--md-sys-typescale-body-large-font-family, Roboto, sans-serif);color:var(--_field-text-color);position:relative}:host(.md-date-picker--docked){align-self:flex-start;--_docked-panel-width:var(--md-date-picker-docked-panel-width, max(calc(360px + var(--md-sys-density-scale, 0) * 10px), var(--_panel-width)));--_docked-content-block-size:calc( var(--_weekday-size) + 16px + 6 * var(--_day-size) + 5 * var(--_grid-gap) + 8px )}:host(.md-date-picker--modal){display:contents}:host(.md-date-picker--disabled){pointer-events:none;opacity:0.5}.material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-weight:normal;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;overflow-wrap:normal;direction:ltr;font-feature-settings:'liga';-webkit-font-smoothing:antialiased}.md-date-picker__icon{font-size:var(--_icon-size);inline-size:var(--_icon-size);block-size:var(--_icon-size);color:var(--_icon-color);pointer-events:none}.md-date-picker__textfield,.md-date-picker__entry-textfield{display:block;inline-size:100%;--md-text-field-outline-color:var(--_field-color);--md-text-field-input-color:var(--_field-text-color);--md-text-field-label-color:var(--_label-color);--md-text-field-active-indicator-color:var(--_field-focus-color);--md-text-field-supporting-text-color:var(--_field-supporting-color);--md-text-field-icon-color:var(--_icon-color);--md-text-field-container-color:var(--_field-container-color);--md-text-field-container-shape:var(--_field-container-shape);--md-text-field-filled-pill:var(--md-date-picker-field-filled-pill, 0)}:host(.md-date-picker--open) .md-date-picker__textfield{--md-text-field-active-indicator-color:var(--_field-focus-color);--md-text-field-icon-color:var(--_field-focus-color)}.md-date-picker__docked-anchor{position:relative;display:block;inline-size:100%}.md-date-picker__modal{position:fixed;inset:0;z-index:var(--md-sys-z-index-modal, 1000);display:flex;align-items:center;justify-content:center;padding:var(--md-sys-spacing-inset-lg, 16px)}.md-date-picker__scrim{position:absolute;inset:0;background:color-mix(in srgb, var(--_scrim-color) 32%, transparent);animation:md-date-picker-fade-in var(--md-sys-motion-duration-short3, 150ms) var(--md-sys-motion-easing-standard, ease)}.md-date-picker__modal--closing .md-date-picker__scrim{animation:md-date-picker-fade-out var(--_panel-bloom-out-duration) var(--md-sys-motion-easing-standard, ease) forwards}.md-date-picker__panel{position:relative;display:flex;flex-direction:column;inline-size:var(--_panel-width);max-inline-size:calc(100vw - 32px);max-block-size:min( var(--_panel-max-block-size), calc(100vh - 32px), calc(100dvh - 32px) );overflow:hidden;background:var(--_container-color);color:var(--_field-text-color);border-radius:var(--_container-shape);box-shadow:var(--md-sys-elevation-3, 0 4px 8px 3px rgba(0, 0, 0, 0.15), 0 1px 3px rgba(0, 0, 0, 0.3))}.md-date-picker__panel:not(.md-date-picker__panel--docked):not(.md-date-picker__panel--input-mode){--_container-color:var(--md-date-picker-container-color, var(--md-sys-color-surface-container-high));block-size:auto}.md-date-picker__panel--input-mode:not(.md-date-picker__panel--docked){--_container-color:var(--md-date-picker-container-color, var(--md-sys-color-surface-container-high));block-size:auto;min-block-size:0}.md-date-picker__panel:not(.md-date-picker__panel--docked):not(.md-date-picker__panel--bloom-out){animation:md-date-picker-scale var(--md-sys-motion-duration-medium2, 300ms) var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));transform-origin:center top}.md-date-picker__panel--docked.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){animation:md-date-picker-selection-bloom-in var(--_selection-bloom-duration) var(--_selection-bloom-easing) both}.md-date-picker__panel--bloom-out{animation:md-date-picker-panel-bloom-out var(--_panel-bloom-out-duration) var(--_selection-bloom-out-easing) both;transform-origin:center top}:host(.md-date-picker--panel-closing) .md-date-picker__panel{pointer-events:none}.md-date-picker__panel:focus,.md-date-picker__panel:focus-visible{outline:none}.md-date-picker__panel--docked{--_container-color:var(--md-sys-color-surface-container-high);position:absolute;inset-block-start:4px;inset-block-end:auto;inset-inline-start:0;inset-inline-end:auto;inline-size:var(--_docked-panel-width);max-inline-size:calc(100vw - 32px);block-size:auto;min-block-size:0;max-block-size:min( var(--_panel-max-block-size), calc(100vh - 32px), calc(100dvh - 32px) );display:flex;flex-direction:column;overflow:visible;box-shadow:none;border-radius:var(--md-sys-shape-corner-large, 16px);z-index:var(--md-sys-z-index-popup, 900)}.md-date-picker__panel--docked.md-date-picker__panel--align-end{inset-inline-start:auto;inset-inline-end:0}.md-date-picker__panel--docked.md-date-picker__panel--placement-above{inset-block-start:auto;inset-block-end:4px}.md-date-picker__docked-popup{position:absolute;inset-block-start:100%;inset-block-end:auto;inset-inline-start:0;inline-size:100%}.md-date-picker__docked-popup--above{inset-block-start:auto;inset-block-end:100%}:host{--_docked-origin-inline-start:left;--_docked-origin-inline-end:right}:host([dir='rtl']),:host-context([dir='rtl']){--_docked-origin-inline-start:right;--_docked-origin-inline-end:left}.md-date-picker__panel--docked.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){transform-origin:top var(--_docked-origin-inline-start)}.md-date-picker__panel--docked.md-date-picker__panel--align-end.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){transform-origin:top var(--_docked-origin-inline-end)}.md-date-picker__panel--docked.md-date-picker__panel--placement-above.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){transform-origin:bottom var(--_docked-origin-inline-start)}.md-date-picker__panel--docked.md-date-picker__panel--placement-above.md-date-picker__panel--align-end.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){transform-origin:bottom var(--_docked-origin-inline-end)}.md-date-picker__panel--docked.md-date-picker__panel--bloom-out{transform-origin:top var(--_docked-origin-inline-start)}.md-date-picker__panel--docked.md-date-picker__panel--align-end.md-date-picker__panel--bloom-out{transform-origin:top var(--_docked-origin-inline-end)}.md-date-picker__panel--docked.md-date-picker__panel--placement-above.md-date-picker__panel--bloom-out{transform-origin:bottom var(--_docked-origin-inline-start)}.md-date-picker__panel--docked.md-date-picker__panel--placement-above.md-date-picker__panel--align-end.md-date-picker__panel--bloom-out{transform-origin:bottom var(--_docked-origin-inline-end)}.md-date-picker__header{display:flex;flex-direction:column;gap:0;padding-block-start:var(--md-sys-spacing-inset-lg, 16px);padding-block-end:var(--md-sys-spacing-inset-md, 12px);padding-inline-start:var(--md-sys-spacing-inset-xl, 24px);padding-inline-end:var(--md-sys-spacing-inset-md, 12px);background-color:var(--_header-color);border-block-end:1px solid var(--md-sys-color-outline-variant);flex:none}.md-date-picker__header-supporting{font-family:var(--md-sys-typescale-label-medium-font-family, Roboto, sans-serif);font-size:max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-medium-font-weight, 500);line-height:max(14px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));letter-spacing:var(--md-sys-typescale-label-medium-letter-spacing, 0.5px);color:var(--_supporting-color);padding-block-end:max(4px, calc(36px + var(--md-sys-density-scale, 0) * 6px))}.md-date-picker__header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--md-sys-spacing-gap-sm, 8px);min-block-size:max(28px, calc(40px + var(--md-sys-density-scale, 0) * 3px))}.md-date-picker__headline{flex:1 1 auto;min-inline-size:0;font-family:var(--md-sys-typescale-headline-large-font-family, Roboto, sans-serif);font-size:max(24px, calc(32px + var(--md-sys-density-scale, 0) * 2px));font-weight:var(--md-sys-typescale-headline-large-font-weight, 400);line-height:max(30px, calc(40px + var(--md-sys-density-scale, 0) * 2.5px));letter-spacing:var(--md-sys-typescale-headline-large-letter-spacing, 0px);color:var(--_headline-color)}.md-date-picker__mode-toggle{flex:none;--md-icon-button-container-width:48px;--md-icon-button-container-height:48px}.md-date-picker__body{padding-block-start:var(--md-sys-spacing-inset-md, 12px);padding-inline:12px;padding-block-end:0;display:flex;flex-direction:column}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__body{flex:1 1 auto;min-block-size:0;overflow:hidden}.md-date-picker__nav{display:flex;align-items:center;justify-content:space-between;min-block-size:48px;padding-inline:var(--md-sys-spacing-inset-xs, 4px);margin-block-end:var(--md-sys-spacing-inset-xs, 4px);flex:none}.md-date-picker__nav-buttons{display:flex;gap:var(--md-sys-spacing-gap-xs, 4px);align-items:center}.md-date-picker__nav md-icon-button.md-date-picker__nav-chevron{flex:none}.md-date-picker__body--no-actions{padding-block-end:max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px))}.md-date-picker__body--docked,.md-date-picker__body--docked.md-date-picker__body--docked-selection{padding-block-start:max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px));padding-inline:12px;padding-block-end:0}.md-date-picker__body--docked.md-date-picker__body--no-actions{padding-block-end:max( 0px, calc( max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px)) - var(--md-sys-spacing-inset-sm, 8px) ) );display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0;overflow:hidden}.md-date-picker__docked-below-nav{flex:none;display:flex;align-items:center;inline-size:100%;box-sizing:border-box}.md-date-picker__selection-divider{flex:none;inline-size:100%;margin:0;padding:0;border:none;box-sizing:border-box;display:flex;align-items:center}.md-date-picker__body--docked-selection .md-date-picker__docked-below-nav,.md-date-picker__body--docked-selection .md-date-picker__selection-menu-wrap{margin-inline:-12px;inline-size:calc(100% + 24px)}.md-date-picker__selection-divider::before{content:'';display:block;inline-size:100%;block-size:1px;background-color:var(--md-sys-color-outline-variant)}.md-date-picker__body--docked-selection .md-date-picker__selection-divider{animation:md-date-picker-selection-divider-in var(--_selection-bloom-duration) var(--_selection-bloom-easing) both}.md-date-picker__body--docked-selection>.md-date-picker__selection-menu-wrap{box-sizing:border-box;flex:1 1 auto;block-size:auto;min-block-size:0;max-block-size:100%;border-end-start-radius:var(--md-sys-shape-corner-large, 16px);border-end-end-radius:var(--md-sys-shape-corner-large, 16px);transform-origin:center top}.md-date-picker__body--docked-selection>.md-date-picker__selection-menu-wrap:not(.md-date-picker__selection-menu-wrap--bloom-out){animation:md-date-picker-selection-bloom-in var(--_selection-bloom-duration) var(--_selection-bloom-easing) both}.md-date-picker__selection-menu-wrap--bloom-out{animation:md-date-picker-selection-bloom-out var(--_selection-bloom-out-duration) var(--_selection-bloom-out-easing) both;transform-origin:center top}.md-date-picker__body--docked>.md-date-picker__calendar{box-sizing:border-box;flex:1 1 auto;block-size:auto;min-block-size:0;max-block-size:100%;overflow-x:clip;overflow-y:auto}.md-date-picker__body--docked .md-date-picker__calendar--docked-bloom-in{animation:md-date-picker-docked-calendar-bloom-in var(--_calendar-bloom-duration) var(--_selection-bloom-easing) both;transform-origin:center top}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__calendar--content-bloom-in{animation:md-date-picker-docked-calendar-bloom-in var(--_calendar-bloom-duration) var(--_selection-bloom-easing) both;transform-origin:center top}.md-date-picker__docked-nav{--_nav-chevron-size:max(32px, calc(40px + var(--md-sys-density-scale, 0) * 4px));--_nav-focus-ring-gap:5px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--md-sys-spacing-gap-lg, 16px);inline-size:100%;padding-block-start:0;padding-inline:0;padding-block-end:30px;flex:none;box-sizing:border-box}.md-date-picker__docked-nav .md-date-picker__nav-group{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--md-sys-spacing-gap-xs, 4px);flex:0 0 auto;min-inline-size:0;box-sizing:border-box}.md-date-picker__docked-nav md-icon-button.md-date-picker__directional-icon{flex:none;flex-shrink:0}.md-date-picker__docked-nav .md-date-picker__nav-group--month{justify-content:flex-start}.md-date-picker__docked-nav .md-date-picker__nav-group--year{justify-content:flex-end}.md-date-picker__nav-chevron-slot{position:relative;flex:none;flex-shrink:0;inline-size:var(--_nav-chevron-size, 40px);block-size:var(--_nav-chevron-size, 40px)}.md-date-picker__nav-chevron-slot>md-tooltip,.md-date-picker__nav-chevron-slot>.md-date-picker__nav-chevron-spacer{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--_caret-fade-duration) var(--_caret-fade-easing), visibility 0s linear var(--_caret-fade-duration)}.md-date-picker__nav-chevron-slot>md-tooltip.md-date-picker__nav-chevron--visible,.md-date-picker__nav-chevron-slot>.md-date-picker__nav-chevron-spacer.md-date-picker__nav-chevron--visible{opacity:1;visibility:visible;transition:opacity var(--_caret-fade-duration) var(--_caret-fade-easing), visibility 0s linear 0s}.md-date-picker__nav-chevron-slot>md-tooltip{display:block}.md-date-picker__nav-chevron-slot>md-tooltip.md-date-picker__nav-chevron--visible{pointer-events:auto;z-index:1}.md-date-picker__nav-chevron-spacer{display:block;inline-size:100%;block-size:100%}.md-date-picker__icon-button{display:inline-flex;align-items:center;justify-content:center;inline-size:40px;block-size:40px;border:none;border-radius:var(--md-sys-shape-corner-full, 9999px);background:transparent;cursor:pointer;position:relative;flex:none}.md-date-picker__icon-button:hover{background:color-mix(in srgb, var(--md-sys-color-on-surface) 8%, transparent)}.md-date-picker__icon-button:focus-visible{outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}.md-date-picker__menu-button{flex:none;--md-button-label-color:var(--md-sys-color-on-surface-variant);--md-button-icon-size:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));--_state-layer-color:var(--md-sys-color-on-surface-variant)}.md-date-picker__menu-button.md-button--sm{gap:2px}.md-date-picker__menu-button.md-button--selected{--md-button-container-color:var(--md-sys-color-secondary-container);--md-button-label-color:var(--md-sys-color-on-secondary-container);--_state-layer-color:var(--md-sys-color-on-secondary-container)}.md-date-picker__menu-button::part(label){font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);font-size:max(12px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-large-font-weight, 500);line-height:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));letter-spacing:var(--md-sys-typescale-label-large-letter-spacing, 0.1px)}.md-date-picker__menu-button-tooltip{--md-tooltip-plain-max-inline-size:max-content}.md-date-picker__menu-caret{position:relative;display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:none;inline-size:20px;block-size:20px}.md-date-picker__menu-caret-glyph{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;font-size:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));line-height:1;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--_caret-fade-duration) var(--_caret-fade-easing), visibility 0s linear var(--_caret-fade-duration)}.md-date-picker__menu-caret-glyph--visible{opacity:1;visibility:visible;transition:opacity var(--_caret-fade-duration) var(--_caret-fade-easing), visibility 0s linear 0s}.md-date-picker__selection-menu-wrap{inline-size:100%;display:flex;flex-direction:column;flex:0 0 auto;overflow:hidden;margin-block:0;box-sizing:border-box;background-color:var(--_container-color)}.md-date-picker__selection-menu{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0;inline-size:100%;block-size:100%;pointer-events:auto;z-index:auto;--md-menu-min-width:100%;--md-menu-max-width:none;--md-menu-inline-surface-color:var(--_container-color);--md-menu-inline-fill-radius-end:var(--md-sys-shape-corner-large, 16px)}.md-date-picker__selection-menu md-menu-item{--md-menu-item-gap:var(--md-sys-spacing-gap-lg, 16px);padding-inline-start:var(--md-sys-spacing-inset-lg, 16px)}.md-date-picker__selection-menu md-menu-item::part(headline){font-family:var(--md-sys-typescale-body-large-font-family, Roboto, sans-serif);font-size:max(13px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-body-large-font-weight, 400);line-height:var(--md-sys-typescale-body-large-line-height, 24px);letter-spacing:var(--md-sys-typescale-body-large-letter-spacing, 0.5px);color:var(--md-sys-color-on-surface)}.md-date-picker__calendar{padding-block-end:var(--md-sys-spacing-inset-sm, 8px);overflow-x:clip}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__calendar{flex:1 1 auto;display:flex;flex-direction:column;min-block-size:0;padding-block-end:0;overflow:hidden}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__weekdays{flex:none}.md-date-picker__weekdays,.md-date-picker__grid{display:grid;grid-template-columns:repeat(7, 1fr);gap:var(--_grid-gap);justify-items:center}.md-date-picker__weekdays{padding-block-end:var(--md-sys-spacing-inset-lg, 16px)}.md-date-picker__weekday-tooltip{display:flex;align-items:center;justify-content:center;inline-size:var(--_day-size);cursor:pointer}.md-date-picker__weekday{display:flex;align-items:center;justify-content:center;inline-size:var(--_day-size);block-size:var(--_weekday-size);cursor:pointer;font-family:var(--md-sys-typescale-body-large-font-family, Roboto, sans-serif);font-size:max(13px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-body-large-font-weight, 400);line-height:var(--md-sys-typescale-body-large-line-height, 24px);letter-spacing:var(--md-sys-typescale-body-large-letter-spacing, 0.5px);color:var(--_weekday-color)}.md-date-picker__grid{grid-auto-rows:var(--_day-size)}.md-date-picker__week{display:contents}.md-date-picker__grid--slide-forward{animation:md-date-picker-grid-slide-forward var(--_grid-slide-duration) var(--_grid-slide-easing) both}.md-date-picker__grid--slide-backward{animation:md-date-picker-grid-slide-backward var(--_grid-slide-duration) var(--_grid-slide-easing) both}@keyframes md-date-picker-grid-slide-forward{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes md-date-picker-grid-slide-backward{from{transform:translateX(-100%)}to{transform:translateX(0)}}:host-context([dir='rtl']) .md-date-picker__grid--slide-forward,:host([dir='rtl']) .md-date-picker__grid--slide-forward{animation-name:md-date-picker-grid-slide-forward-rtl}:host-context([dir='rtl']) .md-date-picker__grid--slide-backward,:host([dir='rtl']) .md-date-picker__grid--slide-backward{animation-name:md-date-picker-grid-slide-backward-rtl}@keyframes md-date-picker-grid-slide-forward-rtl{from{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes md-date-picker-grid-slide-backward-rtl{from{transform:translateX(100%)}to{transform:translateX(0)}}.md-date-picker__day,.md-date-picker__year{--md-button-label-color:var(--_day-color);--md-button-container-color:transparent;position:relative;padding:0;font-family:var(--md-sys-typescale-body-large-font-family, Roboto, sans-serif);font-size:max(13px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-body-large-font-weight, 400);line-height:var(--md-sys-typescale-body-large-line-height, 24px);letter-spacing:var(--md-sys-typescale-body-large-letter-spacing, 0.5px);font-variant-numeric:tabular-nums}.md-date-picker__day::part(label),.md-date-picker__year::part(label){position:relative;z-index:1;font:inherit;font-variant-numeric:tabular-nums}.md-date-picker__day:focus-visible,.md-date-picker__year:focus-visible{outline-offset:-1px}.md-date-picker__day{--md-button-min-width:var(--_day-size);--md-button-width:var(--_day-size);--md-button-min-height:var(--_day-size);--md-button-height:var(--_day-size)}.md-date-picker__day--today{--md-button-container-shape:var(--md-date-picker-day-today-shape, calc(var(--_day-size) / 2));--md-button-label-color:var(--_today-outline-color);box-shadow:0 0 0 1px var(--_today-outline-color)}.md-date-picker__day--outside{--md-button-label-color:var(--_day-outside-color)}.md-date-picker__day--selected,.md-date-picker__year--selected{--md-button-container-color:var(--_day-selected-bg);--md-button-label-color:var(--_day-selected-color);--md-button-container-shape:var(--md-date-picker-day-selected-shape)}.md-date-picker__day--selected.md-date-picker__day--today{box-shadow:none}.md-date-picker__day--disabled,.md-date-picker__year--disabled{--md-button-label-color:color-mix( in srgb, var(--_day-color) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent )}.md-date-picker__year-grid-wrap{display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0;overflow:hidden;transform-origin:center top}.md-date-picker__body--year-view .md-date-picker__year-grid-wrap{margin-inline:-12px;inline-size:calc(100% + 24px);box-sizing:border-box}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__year-grid-wrap:not(.md-date-picker__year-grid-wrap--bloom-out){animation:md-date-picker-selection-bloom-in var(--_selection-bloom-duration) var(--_selection-bloom-easing) both}.md-date-picker__year-grid-wrap--bloom-out{animation:md-date-picker-selection-bloom-out var(--_selection-bloom-out-duration) var(--_selection-bloom-out-easing) both}.md-date-picker__year-grid-scroll{flex:1 1 auto;min-block-size:0;overflow-y:auto}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__year-grid-scroll{min-block-size:var(--_year-grid-viewport-block-size);max-block-size:var(--_year-grid-viewport-block-size)}.md-date-picker__year-grid{display:grid;grid-template-columns:repeat(3, 1fr);grid-auto-rows:var(--_year-block-size);gap:var(--_year-grid-gap);padding-block-start:8px;padding-inline:var(--_year-grid-padding-inline);padding-block-end:16px;align-content:start}.md-date-picker__year-row{display:contents}.md-date-picker__panel:not(.md-date-picker__panel--docked):not(.md-date-picker__panel--input-mode) .md-date-picker__entry{flex:1 1 auto;min-block-size:0;overflow-y:auto;padding:var(--md-sys-spacing-inset-lg, 16px) var(--md-sys-spacing-inset-xl, 24px) var(--md-sys-spacing-inset-sm, 8px)}.md-date-picker__year{--md-button-min-width:var(--_year-inline-size);--md-button-width:var(--_year-inline-size);--md-button-min-height:var(--_year-block-size);--md-button-height:var(--_year-block-size)}.md-date-picker__year:nth-child(3n+1){justify-self:start}.md-date-picker__year:nth-child(3n+2){justify-self:center}.md-date-picker__year:nth-child(3n){justify-self:end}.md-date-picker__entry{display:flex;flex-wrap:wrap;gap:var(--md-sys-spacing-gap-lg, 16px);padding:0;inline-size:100%}.md-date-picker__body--input-mode{padding-block-start:var(--md-sys-spacing-inset-xl, 24px);padding-inline:var(--md-sys-spacing-inset-xl, 24px);padding-block-end:var(--md-sys-spacing-inset-sm, 8px);flex:none}.md-date-picker__entry-error{flex-basis:100%;font-size:max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));color:var(--_error-color)}.md-date-picker__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--md-sys-spacing-gap-sm, 8px);min-block-size:max(28px, calc(40px + var(--md-sys-density-scale, 0) * 3px));padding-block:var(--md-sys-spacing-inset-sm, 8px) var(--md-sys-spacing-inset-md, 12px);padding-inline:12px;flex:none}.md-date-picker__action-btn{--md-button-label-color:var(--_action-color)}.md-date-picker__action-btn--primary{--md-button-label-color:var(--_action-color)}:host-context([dir='rtl']) .md-date-picker__directional-icon .md-date-picker__icon,:host([dir='rtl']) .md-date-picker__directional-icon .md-date-picker__icon{transform:scaleX(-1)}:host-context([dir='rtl']) md-icon-button.md-date-picker__directional-icon,:host([dir='rtl']) md-icon-button.md-date-picker__directional-icon{transform:scaleX(-1)}::slotted([slot='leading-icon']){display:inline-flex;align-items:center;justify-content:center;inline-size:var(--_icon-size);block-size:var(--_icon-size);font-size:var(--_icon-size);color:var(--_icon-color);fill:currentColor;pointer-events:none}:host([data-theme='dark']),:host-context([data-theme='dark']){--_container-color:var(--md-date-picker-container-color, var(--md-sys-color-surface));--_header-color:var(--md-date-picker-header-color, var(--md-sys-color-surface-container-high))}@keyframes md-date-picker-selection-bloom-in{from{opacity:0;transform:translateY(8px) scale(0.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes md-date-picker-selection-bloom-out{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(4px) scale(0.96)}}@keyframes md-date-picker-selection-divider-in{from{opacity:0}to{opacity:1}}@keyframes md-date-picker-docked-calendar-bloom-in{from{opacity:0;transform:translateY(8px) scale(0.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes md-date-picker-fade-in{from{opacity:0}}@keyframes md-date-picker-fade-out{from{opacity:1}to{opacity:0}}@keyframes md-date-picker-scale{from{opacity:0;transform:scale(0.9)}}@keyframes md-date-picker-panel-bloom-out{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(4px) scale(0.96)}}@media (prefers-reduced-motion: reduce){.md-date-picker__scrim,.md-date-picker__modal--closing .md-date-picker__scrim,.md-date-picker__panel:not(.md-date-picker__panel--docked),.md-date-picker__panel--docked.md-date-picker__panel--bloom-in,.md-date-picker__panel--bloom-out,.md-date-picker__body--docked-selection .md-date-picker__selection-divider,.md-date-picker__body--docked-selection>.md-date-picker__selection-menu-wrap:not(.md-date-picker__selection-menu-wrap--bloom-out),.md-date-picker__selection-menu-wrap--bloom-out,.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__year-grid-wrap:not(.md-date-picker__year-grid-wrap--bloom-out),.md-date-picker__year-grid-wrap--bloom-out,.md-date-picker__calendar--docked-bloom-in,.md-date-picker__calendar--content-bloom-in,.md-date-picker__grid--slide-forward,.md-date-picker__grid--slide-backward{animation:none}.md-date-picker__nav-chevron-slot>md-tooltip,.md-date-picker__nav-chevron-slot>.md-date-picker__nav-chevron-spacer,.md-date-picker__menu-caret-glyph{transition:none}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}:host([hidden]){display:none !important}`;let V=0;const O=450;const q=200;const R=200;const K=300;const U=3;const H=5;const G=e(class e extends t{constructor(e){super();if(e!==false){this.__registerHost()}this.__attachShadow();this.mdChange=i(this,"mdChange",7);this.mdSelected=i(this,"mdSelected",7);this.mdInput=i(this,"mdInput",7);this.mdOpen=i(this,"mdOpen",7);this.mdClose=i(this,"mdClose",7);this.mdCancel=i(this,"mdCancel",7);this.mdViewChange=i(this,"mdViewChange",7);this.mdMenuOpen=i(this,"mdMenuOpen",7);this.mdMenuSelect=i(this,"mdMenuSelect",7);this.mdModeChange=i(this,"mdModeChange",7);this.mdValidityChange=i(this,"mdValidityChange",5);this.internals=this.attachInternals();this.valueMissingLabel="Please choose a date.";this.reserveSupportingSpace=false;this.customValidityMessage="";this.defaultValue="";this.variant="modal-input";this.value="";this.label="Date";this.placeholder="";this.min="";this.max="";this.open=false;this.disabled=false;this.required=false;this.clearable=false;this.clearLabel="Clear date";this.error=false;this.errorText="";this.supportingText="";this.locale="";this.dateSeparator="";this.fieldVariant="outlined";this.firstDayOfWeek=-1;this.headline="Select date";this.cancelLabel="Cancel";this.okLabel="OK";this.selectDateLabel="Select date";this.enterDatesLabel="Enter dates";this.invalidDateLabel="Invalid date";this.previousMonthLabel="Previous month";this.nextMonthLabel="Next month";this.previousYearLabel="Previous year";this.nextYearLabel="Next year";this.chooseMonthLabel="Choose month";this.chooseYearLabel="Choose year";this.chooseMonthYearLabel="Choose a different month and year";this.chooseMonthAndYearLabel="Choose month and year";this.toggleCalendarLabel="Switch to calendar input";this.toggleTextLabel="Switch to text input";this.openCalendarLabel="Open calendar";this.closeCalendarLabel="Close calendar";this.calendarIcon="calendar_today";this.yearGridLabel="Year";this.scrimDismissible=true;this.outsideClickDismissible=true;this.commitOnSelect=false;this.name="";this.density=0;this.focused=false;this.inputDraft="";this.viewYear=(new Date).getFullYear();this.viewMonth=(new Date).getMonth();this.viewMode="calendar";this.inputMode=false;this.focusedDate=new Date;this.pendingDate=null;this.hasSlottedHeader=false;this.hasSlottedActions=false;this.hasSlottedLeading=false;this.hasSlottedCalendarIcon=false;this.monthMenuOpen=false;this.yearMenuOpen=false;this.selectionMenuClosing=null;this.dockedCalendarBloom=false;this.gridSlideDirection=null;this.yearViewClosing=false;this.modalCalendarBloom=false;this.panelClosing=false;this.dockedPanelAlign="start";this.dockedPanelPlacement="below";this.dockedPanelMaxBlockSize=null;this.uid=`md-dp-${++V}`;this.entryInputShouldFocus=false;this.restoreFocusEl=null;this.gridShouldFocus=false;this.menuShouldFocus=null;this.menuRestoreFocus=null;this.yearGridShouldScroll=false;this.yearListMinYear=null;this.yearListMaxYear=null;this.panelPointerEngaged=false;this.closingFromDismiss=false;this.dockedPositionCleanup=null;this.dockedPositionRafId=0;this.dockedPositionRafAttempts=0;this.lastSelectedEmitValue=null;this.onFieldInput=e=>{const t=e.target.value;this.inputDraft=t;this.mdInput.emit({value:t})};this.onFieldCommit=()=>{const e=this.inputDraft.trim();if(!e){this.value="";this.inputDraft="";this.error=false;this.errorText="";this.emitChange();this.syncTextFieldDisplay();return}const t=S(e,this.locale,this.dateSeparator||undefined);if(!t||this.isDisabledDate(t)){this.error=true;this.errorText=this.errorText||(this.invalidDateLabel??"Invalid date");return}this.value=v(t);this.inputDraft=this.formatField(t);this.error=false;this.errorText="";this.syncViewToValue();this.emitChange();this.syncTextFieldDisplay()};this.onGridSlideAnimationEnd=e=>{if(e.target!==e.currentTarget)return;const t=e.animationName??"";if(!t.includes("md-date-picker-grid-slide"))return;this.gridSlideDirection=null};this.toggleMonthMenu=()=>{void this.toggleMonthMenuAsync()};this.toggleYearMenu=()=>{void this.toggleYearMenuAsync()};this.onMonthMenuClose=()=>{if(!this.monthMenuOpen)return;void this.closeDockedSelectionMenu("month",{bloomCalendar:true,restoreFocus:true})};this.onYearMenuClose=()=>{if(!this.yearMenuOpen)return;void this.closeDockedSelectionMenu("year",{bloomCalendar:true,restoreFocus:true})};this.toggleYearView=()=>{if(this.viewMode==="year"){void this.closeYearViewAnimated()}else{this.openYearView()}};this.toggleInputMode=()=>{if(this.inputMode){this.commitDialogInput();if(this.error)return}else{this.inputDraft=this.pendingDate?this.formatField(this.pendingDate):""}this.inputMode=!this.inputMode;this.viewMode="calendar";this.emitModeChange(this.inputMode?"input":"calendar");if(this.inputMode){this.entryInputShouldFocus=true}};this.onPanelMouseDown=e=>{if(e.button!==0||!this.open||!this.panelEl)return;if(!this.shouldPanelClaimFocus(e.target))return;this.panelPointerEngaged=true;if(this.viewMode==="calendar"&&!this.inputMode&&!this.monthMenuOpen&&!this.yearMenuOpen){this.gridShouldFocus=true}};this.handleDayKeyDown=e=>{if(e.defaultPrevented)return;this.handleCalendarKeyDown(e)};this.handleCalendarKeyDown=e=>{if(e.defaultPrevented)return;if(this.isDockedMenuToggleKey(e)){const t=e.key.toLowerCase();if(t==="m"){e.preventDefault();e.stopPropagation();e.stopImmediatePropagation();this.toggleMonthMenu();return}if(t==="y"){e.preventDefault();e.stopPropagation();e.stopImmediatePropagation();this.toggleYearMenu();return}}let t=null;switch(this.resolveNavigationKey(e)){case"ArrowRight":t=E(this.focusedDate,1);break;case"ArrowLeft":t=E(this.focusedDate,-1);break;case"ArrowDown":t=E(this.focusedDate,7);break;case"ArrowUp":t=E(this.focusedDate,-7);break;case"Home":t=new Date(this.focusedDate.getFullYear(),this.focusedDate.getMonth(),1);break;case"End":t=new Date(this.focusedDate.getFullYear(),this.focusedDate.getMonth(),P(this.focusedDate.getFullYear(),this.focusedDate.getMonth()));break;case"PageUp":t=T(this.focusedDate,e.shiftKey?-12:-1);break;case"PageDown":t=T(this.focusedDate,e.shiftKey?12:1);break;case"Enter":{if(!this.isDayGridKeyTarget(e.target))return;e.preventDefault();if(this.isDisabledDate(this.focusedDate))return;this.selectDay({date:this.focusedDate,outOfMonth:false});this.commit();return}case" ":{if(!this.isDayGridKeyTarget(e.target))return;e.preventDefault();this.selectDay({date:this.focusedDate,outOfMonth:false});return}default:return}e.preventDefault();const i=this.viewYear;const r=this.viewMonth;this.focusedDate=N(t,this.min,this.max);const a=this.resolveNavigationKey(e);if((a==="PageUp"||a==="PageDown")&&(this.focusedDate.getFullYear()!==i||this.focusedDate.getMonth()!==r)){this.setGridSlideDirection(a==="PageDown"?1:-1)}this.viewYear=this.focusedDate.getFullYear();this.viewMonth=this.focusedDate.getMonth();this.gridShouldFocus=true};this.onPanelKeyDown=e=>{if(e.key==="Escape"){e.preventDefault();if(this.isDocked&&(this.monthMenuOpen||this.yearMenuOpen)){this.closeMenus(null,true);return}this.requestDismiss();return}if(this.canHandleCalendarKeyDown(e,this.resolveCalendarKeyTarget(e))){this.handleCalendarKeyDown(e);return}if(e.key==="Tab"&&!this.isDocked){this.trapTab(e)}};this.textFieldKeyDown=e=>{if(e.key!=="Enter")return;if(e.defaultPrevented)return;e.preventDefault();e.stopPropagation();this.syncInputDraftFromField(e.target);this.onFieldCommit()};this.entryTextFieldKeyDown=e=>{if(e.key!=="Enter"||!this.inputMode)return;if(e.defaultPrevented)return;e.preventDefault();e.stopPropagation();this.syncInputDraftFromField(e.target);this.commitDialogInput();if(this.error)return;this.commit()};this.lastValidityKey=null}get hasField(){return this.variant!=="modal"}get isDocked(){return this.variant==="docked"}get triggerExpanded(){return this.open&&!this.panelClosing}connectedCallback(){this.syncViewToValue()}componentWillLoad(){this.defaultValue=this.value;this.syncFormValue();this.hasSlottedHeader=!!this.el.querySelector('[slot="header"]');this.hasSlottedActions=!!this.el.querySelector('[slot="actions"]');this.hasSlottedLeading=!!this.el.querySelector('[slot="leading-icon"]');this.hasSlottedCalendarIcon=!!this.el.querySelector('[slot="calendar-icon"]');if(this.value){this.seedFieldDraftFromValue()}if(this.open){this.seedPending();this.lockScroll();this.gridShouldFocus=true}}componentDidLoad(){const e=this.el.shadowRoot;if(!e)return;const t=(t,i)=>{const r=e.querySelector(`slot[name="${t}"]`);if(!r)return;const a=()=>i(r.assignedElements().length>0);r.addEventListener("slotchange",a);a()};t("header",(e=>this.hasSlottedHeader=e));t("actions",(e=>this.hasSlottedActions=e));t("leading-icon",(e=>this.hasSlottedLeading=e));t("calendar-icon",(e=>this.hasSlottedCalendarIcon=e))}disconnectedCallback(){this.unlockScroll();this.unbindDockedPositionListeners()}getDockedViewportMargin(){return 16}resetDockedPanelPosition(){this.dockedPanelAlign="start";this.dockedPanelPlacement="below";this.dockedPanelMaxBlockSize=null;this.dockedPositionRafAttempts=0;if(this.dockedPositionRafId){cancelAnimationFrame(this.dockedPositionRafId);this.dockedPositionRafId=0}}resolveDockedPanelBlockSize(e){const t=e.style.getPropertyValue("max-block-size");const i=e.style.getPropertyPriority("max-block-size");e.style.setProperty("max-block-size","none","important");const r=e.offsetHeight||e.getBoundingClientRect().height;if(t){e.style.setProperty("max-block-size",t,i)}else{e.style.removeProperty("max-block-size")}return r}isRtl(){if(typeof window==="undefined")return false;return getComputedStyle(this.el).direction==="rtl"}projectedHorizontalRect(e,t,i){const r=this.isRtl();if(i==="start"){if(r){return{left:e.right-t,right:e.right}}return{left:e.left,right:e.left+t}}if(r){return{left:e.left,right:e.left+t}}return{left:e.right-t,right:e.right}}positionDockedPanel(){if(!this.isDocked||!this.open||this.panelClosing)return;const t=this.dockedAnchorEl??this.el.shadowRoot?.querySelector(".md-date-picker__docked-anchor");const i=this.panelEl;if(!t||!i)return;const r=t.getBoundingClientRect();const a=i.offsetWidth||i.getBoundingClientRect().width;const n=i.offsetHeight||i.getBoundingClientRect().height;if(a===0||n===0){if(typeof requestAnimationFrame==="function"&&this.dockedPositionRafAttempts<e.DOCKED_POSITION_RAF_MAX){this.dockedPositionRafAttempts+=1;cancelAnimationFrame(this.dockedPositionRafId);this.dockedPositionRafId=requestAnimationFrame((()=>{this.dockedPositionRafId=0;this.positionDockedPanel()}))}return}this.dockedPositionRafAttempts=0;const s=this.resolveDockedPanelBlockSize(i);const o=this.getDockedViewportMargin();const d=window.innerWidth;const l=window.innerHeight;const c=4;let h="start";let m="below";let p=null;const u=this.projectedHorizontalRect(r,a,"start");if(u.right>d-o){const e=this.projectedHorizontalRect(r,a,"end");if(e.left>=o){h="end"}}const f=this.projectedHorizontalRect(r,a,h);if(f.left<o){const e=this.projectedHorizontalRect(r,a,"end");if(e.left>=o){h="end"}}else if(h==="end"){const e=this.projectedHorizontalRect(r,a,"end");if(e.left<o){const e=this.projectedHorizontalRect(r,a,"start");if(e.right<=d-o){h="start"}}}const _=r.bottom+c+s;if(_>l-o){const e=r.top-c-s;if(e>=o){m="above"}else{const e=l-o-r.bottom-c;if(e>0){p=`${Math.floor(e)}px`}}}if(m==="above"){const e=r.top-c-o;if(e>0&&s>e){p=`${Math.floor(e)}px`}}const k=this.dockedPanelAlign!==h||this.dockedPanelPlacement!==m||this.dockedPanelMaxBlockSize!==p;if(k){this.dockedPanelAlign=h;this.dockedPanelPlacement=m;this.dockedPanelMaxBlockSize=p}}bindDockedPositionListeners(){if(this.dockedPositionCleanup||typeof window==="undefined")return;const e=()=>this.positionDockedPanel();window.addEventListener("resize",e,{passive:true});window.addEventListener("scroll",e,{passive:true,capture:true});this.dockedPositionCleanup=()=>{window.removeEventListener("resize",e);window.removeEventListener("scroll",e,{capture:true})}}unbindDockedPositionListeners(){this.dockedPositionCleanup?.();this.dockedPositionCleanup=null}onBoundsChange(){if(!this.open)this.syncViewToValue()}onDateSeparatorChange(){if(this.value){this.seedFieldDraftFromValue()}}onOpenChange(e,t){if(e===t)return;if(e){this.panelClosing=false;this.handleOpen()}else if(!this.closingFromDismiss&&!this.panelClosing){this.open=true;void this.dismissPanel()}else{this.handleClose()}}async show(){if(this.disabled)return;this.open=true}async close(){await this.dismissPanel()}async clear(){if(this.disabled)return;this.value="";this.inputDraft="";this.error=false;this.errorText="";this.emitChange()}async focusInput(){const e=this.el.shadowRoot?.querySelector("md-text-field")?.shadowRoot?.querySelector(".md-text-field__input");if(e){e.focus();return}this.triggerEl?.focus()}get loc(){return this.locale||undefined}resolvedFirstDay(){if(this.firstDayOfWeek>=0&&this.firstDayOfWeek<=6){return this.firstDayOfWeek}return Y(this.locale)}formatHeadline(e){if(!e)return"";return new Intl.DateTimeFormat(this.loc,{weekday:"short",month:"short",day:"numeric"}).format(e)}formatField(e){if(!e)return"";return z(e,this.loc,this.dateSeparator||undefined)}formatMonthYear(e,t){return new Intl.DateTimeFormat(this.loc,{month:"long",year:"numeric"}).format(new Date(e,t,1))}formatFullDate(e){return new Intl.DateTimeFormat(this.loc,{weekday:"long",year:"numeric",month:"long",day:"numeric"}).format(e)}dateFormatHint(){return D(this.loc,this.dateSeparator||undefined)}syncViewToValue(){const e=F(this.value)??F(this.min)??new Date;this.viewYear=e.getFullYear();this.viewMonth=e.getMonth();this.focusedDate=N(e,this.min,this.max)}seedPending(){this.viewMode="calendar";this.pendingDate=F(this.value);this.seedFieldDraftFromValue();this.syncViewToValue()}handleOpen(){this.restoreFocusEl=typeof document!=="undefined"?document.activeElement??null:null;this.inputMode=this.variant==="modal-input"?false:this.inputMode;this.monthMenuOpen=false;this.yearMenuOpen=false;this.clearYearListRange();this.yearViewClosing=false;this.clearModalCalendarBloom();this.resetDockedPanelPosition();this.seedPending();this.lockScroll();this.mdOpen.emit();this.gridShouldFocus=true;if(this.isDocked){this.bindDockedPositionListeners()}}handleClose(){this.unlockScroll();this.unbindDockedPositionListeners();this.resetDockedPanelPosition();this.panelPointerEngaged=false;this.panelClosing=false;this.clearDockedCalendarBloom();this.clearModalCalendarBloom();this.yearViewClosing=false;this.monthMenuOpen=false;this.yearMenuOpen=false;this.selectionMenuClosing=null;this.clearYearListRange();this.mdClose.emit();const e=this.restoreFocusEl??this.triggerEl??null;if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>e?.focus?.()))}else{e?.focus?.()}}async dismissPanel(){if(!this.open||this.panelClosing)return;if(this.isDocked&&(this.monthMenuOpen||this.yearMenuOpen||this.selectionMenuClosing)){await this.closeDockedMenusAnimated(null,false)}if(this.prefersReducedMotion()){this.closingFromDismiss=true;this.open=false;this.closingFromDismiss=false;return}this.panelClosing=true;await this.delay(this.panelBloomOutMs());this.closingFromDismiss=true;this.open=false;this.panelClosing=false;this.closingFromDismiss=false}lockScroll(){if(this.isDocked)return;try{document.body.style.setProperty("overflow","hidden")}catch{}}unlockScroll(){try{document.body.style.removeProperty("overflow")}catch{}}isDisabledDate(e){if($(e,this.min,this.max))return true;if(this.isDateDisabled&&this.isDateDisabled(e))return true;return false}isDisabledYear(e){const t=F(this.min);const i=F(this.max);if(t&&e<t.getFullYear())return true;if(i&&e>i.getFullYear())return true;return false}emitChange(){const e=F(this.value);this.mdChange.emit({value:this.value,date:e})}emitSelected(e){const t=v(e);if(this.lastSelectedEmitValue===t)return;this.lastSelectedEmitValue=t;this.mdSelected.emit({value:t,date:e});void Promise.resolve().then((()=>{this.lastSelectedEmitValue=null}))}emitViewChange(e){this.mdViewChange.emit({month:this.viewMonth,year:this.viewYear,source:e})}emitMenuOpen(e){this.mdMenuOpen.emit({type:e})}emitMenuSelect(e,t,i){this.mdMenuSelect.emit({type:e,value:t,label:i})}emitModeChange(e){this.mdModeChange.emit({mode:e})}monthLabel(e){return new Intl.DateTimeFormat(this.loc,{month:"long"}).format(new Date(2024,e,1))}selectDay(e){const t=e.date;if(this.isDisabledDate(t))return;this.closeMenus(null,false);this.focusedDate=t;if(e.outOfMonth){this.viewYear=t.getFullYear();this.viewMonth=t.getMonth()}this.pendingDate=t;this.emitSelected(t);if(this.commitOnSelect)this.commit()}commit(){if(this.pendingDate){this.value=v(this.pendingDate);this.inputDraft=this.formatField(this.pendingDate);this.error=false;this.errorText=""}this.emitChange();void this.dismissPanel()}cancel(){this.mdCancel.emit();void this.dismissPanel()}requestDismiss(){this.cancel()}syncInputDraftFromField(e){const t=this.asEventElement(e);if(!t)return;const i=t.closest("input:not([readonly]):not([disabled]), textarea:not([readonly]):not([disabled])");if(i){this.inputDraft=i.value;return}const r=t.closest("md-text-field");if(r){this.inputDraft=r.value??this.inputDraft}}syncTextFieldDisplay(){if(this.variant==="modal")return;const e=this.el.shadowRoot?.querySelector("md-text-field");if(!e)return;e.value=this.inputDraft;const t=e.shadowRoot?.querySelector(".md-text-field__input");if(t){t.value=this.inputDraft}}syncEntryTextFieldDisplay(){if(!this.entryTextFieldEl)return;const e=this.entryTextFieldEl;e.value=this.inputDraft;const t=e.shadowRoot?.querySelector(".md-text-field__input");if(t){t.value=this.inputDraft}}seedFieldDraftFromValue(){const e=F(this.value);this.inputDraft=e?this.formatField(e):""}commitDialogInput(){const e=this.inputDraft.trim();if(!e){this.error=false;this.errorText="";this.pendingDate=null;return}const t=S(e,this.locale,this.dateSeparator||undefined);if(!t||this.isDisabledDate(t)){this.error=true;this.errorText=this.invalidDateLabel??"Invalid date";return}this.error=false;this.errorText="";this.pendingDate=t;this.inputDraft=this.formatField(t);this.syncEntryTextFieldDisplay();this.viewYear=t.getFullYear();this.viewMonth=t.getMonth();this.focusedDate=t}setGridSlideDirection(e){if(this.prefersReducedMotion())return;if(this.monthMenuOpen||this.yearMenuOpen||this.selectionMenuClosing||this.dockedCalendarBloom){return}this.gridSlideDirection=e>0?"forward":"backward"}goToMonth(e,t=false){this.setGridSlideDirection(e);const i=T(new Date(this.viewYear,this.viewMonth,1),e);this.viewYear=i.getFullYear();this.viewMonth=i.getMonth();if(t){this.emitViewChange("chevron-month")}}goToYear(e,t=false){this.setGridSlideDirection(e);this.viewYear+=e;if(this.yearMenuOpen||this.selectionMenuClosing==="year"||this.viewMode==="year"||this.yearViewClosing){this.captureYearListRange()}if(t){this.emitViewChange("chevron-year")}}navActionLabel(e,t){if(e==="month"){return t==="prev"?this.previousMonthLabel??"Previous month":this.nextMonthLabel??"Next month"}return t==="prev"?this.previousYearLabel??"Previous year":this.nextYearLabel??"Next year"}navShortcutKey(e,t){if(e==="month"){return t==="prev"?"Page Up":"Page Down"}return t==="prev"?"Shift+Page Up":"Shift+Page Down"}navTooltipText(e,t){return`${this.navActionLabel(e,t)} (${this.navShortcutKey(e,t)})`}menuShortcutKey(e){return e==="month"?"Shift+M":"Shift+Y"}menuTooltipText(e){if(e==="month"){const t=new Intl.DateTimeFormat(this.loc,{month:"long"}).format(new Date(this.viewYear,this.viewMonth,1));return`${t} · ${this.chooseMonthLabel} (${this.menuShortcutKey(e)})`}return`${this.chooseYearLabel} (${this.menuShortcutKey(e)})`}captureYearListRange(){const e=this.viewYear;this.yearListMinYear=F(this.min)?.getFullYear()??e-100;this.yearListMaxYear=F(this.max)?.getFullYear()??e+100}clearYearListRange(){this.yearListMinYear=null;this.yearListMaxYear=null}getYearListBounds(){if(this.yearListMinYear!=null&&this.yearListMaxYear!=null){return{minYear:this.yearListMinYear,maxYear:this.yearListMaxYear}}const e=this.viewYear;return{minYear:F(this.min)?.getFullYear()??e-100,maxYear:F(this.max)?.getFullYear()??e+100}}closeMenus(e,t){if(this.isDocked){void this.closeDockedMenusAnimated(e,t);return}if(e!=="month"&&this.monthMenuOpen){this.monthMenuOpen=false;if(t)this.restoreMenuFocus(this.monthMenuButtonEl)}if(e!=="year"&&this.yearMenuOpen){this.yearMenuOpen=false;this.clearYearListRange();if(t)this.restoreMenuFocus(this.yearMenuButtonEl)}}async closeDockedSelectionMenu(e,t={}){const{bloomCalendar:i=true,restoreFocus:r=true}=t;const a=e==="month"?this.monthMenuOpen:this.yearMenuOpen;if(!a||this.selectionMenuClosing===e)return;this.selectionMenuClosing=e;await this.delay(this.selectionBloomOutMs());this.selectionMenuClosing=null;if(e==="month"){this.monthMenuOpen=false}else{this.yearMenuOpen=false;this.clearYearListRange()}if(r){this.gridShouldFocus=false;this.menuRestoreFocus=e}else if(i&&!this.monthMenuOpen&&!this.yearMenuOpen){this.gridShouldFocus=true}if(i&&!this.monthMenuOpen&&!this.yearMenuOpen){this.beginDockedCalendarBloom()}else if(this.isDocked&&!this.monthMenuOpen&&!this.yearMenuOpen){this.positionDockedPanel()}}async closeDockedMenusAnimated(e,t){const i=e===null;if(e!=="month"&&this.monthMenuOpen){await this.closeDockedSelectionMenu("month",{bloomCalendar:i,restoreFocus:t})}if(e!=="year"&&this.yearMenuOpen){await this.closeDockedSelectionMenu("year",{bloomCalendar:i,restoreFocus:t})}}openDockedMonthMenu(){this.clearDockedCalendarBloom();this.selectionMenuClosing=null;this.menuRestoreFocus=null;this.yearMenuOpen=false;this.monthMenuOpen=true;this.menuShouldFocus="month";this.emitMenuOpen("month")}openDockedYearMenu(){this.clearDockedCalendarBloom();this.selectionMenuClosing=null;this.menuRestoreFocus=null;this.monthMenuOpen=false;this.captureYearListRange();this.yearMenuOpen=true;this.menuShouldFocus="year";this.emitMenuOpen("year")}isDockedMonthMenuExpanded(){return this.monthMenuOpen||this.selectionMenuClosing==="month"}isDockedYearMenuExpanded(){return this.yearMenuOpen||this.selectionMenuClosing==="year"}dockedSelectionMenuToShow(){if(this.monthMenuOpen&&this.yearMenuOpen){if(this.selectionMenuClosing==="year")return"month";if(this.selectionMenuClosing==="month")return"year";return"year"}if(this.yearMenuOpen||this.selectionMenuClosing==="year")return"year";if(this.monthMenuOpen||this.selectionMenuClosing==="month")return"month";return null}dockedMenuTrailingIcon(e){return e?"arrow_drop_up":"arrow_drop_down"}renderDockedMenuTrailingCaret(e){return r("span",{slot:"trailing-icon",class:"md-date-picker__menu-caret",part:"menu-caret","aria-hidden":"true"},r("span",{class:{"md-date-picker__menu-caret-glyph":true,"material-symbols-outlined":true,"md-date-picker__menu-caret-glyph--down":true,"md-date-picker__menu-caret-glyph--visible":!e}},"arrow_drop_down"),r("span",{class:{"md-date-picker__menu-caret-glyph":true,"material-symbols-outlined":true,"md-date-picker__menu-caret-glyph--up":true,"md-date-picker__menu-caret-glyph--visible":e}},"arrow_drop_up"))}restoreMenuFocus(e){if(!e)return;const t=()=>e.focus();if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>requestAnimationFrame(t)))}else{t()}}getDockedSelectionMenuScrollEl(e){const t=e.shadowRoot;if(!t)return null;return t.querySelector(".md-menu__scroll-shadow")??t.querySelector(".md-menu__surface")}getDockedSelectionMenuTarget(e){const t=e==="month"?"month-menu":"year-menu";const i=this.panelEl?.querySelector(`[part="${t}"]`);if(!i)return null;return i.querySelector("md-menu-item[selected]")??i.querySelector(`md-menu-item[part*="${e}-option-selected"]`)??i.querySelector("md-menu-item")}scrollDockedSelectionMenuIntoView(e){const t=e==="month"?"month-menu":"year-menu";const i=this.panelEl?.querySelector(`[part="${t}"]`);if(!i)return;const r=this.getDockedSelectionMenuTarget(e);if(!r)return;const a=this.getDockedSelectionMenuScrollEl(i);if(a){const e=a.getBoundingClientRect();const t=r.getBoundingClientRect();const i=t.top+t.height/2;const n=e.top+e.height/2;a.scrollTop+=i-n;return}if(typeof r.scrollIntoView==="function"){r.scrollIntoView({block:"center",inline:"nearest"})}}afterDockedSelectionMenuPaint(e){const t=()=>{this.scrollDockedSelectionMenuIntoView(e);this.getDockedSelectionMenuTarget(e)?.focus()};const i=this.selectionBloomInMs();if(i>0){void this.delay(i).then(t);return}if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>requestAnimationFrame(t)))}else{t()}}calculateModalYearGridScrollTop(){const e=3;const t=36;const i=12;const r=8;const a=16;const n=288;const{minYear:s,maxYear:o}=this.getYearListBounds();const d=o-s+1;const l=Math.max(0,Math.min(this.viewYear-s,d-1));const c=Math.floor(l/e);const h=Math.ceil(d/e);const m=t+i;const p=r+h*t+Math.max(0,h-1)*i+a;const u=r+c*m;const f=u+t/2;const _=f-n/2;const k=Math.max(0,p-n);return Math.max(0,Math.min(_,k))}getModalYearGridScrollEl(){const e=this.panelEl?.querySelector('[part="year-grid-wrap"]');if(!e)return null;return e.querySelector(".md-date-picker__year-grid-scroll")??null}scrollModalYearGridIntoView(){const e=this.getModalYearGridScrollEl();if(!e)return;e.scrollTop=this.calculateModalYearGridScrollTop();const t=e.querySelector(`[data-year="${this.viewYear}"]`)??e.querySelector('[part~="year-selected"]');if(!t)return;const i=e.getBoundingClientRect();const r=t.getBoundingClientRect();const a=r.top+r.height/2;const n=i.top+i.height/2;e.scrollTop+=a-n}afterModalYearGridPaint(){const e=()=>this.scrollModalYearGridIntoView();this.scrollModalYearGridIntoView();if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>requestAnimationFrame(e)))}else{e()}}prefersReducedMotion(){return typeof window!=="undefined"&&(window.matchMedia?.("(prefers-reduced-motion: reduce)")?.matches??false)}selectionBloomInMs(){return this.prefersReducedMotion()?0:O}selectionBloomOutMs(){return this.prefersReducedMotion()?0:q}calendarBloomInMs(){return this.prefersReducedMotion()?0:K}panelBloomOutMs(){return this.prefersReducedMotion()?0:R}delay(e){if(e<=0)return Promise.resolve();return new Promise((t=>setTimeout(t,e)))}beginDockedCalendarBloom(){if(this.prefersReducedMotion()){this.dockedCalendarBloom=false;return}this.dockedCalendarBloom=true;void this.delay(this.calendarBloomInMs()).then((()=>{if(!this.monthMenuOpen&&!this.yearMenuOpen&&!this.selectionMenuClosing){this.dockedCalendarBloom=false;this.positionDockedPanel()}}))}clearDockedCalendarBloom(){this.dockedCalendarBloom=false}beginModalCalendarBloom(){if(this.prefersReducedMotion()||this.isDocked){this.modalCalendarBloom=false;return}this.modalCalendarBloom=true;void this.delay(this.calendarBloomInMs()).then((()=>{if(this.viewMode==="calendar"&&!this.yearViewClosing){this.modalCalendarBloom=false}}))}clearModalCalendarBloom(){this.modalCalendarBloom=false}async waitForSelectionMenuClose(e){while(this.selectionMenuClosing===e){await this.delay(16)}}async toggleMonthMenuAsync(){if(this.monthMenuOpen){await this.closeDockedSelectionMenu("month",{bloomCalendar:true,restoreFocus:true});return}if(this.yearMenuOpen){this.clearDockedCalendarBloom();this.selectionMenuClosing=null;this.menuRestoreFocus=null;this.monthMenuOpen=true;this.menuShouldFocus="month";this.emitMenuOpen("month");await this.closeDockedSelectionMenu("year",{bloomCalendar:false,restoreFocus:false});return}if(this.selectionMenuClosing==="year"){await this.waitForSelectionMenuClose("year")}this.openDockedMonthMenu()}async toggleYearMenuAsync(){if(this.yearMenuOpen){await this.closeDockedSelectionMenu("year",{bloomCalendar:true,restoreFocus:true});return}if(this.monthMenuOpen){this.captureYearListRange();this.clearDockedCalendarBloom();this.selectionMenuClosing=null;this.menuRestoreFocus=null;this.yearMenuOpen=true;this.menuShouldFocus="year";this.emitMenuOpen("year");await this.closeDockedSelectionMenu("month",{bloomCalendar:false,restoreFocus:false});return}if(this.selectionMenuClosing==="month"){await this.waitForSelectionMenuClose("month")}this.openDockedYearMenu()}async pickDockedSelection(e,i,r){const a=r instanceof t?r:null;if(a){await s(a)}i();await this.closeDockedSelectionMenu(e,{bloomCalendar:true,restoreFocus:false})}pickMonth(e,t){void this.pickDockedSelection("month",(()=>{this.viewMonth=e;this.emitMenuSelect("month",e,this.monthLabel(e));this.emitViewChange("month-menu")}),t)}pickYear(e,t){void this.pickDockedSelection("year",(()=>{this.viewYear=e;this.emitMenuSelect("year",e,String(e));this.emitViewChange("year-menu")}),t)}selectYear(e){if(this.isDisabledYear(e))return;this.viewYear=e;this.focusedDate=new Date(e,this.viewMonth,1);this.emitMenuSelect("year",e,String(e));this.emitViewChange("year-menu");void this.closeYearViewAnimated()}openYearView(){this.clearModalCalendarBloom();this.yearViewClosing=false;this.viewMode="year";this.captureYearListRange();this.yearGridShouldScroll=true;this.emitMenuOpen("year")}async closeYearViewAnimated(){if(this.viewMode!=="year"||this.yearViewClosing)return;if(this.prefersReducedMotion()){this.viewMode="calendar";this.clearYearListRange();return}this.yearViewClosing=true;await this.delay(this.selectionBloomOutMs());this.yearViewClosing=false;this.viewMode="calendar";this.clearYearListRange();this.beginModalCalendarBloom()}resolveNavigationKey(e){if(e.key==="PageUp"||e.code==="PageUp")return"PageUp";if(e.key==="PageDown"||e.code==="PageDown")return"PageDown";if(e.altKey&&!e.shiftKey&&!e.ctrlKey&&!e.metaKey){if(e.key==="ArrowUp"||e.code==="ArrowUp")return"PageUp";if(e.key==="ArrowDown"||e.code==="ArrowDown")return"PageDown"}return e.key}asEventElement(e){if(e==null||typeof e!=="object")return null;if(!("closest"in e)||typeof e.closest!=="function"){return null}return e}isEditableKeyTarget(e){const t=this.asEventElement(e);if(!t)return false;const i=t.closest('input:not([readonly]):not([disabled]), textarea:not([disabled]), [contenteditable="true"]');return!!i}isInsideSelectionMenu(e){return!!this.findInPickerTree(e,'[part="month-menu"]')||!!this.findInPickerTree(e,'[part="year-menu"]')}findInPickerTree(e,t){const i=this.asEventElement(e);if(!i)return null;let r=i;while(r){try{if(r.matches(t))return r}catch{}const e=r.getRootNode();if(e instanceof ShadowRoot){r=e.host}else{r=r.parentElement}}return null}isDayGridKeyTarget(e){if(this.findInPickerTree(e,"[data-date]"))return true;if(typeof document!=="undefined"){return!!this.findInPickerTree(document.activeElement,"[data-date]")}return false}isDockedMenuToggleKey(e){if(!this.isDocked||!e.shiftKey||e.ctrlKey||e.metaKey||e.altKey)return false;const t=e.key.toLowerCase();return t==="m"||t==="y"}isCalendarNavigationKey(e){const t=this.resolveNavigationKey(e);if(t==="ArrowRight"||t==="ArrowLeft"||t==="ArrowDown"||t==="ArrowUp"||t==="Home"||t==="End"||t==="PageUp"||t==="PageDown"||t==="Enter"||t===" "){return true}return this.isDockedMenuToggleKey(e)}canHandleCalendarKeyDown(e,t){if(!this.open||e.defaultPrevented)return false;if(this.viewMode!=="calendar"||this.inputMode)return false;const i=this.isDockedMenuToggleKey(e);if(!i&&(this.monthMenuOpen||this.yearMenuOpen||this.selectionMenuClosing)){return false}if(!this.isCalendarNavigationKey(e))return false;const r=t??e.target;if(this.isEditableKeyTarget(r)){if(!(this.hasField&&this.isTriggerFieldTarget(r)))return false;if(this.resolveNavigationKey(e)==="Enter")return false}if(!i&&this.isInsideSelectionMenu(r))return false;const a=this.resolveNavigationKey(e);if(a==="Enter"||a===" "){if(!this.isDayGridKeyTarget(r)&&!this.isDayGridKeyTarget(e.target)){return false}}return true}getEventPathNodes(e){if(typeof e.composedPath==="function"){return e.composedPath()}const t=[];let i=e.target;while(i){t.push(i);const e=i.getRootNode();if(e instanceof ShadowRoot){i=e.host}else{i=i.parentNode}}return t}isNodeInPicker(e){if(e==null||typeof e!=="object"||!("nodeType"in e))return false;let t=e;while(t){if(t===this.el||t===this.panelEl)return true;const e=t.getRootNode();if(e instanceof ShadowRoot){t=e.host}else{t=t.parentNode}}return false}isEventInPicker(e){if(!this.open)return false;if(this.getEventPathNodes(e).includes(this.el))return true;if(typeof document!=="undefined"){if(this.isNodeInPicker(document.activeElement))return true;if(this.panelPointerEngaged)return true}return false}isTriggerFieldTarget(e){return this.isNodeInPicker(e)&&!this.isNodeInPanel(e)}resolveCalendarKeyTarget(e){if(typeof document!=="undefined"){const e=document.activeElement;if(e&&this.isNodeInPanel(e))return e}if(e.target&&this.isNodeInPicker(e.target))return e.target;if(typeof document!=="undefined"){const e=document.activeElement;if(e&&this.isNodeInPicker(e))return e}return this.panelEl??null}shouldPanelClaimFocus(e){const t=this.asEventElement(e);if(!t)return true;if(t.closest('button, [role="button"], input, textarea, [contenteditable="true"], md-menu-item, a[href]')){return false}return true}isNodeInPanel(e){if(!this.panelEl||e==null||typeof e!=="object"||!("nodeType"in e)){return false}let t=e;while(t){if(t===this.panelEl)return true;const e=t.getRootNode();if(e instanceof ShadowRoot){t=e.host}else{t=t.parentNode}}return false}tryCommitTriggerFieldOnEnter(e){if(this.disabled||!this.hasField||e.key!=="Enter")return false;const t=e.target;if(!t||!this.isNodeInPicker(t))return false;if(!this.isEditableKeyTarget(t)||!this.isTriggerFieldTarget(t))return false;e.preventDefault();e.stopPropagation();this.syncInputDraftFromField(t);this.onFieldCommit();return true}tryCommitDialogInputOnEnter(e){if(this.disabled||!this.inputMode||e.key!=="Enter")return false;const t=e.target;if(!t||!this.isEditableKeyTarget(t))return false;const i=this.asEventElement(t);if(!i?.closest('[part="entry-input"]'))return false;e.preventDefault();e.stopPropagation();this.syncInputDraftFromField(t);this.commitDialogInput();if(this.error)return true;this.commit();return true}routePickerKeyDown(e,t=false){if(e.defaultPrevented||this.panelClosing)return;if(this.tryCommitDialogInputOnEnter(e))return;if(this.tryCommitTriggerFieldOnEnter(e))return;if(!this.open)return;if(!t&&!this.isEventInPicker(e))return;if(e.key==="Escape"){e.preventDefault();if(this.isDocked&&(this.monthMenuOpen||this.yearMenuOpen)){this.closeMenus(null,true);return}this.requestDismiss();return}if(this.canHandleCalendarKeyDown(e,this.resolveCalendarKeyTarget(e))){this.handleCalendarKeyDown(e)}}handleDocumentKeyDown(e){this.routePickerKeyDown(e)}handleDocumentPointerDown(e){if(!this.open||this.panelClosing)return;if(!this.isDocked||!this.outsideClickDismissible)return;if(this.getEventPathNodes(e).includes(this.el))return;if(this.isNodeInPicker(e.target))return;this.requestDismiss()}handleHostKeyDown(e){this.routePickerKeyDown(e,true)}swallowNestedMdOpen(e){if((e.composedPath?.()[0]??e.target)!==this.el){e.stopImmediatePropagation()}}swallowNestedMdClose(e){if((e.composedPath?.()[0]??e.target)!==this.el){e.stopImmediatePropagation()}}focusFocusedDay(){const e=v(this.focusedDate);const t=this.panelEl?.querySelector(`[data-date="${e}"]`);if(!t)return;const i=()=>t.focus();if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>requestAnimationFrame(i)))}else{i()}}trapTab(e){const t=this.panelEl;if(!t)return;const i=Array.from(t.querySelectorAll('button:not([disabled]), [href], input:not([disabled]), [tabindex]:not([tabindex="-1"])')).filter((e=>e.offsetParent!==null||e===document.activeElement));if(i.length===0)return;const r=i[0];const a=i[i.length-1];const n=this.el.shadowRoot?.activeElement??null;if(e.shiftKey&&n===r){e.preventDefault();a.focus()}else if(!e.shiftKey&&n===a){e.preventDefault();r.focus()}}componentDidRender(){if(this.isDocked&&this.open&&!this.panelClosing&&!this.selectionMenuClosing&&!this.dockedCalendarBloom){this.positionDockedPanel()}if(this.menuShouldFocus){const e=this.menuShouldFocus;this.menuShouldFocus=null;this.afterDockedSelectionMenuPaint(e);return}if(this.yearGridShouldScroll){this.yearGridShouldScroll=false;this.afterModalYearGridPaint();return}if(this.menuRestoreFocus){const e=this.menuRestoreFocus;this.menuRestoreFocus=null;const t=e==="month"?this.monthMenuButtonEl:this.yearMenuButtonEl;this.restoreMenuFocus(t);return}if(this.entryInputShouldFocus&&this.inputMode){this.entryInputShouldFocus=false;const e=this.entryTextFieldEl?.shadowRoot?.querySelector(".md-text-field__input");if(e instanceof t){e.focus()}return}if(this.open&&this.gridShouldFocus&&this.viewMode==="calendar"&&!this.inputMode&&!this.monthMenuOpen&&!this.yearMenuOpen){this.focusFocusedDay();this.gridShouldFocus=false}}renderTextFieldTrigger(){const e=F(this.value);const t=this.focused?this.inputDraft:this.formatField(e);const i=this.error&&this.errorText?"":this.supportingText||this.dateFormatHint();return r("md-text-field",{class:"md-date-picker__textfield",part:"field",variant:this.fieldVariant,label:this.label,value:t,supportingText:i,error:this.error,errorText:this.errorText,reserveSupportingSpace:this.reserveSupportingSpace,disabled:this.disabled,required:this.required,appearFocused:this.open,onFocusin:()=>{this.focused=true;if(!this.error)this.seedFieldDraftFromValue()},onFocusout:()=>{this.focused=false},onKeyDown:this.textFieldKeyDown,onMdInput:e=>{this.inputDraft=e.detail;this.mdInput.emit({value:e.detail})},onMdChange:e=>{this.inputDraft=e.detail;this.onFieldCommit()}},this.hasSlottedLeading&&r("slot",{name:"leading-icon",slot:"leading-icon"}),this.clearable&&!!this.value&&!this.disabled&&r("md-icon-button",{slot:"trailing-icon",class:"md-date-picker__clear-button",part:"clear-button",variant:"standard",icon:"close","aria-label":this.clearLabel,onClick:e=>{e.stopPropagation();void this.clear()}}),r("md-icon-button",{slot:"trailing-icon",class:"md-date-picker__calendar-button",part:"calendar-button",variant:this.triggerExpanded?"tonal":"standard",icon:this.hasSlottedCalendarIcon?"":this.calendarIcon,"aria-label":this.triggerExpanded?this.closeCalendarLabel:this.openCalendarLabel,"aria-haspopup":"dialog","aria-expanded":this.triggerExpanded?"true":"false",disabled:this.disabled,ref:e=>this.triggerEl=e,onMdClick:()=>this.open?this.close():this.show()},this.hasSlottedCalendarIcon&&r("slot",{name:"calendar-icon",slot:""})))}renderModalNavChevron(e,t){return r("md-tooltip",{class:"md-date-picker__nav-chevron-tooltip",text:this.navTooltipText("month",e),showDelay:0,position:"bottom",offset:U},r("md-icon-button",{class:"md-date-picker__directional-icon md-date-picker__nav-chevron",part:e==="prev"?"prev-button":"next-button",size:"sm",icon:e==="prev"?"chevron_left":"chevron_right","aria-label":this.navActionLabel("month",e),onClick:t}))}modalMonthYearTooltipText(e,t){return`${this.formatMonthYear(e,t)} · ${this.chooseMonthAndYearLabel}`}renderNav(e=false){const t=e?T(new Date(this.viewYear,this.viewMonth,1),1).getFullYear():this.viewYear;const i=e?T(new Date(this.viewYear,this.viewMonth,1),1).getMonth():this.viewMonth;const a=!e&&(this.viewMode==="year"||this.yearViewClosing);const n=r("md-button",{class:{"md-date-picker__menu-button":true,"md-date-picker__menu-button--expanded":a},part:"month-toggle",variant:"text",size:"sm",toggle:true,selected:a,trailingIcon:e?undefined:this.dockedMenuTrailingIcon(a),suppressExpandIconFlip:true,mirrorIcon:a,"aria-label":this.chooseMonthYearLabel,"aria-expanded":a?"true":"false",disabled:e,onMdClick:t=>{t.preventDefault();if(!e)this.toggleYearView()}},this.formatMonthYear(t,i),!e&&this.renderDockedMenuTrailingCaret(a));return r("div",{class:"md-date-picker__nav",part:"nav"},e?n:r("md-tooltip",{class:"md-date-picker__menu-button-tooltip",text:this.modalMonthYearTooltipText(t,i),showDelay:0,position:"bottom",offset:H},n),this.viewMode==="calendar"&&r("div",{class:"md-date-picker__nav-buttons"},this.renderModalNavChevron("prev",(()=>this.goToMonth(-1,true))),this.renderModalNavChevron("next",(()=>this.goToMonth(1,true)))))}renderDockedNavChevron(e,t,i,a){return r("span",{class:"md-date-picker__nav-chevron-slot",part:`${e}-${t}-chevron-slot`},r("md-tooltip",{class:{"md-date-picker__nav-chevron-tooltip":true,"md-date-picker__nav-chevron--visible":i},text:this.navTooltipText(t,e),showDelay:0,position:"bottom",offset:U},r("md-icon-button",{class:"md-date-picker__directional-icon md-date-picker__nav-chevron",part:`${e}-${t}-button`,size:"sm",icon:e==="prev"?"chevron_left":"chevron_right","aria-label":this.navActionLabel(t,e),disabled:!i,onClick:i?a:undefined})),r("span",{class:{"md-date-picker__nav-chevron-spacer":true,"md-date-picker__nav-chevron--visible":!i},part:`${e}-${t}-chevron-spacer`,"aria-hidden":"true"}))}renderDockedNav(){const e=new Intl.DateTimeFormat(this.loc,{month:"short"}).format(new Date(this.viewYear,this.viewMonth,1));const t=this.isDockedMonthMenuExpanded();const i=this.isDockedYearMenuExpanded();return r("div",{class:"md-date-picker__docked-nav",part:"nav"},r("div",{class:{"md-date-picker__nav-group":true,"md-date-picker__nav-group--month":true,"md-date-picker__nav-group--selection-open":t}},this.renderDockedNavChevron("prev","month",!i,(()=>this.goToMonth(-1,true))),r("md-tooltip",{class:"md-date-picker__menu-button-tooltip",text:this.menuTooltipText("month"),showDelay:0,position:"bottom",offset:H},r("md-button",{class:{"md-date-picker__menu-button":true,"md-date-picker__menu-button--expanded":t},part:"month-menu-button",variant:"text",size:"sm",toggle:true,selected:t,trailingIcon:this.dockedMenuTrailingIcon(t),suppressExpandIconFlip:true,mirrorIcon:t,"aria-label":this.chooseMonthLabel,"aria-haspopup":"menu","aria-expanded":t?"true":"false",ref:e=>this.monthMenuButtonEl=e,onMdClick:e=>{e.preventDefault();this.toggleMonthMenu()}},e,this.renderDockedMenuTrailingCaret(t))),this.renderDockedNavChevron("next","month",!i,(()=>this.goToMonth(1,true)))),r("div",{class:{"md-date-picker__nav-group":true,"md-date-picker__nav-group--year":true,"md-date-picker__nav-group--selection-open":i}},this.renderDockedNavChevron("prev","year",!t,(()=>this.goToYear(-1,true))),r("md-tooltip",{class:"md-date-picker__menu-button-tooltip",text:this.menuTooltipText("year"),showDelay:0,position:"bottom",offset:H},r("md-button",{class:{"md-date-picker__menu-button":true,"md-date-picker__menu-button--expanded":i},part:"year-menu-button",variant:"text",size:"sm",toggle:true,selected:i,trailingIcon:this.dockedMenuTrailingIcon(i),suppressExpandIconFlip:true,mirrorIcon:i,"aria-label":this.chooseYearLabel,"aria-haspopup":"menu","aria-expanded":i?"true":"false",ref:e=>this.yearMenuButtonEl=e,onMdClick:e=>{e.preventDefault();this.toggleYearMenu()}},this.viewYear,this.renderDockedMenuTrailingCaret(i))),this.renderDockedNavChevron("next","year",!t,(()=>this.goToYear(1,true)))))}renderDockedSelectionDivider(){return r("div",{class:"md-date-picker__selection-divider",part:"selection-divider",role:"separator","aria-hidden":"true"})}renderDockedMonthMenu(e){const t=Array.from({length:12},((e,t)=>new Intl.DateTimeFormat(this.loc,{month:"long"}).format(new Date(2024,t,1))));return r("div",{class:{"md-date-picker__selection-menu-wrap":true,"md-date-picker__selection-menu-wrap--bloom-out":e},part:"month-menu-wrap"},r("md-menu",{class:"md-date-picker__selection-menu md-menu--inline-fill",part:"month-menu",exportparts:"menu-viewport:month-menu-viewport",variant:"baseline",open:true,quick:true,persistent:true,autoFocus:false,onMdClose:this.onMonthMenuClose},t.map(((e,t)=>{const i=t===this.viewMonth;return r("md-menu-item",{part:i?"month-option month-option-selected":"month-option",headline:e,type:"radio","check-position":"start","keep-open":true,selected:i,onMdClick:e=>this.pickMonth(t,e.target)})}))))}renderDockedYearMenu(e){const t=this.viewYear;const{minYear:i,maxYear:a}=this.getYearListBounds();const n=[];for(let e=i;e<=a;e++)n.push(e);return r("div",{class:{"md-date-picker__selection-menu-wrap":true,"md-date-picker__selection-menu-wrap--year":true,"md-date-picker__selection-menu-wrap--bloom-out":e},part:"year-menu-wrap"},r("md-menu",{class:"md-date-picker__selection-menu md-menu--inline-fill",part:"year-menu",exportparts:"menu-viewport:year-menu-viewport",variant:"baseline",open:true,quick:true,persistent:true,autoFocus:false,onMdClose:this.onYearMenuClose},n.map((e=>{const i=e===t;return r("md-menu-item",{part:i?"year-option year-option-selected":"year-option",headline:String(e),type:"radio","check-position":"start","keep-open":true,selected:i,onMdClick:t=>this.pickYear(e,t.target)})}))))}renderCalendar(e,t,i=true,a=false){const n=this.resolvedFirstDay();const s=j(this.locale,n,"narrow");const o=j(this.locale,n,"long");const d=L(e,t,n);const l=new Date;const c=this.formatMonthYear(e,t);return r("div",{class:{"md-date-picker__calendar":true,"md-date-picker__calendar--docked-bloom-in":a&&this.isDocked,"md-date-picker__calendar--content-bloom-in":a&&!this.isDocked},part:"calendar",role:"grid","aria-label":c},r("div",{class:"md-date-picker__weekdays",part:"weekdays",role:"row","aria-hidden":"true"},s.map(((e,t)=>r("md-tooltip",{class:"md-date-picker__weekday-tooltip",text:o[t],showDelay:0,position:"bottom",offset:3},r("span",{class:"md-date-picker__weekday",part:"weekday",role:"presentation"},e))))),r("div",{class:{"md-date-picker__grid":true,"md-date-picker__grid--slide-forward":this.gridSlideDirection==="forward","md-date-picker__grid--slide-backward":this.gridSlideDirection==="backward"},part:"grid",role:"rowgroup",onAnimationEnd:this.onGridSlideAnimationEnd},Array.from({length:d.length/7},((e,t)=>r("div",{class:"md-date-picker__week",part:"week",role:"row"},d.slice(t*7,t*7+7).map((e=>this.renderDay(e,l,i))))))))}renderDay(e,t,i){const a=e.date;const n=v(a);const s=this.isDisabledDate(a);const o=A(a,t);const d=A(a,this.focusedDate)&&i;const l=!!this.pendingDate&&A(a,this.pendingDate);const c=!l&&!o&&!s&&!e.outOfMonth;const h=["day"];if(l)h.push("day-selected");if(o)h.push("day-today");if(s)h.push("day-disabled");if(e.outOfMonth)h.push("day-outside");if(c)h.push("day-unselected");return r("md-button",{class:{"md-date-picker__day":true,"md-date-picker__day--selected":l,"md-date-picker__day--today":o,"md-date-picker__day--disabled":s,"md-date-picker__day--outside":e.outOfMonth,"md-date-picker__day--unselected":c},part:h.join(" "),variant:l?"filled":"text",size:"sm",shape:"square",selected:l,roleOverride:"gridcell",groupTabindex:d?0:-1,"data-date":n,"aria-selected":l?"true":"false","aria-disabled":s?"true":undefined,"aria-current":o?"date":undefined,"aria-label":this.formatFullDate(a),disabled:s,onMdClick:()=>this.selectDay(e),onKeyDown:i?this.handleDayKeyDown:undefined},a.getDate())}renderYearGrid(e=false){const t=this.viewYear;const{minYear:i,maxYear:a}=this.getYearListBounds();const n=[];for(let e=i;e<=a;e++)n.push(e);return r("div",{class:{"md-date-picker__year-grid-wrap":true,"md-date-picker__year-grid-wrap--bloom-out":e},part:"year-grid-wrap"},r("div",{class:"md-date-picker__year-grid-scroll",part:"year-grid-scroll year-grid-viewport"},r("div",{class:"md-date-picker__year-grid",part:"year-grid",role:"grid","aria-label":this.yearGridLabel},Array.from({length:Math.ceil(n.length/3)},((e,i)=>r("div",{class:"md-date-picker__year-row",part:"year-row",role:"row"},n.slice(i*3,i*3+3).map((e=>{const i=e===t;const a=this.isDisabledYear(e);const n=!i&&!a;const s=["year"];if(i)s.push("year-selected");if(a)s.push("year-disabled");if(n)s.push("year-unselected");return r("md-button",{class:{"md-date-picker__year":true,"md-date-picker__year--selected":i,"md-date-picker__year--disabled":a,"md-date-picker__year--unselected":n},part:s.join(" "),variant:i?"filled":"text",size:"sm",shape:"square",selected:i,roleOverride:"gridcell","data-year":String(e),"aria-selected":i?"true":"false","aria-disabled":a?"true":undefined,"aria-label":String(e),disabled:a,onMdClick:()=>this.selectYear(e)},e)}))))))))}renderDialogInput(){return r("div",{class:"md-date-picker__entry",part:"entry"},r("md-text-field",{class:"md-date-picker__entry-textfield",part:"entry-input",variant:"outlined",label:this.label,placeholder:this.placeholder||this.dateFormatHint(),value:this.inputDraft,error:this.error,errorText:this.errorText,reserveSupportingSpace:this.reserveSupportingSpace,ref:e=>this.entryTextFieldEl=e,onKeyDown:this.entryTextFieldKeyDown,onMdInput:e=>{this.inputDraft=e.detail;this.mdInput.emit({value:e.detail})}}))}renderHeadline(){if(this.inputMode){return this.enterDatesLabel}return this.pendingDate?this.formatHeadline(this.pendingDate):this.selectDateLabel}renderHeader(){if(this.hasSlottedHeader){return r("div",{class:"md-date-picker__header",part:"header"},r("slot",{name:"header"}))}const e=this.headline;const t=this.inputMode?this.toggleCalendarLabel:this.toggleTextLabel;return r("div",{class:"md-date-picker__header",part:"header"},r("div",{class:"md-date-picker__header-supporting",part:"supporting"},e),r("div",{class:"md-date-picker__header-row"},r("div",{class:"md-date-picker__headline",part:"headline"},this.renderHeadline()),this.variant!=="docked"&&r("md-tooltip",{class:"md-date-picker__mode-toggle-tooltip",text:t,showDelay:0,position:"bottom"},r("md-icon-button",{class:"md-date-picker__mode-toggle",part:"mode-toggle",icon:this.inputMode?"calendar_today":"edit","aria-label":t,onClick:this.toggleInputMode}))))}get hasActionRow(){return this.hasSlottedActions||!this.commitOnSelect||this.inputMode}renderActions(){if(!this.hasActionRow)return null;if(this.hasSlottedActions){return r("div",{class:"md-date-picker__actions",part:"actions"},r("slot",{name:"actions"}))}return r("div",{class:"md-date-picker__actions",part:"actions"},r("md-button",{class:"md-date-picker__action-btn",variant:"text",size:"sm",onMdClick:()=>this.cancel(),part:"cancel-button"},this.cancelLabel),r("md-button",{class:"md-date-picker__action-btn md-date-picker__action-btn--primary",variant:"text",size:"sm",onMdClick:()=>{if(this.inputMode){this.commitDialogInput();if(this.error)return}this.commit()},part:"ok-button"},this.okLabel))}renderBody(){if(this.inputMode){return r("div",{class:{"md-date-picker__body":true,"md-date-picker__body--input-mode":true,"md-date-picker__body--no-actions":!this.hasActionRow},part:"body"},this.renderDialogInput())}const e=this.viewMode==="year"||this.yearViewClosing;const t=this.viewMode==="calendar"&&!this.yearViewClosing;const i=this.dockedCalendarBloom||this.modalCalendarBloom;if(e&&!this.isDocked){return r("div",{class:{"md-date-picker__body":true,"md-date-picker__body--year-view":true,"md-date-picker__body--no-actions":!this.hasActionRow},part:"body"},this.renderNav(),this.renderYearGrid(this.yearViewClosing))}if(this.isDocked){const e=this.monthMenuOpen||this.yearMenuOpen||!!this.selectionMenuClosing;const t=this.dockedSelectionMenuToShow();const i=t==="year";const a=t==="month";return r("div",{class:{"md-date-picker__body":true,"md-date-picker__body--docked":true,"md-date-picker__body--docked-selection":e,"md-date-picker__body--no-actions":!this.hasActionRow},part:"body"},this.renderDockedNav(),e&&r("div",{class:"md-date-picker__docked-below-nav",part:"docked-below-nav"},this.renderDockedSelectionDivider()),a&&this.renderDockedMonthMenu(this.selectionMenuClosing==="month"),i&&this.renderDockedYearMenu(this.selectionMenuClosing==="year"),!e&&this.renderCalendar(this.viewYear,this.viewMonth,true,this.dockedCalendarBloom))}return r("div",{class:{"md-date-picker__body":true,"md-date-picker__body--no-actions":!this.hasActionRow},part:"body"},this.renderNav(),t&&this.renderCalendar(this.viewYear,this.viewMonth,true,i))}renderPanel(e=false){const t=e&&this.dockedPanelMaxBlockSize?{maxBlockSize:this.dockedPanelMaxBlockSize}:undefined;return r("div",{class:{"md-date-picker__panel":true,"md-date-picker__panel--docked":e,"md-date-picker__panel--align-end":e&&this.dockedPanelAlign==="end","md-date-picker__panel--placement-above":e&&this.dockedPanelPlacement==="above","md-date-picker__panel--input-mode":!e&&this.inputMode,"md-date-picker__panel--bloom-in":!this.panelClosing,"md-date-picker__panel--bloom-out":this.panelClosing},part:"panel",role:"dialog","aria-modal":e?undefined:"true","aria-label":this.label,style:t,ref:e=>this.panelEl=e,tabindex:"-1",onMouseDown:this.onPanelMouseDown,onKeyDown:this.onPanelKeyDown},!e&&this.renderHeader(),this.renderBody(),this.renderActions())}renderModal(){return r("div",{class:{"md-date-picker__modal":true,"md-date-picker__modal--closing":this.panelClosing},part:"modal"},r("div",{class:"md-date-picker__scrim",part:"scrim",onClick:()=>this.scrimDismissible&&this.requestDismiss()}),this.renderPanel(false))}render(){const e=this.open||this.panelClosing;const t=this.open&&!this.panelClosing;return r(a,{key:"af7d2176a6cd828de541eb157cce9f3686efc56f",class:{"md-date-picker":true,[`md-date-picker--${this.variant}`]:true,"md-date-picker--open":t,"md-date-picker--panel-closing":this.panelClosing,"md-date-picker--disabled":this.disabled,"md-date-picker--error":this.error},"aria-disabled":this.disabled?"true":null},this.isDocked?r("div",{class:"md-date-picker__docked-anchor",ref:e=>this.dockedAnchorEl=e},this.renderTextFieldTrigger(),e&&r("div",{class:{"md-date-picker__docked-popup":true,"md-date-picker__docked-popup--above":this.dockedPanelPlacement==="above"}},this.renderPanel(true))):this.hasField&&this.renderTextFieldTrigger(),e&&!this.isDocked&&this.renderModal())}syncFormValue(){o(this.internals,this.value||null);d(this.internals,{missing:this.required&&!this.value,missingMessage:this.valueMissingLabel,customMessage:this.customValidityMessage});this.emitValidityChange()}formResetCallback(){this.value=this.defaultValue}async getValidity(){return l(this.internals)}emitValidityChange(){const e=l(this.internals);const t=`${e.valid}|${e.validationMessage}`;if(this.lastValidityKey===t)return;const i=this.lastValidityKey!==null;this.lastValidityKey=t;if(i)this.mdValidityChange.emit(e)}async checkValidity(){return c(this.internals)}async reportValidity(){return h(this.internals)}async setCustomValidity(e){this.customValidityMessage=e;this.syncFormValue()}static get formAssociated(){return true}get el(){return this}static get watchers(){return{value:[{onBoundsChange:0},{syncFormValue:0}],min:[{onBoundsChange:0}],max:[{onBoundsChange:0}],dateSeparator:[{onDateSeparatorChange:0}],open:[{onOpenChange:0}],required:[{syncFormValue:0}],valueMissingLabel:[{syncFormValue:0}]}}static get style(){return B()}},[321,"md-date-picker",{valueMissingLabel:[1,"value-missing-label"],reserveSupportingSpace:[4,"reserve-supporting-space"],variant:[513],value:[1537],label:[1],placeholder:[1],min:[1],max:[1],open:[1540],disabled:[516],required:[516],clearable:[516],clearLabel:[1,"clear-label"],error:[1540],errorText:[1025,"error-text"],supportingText:[1,"supporting-text"],locale:[1],dateSeparator:[1,"date-separator"],fieldVariant:[1,"field-variant"],firstDayOfWeek:[2,"first-day-of-week"],headline:[1],cancelLabel:[1,"cancel-label"],okLabel:[1,"ok-label"],selectDateLabel:[1,"select-date-label"],enterDatesLabel:[1,"enter-dates-label"],invalidDateLabel:[1,"invalid-date-label"],previousMonthLabel:[1,"previous-month-label"],nextMonthLabel:[1,"next-month-label"],previousYearLabel:[1,"previous-year-label"],nextYearLabel:[1,"next-year-label"],chooseMonthLabel:[1,"choose-month-label"],chooseYearLabel:[1,"choose-year-label"],chooseMonthYearLabel:[1,"choose-month-year-label"],chooseMonthAndYearLabel:[1,"choose-month-and-year-label"],toggleCalendarLabel:[1,"toggle-calendar-label"],toggleTextLabel:[1,"toggle-text-label"],openCalendarLabel:[1,"open-calendar-label"],closeCalendarLabel:[1,"close-calendar-label"],calendarIcon:[1,"calendar-icon"],yearGridLabel:[1,"year-grid-label"],scrimDismissible:[4,"scrim-dismissible"],outsideClickDismissible:[4,"outside-click-dismissible"],commitOnSelect:[516,"commit-on-select"],name:[1],isDateDisabled:[16],density:[514],focused:[32],inputDraft:[32],viewYear:[32],viewMonth:[32],viewMode:[32],inputMode:[32],focusedDate:[32],pendingDate:[32],hasSlottedHeader:[32],hasSlottedActions:[32],hasSlottedLeading:[32],hasSlottedCalendarIcon:[32],monthMenuOpen:[32],yearMenuOpen:[32],selectionMenuClosing:[32],dockedCalendarBloom:[32],gridSlideDirection:[32],yearViewClosing:[32],modalCalendarBloom:[32],panelClosing:[32],dockedPanelAlign:[32],dockedPanelPlacement:[32],dockedPanelMaxBlockSize:[32],show:[64],close:[64],clear:[64],focusInput:[64],getValidity:[64],checkValidity:[64],reportValidity:[64],setCustomValidity:[64]},[[6,"keydown","handleDocumentKeyDown"],[7,"pointerdown","handleDocumentPointerDown"],[2,"keydown","handleHostKeyDown"],[0,"mdOpen","swallowNestedMdOpen"],[0,"mdClose","swallowNestedMdClose"]],{value:[{onBoundsChange:0},{syncFormValue:0}],min:[{onBoundsChange:0}],max:[{onBoundsChange:0}],dateSeparator:[{onDateSeparatorChange:0}],open:[{onOpenChange:0}],required:[{syncFormValue:0}],valueMissingLabel:[{syncFormValue:0}]}]);G.DOCKED_POSITION_RAF_MAX=60;function X(){if(typeof customElements==="undefined"){return}const e=["md-date-picker","md-button","md-icon-button","md-menu","md-menu-item","md-ripple","md-text-field","md-tooltip"];e.forEach((e=>{switch(e){case"md-date-picker":if(!customElements.get(n(e))){customElements.define(n(e),G)}break;case"md-button":if(!customElements.get(n(e))){m()}break;case"md-icon-button":if(!customElements.get(n(e))){p()}break;case"md-menu":if(!customElements.get(n(e))){u()}break;case"md-menu-item":if(!customElements.get(n(e))){f()}break;case"md-ripple":if(!customElements.get(n(e))){_()}break;case"md-text-field":if(!customElements.get(n(e))){k()}break;case"md-tooltip":if(!customElements.get(n(e))){y()}break}}))}X();const W=G;const J=X;export{W as MdDatePicker,J as defineCustomElement};
|
|
1
|
+
import{p as e,H as t,c as i,h as r,d as a,t as n}from"./p-B7GMP_JD.js";import{w as s}from"./p-DYBUr7K_.js";import{s as o,a as d,g as l,c,r as h}from"./p-DrC4gWIo.js";import{d as m}from"./p-0aOSIGsO.js";import{d as p}from"./p-DRxQo6x0.js";import{d as u}from"./p-DqSCH9qe.js";import{d as f}from"./p-D21hBBkH.js";import{d as _}from"./p-BMizw_F3.js";import{d as k}from"./p-Dlwb8Ytw.js";import{d as y}from"./p-DC2ZvxAb.js";function b(e){return e<10?`0${e}`:String(e)}function v(e){return`${e.getFullYear()}-${b(e.getMonth()+1)}-${b(e.getDate())}`}function g(e,t,i){if(t<1||t>12||i<1||i>31)return null;const r=new Date(e,t-1,i);if(r.getFullYear()!==e||r.getMonth()!==t-1||r.getDate()!==i){return null}return r}function x(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function w(e,t){if(t&&t.length>0)return t;try{const t=new Intl.DateTimeFormat(e||"en-US",{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(2e3,11,31));const i=t.find((e=>e.type==="literal"));return i?.value??"/"}catch{return"/"}}function z(e,t,i){const r=w(t,i);const a=new Intl.DateTimeFormat(t||undefined,{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(e);return a.map((t=>{switch(t.type){case"day":return b(e.getDate());case"month":return b(e.getMonth()+1);case"year":return String(e.getFullYear());case"literal":return r;default:return""}})).join("")}function D(e,t){const i=w(e,t);const r=new Intl.DateTimeFormat(e||"en-US",{year:"numeric",month:"2-digit",day:"2-digit"}).formatToParts(new Date(2e3,11,31));return r.map((e=>{switch(e.type){case"day":return"DD";case"month":return"MM";case"year":return"YYYY";case"literal":return i;default:return""}})).join("")}function M(e){try{const t=new Intl.DateTimeFormat(e||"en-US").formatToParts(new Date(2025,3,3));const i=t.findIndex((e=>e.type==="day"));const r=t.findIndex((e=>e.type==="month"));return i>=0&&r>=0&&i<r}catch{return false}}function C(e,t){if(e.length===8){const i=Number.parseInt(e.slice(0,2),10);const r=Number.parseInt(e.slice(2,4),10);const a=Number.parseInt(e.slice(4,8),10);let n;let s;if(i>12&&r<=12){s=i;n=r}else if(r>12&&i<=12){n=i;s=r}else if(i>12&&r>12){return null}else if(M(t)){s=i;n=r}else{n=i;s=r}return g(a,n,s)}if(e.length===7){const i=Number.parseInt(e.slice(3,7),10);const r=[{month:Number.parseInt(e.slice(0,1),10),day:Number.parseInt(e.slice(1,3),10),pattern:"MDD"},{day:Number.parseInt(e.slice(0,2),10),month:Number.parseInt(e.slice(2,3),10),pattern:"DDM"},{month:Number.parseInt(e.slice(0,2),10),day:Number.parseInt(e.slice(2,3),10),pattern:"MMD"}];const a=r.map((e=>({...e,date:g(i,e.month,e.day)}))).filter((e=>e.date!==null));if(a.length===0)return null;if(a.length===1)return a[0].date;const n=Number.parseInt(e.slice(1,3),10);const s=Number.parseInt(e.slice(0,1),10);if(s>=1&&s<=9&&n>=10){const e=a.find((e=>e.pattern==="MDD"));if(e)return e.date}const o=Number.parseInt(e.slice(0,2),10);if(o>12){const e=a.find((e=>e.pattern==="DDM"));if(e)return e.date}const d=Number.parseInt(e.slice(0,2),10);if(d>12){const e=a.find((e=>e.pattern==="MMD"));if(e)return e.date}const l=M(t)?"DDM":"MMD";const c=a.find((e=>e.pattern===l))??a[0];return c.date}return null}function S(e,t,i){const r=e.trim();if(!r)return null;const a=F(r);if(a)return a;if(/^\d+$/.test(r)){return C(r,t)}let n;if(i&&i.length>0){n=r.split(new RegExp(x(i))).filter(Boolean)}else{n=r.split(/[/\-.]|\s+/).filter(Boolean)}if(n.length!==3)return null;const s=n.map((e=>Number.parseInt(e,10)));if(s.some((e=>Number.isNaN(e))))return null;let o;let d;let l;if(n[0].length===4||s[0]>31){[o,d,l]=s}else if(n[2].length===4||s[2]>31){if(s[0]>12&&s[1]<=12){[l,d,o]=s}else if(s[1]>12&&s[0]<=12){[d,l,o]=s}else if(M(t)){[l,d,o]=s}else{[d,l,o]=s}}else{return null}return g(o,d,l)}function F(e){if(!e)return null;const t=/^(\d{4})-(\d{2})-(\d{2})$/.exec(e.trim());if(!t)return null;const i=Number(t[1]);const r=Number(t[2])-1;const a=Number(t[3]);const n=new Date(i,r,a);if(n.getFullYear()!==i||n.getMonth()!==r||n.getDate()!==a){return null}return n}function P(e,t){return new Date(e,t+1,0).getDate()}function Y(e){try{const t=Intl;const i=new t.Locale(e||"en-US");if(typeof i.getWeekInfo==="function"){const e=i.getWeekInfo();if(e&&typeof e.firstDay==="number"){return e.firstDay===7?0:e.firstDay}}if(i.weekInfo&&typeof i.weekInfo.firstDay==="number"){return i.weekInfo.firstDay===7?0:i.weekInfo.firstDay}}catch{}return 0}function I(e,t){return e<=t}function A(e,t){return e.getFullYear()===t.getFullYear()&&e.getMonth()===t.getMonth()&&e.getDate()===t.getDate()}function E(e,t){return new Date(e.getFullYear(),e.getMonth(),e.getDate()+t)}function T(e,t){const i=new Date(e.getFullYear(),e.getMonth()+t,1);const r=P(i.getFullYear(),i.getMonth());return new Date(i.getFullYear(),i.getMonth(),Math.min(e.getDate(),r))}function N(e,t,i){const r=v(e);if(t&&!I(t,r)){return F(t)??e}if(i&&!I(r,i)){return F(i)??e}return e}function $(e,t,i){const r=v(e);if(t&&!I(t,r))return true;if(i&&!I(r,i))return true;return false}function L(e,t,i){const r=new Date(e,t,1);const a=r.getDay();const n=(a-i+7)%7;const s=E(r,-n);const o=[];for(let e=0;e<42;e++){const i=E(s,e);o.push({date:i,outOfMonth:i.getMonth()!==t})}return o}function j(e,t,i="narrow"){const r=new Intl.DateTimeFormat(e||undefined,{weekday:i});const a=[];for(let e=0;e<7;e++){const i=(t+e)%7;a.push(r.format(new Date(2024,0,7+i)))}return a}const B=()=>`:host{--_selection-bloom-duration:var( --md-date-picker-selection-bloom-duration, var(--md-sys-motion-duration-long1, 450ms) );--_selection-bloom-easing:var( --md-date-picker-selection-bloom-easing, var(--md-sys-motion-easing-emphasized-decelerate, cubic-bezier(0.05, 0.7, 0.1, 1)) );--_selection-bloom-out-duration:var( --md-date-picker-selection-bloom-out-duration, var(--md-sys-motion-duration-short4, 200ms) );--_calendar-bloom-duration:var( --md-date-picker-calendar-bloom-duration, var(--md-sys-motion-duration-medium2, 300ms) );--_grid-slide-duration:var( --md-date-picker-grid-slide-duration, var(--md-sys-motion-duration-medium2, 300ms) );--_grid-slide-easing:var( --md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1) );--_panel-bloom-out-duration:var( --md-date-picker-panel-bloom-out-duration, var(--md-sys-motion-duration-short4, 200ms) );--_selection-bloom-out-easing:var( --md-sys-motion-easing-emphasized-accelerate, cubic-bezier(0.3, 0, 0.8, 0.15) );--_container-color:var(--md-date-picker-container-color, var(--md-sys-color-surface));--_header-color:var(--md-date-picker-header-color, var(--md-sys-color-surface-container-high));--_container-shape:var(--md-date-picker-container-shape, var(--md-sys-shape-corner-extra-large, 28px));--_field-color:var(--md-date-picker-field-color, var(--md-sys-color-outline));--_field-focus-color:var(--md-date-picker-field-focus-color, var(--md-sys-color-primary));--_field-text-color:var(--md-date-picker-field-text-color, var(--md-sys-color-on-surface));--_field-container-color:var( --md-date-picker-field-container-color, var(--md-sys-color-surface-container-highest, #e6e0e9) );--_field-container-shape:var( --md-date-picker-field-container-shape, var(--md-sys-shape-corner-extra-small, 4px) );--_field-supporting-color:var( --md-date-picker-field-supporting-color, var(--md-sys-color-on-surface-variant) );--_label-color:var(--md-date-picker-label-color, var(--md-sys-color-on-surface-variant));--_headline-color:var(--md-date-picker-headline-color, var(--md-sys-color-on-surface));--_supporting-color:var(--md-date-picker-supporting-color, var(--md-sys-color-on-surface-variant));--_weekday-color:var(--md-date-picker-weekday-color, var(--md-sys-color-on-surface));--_weekday-size:24px;--_day-color:var(--md-date-picker-day-color, var(--md-sys-color-on-surface));--_day-outside-color:var(--md-date-picker-day-outside-color, var(--md-sys-color-on-surface-variant, #49454f));--_day-selected-color:var(--md-date-picker-day-selected-color, var(--md-sys-color-on-primary));--_day-selected-bg:var(--md-date-picker-day-selected-bg, var(--md-sys-color-primary));--_today-outline-color:var(--md-date-picker-today-outline-color, var(--md-sys-color-primary));--_action-color:var(--md-date-picker-action-color, var(--md-sys-color-primary));--_menu-color:var(--md-date-picker-menu-color, var(--md-sys-color-surface-container-high));--_scrim-color:var(--md-date-picker-scrim-color, var(--md-sys-color-scrim, #000));--_icon-color:var(--md-date-picker-icon-color, var(--md-sys-color-on-surface-variant));--_panel-width:var(--md-date-picker-panel-width, max(288px, calc(380px + var(--md-sys-density-scale, 0) * 20px)));--_panel-max-block-size:var(--md-date-picker-panel-max-block-size, 524px);--_error-color:var(--md-sys-color-error);--_icon-size:var(--md-date-picker-icon-size, max(18px, calc(24px + var(--md-sys-density-scale, 0) * 1px)));--_day-size:max(28px, calc(40px + var(--md-sys-density-scale, 0) * 3px));--_year-inline-size:var(--md-date-picker-year-inline-size, max(48px, calc(72px + var(--md-sys-density-scale, 0) * 6px)));--_year-block-size:var(--md-date-picker-year-block-size, max(24px, calc(36px + var(--md-sys-density-scale, 0) * 3px)));--_year-grid-gap:var(--md-date-picker-year-grid-gap, max(4px, calc(12px + var(--md-sys-density-scale, 0) * 2px)));--_year-grid-padding-inline:var(--md-date-picker-year-grid-padding-inline, 30px);--_year-grid-viewport-block-size:var(--md-date-picker-year-grid-viewport-block-size, max(180px, calc(288px + var(--md-sys-density-scale, 0) * 24px)));--_grid-gap:max(2px, calc(6px + var(--md-sys-density-scale, 0) * 1px));--_caret-fade-duration:var(--md-sys-motion-duration-short3, 150ms);--_caret-fade-easing:var(--md-sys-motion-easing-standard, cubic-bezier(0.2, 0, 0, 1));display:inline-block;inline-size:100%;max-inline-size:var(--md-date-picker-trigger-max-width, 360px);font-family:var(--md-sys-typescale-body-large-font-family, Roboto, sans-serif);color:var(--_field-text-color);position:relative}:host(.md-date-picker--docked){align-self:flex-start;--_docked-panel-width:var(--md-date-picker-docked-panel-width, max(calc(360px + var(--md-sys-density-scale, 0) * 10px), var(--_panel-width)));--_docked-content-block-size:calc( var(--_weekday-size) + 16px + 6 * var(--_day-size) + 5 * var(--_grid-gap) + 8px )}:host(.md-date-picker--modal){display:contents}:host(.md-date-picker--disabled){pointer-events:none;opacity:0.5}.material-symbols-outlined{font-family:var(--md-sys-icon-font-family, 'Material Symbols Outlined', 'Material Icons');font-weight:normal;font-style:normal;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;overflow-wrap:normal;direction:ltr;font-feature-settings:'liga';-webkit-font-smoothing:antialiased}.md-date-picker__icon{font-size:var(--_icon-size);inline-size:var(--_icon-size);block-size:var(--_icon-size);color:var(--_icon-color);pointer-events:none}.md-date-picker__textfield,.md-date-picker__entry-textfield{display:block;inline-size:100%;--md-text-field-outline-color:var(--_field-color);--md-text-field-input-color:var(--_field-text-color);--md-text-field-label-color:var(--_label-color);--md-text-field-active-indicator-color:var(--_field-focus-color);--md-text-field-supporting-text-color:var(--_field-supporting-color);--md-text-field-icon-color:var(--_icon-color);--md-text-field-container-color:var(--_field-container-color);--md-text-field-container-shape:var(--_field-container-shape);--md-text-field-filled-pill:var(--md-date-picker-field-filled-pill, 0)}:host(.md-date-picker--open) .md-date-picker__textfield{--md-text-field-active-indicator-color:var(--_field-focus-color);--md-text-field-icon-color:var(--_field-focus-color)}.md-date-picker__docked-anchor{position:relative;display:block;inline-size:100%}.md-date-picker__modal{position:fixed;inset:0;z-index:var(--md-sys-z-index-modal, 1000);display:flex;align-items:center;justify-content:center;padding:var(--md-sys-spacing-inset-lg, 16px)}.md-date-picker__scrim{position:absolute;inset:0;background:color-mix(in srgb, var(--_scrim-color) 32%, transparent);animation:md-date-picker-fade-in var(--md-sys-motion-duration-short3, 150ms) var(--md-sys-motion-easing-standard, ease)}.md-date-picker__modal--closing .md-date-picker__scrim{animation:md-date-picker-fade-out var(--_panel-bloom-out-duration) var(--md-sys-motion-easing-standard, ease) forwards}.md-date-picker__panel{position:relative;display:flex;flex-direction:column;inline-size:var(--_panel-width);max-inline-size:calc(100vw - 32px);max-block-size:min( var(--_panel-max-block-size), calc(100vh - 32px), calc(100dvh - 32px) );overflow:hidden;background:var(--_container-color);color:var(--_field-text-color);border-radius:var(--_container-shape);box-shadow:var(--md-sys-elevation-3, 0 4px 8px 3px rgba(0, 0, 0, 0.15), 0 1px 3px rgba(0, 0, 0, 0.3))}.md-date-picker__panel:not(.md-date-picker__panel--docked):not(.md-date-picker__panel--input-mode){--_container-color:var(--md-date-picker-container-color, var(--md-sys-color-surface-container-high));block-size:auto}.md-date-picker__panel--input-mode:not(.md-date-picker__panel--docked){--_container-color:var(--md-date-picker-container-color, var(--md-sys-color-surface-container-high));block-size:auto;min-block-size:0}.md-date-picker__panel:not(.md-date-picker__panel--docked):not(.md-date-picker__panel--bloom-out){animation:md-date-picker-scale var(--md-sys-motion-duration-medium2, 300ms) var(--md-sys-motion-easing-emphasized, cubic-bezier(0.2, 0, 0, 1));transform-origin:center top}.md-date-picker__panel--docked.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){animation:md-date-picker-selection-bloom-in var(--_selection-bloom-duration) var(--_selection-bloom-easing) both}.md-date-picker__panel--bloom-out{animation:md-date-picker-panel-bloom-out var(--_panel-bloom-out-duration) var(--_selection-bloom-out-easing) both;transform-origin:center top}:host(.md-date-picker--panel-closing) .md-date-picker__panel{pointer-events:none}.md-date-picker__panel:focus,.md-date-picker__panel:focus-visible{outline:none}.md-date-picker__panel--docked{--_container-color:var(--md-sys-color-surface-container-high);position:absolute;inset-block-start:4px;inset-block-end:auto;inset-inline-start:0;inset-inline-end:auto;inline-size:var(--_docked-panel-width);max-inline-size:calc(100vw - 32px);block-size:auto;min-block-size:0;max-block-size:min( var(--_panel-max-block-size), calc(100vh - 32px), calc(100dvh - 32px) );display:flex;flex-direction:column;overflow:visible;box-shadow:none;border-radius:var(--md-sys-shape-corner-large, 16px);z-index:var(--md-sys-z-index-popup, 900)}.md-date-picker__panel--docked.md-date-picker__panel--align-end{inset-inline-start:auto;inset-inline-end:0}.md-date-picker__panel--docked.md-date-picker__panel--placement-above{inset-block-start:auto;inset-block-end:4px}.md-date-picker__docked-popup{position:absolute;inset-block-start:100%;inset-block-end:auto;inset-inline-start:0;inline-size:100%}.md-date-picker__docked-popup--above{inset-block-start:auto;inset-block-end:100%}:host{--_docked-origin-inline-start:left;--_docked-origin-inline-end:right}:host([dir='rtl']),:host-context([dir='rtl']){--_docked-origin-inline-start:right;--_docked-origin-inline-end:left}.md-date-picker__panel--docked.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){transform-origin:top var(--_docked-origin-inline-start)}.md-date-picker__panel--docked.md-date-picker__panel--align-end.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){transform-origin:top var(--_docked-origin-inline-end)}.md-date-picker__panel--docked.md-date-picker__panel--placement-above.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){transform-origin:bottom var(--_docked-origin-inline-start)}.md-date-picker__panel--docked.md-date-picker__panel--placement-above.md-date-picker__panel--align-end.md-date-picker__panel--bloom-in:not(.md-date-picker__panel--bloom-out){transform-origin:bottom var(--_docked-origin-inline-end)}.md-date-picker__panel--docked.md-date-picker__panel--bloom-out{transform-origin:top var(--_docked-origin-inline-start)}.md-date-picker__panel--docked.md-date-picker__panel--align-end.md-date-picker__panel--bloom-out{transform-origin:top var(--_docked-origin-inline-end)}.md-date-picker__panel--docked.md-date-picker__panel--placement-above.md-date-picker__panel--bloom-out{transform-origin:bottom var(--_docked-origin-inline-start)}.md-date-picker__panel--docked.md-date-picker__panel--placement-above.md-date-picker__panel--align-end.md-date-picker__panel--bloom-out{transform-origin:bottom var(--_docked-origin-inline-end)}.md-date-picker__header{display:flex;flex-direction:column;gap:0;padding-block-start:var(--md-sys-spacing-inset-lg, 16px);padding-block-end:var(--md-sys-spacing-inset-md, 12px);padding-inline-start:var(--md-sys-spacing-inset-xl, 24px);padding-inline-end:var(--md-sys-spacing-inset-md, 12px);background-color:var(--_header-color);border-block-end:1px solid var(--md-sys-color-outline-variant);flex:none}.md-date-picker__header-supporting{font-family:var(--md-sys-typescale-label-medium-font-family, Roboto, sans-serif);font-size:max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-medium-font-weight, 500);line-height:max(14px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));letter-spacing:var(--md-sys-typescale-label-medium-letter-spacing, 0.5px);color:var(--_supporting-color);padding-block-end:max(4px, calc(36px + var(--md-sys-density-scale, 0) * 6px))}.md-date-picker__header-row{display:flex;align-items:center;justify-content:space-between;gap:var(--md-sys-spacing-gap-sm, 8px);min-block-size:max(28px, calc(40px + var(--md-sys-density-scale, 0) * 3px))}.md-date-picker__headline{flex:1 1 auto;min-inline-size:0;font-family:var(--md-sys-typescale-headline-large-font-family, Roboto, sans-serif);font-size:max(24px, calc(32px + var(--md-sys-density-scale, 0) * 2px));font-weight:var(--md-sys-typescale-headline-large-font-weight, 400);line-height:max(30px, calc(40px + var(--md-sys-density-scale, 0) * 2.5px));letter-spacing:var(--md-sys-typescale-headline-large-letter-spacing, 0px);color:var(--_headline-color)}.md-date-picker__mode-toggle{flex:none;--md-icon-button-container-width:48px;--md-icon-button-container-height:48px}.md-date-picker__body{padding-block-start:var(--md-sys-spacing-inset-md, 12px);padding-inline:12px;padding-block-end:0;display:flex;flex-direction:column}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__body{flex:1 1 auto;min-block-size:0;overflow:hidden}.md-date-picker__nav{display:flex;align-items:center;justify-content:space-between;min-block-size:48px;padding-inline:var(--md-sys-spacing-inset-xs, 4px);margin-block-end:var(--md-sys-spacing-inset-xs, 4px);flex:none}.md-date-picker__nav-buttons{display:flex;gap:var(--md-sys-spacing-gap-xs, 4px);align-items:center}.md-date-picker__nav md-icon-button.md-date-picker__nav-chevron{flex:none}.md-date-picker__body--no-actions{padding-block-end:max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px))}.md-date-picker__body--docked,.md-date-picker__body--docked.md-date-picker__body--docked-selection{padding-block-start:max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px));padding-inline:12px;padding-block-end:0}.md-date-picker__body--docked.md-date-picker__body--no-actions{padding-block-end:max( 0px, calc( max(4px, calc(20px + var(--md-sys-density-scale, 0) * 2px)) - var(--md-sys-spacing-inset-sm, 8px) ) );display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0;overflow:hidden}.md-date-picker__docked-below-nav{flex:none;display:flex;align-items:center;inline-size:100%;box-sizing:border-box}.md-date-picker__selection-divider{flex:none;inline-size:100%;margin:0;padding:0;border:none;box-sizing:border-box;display:flex;align-items:center}.md-date-picker__body--docked-selection .md-date-picker__docked-below-nav,.md-date-picker__body--docked-selection .md-date-picker__selection-menu-wrap{margin-inline:-12px;inline-size:calc(100% + 24px)}.md-date-picker__selection-divider::before{content:'';display:block;inline-size:100%;block-size:1px;background-color:var(--md-sys-color-outline-variant)}.md-date-picker__body--docked-selection .md-date-picker__selection-divider{animation:md-date-picker-selection-divider-in var(--_selection-bloom-duration) var(--_selection-bloom-easing) both}.md-date-picker__body--docked-selection>.md-date-picker__selection-menu-wrap{box-sizing:border-box;flex:1 1 auto;block-size:auto;min-block-size:0;max-block-size:100%;border-end-start-radius:var(--md-sys-shape-corner-large, 16px);border-end-end-radius:var(--md-sys-shape-corner-large, 16px);transform-origin:center top}.md-date-picker__body--docked-selection>.md-date-picker__selection-menu-wrap:not(.md-date-picker__selection-menu-wrap--bloom-out){animation:md-date-picker-selection-bloom-in var(--_selection-bloom-duration) var(--_selection-bloom-easing) both}.md-date-picker__selection-menu-wrap--bloom-out{animation:md-date-picker-selection-bloom-out var(--_selection-bloom-out-duration) var(--_selection-bloom-out-easing) both;transform-origin:center top}.md-date-picker__body--docked>.md-date-picker__calendar{box-sizing:border-box;flex:1 1 auto;block-size:auto;min-block-size:0;max-block-size:100%;overflow-x:clip;overflow-y:auto}.md-date-picker__body--docked .md-date-picker__calendar--docked-bloom-in{animation:md-date-picker-docked-calendar-bloom-in var(--_calendar-bloom-duration) var(--_selection-bloom-easing) both;transform-origin:center top}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__calendar--content-bloom-in{animation:md-date-picker-docked-calendar-bloom-in var(--_calendar-bloom-duration) var(--_selection-bloom-easing) both;transform-origin:center top}.md-date-picker__docked-nav{--_nav-chevron-size:max(32px, calc(40px + var(--md-sys-density-scale, 0) * 4px));--_nav-focus-ring-gap:5px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--md-sys-spacing-gap-lg, 16px);inline-size:100%;padding-block-start:0;padding-inline:0;padding-block-end:30px;flex:none;box-sizing:border-box}.md-date-picker__docked-nav .md-date-picker__nav-group{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:var(--md-sys-spacing-gap-xs, 4px);flex:0 0 auto;min-inline-size:0;box-sizing:border-box}.md-date-picker__docked-nav md-icon-button.md-date-picker__directional-icon{flex:none;flex-shrink:0}.md-date-picker__docked-nav .md-date-picker__nav-group--month{justify-content:flex-start}.md-date-picker__docked-nav .md-date-picker__nav-group--year{justify-content:flex-end}.md-date-picker__nav-chevron-slot{position:relative;flex:none;flex-shrink:0;inline-size:var(--_nav-chevron-size, 40px);block-size:var(--_nav-chevron-size, 40px)}.md-date-picker__nav-chevron-slot>md-tooltip,.md-date-picker__nav-chevron-slot>.md-date-picker__nav-chevron-spacer{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--_caret-fade-duration) var(--_caret-fade-easing), visibility 0s linear var(--_caret-fade-duration)}.md-date-picker__nav-chevron-slot>md-tooltip.md-date-picker__nav-chevron--visible,.md-date-picker__nav-chevron-slot>.md-date-picker__nav-chevron-spacer.md-date-picker__nav-chevron--visible{opacity:1;visibility:visible;transition:opacity var(--_caret-fade-duration) var(--_caret-fade-easing), visibility 0s linear 0s}.md-date-picker__nav-chevron-slot>md-tooltip{display:block}.md-date-picker__nav-chevron-slot>md-tooltip.md-date-picker__nav-chevron--visible{pointer-events:auto;z-index:1}.md-date-picker__nav-chevron-spacer{display:block;inline-size:100%;block-size:100%}.md-date-picker__icon-button{display:inline-flex;align-items:center;justify-content:center;inline-size:40px;block-size:40px;border:none;border-radius:var(--md-sys-shape-corner-full, 9999px);background:transparent;cursor:pointer;position:relative;flex:none}.md-date-picker__icon-button:hover{background:color-mix(in srgb, var(--md-sys-color-on-surface) 8%, transparent)}.md-date-picker__icon-button:focus-visible{outline:3px solid var(--md-sys-color-secondary);outline-offset:2px}.md-date-picker__menu-button{flex:none;--md-button-label-color:var(--md-sys-color-on-surface-variant);--md-button-icon-size:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));--_state-layer-color:var(--md-sys-color-on-surface-variant)}.md-date-picker__menu-button.md-button--sm{gap:2px}.md-date-picker__menu-button.md-button--selected{--md-button-container-color:var(--md-sys-color-secondary-container);--md-button-label-color:var(--md-sys-color-on-secondary-container);--_state-layer-color:var(--md-sys-color-on-secondary-container)}.md-date-picker__menu-button::part(label){font-family:var(--md-sys-typescale-label-large-font-family, Roboto, sans-serif);font-size:max(12px, calc(14px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-label-large-font-weight, 500);line-height:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));letter-spacing:var(--md-sys-typescale-label-large-letter-spacing, 0.1px)}.md-date-picker__menu-button-tooltip{--md-tooltip-plain-max-inline-size:max-content}.md-date-picker__menu-caret{position:relative;display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:none;inline-size:20px;block-size:20px}.md-date-picker__menu-caret-glyph{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;font-size:max(16px, calc(20px + var(--md-sys-density-scale, 0) * 1px));line-height:1;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--_caret-fade-duration) var(--_caret-fade-easing), visibility 0s linear var(--_caret-fade-duration)}.md-date-picker__menu-caret-glyph--visible{opacity:1;visibility:visible;transition:opacity var(--_caret-fade-duration) var(--_caret-fade-easing), visibility 0s linear 0s}.md-date-picker__selection-menu-wrap{inline-size:100%;display:flex;flex-direction:column;flex:0 0 auto;overflow:hidden;margin-block:0;box-sizing:border-box;background-color:var(--_container-color)}.md-date-picker__selection-menu{position:relative;display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0;inline-size:100%;block-size:100%;pointer-events:auto;z-index:auto;--md-menu-min-width:100%;--md-menu-max-width:none;--md-menu-inline-surface-color:var(--_container-color);--md-menu-inline-fill-radius-end:var(--md-sys-shape-corner-large, 16px)}.md-date-picker__selection-menu md-menu-item{--md-menu-item-gap:var(--md-sys-spacing-gap-lg, 16px);padding-inline-start:var(--md-sys-spacing-inset-lg, 16px)}.md-date-picker__selection-menu md-menu-item::part(headline){font-family:var(--md-sys-typescale-body-large-font-family, Roboto, sans-serif);font-size:max(13px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-body-large-font-weight, 400);line-height:var(--md-sys-typescale-body-large-line-height, 24px);letter-spacing:var(--md-sys-typescale-body-large-letter-spacing, 0.5px);color:var(--md-sys-color-on-surface)}.md-date-picker__calendar{padding-block-end:var(--md-sys-spacing-inset-sm, 8px);overflow-x:clip}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__calendar{flex:1 1 auto;display:flex;flex-direction:column;min-block-size:0;padding-block-end:0;overflow:hidden}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__weekdays{flex:none}.md-date-picker__weekdays,.md-date-picker__grid{display:grid;grid-template-columns:repeat(7, 1fr);gap:var(--_grid-gap);justify-items:center}.md-date-picker__weekdays{padding-block-end:var(--md-sys-spacing-inset-lg, 16px)}.md-date-picker__weekday-tooltip{display:flex;align-items:center;justify-content:center;inline-size:var(--_day-size);cursor:pointer}.md-date-picker__weekday{display:flex;align-items:center;justify-content:center;inline-size:var(--_day-size);block-size:var(--_weekday-size);cursor:pointer;font-family:var(--md-sys-typescale-body-large-font-family, Roboto, sans-serif);font-size:max(13px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-body-large-font-weight, 400);line-height:var(--md-sys-typescale-body-large-line-height, 24px);letter-spacing:var(--md-sys-typescale-body-large-letter-spacing, 0.5px);color:var(--_weekday-color)}.md-date-picker__grid{grid-auto-rows:var(--_day-size)}.md-date-picker__week{display:contents}.md-date-picker__grid--slide-forward{animation:md-date-picker-grid-slide-forward var(--_grid-slide-duration) var(--_grid-slide-easing) both}.md-date-picker__grid--slide-backward{animation:md-date-picker-grid-slide-backward var(--_grid-slide-duration) var(--_grid-slide-easing) both}@keyframes md-date-picker-grid-slide-forward{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes md-date-picker-grid-slide-backward{from{transform:translateX(-100%)}to{transform:translateX(0)}}:host-context([dir='rtl']) .md-date-picker__grid--slide-forward,:host([dir='rtl']) .md-date-picker__grid--slide-forward{animation-name:md-date-picker-grid-slide-forward-rtl}:host-context([dir='rtl']) .md-date-picker__grid--slide-backward,:host([dir='rtl']) .md-date-picker__grid--slide-backward{animation-name:md-date-picker-grid-slide-backward-rtl}@keyframes md-date-picker-grid-slide-forward-rtl{from{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes md-date-picker-grid-slide-backward-rtl{from{transform:translateX(100%)}to{transform:translateX(0)}}.md-date-picker__day,.md-date-picker__year{--md-button-label-color:var(--_day-color);--md-button-container-color:transparent;position:relative;padding:0;font-family:var(--md-sys-typescale-body-large-font-family, Roboto, sans-serif);font-size:max(13px, calc(16px + var(--md-sys-density-scale, 0) * 0.5px));font-weight:var(--md-sys-typescale-body-large-font-weight, 400);line-height:var(--md-sys-typescale-body-large-line-height, 24px);letter-spacing:var(--md-sys-typescale-body-large-letter-spacing, 0.5px);font-variant-numeric:tabular-nums}.md-date-picker__day::part(label),.md-date-picker__year::part(label){position:relative;z-index:1;font:inherit;font-variant-numeric:tabular-nums}.md-date-picker__day:focus-visible,.md-date-picker__year:focus-visible{outline-offset:-1px}.md-date-picker__day{--md-button-min-width:var(--_day-size);--md-button-width:var(--_day-size);--md-button-min-height:var(--_day-size);--md-button-height:var(--_day-size)}.md-date-picker__day--today{--md-button-container-shape:var(--md-date-picker-day-today-shape, calc(var(--_day-size) / 2));--md-button-label-color:var(--_today-outline-color);box-shadow:0 0 0 1px var(--_today-outline-color)}.md-date-picker__day--outside{--md-button-label-color:var(--_day-outside-color)}.md-date-picker__day--selected,.md-date-picker__year--selected{--md-button-container-color:var(--_day-selected-bg);--md-button-label-color:var(--_day-selected-color);--md-button-container-shape:var(--md-date-picker-day-selected-shape)}.md-date-picker__day--selected.md-date-picker__day--today{box-shadow:none}.md-date-picker__day--disabled,.md-date-picker__year--disabled{--md-button-label-color:color-mix( in srgb, var(--_day-color) calc(var(--md-sys-state-disabled-content-opacity, 0.38) * 100%), transparent )}.md-date-picker__year-grid-wrap{display:flex;flex-direction:column;flex:1 1 auto;min-block-size:0;overflow:hidden;transform-origin:center top}.md-date-picker__body--year-view .md-date-picker__year-grid-wrap{margin-inline:-12px;inline-size:calc(100% + 24px);box-sizing:border-box}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__year-grid-wrap:not(.md-date-picker__year-grid-wrap--bloom-out){animation:md-date-picker-selection-bloom-in var(--_selection-bloom-duration) var(--_selection-bloom-easing) both}.md-date-picker__year-grid-wrap--bloom-out{animation:md-date-picker-selection-bloom-out var(--_selection-bloom-out-duration) var(--_selection-bloom-out-easing) both}.md-date-picker__year-grid-scroll{flex:1 1 auto;min-block-size:0;overflow-y:auto}.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__year-grid-scroll{min-block-size:var(--_year-grid-viewport-block-size);max-block-size:var(--_year-grid-viewport-block-size)}.md-date-picker__year-grid{display:grid;grid-template-columns:repeat(3, 1fr);grid-auto-rows:var(--_year-block-size);gap:var(--_year-grid-gap);padding-block-start:8px;padding-inline:var(--_year-grid-padding-inline);padding-block-end:16px;align-content:start}.md-date-picker__year-row{display:contents}.md-date-picker__panel:not(.md-date-picker__panel--docked):not(.md-date-picker__panel--input-mode) .md-date-picker__entry{flex:1 1 auto;min-block-size:0;overflow-y:auto;padding:var(--md-sys-spacing-inset-lg, 16px) var(--md-sys-spacing-inset-xl, 24px) var(--md-sys-spacing-inset-sm, 8px)}.md-date-picker__year{--md-button-min-width:var(--_year-inline-size);--md-button-width:var(--_year-inline-size);--md-button-min-height:var(--_year-block-size);--md-button-height:var(--_year-block-size)}.md-date-picker__year:nth-child(3n+1){justify-self:start}.md-date-picker__year:nth-child(3n+2){justify-self:center}.md-date-picker__year:nth-child(3n){justify-self:end}.md-date-picker__entry{display:flex;flex-wrap:wrap;gap:var(--md-sys-spacing-gap-lg, 16px);padding:0;inline-size:100%}.md-date-picker__body--input-mode{padding-block-start:var(--md-sys-spacing-inset-xl, 24px);padding-inline:var(--md-sys-spacing-inset-xl, 24px);padding-block-end:var(--md-sys-spacing-inset-sm, 8px);flex:none}.md-date-picker__entry-error{flex-basis:100%;font-size:max(10px, calc(12px + var(--md-sys-density-scale, 0) * 0.5px));color:var(--_error-color)}.md-date-picker__actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--md-sys-spacing-gap-sm, 8px);min-block-size:max(28px, calc(40px + var(--md-sys-density-scale, 0) * 3px));padding-block:var(--md-sys-spacing-inset-sm, 8px) var(--md-sys-spacing-inset-md, 12px);padding-inline:12px;flex:none}.md-date-picker__action-btn{--md-button-label-color:var(--_action-color)}.md-date-picker__action-btn--primary{--md-button-label-color:var(--_action-color)}:host-context([dir='rtl']) .md-date-picker__directional-icon .md-date-picker__icon,:host([dir='rtl']) .md-date-picker__directional-icon .md-date-picker__icon{transform:scaleX(-1)}:host-context([dir='rtl']) md-icon-button.md-date-picker__directional-icon,:host([dir='rtl']) md-icon-button.md-date-picker__directional-icon{transform:scaleX(-1)}::slotted([slot='leading-icon']){display:inline-flex;align-items:center;justify-content:center;inline-size:var(--_icon-size);block-size:var(--_icon-size);font-size:var(--_icon-size);color:var(--_icon-color);fill:currentColor;pointer-events:none}:host([data-theme='dark']),:host-context([data-theme='dark']){--_container-color:var(--md-date-picker-container-color, var(--md-sys-color-surface));--_header-color:var(--md-date-picker-header-color, var(--md-sys-color-surface-container-high))}@keyframes md-date-picker-selection-bloom-in{from{opacity:0;transform:translateY(8px) scale(0.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes md-date-picker-selection-bloom-out{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(4px) scale(0.96)}}@keyframes md-date-picker-selection-divider-in{from{opacity:0}to{opacity:1}}@keyframes md-date-picker-docked-calendar-bloom-in{from{opacity:0;transform:translateY(8px) scale(0.92)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes md-date-picker-fade-in{from{opacity:0}}@keyframes md-date-picker-fade-out{from{opacity:1}to{opacity:0}}@keyframes md-date-picker-scale{from{opacity:0;transform:scale(0.9)}}@keyframes md-date-picker-panel-bloom-out{from{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(4px) scale(0.96)}}@media (prefers-reduced-motion: reduce){.md-date-picker__scrim,.md-date-picker__modal--closing .md-date-picker__scrim,.md-date-picker__panel:not(.md-date-picker__panel--docked),.md-date-picker__panel--docked.md-date-picker__panel--bloom-in,.md-date-picker__panel--bloom-out,.md-date-picker__body--docked-selection .md-date-picker__selection-divider,.md-date-picker__body--docked-selection>.md-date-picker__selection-menu-wrap:not(.md-date-picker__selection-menu-wrap--bloom-out),.md-date-picker__selection-menu-wrap--bloom-out,.md-date-picker__panel:not(.md-date-picker__panel--docked) .md-date-picker__year-grid-wrap:not(.md-date-picker__year-grid-wrap--bloom-out),.md-date-picker__year-grid-wrap--bloom-out,.md-date-picker__calendar--docked-bloom-in,.md-date-picker__calendar--content-bloom-in,.md-date-picker__grid--slide-forward,.md-date-picker__grid--slide-backward{animation:none}.md-date-picker__nav-chevron-slot>md-tooltip,.md-date-picker__nav-chevron-slot>.md-date-picker__nav-chevron-spacer,.md-date-picker__menu-caret-glyph{transition:none}}:host([density='-1']){--md-sys-density-scale:-1}:host([density='-2']){--md-sys-density-scale:-2}:host([density='-3']){--md-sys-density-scale:-3}:host([density='-4']){--md-sys-density-scale:-4}:host([hidden]){display:none !important}`;let V=0;const O=450;const q=200;const R=200;const K=300;const U=3;const H=5;const G=e(class e extends t{constructor(e){super();if(e!==false){this.__registerHost()}this.__attachShadow();this.mdChange=i(this,"mdChange",7);this.mdSelected=i(this,"mdSelected",7);this.mdInput=i(this,"mdInput",7);this.mdOpen=i(this,"mdOpen",7);this.mdClose=i(this,"mdClose",7);this.mdCancel=i(this,"mdCancel",7);this.mdViewChange=i(this,"mdViewChange",7);this.mdMenuOpen=i(this,"mdMenuOpen",7);this.mdMenuSelect=i(this,"mdMenuSelect",7);this.mdModeChange=i(this,"mdModeChange",7);this.mdValidityChange=i(this,"mdValidityChange",5);this.internals=this.attachInternals();this.valueMissingLabel="Please choose a date.";this.reserveSupportingSpace=false;this.customValidityMessage="";this.defaultValue="";this.variant="modal-input";this.value="";this.label="Date";this.placeholder="";this.min="";this.max="";this.open=false;this.disabled=false;this.required=false;this.clearable=false;this.clearLabel="Clear date";this.error=false;this.errorText="";this.supportingText="";this.locale="";this.dateSeparator="";this.fieldVariant="outlined";this.firstDayOfWeek=-1;this.headline="Select date";this.cancelLabel="Cancel";this.okLabel="OK";this.selectDateLabel="Select date";this.enterDatesLabel="Enter dates";this.invalidDateLabel="Invalid date";this.previousMonthLabel="Previous month";this.nextMonthLabel="Next month";this.previousYearLabel="Previous year";this.nextYearLabel="Next year";this.chooseMonthLabel="Choose month";this.chooseYearLabel="Choose year";this.chooseMonthYearLabel="Choose a different month and year";this.chooseMonthAndYearLabel="Choose month and year";this.toggleCalendarLabel="Switch to calendar input";this.toggleTextLabel="Switch to text input";this.openCalendarLabel="Open calendar";this.closeCalendarLabel="Close calendar";this.calendarIcon="calendar_today";this.yearGridLabel="Year";this.scrimDismissible=true;this.outsideClickDismissible=true;this.commitOnSelect=false;this.name="";this.density=0;this.focused=false;this.inputDraft="";this.viewYear=(new Date).getFullYear();this.viewMonth=(new Date).getMonth();this.viewMode="calendar";this.inputMode=false;this.focusedDate=new Date;this.pendingDate=null;this.hasSlottedHeader=false;this.hasSlottedActions=false;this.hasSlottedLeading=false;this.hasSlottedCalendarIcon=false;this.monthMenuOpen=false;this.yearMenuOpen=false;this.selectionMenuClosing=null;this.dockedCalendarBloom=false;this.gridSlideDirection=null;this.yearViewClosing=false;this.modalCalendarBloom=false;this.panelClosing=false;this.dockedPanelAlign="start";this.dockedPanelPlacement="below";this.dockedPanelMaxBlockSize=null;this.uid=`md-dp-${++V}`;this.entryInputShouldFocus=false;this.restoreFocusEl=null;this.gridShouldFocus=false;this.menuShouldFocus=null;this.menuRestoreFocus=null;this.yearGridShouldScroll=false;this.yearListMinYear=null;this.yearListMaxYear=null;this.panelPointerEngaged=false;this.closingFromDismiss=false;this.dockedPositionCleanup=null;this.dockedPositionRafId=0;this.dockedPositionRafAttempts=0;this.lastSelectedEmitValue=null;this.onFieldInput=e=>{const t=e.target.value;this.inputDraft=t;this.mdInput.emit({value:t})};this.onFieldCommit=()=>{const e=this.inputDraft.trim();if(!e){this.value="";this.inputDraft="";this.error=false;this.errorText="";this.emitChange();this.syncTextFieldDisplay();return}const t=S(e,this.locale,this.dateSeparator||undefined);if(!t||this.isDisabledDate(t)){this.error=true;this.errorText=this.errorText||(this.invalidDateLabel??"Invalid date");return}this.value=v(t);this.inputDraft=this.formatField(t);this.error=false;this.errorText="";this.syncViewToValue();this.emitChange();this.syncTextFieldDisplay()};this.onGridSlideAnimationEnd=e=>{if(e.target!==e.currentTarget)return;const t=e.animationName??"";if(!t.includes("md-date-picker-grid-slide"))return;this.gridSlideDirection=null};this.toggleMonthMenu=()=>{void this.toggleMonthMenuAsync()};this.toggleYearMenu=()=>{void this.toggleYearMenuAsync()};this.onMonthMenuClose=()=>{if(!this.monthMenuOpen)return;void this.closeDockedSelectionMenu("month",{bloomCalendar:true,restoreFocus:true})};this.onYearMenuClose=()=>{if(!this.yearMenuOpen)return;void this.closeDockedSelectionMenu("year",{bloomCalendar:true,restoreFocus:true})};this.toggleYearView=()=>{if(this.viewMode==="year"){void this.closeYearViewAnimated()}else{this.openYearView()}};this.toggleInputMode=()=>{if(this.inputMode){this.commitDialogInput();if(this.error)return}else{this.inputDraft=this.pendingDate?this.formatField(this.pendingDate):""}this.inputMode=!this.inputMode;this.viewMode="calendar";this.emitModeChange(this.inputMode?"input":"calendar");if(this.inputMode){this.entryInputShouldFocus=true}};this.onPanelMouseDown=e=>{if(e.button!==0||!this.open||!this.panelEl)return;if(!this.shouldPanelClaimFocus(e.target))return;this.panelPointerEngaged=true;if(this.viewMode==="calendar"&&!this.inputMode&&!this.monthMenuOpen&&!this.yearMenuOpen){this.gridShouldFocus=true}};this.handleDayKeyDown=e=>{if(e.defaultPrevented)return;this.handleCalendarKeyDown(e)};this.handleCalendarKeyDown=e=>{if(e.defaultPrevented)return;if(this.isDockedMenuToggleKey(e)){const t=e.key.toLowerCase();if(t==="m"){e.preventDefault();e.stopPropagation();e.stopImmediatePropagation();this.toggleMonthMenu();return}if(t==="y"){e.preventDefault();e.stopPropagation();e.stopImmediatePropagation();this.toggleYearMenu();return}}let t=null;switch(this.resolveNavigationKey(e)){case"ArrowRight":t=E(this.focusedDate,1);break;case"ArrowLeft":t=E(this.focusedDate,-1);break;case"ArrowDown":t=E(this.focusedDate,7);break;case"ArrowUp":t=E(this.focusedDate,-7);break;case"Home":t=new Date(this.focusedDate.getFullYear(),this.focusedDate.getMonth(),1);break;case"End":t=new Date(this.focusedDate.getFullYear(),this.focusedDate.getMonth(),P(this.focusedDate.getFullYear(),this.focusedDate.getMonth()));break;case"PageUp":t=T(this.focusedDate,e.shiftKey?-12:-1);break;case"PageDown":t=T(this.focusedDate,e.shiftKey?12:1);break;case"Enter":{if(!this.isDayGridKeyTarget(e.target))return;e.preventDefault();if(this.isDisabledDate(this.focusedDate))return;this.selectDay({date:this.focusedDate,outOfMonth:false});this.commit();return}case" ":{if(!this.isDayGridKeyTarget(e.target))return;e.preventDefault();this.selectDay({date:this.focusedDate,outOfMonth:false});return}default:return}e.preventDefault();const i=this.viewYear;const r=this.viewMonth;this.focusedDate=N(t,this.min,this.max);const a=this.resolveNavigationKey(e);if((a==="PageUp"||a==="PageDown")&&(this.focusedDate.getFullYear()!==i||this.focusedDate.getMonth()!==r)){this.setGridSlideDirection(a==="PageDown"?1:-1)}this.viewYear=this.focusedDate.getFullYear();this.viewMonth=this.focusedDate.getMonth();this.gridShouldFocus=true};this.onPanelKeyDown=e=>{if(e.key==="Escape"){e.preventDefault();if(this.isDocked&&(this.monthMenuOpen||this.yearMenuOpen)){this.closeMenus(null,true);return}this.requestDismiss();return}if(this.canHandleCalendarKeyDown(e,this.resolveCalendarKeyTarget(e))){this.handleCalendarKeyDown(e);return}if(e.key==="Tab"&&!this.isDocked){this.trapTab(e)}};this.textFieldKeyDown=e=>{if(e.key!=="Enter")return;if(e.defaultPrevented)return;e.preventDefault();e.stopPropagation();this.syncInputDraftFromField(e.target);this.onFieldCommit()};this.entryTextFieldKeyDown=e=>{if(e.key!=="Enter"||!this.inputMode)return;if(e.defaultPrevented)return;e.preventDefault();e.stopPropagation();this.syncInputDraftFromField(e.target);this.commitDialogInput();if(this.error)return;this.commit()};this.lastValidityKey=null}get hasField(){return this.variant!=="modal"}get isDocked(){return this.variant==="docked"}get triggerExpanded(){return this.open&&!this.panelClosing}connectedCallback(){this.syncViewToValue()}componentWillLoad(){this.defaultValue=this.value;this.syncFormValue();this.hasSlottedHeader=!!this.el.querySelector('[slot="header"]');this.hasSlottedActions=!!this.el.querySelector('[slot="actions"]');this.hasSlottedLeading=!!this.el.querySelector('[slot="leading-icon"]');this.hasSlottedCalendarIcon=!!this.el.querySelector('[slot="calendar-icon"]');if(this.value){this.seedFieldDraftFromValue()}if(this.open){this.seedPending();this.lockScroll();this.gridShouldFocus=true}}componentDidLoad(){const e=this.el.shadowRoot;if(!e)return;const t=(t,i)=>{const r=e.querySelector(`slot[name="${t}"]`);if(!r)return;const a=()=>i(r.assignedElements().length>0);r.addEventListener("slotchange",a);a()};t("header",(e=>this.hasSlottedHeader=e));t("actions",(e=>this.hasSlottedActions=e));t("leading-icon",(e=>this.hasSlottedLeading=e));t("calendar-icon",(e=>this.hasSlottedCalendarIcon=e))}disconnectedCallback(){this.unlockScroll();this.unbindDockedPositionListeners()}getDockedViewportMargin(){return 16}resetDockedPanelPosition(){this.dockedPanelAlign="start";this.dockedPanelPlacement="below";this.dockedPanelMaxBlockSize=null;this.dockedPositionRafAttempts=0;if(this.dockedPositionRafId){cancelAnimationFrame(this.dockedPositionRafId);this.dockedPositionRafId=0}}resolveDockedPanelBlockSize(e){const t=e.style.getPropertyValue("max-block-size");const i=e.style.getPropertyPriority("max-block-size");e.style.setProperty("max-block-size","none","important");const r=e.offsetHeight||e.getBoundingClientRect().height;if(t){e.style.setProperty("max-block-size",t,i)}else{e.style.removeProperty("max-block-size")}return r}isRtl(){if(typeof window==="undefined")return false;return getComputedStyle(this.el).direction==="rtl"}projectedHorizontalRect(e,t,i){const r=this.isRtl();if(i==="start"){if(r){return{left:e.right-t,right:e.right}}return{left:e.left,right:e.left+t}}if(r){return{left:e.left,right:e.left+t}}return{left:e.right-t,right:e.right}}positionDockedPanel(){if(!this.isDocked||!this.open||this.panelClosing)return;const t=this.dockedAnchorEl??this.el.shadowRoot?.querySelector(".md-date-picker__docked-anchor");const i=this.panelEl;if(!t||!i)return;const r=t.getBoundingClientRect();const a=i.offsetWidth||i.getBoundingClientRect().width;const n=i.offsetHeight||i.getBoundingClientRect().height;if(a===0||n===0){if(typeof requestAnimationFrame==="function"&&this.dockedPositionRafAttempts<e.DOCKED_POSITION_RAF_MAX){this.dockedPositionRafAttempts+=1;cancelAnimationFrame(this.dockedPositionRafId);this.dockedPositionRafId=requestAnimationFrame((()=>{this.dockedPositionRafId=0;this.positionDockedPanel()}))}return}this.dockedPositionRafAttempts=0;const s=this.resolveDockedPanelBlockSize(i);const o=this.getDockedViewportMargin();const d=window.innerWidth;const l=window.innerHeight;const c=4;let h="start";let m="below";let p=null;const u=this.projectedHorizontalRect(r,a,"start");if(u.right>d-o){const e=this.projectedHorizontalRect(r,a,"end");if(e.left>=o){h="end"}}const f=this.projectedHorizontalRect(r,a,h);if(f.left<o){const e=this.projectedHorizontalRect(r,a,"end");if(e.left>=o){h="end"}}else if(h==="end"){const e=this.projectedHorizontalRect(r,a,"end");if(e.left<o){const e=this.projectedHorizontalRect(r,a,"start");if(e.right<=d-o){h="start"}}}const _=r.bottom+c+s;if(_>l-o){const e=r.top-c-s;if(e>=o){m="above"}else{const e=l-o-r.bottom-c;if(e>0){p=`${Math.floor(e)}px`}}}if(m==="above"){const e=r.top-c-o;if(e>0&&s>e){p=`${Math.floor(e)}px`}}const k=this.dockedPanelAlign!==h||this.dockedPanelPlacement!==m||this.dockedPanelMaxBlockSize!==p;if(k){this.dockedPanelAlign=h;this.dockedPanelPlacement=m;this.dockedPanelMaxBlockSize=p}}bindDockedPositionListeners(){if(this.dockedPositionCleanup||typeof window==="undefined")return;const e=()=>this.positionDockedPanel();window.addEventListener("resize",e,{passive:true});window.addEventListener("scroll",e,{passive:true,capture:true});this.dockedPositionCleanup=()=>{window.removeEventListener("resize",e);window.removeEventListener("scroll",e,{capture:true})}}unbindDockedPositionListeners(){this.dockedPositionCleanup?.();this.dockedPositionCleanup=null}onBoundsChange(){if(!this.open)this.syncViewToValue()}onDateSeparatorChange(){if(this.value){this.seedFieldDraftFromValue()}}onOpenChange(e,t){if(e===t)return;if(e){this.panelClosing=false;this.handleOpen()}else if(!this.closingFromDismiss&&!this.panelClosing){this.open=true;void this.dismissPanel()}else{this.handleClose()}}async show(){if(this.disabled)return;this.open=true}async close(){await this.dismissPanel()}async clear(){if(this.disabled)return;this.value="";this.inputDraft="";this.error=false;this.errorText="";this.emitChange()}async focusInput(){const e=this.el.shadowRoot?.querySelector("md-text-field")?.shadowRoot?.querySelector(".md-text-field__input");if(e){e.focus();return}this.triggerEl?.focus()}get loc(){return this.locale||undefined}resolvedFirstDay(){if(this.firstDayOfWeek>=0&&this.firstDayOfWeek<=6){return this.firstDayOfWeek}return Y(this.locale)}formatHeadline(e){if(!e)return"";return new Intl.DateTimeFormat(this.loc,{weekday:"short",month:"short",day:"numeric"}).format(e)}formatField(e){if(!e)return"";return z(e,this.loc,this.dateSeparator||undefined)}formatMonthYear(e,t){return new Intl.DateTimeFormat(this.loc,{month:"long",year:"numeric"}).format(new Date(e,t,1))}formatFullDate(e){return new Intl.DateTimeFormat(this.loc,{weekday:"long",year:"numeric",month:"long",day:"numeric"}).format(e)}dateFormatHint(){return D(this.loc,this.dateSeparator||undefined)}syncViewToValue(){const e=F(this.value)??F(this.min)??new Date;this.viewYear=e.getFullYear();this.viewMonth=e.getMonth();this.focusedDate=N(e,this.min,this.max)}seedPending(){this.viewMode="calendar";this.pendingDate=F(this.value);this.seedFieldDraftFromValue();this.syncViewToValue()}handleOpen(){this.restoreFocusEl=typeof document!=="undefined"?document.activeElement??null:null;this.inputMode=this.variant==="modal-input"?false:this.inputMode;this.monthMenuOpen=false;this.yearMenuOpen=false;this.clearYearListRange();this.yearViewClosing=false;this.clearModalCalendarBloom();this.resetDockedPanelPosition();this.seedPending();this.lockScroll();this.mdOpen.emit();this.gridShouldFocus=true;if(this.isDocked){this.bindDockedPositionListeners()}}handleClose(){this.unlockScroll();this.unbindDockedPositionListeners();this.resetDockedPanelPosition();this.panelPointerEngaged=false;this.panelClosing=false;this.clearDockedCalendarBloom();this.clearModalCalendarBloom();this.yearViewClosing=false;this.monthMenuOpen=false;this.yearMenuOpen=false;this.selectionMenuClosing=null;this.clearYearListRange();this.mdClose.emit();const e=this.restoreFocusEl??this.triggerEl??null;if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>e?.focus?.()))}else{e?.focus?.()}}async dismissPanel(){if(!this.open||this.panelClosing)return;if(this.isDocked&&(this.monthMenuOpen||this.yearMenuOpen||this.selectionMenuClosing)){await this.closeDockedMenusAnimated(null,false)}if(this.prefersReducedMotion()){this.closingFromDismiss=true;this.open=false;this.closingFromDismiss=false;return}this.panelClosing=true;await this.delay(this.panelBloomOutMs());this.closingFromDismiss=true;this.open=false;this.panelClosing=false;this.closingFromDismiss=false}lockScroll(){if(this.isDocked)return;try{document.body.style.setProperty("overflow","hidden")}catch{}}unlockScroll(){try{document.body.style.removeProperty("overflow")}catch{}}isDisabledDate(e){if($(e,this.min,this.max))return true;if(this.isDateDisabled&&this.isDateDisabled(e))return true;return false}isDisabledYear(e){const t=F(this.min);const i=F(this.max);if(t&&e<t.getFullYear())return true;if(i&&e>i.getFullYear())return true;return false}emitChange(){const e=F(this.value);this.mdChange.emit({value:this.value,date:e})}emitSelected(e){const t=v(e);if(this.lastSelectedEmitValue===t)return;this.lastSelectedEmitValue=t;this.mdSelected.emit({value:t,date:e});void Promise.resolve().then((()=>{this.lastSelectedEmitValue=null}))}emitViewChange(e){this.mdViewChange.emit({month:this.viewMonth,year:this.viewYear,source:e})}emitMenuOpen(e){this.mdMenuOpen.emit({type:e})}emitMenuSelect(e,t,i){this.mdMenuSelect.emit({type:e,value:t,label:i})}emitModeChange(e){this.mdModeChange.emit({mode:e})}monthLabel(e){return new Intl.DateTimeFormat(this.loc,{month:"long"}).format(new Date(2024,e,1))}selectDay(e){const t=e.date;if(this.isDisabledDate(t))return;this.closeMenus(null,false);this.focusedDate=t;if(e.outOfMonth){this.viewYear=t.getFullYear();this.viewMonth=t.getMonth()}this.pendingDate=t;this.emitSelected(t);if(this.commitOnSelect)this.commit()}commit(){if(this.pendingDate){this.value=v(this.pendingDate);this.inputDraft=this.formatField(this.pendingDate);this.error=false;this.errorText=""}this.emitChange();void this.dismissPanel()}cancel(){this.mdCancel.emit();void this.dismissPanel()}requestDismiss(){this.cancel()}syncInputDraftFromField(e){const t=this.asEventElement(e);if(!t)return;const i=t.closest("input:not([readonly]):not([disabled]), textarea:not([readonly]):not([disabled])");if(i){this.inputDraft=i.value;return}const r=t.closest("md-text-field");if(r){this.inputDraft=r.value??this.inputDraft}}syncTextFieldDisplay(){if(this.variant==="modal")return;const e=this.el.shadowRoot?.querySelector("md-text-field");if(!e)return;e.value=this.inputDraft;const t=e.shadowRoot?.querySelector(".md-text-field__input");if(t){t.value=this.inputDraft}}syncEntryTextFieldDisplay(){if(!this.entryTextFieldEl)return;const e=this.entryTextFieldEl;e.value=this.inputDraft;const t=e.shadowRoot?.querySelector(".md-text-field__input");if(t){t.value=this.inputDraft}}seedFieldDraftFromValue(){const e=F(this.value);this.inputDraft=e?this.formatField(e):""}commitDialogInput(){const e=this.inputDraft.trim();if(!e){this.error=false;this.errorText="";this.pendingDate=null;return}const t=S(e,this.locale,this.dateSeparator||undefined);if(!t||this.isDisabledDate(t)){this.error=true;this.errorText=this.invalidDateLabel??"Invalid date";return}this.error=false;this.errorText="";this.pendingDate=t;this.inputDraft=this.formatField(t);this.syncEntryTextFieldDisplay();this.viewYear=t.getFullYear();this.viewMonth=t.getMonth();this.focusedDate=t}setGridSlideDirection(e){if(this.prefersReducedMotion())return;if(this.monthMenuOpen||this.yearMenuOpen||this.selectionMenuClosing||this.dockedCalendarBloom){return}this.gridSlideDirection=e>0?"forward":"backward"}goToMonth(e,t=false){this.setGridSlideDirection(e);const i=T(new Date(this.viewYear,this.viewMonth,1),e);this.viewYear=i.getFullYear();this.viewMonth=i.getMonth();if(t){this.emitViewChange("chevron-month")}}goToYear(e,t=false){this.setGridSlideDirection(e);this.viewYear+=e;if(this.yearMenuOpen||this.selectionMenuClosing==="year"||this.viewMode==="year"||this.yearViewClosing){this.captureYearListRange()}if(t){this.emitViewChange("chevron-year")}}navActionLabel(e,t){if(e==="month"){return t==="prev"?this.previousMonthLabel??"Previous month":this.nextMonthLabel??"Next month"}return t==="prev"?this.previousYearLabel??"Previous year":this.nextYearLabel??"Next year"}navShortcutKey(e,t){if(e==="month"){return t==="prev"?"Page Up":"Page Down"}return t==="prev"?"Shift+Page Up":"Shift+Page Down"}navTooltipText(e,t){return`${this.navActionLabel(e,t)} (${this.navShortcutKey(e,t)})`}menuShortcutKey(e){return e==="month"?"Shift+M":"Shift+Y"}menuTooltipText(e){if(e==="month"){const t=new Intl.DateTimeFormat(this.loc,{month:"long"}).format(new Date(this.viewYear,this.viewMonth,1));return`${t} · ${this.chooseMonthLabel} (${this.menuShortcutKey(e)})`}return`${this.chooseYearLabel} (${this.menuShortcutKey(e)})`}captureYearListRange(){const e=this.viewYear;this.yearListMinYear=F(this.min)?.getFullYear()??e-100;this.yearListMaxYear=F(this.max)?.getFullYear()??e+100}clearYearListRange(){this.yearListMinYear=null;this.yearListMaxYear=null}getYearListBounds(){if(this.yearListMinYear!=null&&this.yearListMaxYear!=null){return{minYear:this.yearListMinYear,maxYear:this.yearListMaxYear}}const e=this.viewYear;return{minYear:F(this.min)?.getFullYear()??e-100,maxYear:F(this.max)?.getFullYear()??e+100}}closeMenus(e,t){if(this.isDocked){void this.closeDockedMenusAnimated(e,t);return}if(e!=="month"&&this.monthMenuOpen){this.monthMenuOpen=false;if(t)this.restoreMenuFocus(this.monthMenuButtonEl)}if(e!=="year"&&this.yearMenuOpen){this.yearMenuOpen=false;this.clearYearListRange();if(t)this.restoreMenuFocus(this.yearMenuButtonEl)}}async closeDockedSelectionMenu(e,t={}){const{bloomCalendar:i=true,restoreFocus:r=true}=t;const a=e==="month"?this.monthMenuOpen:this.yearMenuOpen;if(!a||this.selectionMenuClosing===e)return;this.selectionMenuClosing=e;await this.delay(this.selectionBloomOutMs());this.selectionMenuClosing=null;if(e==="month"){this.monthMenuOpen=false}else{this.yearMenuOpen=false;this.clearYearListRange()}if(r){this.gridShouldFocus=false;this.menuRestoreFocus=e}else if(i&&!this.monthMenuOpen&&!this.yearMenuOpen){this.gridShouldFocus=true}if(i&&!this.monthMenuOpen&&!this.yearMenuOpen){this.beginDockedCalendarBloom()}else if(this.isDocked&&!this.monthMenuOpen&&!this.yearMenuOpen){this.positionDockedPanel()}}async closeDockedMenusAnimated(e,t){const i=e===null;if(e!=="month"&&this.monthMenuOpen){await this.closeDockedSelectionMenu("month",{bloomCalendar:i,restoreFocus:t})}if(e!=="year"&&this.yearMenuOpen){await this.closeDockedSelectionMenu("year",{bloomCalendar:i,restoreFocus:t})}}openDockedMonthMenu(){this.clearDockedCalendarBloom();this.selectionMenuClosing=null;this.menuRestoreFocus=null;this.yearMenuOpen=false;this.monthMenuOpen=true;this.menuShouldFocus="month";this.emitMenuOpen("month")}openDockedYearMenu(){this.clearDockedCalendarBloom();this.selectionMenuClosing=null;this.menuRestoreFocus=null;this.monthMenuOpen=false;this.captureYearListRange();this.yearMenuOpen=true;this.menuShouldFocus="year";this.emitMenuOpen("year")}isDockedMonthMenuExpanded(){return this.monthMenuOpen||this.selectionMenuClosing==="month"}isDockedYearMenuExpanded(){return this.yearMenuOpen||this.selectionMenuClosing==="year"}dockedSelectionMenuToShow(){if(this.monthMenuOpen&&this.yearMenuOpen){if(this.selectionMenuClosing==="year")return"month";if(this.selectionMenuClosing==="month")return"year";return"year"}if(this.yearMenuOpen||this.selectionMenuClosing==="year")return"year";if(this.monthMenuOpen||this.selectionMenuClosing==="month")return"month";return null}dockedMenuTrailingIcon(e){return e?"arrow_drop_up":"arrow_drop_down"}renderDockedMenuTrailingCaret(e){return r("span",{slot:"trailing-icon",class:"md-date-picker__menu-caret",part:"menu-caret","aria-hidden":"true"},r("span",{class:{"md-date-picker__menu-caret-glyph":true,"material-symbols-outlined":true,"md-date-picker__menu-caret-glyph--down":true,"md-date-picker__menu-caret-glyph--visible":!e}},"arrow_drop_down"),r("span",{class:{"md-date-picker__menu-caret-glyph":true,"material-symbols-outlined":true,"md-date-picker__menu-caret-glyph--up":true,"md-date-picker__menu-caret-glyph--visible":e}},"arrow_drop_up"))}restoreMenuFocus(e){if(!e)return;const t=()=>e.focus();if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>requestAnimationFrame(t)))}else{t()}}getDockedSelectionMenuScrollEl(e){const t=e.shadowRoot;if(!t)return null;return t.querySelector(".md-menu__scroll-shadow")??t.querySelector(".md-menu__surface")}getDockedSelectionMenuTarget(e){const t=e==="month"?"month-menu":"year-menu";const i=this.panelEl?.querySelector(`[part="${t}"]`);if(!i)return null;return i.querySelector("md-menu-item[selected]")??i.querySelector(`md-menu-item[part*="${e}-option-selected"]`)??i.querySelector("md-menu-item")}scrollDockedSelectionMenuIntoView(e){const t=e==="month"?"month-menu":"year-menu";const i=this.panelEl?.querySelector(`[part="${t}"]`);if(!i)return;const r=this.getDockedSelectionMenuTarget(e);if(!r)return;const a=this.getDockedSelectionMenuScrollEl(i);if(a){const e=a.getBoundingClientRect();const t=r.getBoundingClientRect();const i=t.top+t.height/2;const n=e.top+e.height/2;a.scrollTop+=i-n;return}if(typeof r.scrollIntoView==="function"){r.scrollIntoView({block:"center",inline:"nearest"})}}afterDockedSelectionMenuPaint(e){const t=()=>{this.scrollDockedSelectionMenuIntoView(e);this.getDockedSelectionMenuTarget(e)?.focus()};const i=this.selectionBloomInMs();if(i>0){void this.delay(i).then(t);return}if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>requestAnimationFrame(t)))}else{t()}}calculateModalYearGridScrollTop(){const e=3;const t=36;const i=12;const r=8;const a=16;const n=288;const{minYear:s,maxYear:o}=this.getYearListBounds();const d=o-s+1;const l=Math.max(0,Math.min(this.viewYear-s,d-1));const c=Math.floor(l/e);const h=Math.ceil(d/e);const m=t+i;const p=r+h*t+Math.max(0,h-1)*i+a;const u=r+c*m;const f=u+t/2;const _=f-n/2;const k=Math.max(0,p-n);return Math.max(0,Math.min(_,k))}getModalYearGridScrollEl(){const e=this.panelEl?.querySelector('[part="year-grid-wrap"]');if(!e)return null;return e.querySelector(".md-date-picker__year-grid-scroll")??null}scrollModalYearGridIntoView(){const e=this.getModalYearGridScrollEl();if(!e)return;e.scrollTop=this.calculateModalYearGridScrollTop();const t=e.querySelector(`[data-year="${this.viewYear}"]`)??e.querySelector('[part~="year-selected"]');if(!t)return;const i=e.getBoundingClientRect();const r=t.getBoundingClientRect();const a=r.top+r.height/2;const n=i.top+i.height/2;e.scrollTop+=a-n}afterModalYearGridPaint(){const e=()=>this.scrollModalYearGridIntoView();this.scrollModalYearGridIntoView();if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>requestAnimationFrame(e)))}else{e()}}prefersReducedMotion(){return typeof window!=="undefined"&&(window.matchMedia?.("(prefers-reduced-motion: reduce)")?.matches??false)}selectionBloomInMs(){return this.prefersReducedMotion()?0:O}selectionBloomOutMs(){return this.prefersReducedMotion()?0:q}calendarBloomInMs(){return this.prefersReducedMotion()?0:K}panelBloomOutMs(){return this.prefersReducedMotion()?0:R}delay(e){if(e<=0)return Promise.resolve();return new Promise((t=>setTimeout(t,e)))}beginDockedCalendarBloom(){if(this.prefersReducedMotion()){this.dockedCalendarBloom=false;return}this.dockedCalendarBloom=true;void this.delay(this.calendarBloomInMs()).then((()=>{if(!this.monthMenuOpen&&!this.yearMenuOpen&&!this.selectionMenuClosing){this.dockedCalendarBloom=false;this.positionDockedPanel()}}))}clearDockedCalendarBloom(){this.dockedCalendarBloom=false}beginModalCalendarBloom(){if(this.prefersReducedMotion()||this.isDocked){this.modalCalendarBloom=false;return}this.modalCalendarBloom=true;void this.delay(this.calendarBloomInMs()).then((()=>{if(this.viewMode==="calendar"&&!this.yearViewClosing){this.modalCalendarBloom=false}}))}clearModalCalendarBloom(){this.modalCalendarBloom=false}async waitForSelectionMenuClose(e){while(this.selectionMenuClosing===e){await this.delay(16)}}async toggleMonthMenuAsync(){if(this.monthMenuOpen){await this.closeDockedSelectionMenu("month",{bloomCalendar:true,restoreFocus:true});return}if(this.yearMenuOpen){this.clearDockedCalendarBloom();this.selectionMenuClosing=null;this.menuRestoreFocus=null;this.monthMenuOpen=true;this.menuShouldFocus="month";this.emitMenuOpen("month");await this.closeDockedSelectionMenu("year",{bloomCalendar:false,restoreFocus:false});return}if(this.selectionMenuClosing==="year"){await this.waitForSelectionMenuClose("year")}this.openDockedMonthMenu()}async toggleYearMenuAsync(){if(this.yearMenuOpen){await this.closeDockedSelectionMenu("year",{bloomCalendar:true,restoreFocus:true});return}if(this.monthMenuOpen){this.captureYearListRange();this.clearDockedCalendarBloom();this.selectionMenuClosing=null;this.menuRestoreFocus=null;this.yearMenuOpen=true;this.menuShouldFocus="year";this.emitMenuOpen("year");await this.closeDockedSelectionMenu("month",{bloomCalendar:false,restoreFocus:false});return}if(this.selectionMenuClosing==="month"){await this.waitForSelectionMenuClose("month")}this.openDockedYearMenu()}async pickDockedSelection(e,i,r){const a=r instanceof t?r:null;if(a){await s(a)}i();await this.closeDockedSelectionMenu(e,{bloomCalendar:true,restoreFocus:false})}pickMonth(e,t){void this.pickDockedSelection("month",(()=>{this.viewMonth=e;this.emitMenuSelect("month",e,this.monthLabel(e));this.emitViewChange("month-menu")}),t)}pickYear(e,t){void this.pickDockedSelection("year",(()=>{this.viewYear=e;this.emitMenuSelect("year",e,String(e));this.emitViewChange("year-menu")}),t)}selectYear(e){if(this.isDisabledYear(e))return;this.viewYear=e;this.focusedDate=new Date(e,this.viewMonth,1);this.emitMenuSelect("year",e,String(e));this.emitViewChange("year-menu");void this.closeYearViewAnimated()}openYearView(){this.clearModalCalendarBloom();this.yearViewClosing=false;this.viewMode="year";this.captureYearListRange();this.yearGridShouldScroll=true;this.emitMenuOpen("year")}async closeYearViewAnimated(){if(this.viewMode!=="year"||this.yearViewClosing)return;if(this.prefersReducedMotion()){this.viewMode="calendar";this.clearYearListRange();return}this.yearViewClosing=true;await this.delay(this.selectionBloomOutMs());this.yearViewClosing=false;this.viewMode="calendar";this.clearYearListRange();this.beginModalCalendarBloom()}resolveNavigationKey(e){if(e.key==="PageUp"||e.code==="PageUp")return"PageUp";if(e.key==="PageDown"||e.code==="PageDown")return"PageDown";if(e.altKey&&!e.shiftKey&&!e.ctrlKey&&!e.metaKey){if(e.key==="ArrowUp"||e.code==="ArrowUp")return"PageUp";if(e.key==="ArrowDown"||e.code==="ArrowDown")return"PageDown"}return e.key}asEventElement(e){if(e==null||typeof e!=="object")return null;if(!("closest"in e)||typeof e.closest!=="function"){return null}return e}isEditableKeyTarget(e){const t=this.asEventElement(e);if(!t)return false;const i=t.closest('input:not([readonly]):not([disabled]), textarea:not([disabled]), [contenteditable="true"]');return!!i}isInsideSelectionMenu(e){return!!this.findInPickerTree(e,'[part="month-menu"]')||!!this.findInPickerTree(e,'[part="year-menu"]')}findInPickerTree(e,t){const i=this.asEventElement(e);if(!i)return null;let r=i;while(r){try{if(r.matches(t))return r}catch{}const e=r.getRootNode();if(e instanceof ShadowRoot){r=e.host}else{r=r.parentElement}}return null}isDayGridKeyTarget(e){if(this.findInPickerTree(e,"[data-date]"))return true;if(typeof document!=="undefined"){return!!this.findInPickerTree(document.activeElement,"[data-date]")}return false}isDockedMenuToggleKey(e){if(!this.isDocked||!e.shiftKey||e.ctrlKey||e.metaKey||e.altKey)return false;const t=e.key.toLowerCase();return t==="m"||t==="y"}isCalendarNavigationKey(e){const t=this.resolveNavigationKey(e);if(t==="ArrowRight"||t==="ArrowLeft"||t==="ArrowDown"||t==="ArrowUp"||t==="Home"||t==="End"||t==="PageUp"||t==="PageDown"||t==="Enter"||t===" "){return true}return this.isDockedMenuToggleKey(e)}canHandleCalendarKeyDown(e,t){if(!this.open||e.defaultPrevented)return false;if(this.viewMode!=="calendar"||this.inputMode)return false;const i=this.isDockedMenuToggleKey(e);if(!i&&(this.monthMenuOpen||this.yearMenuOpen||this.selectionMenuClosing)){return false}if(!this.isCalendarNavigationKey(e))return false;const r=t??e.target;if(this.isEditableKeyTarget(r)){if(!(this.hasField&&this.isTriggerFieldTarget(r)))return false;if(this.resolveNavigationKey(e)==="Enter")return false}if(!i&&this.isInsideSelectionMenu(r))return false;const a=this.resolveNavigationKey(e);if(a==="Enter"||a===" "){if(!this.isDayGridKeyTarget(r)&&!this.isDayGridKeyTarget(e.target)){return false}}return true}getEventPathNodes(e){if(typeof e.composedPath==="function"){return e.composedPath()}const t=[];let i=e.target;while(i){t.push(i);const e=i.getRootNode();if(e instanceof ShadowRoot){i=e.host}else{i=i.parentNode}}return t}isNodeInPicker(e){if(e==null||typeof e!=="object"||!("nodeType"in e))return false;let t=e;while(t){if(t===this.el||t===this.panelEl)return true;const e=t.getRootNode();if(e instanceof ShadowRoot){t=e.host}else{t=t.parentNode}}return false}isEventInPicker(e){if(!this.open)return false;if(this.getEventPathNodes(e).includes(this.el))return true;if(typeof document!=="undefined"){if(this.isNodeInPicker(document.activeElement))return true;if(this.panelPointerEngaged)return true}return false}isTriggerFieldTarget(e){return this.isNodeInPicker(e)&&!this.isNodeInPanel(e)}resolveCalendarKeyTarget(e){if(typeof document!=="undefined"){const e=document.activeElement;if(e&&this.isNodeInPanel(e))return e}if(e.target&&this.isNodeInPicker(e.target))return e.target;if(typeof document!=="undefined"){const e=document.activeElement;if(e&&this.isNodeInPicker(e))return e}return this.panelEl??null}shouldPanelClaimFocus(e){const t=this.asEventElement(e);if(!t)return true;if(t.closest('button, [role="button"], input, textarea, [contenteditable="true"], md-menu-item, a[href]')){return false}return true}isNodeInPanel(e){if(!this.panelEl||e==null||typeof e!=="object"||!("nodeType"in e)){return false}let t=e;while(t){if(t===this.panelEl)return true;const e=t.getRootNode();if(e instanceof ShadowRoot){t=e.host}else{t=t.parentNode}}return false}tryCommitTriggerFieldOnEnter(e){if(this.disabled||!this.hasField||e.key!=="Enter")return false;const t=e.target;if(!t||!this.isNodeInPicker(t))return false;if(!this.isEditableKeyTarget(t)||!this.isTriggerFieldTarget(t))return false;e.preventDefault();e.stopPropagation();this.syncInputDraftFromField(t);this.onFieldCommit();return true}tryCommitDialogInputOnEnter(e){if(this.disabled||!this.inputMode||e.key!=="Enter")return false;const t=e.target;if(!t||!this.isEditableKeyTarget(t))return false;const i=this.asEventElement(t);if(!i?.closest('[part="entry-input"]'))return false;e.preventDefault();e.stopPropagation();this.syncInputDraftFromField(t);this.commitDialogInput();if(this.error)return true;this.commit();return true}routePickerKeyDown(e,t=false){if(e.defaultPrevented||this.panelClosing)return;if(this.tryCommitDialogInputOnEnter(e))return;if(this.tryCommitTriggerFieldOnEnter(e))return;if(!this.open)return;if(!t&&!this.isEventInPicker(e))return;if(e.key==="Escape"){e.preventDefault();if(this.isDocked&&(this.monthMenuOpen||this.yearMenuOpen)){this.closeMenus(null,true);return}this.requestDismiss();return}if(this.canHandleCalendarKeyDown(e,this.resolveCalendarKeyTarget(e))){this.handleCalendarKeyDown(e)}}handleDocumentKeyDown(e){this.routePickerKeyDown(e)}handleDocumentPointerDown(e){if(!this.open||this.panelClosing)return;if(!this.isDocked||!this.outsideClickDismissible)return;if(this.getEventPathNodes(e).includes(this.el))return;if(this.isNodeInPicker(e.target))return;this.requestDismiss()}handleHostKeyDown(e){this.routePickerKeyDown(e,true)}swallowNestedMdOpen(e){if((e.composedPath?.()[0]??e.target)!==this.el){e.stopImmediatePropagation()}}swallowNestedMdClose(e){if((e.composedPath?.()[0]??e.target)!==this.el){e.stopImmediatePropagation()}}focusFocusedDay(){const e=v(this.focusedDate);const t=this.panelEl?.querySelector(`[data-date="${e}"]`);if(!t)return;const i=()=>t.focus();if(typeof requestAnimationFrame==="function"){requestAnimationFrame((()=>requestAnimationFrame(i)))}else{i()}}trapTab(e){const t=this.panelEl;if(!t)return;const i=Array.from(t.querySelectorAll('button:not([disabled]), [href], input:not([disabled]), [tabindex]:not([tabindex="-1"])')).filter((e=>e.offsetParent!==null||e===document.activeElement));if(i.length===0)return;const r=i[0];const a=i[i.length-1];const n=this.el.shadowRoot?.activeElement??null;if(e.shiftKey&&n===r){e.preventDefault();a.focus()}else if(!e.shiftKey&&n===a){e.preventDefault();r.focus()}}componentDidRender(){if(this.isDocked&&this.open&&!this.panelClosing&&!this.selectionMenuClosing&&!this.dockedCalendarBloom){this.positionDockedPanel()}if(this.menuShouldFocus){const e=this.menuShouldFocus;this.menuShouldFocus=null;this.afterDockedSelectionMenuPaint(e);return}if(this.yearGridShouldScroll){this.yearGridShouldScroll=false;this.afterModalYearGridPaint();return}if(this.menuRestoreFocus){const e=this.menuRestoreFocus;this.menuRestoreFocus=null;const t=e==="month"?this.monthMenuButtonEl:this.yearMenuButtonEl;this.restoreMenuFocus(t);return}if(this.entryInputShouldFocus&&this.inputMode){this.entryInputShouldFocus=false;const e=this.entryTextFieldEl?.shadowRoot?.querySelector(".md-text-field__input");if(e instanceof t){e.focus()}return}if(this.open&&this.gridShouldFocus&&this.viewMode==="calendar"&&!this.inputMode&&!this.monthMenuOpen&&!this.yearMenuOpen){this.focusFocusedDay();this.gridShouldFocus=false}}renderTextFieldTrigger(){const e=F(this.value);const t=this.focused?this.inputDraft:this.formatField(e);const i=this.error&&this.errorText?"":this.supportingText||this.dateFormatHint();return r("md-text-field",{class:"md-date-picker__textfield",part:"field",variant:this.fieldVariant,label:this.label,value:t,supportingText:i,error:this.error,errorText:this.errorText,reserveSupportingSpace:this.reserveSupportingSpace,disabled:this.disabled,required:this.required,appearFocused:this.open,onFocusin:()=>{this.focused=true;if(!this.error)this.seedFieldDraftFromValue()},onFocusout:()=>{this.focused=false},onKeyDown:this.textFieldKeyDown,onMdInput:e=>{this.inputDraft=e.detail;this.mdInput.emit({value:e.detail})},onMdChange:e=>{this.inputDraft=e.detail;this.onFieldCommit()}},this.hasSlottedLeading&&r("slot",{name:"leading-icon",slot:"leading-icon"}),this.clearable&&!!this.value&&!this.disabled&&r("md-icon-button",{slot:"trailing-icon",class:"md-date-picker__clear-button",part:"clear-button",variant:"standard",icon:"close","aria-label":this.clearLabel,onClick:e=>{e.stopPropagation();void this.clear()}}),r("md-icon-button",{slot:"trailing-icon",class:"md-date-picker__calendar-button",part:"calendar-button",variant:this.triggerExpanded?"tonal":"standard",icon:this.hasSlottedCalendarIcon?"":this.calendarIcon,"aria-label":this.triggerExpanded?this.closeCalendarLabel:this.openCalendarLabel,"aria-haspopup":"dialog","aria-expanded":this.triggerExpanded?"true":"false",disabled:this.disabled,ref:e=>this.triggerEl=e,onMdClick:()=>this.open?this.close():this.show()},this.hasSlottedCalendarIcon&&r("slot",{name:"calendar-icon",slot:""})))}renderModalNavChevron(e,t){return r("md-tooltip",{class:"md-date-picker__nav-chevron-tooltip",text:this.navTooltipText("month",e),showDelay:0,position:"bottom",offset:U},r("md-icon-button",{class:"md-date-picker__directional-icon md-date-picker__nav-chevron",part:e==="prev"?"prev-button":"next-button",size:"sm",icon:e==="prev"?"chevron_left":"chevron_right","aria-label":this.navActionLabel("month",e),onClick:t}))}modalMonthYearTooltipText(e,t){return`${this.formatMonthYear(e,t)} · ${this.chooseMonthAndYearLabel}`}renderNav(e=false){const t=e?T(new Date(this.viewYear,this.viewMonth,1),1).getFullYear():this.viewYear;const i=e?T(new Date(this.viewYear,this.viewMonth,1),1).getMonth():this.viewMonth;const a=!e&&(this.viewMode==="year"||this.yearViewClosing);const n=r("md-button",{class:{"md-date-picker__menu-button":true,"md-date-picker__menu-button--expanded":a},part:"month-toggle",variant:"text",size:"sm",toggle:true,selected:a,trailingIcon:e?undefined:this.dockedMenuTrailingIcon(a),suppressExpandIconFlip:true,mirrorIcon:a,"aria-label":this.chooseMonthYearLabel,"aria-expanded":a?"true":"false",disabled:e,onMdClick:t=>{t.preventDefault();if(!e)this.toggleYearView()}},this.formatMonthYear(t,i),!e&&this.renderDockedMenuTrailingCaret(a));return r("div",{class:"md-date-picker__nav",part:"nav"},e?n:r("md-tooltip",{class:"md-date-picker__menu-button-tooltip",text:this.modalMonthYearTooltipText(t,i),showDelay:0,position:"bottom",offset:H},n),this.viewMode==="calendar"&&r("div",{class:"md-date-picker__nav-buttons"},this.renderModalNavChevron("prev",(()=>this.goToMonth(-1,true))),this.renderModalNavChevron("next",(()=>this.goToMonth(1,true)))))}renderDockedNavChevron(e,t,i,a){return r("span",{class:"md-date-picker__nav-chevron-slot",part:`${e}-${t}-chevron-slot`},r("md-tooltip",{class:{"md-date-picker__nav-chevron-tooltip":true,"md-date-picker__nav-chevron--visible":i},text:this.navTooltipText(t,e),showDelay:0,position:"bottom",offset:U},r("md-icon-button",{class:"md-date-picker__directional-icon md-date-picker__nav-chevron",part:`${e}-${t}-button`,size:"sm",icon:e==="prev"?"chevron_left":"chevron_right","aria-label":this.navActionLabel(t,e),disabled:!i,onClick:i?a:undefined})),r("span",{class:{"md-date-picker__nav-chevron-spacer":true,"md-date-picker__nav-chevron--visible":!i},part:`${e}-${t}-chevron-spacer`,"aria-hidden":"true"}))}renderDockedNav(){const e=new Intl.DateTimeFormat(this.loc,{month:"short"}).format(new Date(this.viewYear,this.viewMonth,1));const t=this.isDockedMonthMenuExpanded();const i=this.isDockedYearMenuExpanded();return r("div",{class:"md-date-picker__docked-nav",part:"nav"},r("div",{class:{"md-date-picker__nav-group":true,"md-date-picker__nav-group--month":true,"md-date-picker__nav-group--selection-open":t}},this.renderDockedNavChevron("prev","month",!i,(()=>this.goToMonth(-1,true))),r("md-tooltip",{class:"md-date-picker__menu-button-tooltip",text:this.menuTooltipText("month"),showDelay:0,position:"bottom",offset:H},r("md-button",{class:{"md-date-picker__menu-button":true,"md-date-picker__menu-button--expanded":t},part:"month-menu-button",variant:"text",size:"sm",toggle:true,selected:t,trailingIcon:this.dockedMenuTrailingIcon(t),suppressExpandIconFlip:true,mirrorIcon:t,"aria-label":this.chooseMonthLabel,"aria-haspopup":"menu","aria-expanded":t?"true":"false",ref:e=>this.monthMenuButtonEl=e,onMdClick:e=>{e.preventDefault();this.toggleMonthMenu()}},e,this.renderDockedMenuTrailingCaret(t))),this.renderDockedNavChevron("next","month",!i,(()=>this.goToMonth(1,true)))),r("div",{class:{"md-date-picker__nav-group":true,"md-date-picker__nav-group--year":true,"md-date-picker__nav-group--selection-open":i}},this.renderDockedNavChevron("prev","year",!t,(()=>this.goToYear(-1,true))),r("md-tooltip",{class:"md-date-picker__menu-button-tooltip",text:this.menuTooltipText("year"),showDelay:0,position:"bottom",offset:H},r("md-button",{class:{"md-date-picker__menu-button":true,"md-date-picker__menu-button--expanded":i},part:"year-menu-button",variant:"text",size:"sm",toggle:true,selected:i,trailingIcon:this.dockedMenuTrailingIcon(i),suppressExpandIconFlip:true,mirrorIcon:i,"aria-label":this.chooseYearLabel,"aria-haspopup":"menu","aria-expanded":i?"true":"false",ref:e=>this.yearMenuButtonEl=e,onMdClick:e=>{e.preventDefault();this.toggleYearMenu()}},this.viewYear,this.renderDockedMenuTrailingCaret(i))),this.renderDockedNavChevron("next","year",!t,(()=>this.goToYear(1,true)))))}renderDockedSelectionDivider(){return r("div",{class:"md-date-picker__selection-divider",part:"selection-divider",role:"separator","aria-hidden":"true"})}renderDockedMonthMenu(e){const t=Array.from({length:12},((e,t)=>new Intl.DateTimeFormat(this.loc,{month:"long"}).format(new Date(2024,t,1))));return r("div",{class:{"md-date-picker__selection-menu-wrap":true,"md-date-picker__selection-menu-wrap--bloom-out":e},part:"month-menu-wrap"},r("md-menu",{class:"md-date-picker__selection-menu md-menu--inline-fill",part:"month-menu",exportparts:"menu-viewport:month-menu-viewport",variant:"baseline",open:true,quick:true,persistent:true,autoFocus:false,onMdClose:this.onMonthMenuClose},t.map(((e,t)=>{const i=t===this.viewMonth;return r("md-menu-item",{part:i?"month-option month-option-selected":"month-option",headline:e,type:"radio","check-position":"start","keep-open":true,selected:i,onMdClick:e=>this.pickMonth(t,e.target)})}))))}renderDockedYearMenu(e){const t=this.viewYear;const{minYear:i,maxYear:a}=this.getYearListBounds();const n=[];for(let e=i;e<=a;e++)n.push(e);return r("div",{class:{"md-date-picker__selection-menu-wrap":true,"md-date-picker__selection-menu-wrap--year":true,"md-date-picker__selection-menu-wrap--bloom-out":e},part:"year-menu-wrap"},r("md-menu",{class:"md-date-picker__selection-menu md-menu--inline-fill",part:"year-menu",exportparts:"menu-viewport:year-menu-viewport",variant:"baseline",open:true,quick:true,persistent:true,autoFocus:false,onMdClose:this.onYearMenuClose},n.map((e=>{const i=e===t;return r("md-menu-item",{part:i?"year-option year-option-selected":"year-option",headline:String(e),type:"radio","check-position":"start","keep-open":true,selected:i,onMdClick:t=>this.pickYear(e,t.target)})}))))}renderCalendar(e,t,i=true,a=false){const n=this.resolvedFirstDay();const s=j(this.locale,n,"narrow");const o=j(this.locale,n,"long");const d=L(e,t,n);const l=new Date;const c=this.formatMonthYear(e,t);return r("div",{class:{"md-date-picker__calendar":true,"md-date-picker__calendar--docked-bloom-in":a&&this.isDocked,"md-date-picker__calendar--content-bloom-in":a&&!this.isDocked},part:"calendar",role:"grid","aria-label":c},r("div",{class:"md-date-picker__weekdays",part:"weekdays",role:"row","aria-hidden":"true"},s.map(((e,t)=>r("md-tooltip",{class:"md-date-picker__weekday-tooltip",text:o[t],showDelay:0,position:"bottom",offset:3},r("span",{class:"md-date-picker__weekday",part:"weekday",role:"presentation"},e))))),r("div",{class:{"md-date-picker__grid":true,"md-date-picker__grid--slide-forward":this.gridSlideDirection==="forward","md-date-picker__grid--slide-backward":this.gridSlideDirection==="backward"},part:"grid",role:"rowgroup",onAnimationEnd:this.onGridSlideAnimationEnd},Array.from({length:d.length/7},((e,t)=>r("div",{class:"md-date-picker__week",part:"week",role:"row"},d.slice(t*7,t*7+7).map((e=>this.renderDay(e,l,i))))))))}renderDay(e,t,i){const a=e.date;const n=v(a);const s=this.isDisabledDate(a);const o=A(a,t);const d=A(a,this.focusedDate)&&i;const l=!!this.pendingDate&&A(a,this.pendingDate);const c=!l&&!o&&!s&&!e.outOfMonth;const h=["day"];if(l)h.push("day-selected");if(o)h.push("day-today");if(s)h.push("day-disabled");if(e.outOfMonth)h.push("day-outside");if(c)h.push("day-unselected");return r("md-button",{class:{"md-date-picker__day":true,"md-date-picker__day--selected":l,"md-date-picker__day--today":o,"md-date-picker__day--disabled":s,"md-date-picker__day--outside":e.outOfMonth,"md-date-picker__day--unselected":c},part:h.join(" "),variant:l?"filled":"text",size:"sm",shape:"square",selected:l,roleOverride:"gridcell",groupTabindex:d?0:-1,"data-date":n,"aria-selected":l?"true":"false","aria-disabled":s?"true":undefined,"aria-current":o?"date":undefined,"aria-label":this.formatFullDate(a),disabled:s,onMdClick:()=>this.selectDay(e),onKeyDown:i?this.handleDayKeyDown:undefined},a.getDate())}renderYearGrid(e=false){const t=this.viewYear;const{minYear:i,maxYear:a}=this.getYearListBounds();const n=[];for(let e=i;e<=a;e++)n.push(e);return r("div",{class:{"md-date-picker__year-grid-wrap":true,"md-date-picker__year-grid-wrap--bloom-out":e},part:"year-grid-wrap"},r("div",{class:"md-date-picker__year-grid-scroll",part:"year-grid-scroll year-grid-viewport"},r("div",{class:"md-date-picker__year-grid",part:"year-grid",role:"grid","aria-label":this.yearGridLabel},Array.from({length:Math.ceil(n.length/3)},((e,i)=>r("div",{class:"md-date-picker__year-row",part:"year-row",role:"row"},n.slice(i*3,i*3+3).map((e=>{const i=e===t;const a=this.isDisabledYear(e);const n=!i&&!a;const s=["year"];if(i)s.push("year-selected");if(a)s.push("year-disabled");if(n)s.push("year-unselected");return r("md-button",{class:{"md-date-picker__year":true,"md-date-picker__year--selected":i,"md-date-picker__year--disabled":a,"md-date-picker__year--unselected":n},part:s.join(" "),variant:i?"filled":"text",size:"sm",shape:"square",selected:i,roleOverride:"gridcell","data-year":String(e),"aria-selected":i?"true":"false","aria-disabled":a?"true":undefined,"aria-label":String(e),disabled:a,onMdClick:()=>this.selectYear(e)},e)}))))))))}renderDialogInput(){return r("div",{class:"md-date-picker__entry",part:"entry"},r("md-text-field",{class:"md-date-picker__entry-textfield",part:"entry-input",variant:"outlined",label:this.label,placeholder:this.placeholder||this.dateFormatHint(),value:this.inputDraft,error:this.error,errorText:this.errorText,reserveSupportingSpace:this.reserveSupportingSpace,ref:e=>this.entryTextFieldEl=e,onKeyDown:this.entryTextFieldKeyDown,onMdInput:e=>{this.inputDraft=e.detail;this.mdInput.emit({value:e.detail})}}))}renderHeadline(){if(this.inputMode){return this.enterDatesLabel}return this.pendingDate?this.formatHeadline(this.pendingDate):this.selectDateLabel}renderHeader(){if(this.hasSlottedHeader){return r("div",{class:"md-date-picker__header",part:"header"},r("slot",{name:"header"}))}const e=this.headline;const t=this.inputMode?this.toggleCalendarLabel:this.toggleTextLabel;return r("div",{class:"md-date-picker__header",part:"header"},r("div",{class:"md-date-picker__header-supporting",part:"supporting"},e),r("div",{class:"md-date-picker__header-row"},r("div",{class:"md-date-picker__headline",part:"headline"},this.renderHeadline()),this.variant!=="docked"&&r("md-tooltip",{class:"md-date-picker__mode-toggle-tooltip",text:t,showDelay:0,position:"bottom"},r("md-icon-button",{class:"md-date-picker__mode-toggle",part:"mode-toggle",icon:this.inputMode?"calendar_today":"edit","aria-label":t,onClick:this.toggleInputMode}))))}get hasActionRow(){return this.hasSlottedActions||!this.commitOnSelect||this.inputMode}renderActions(){if(!this.hasActionRow)return null;if(this.hasSlottedActions){return r("div",{class:"md-date-picker__actions",part:"actions"},r("slot",{name:"actions"}))}return r("div",{class:"md-date-picker__actions",part:"actions"},r("md-button",{class:"md-date-picker__action-btn",variant:"text",size:"sm",onMdClick:()=>this.cancel(),part:"cancel-button"},this.cancelLabel),r("md-button",{class:"md-date-picker__action-btn md-date-picker__action-btn--primary",variant:"text",size:"sm",onMdClick:()=>{if(this.inputMode){this.commitDialogInput();if(this.error)return}this.commit()},part:"ok-button"},this.okLabel))}renderBody(){if(this.inputMode){return r("div",{class:{"md-date-picker__body":true,"md-date-picker__body--input-mode":true,"md-date-picker__body--no-actions":!this.hasActionRow},part:"body"},this.renderDialogInput())}const e=this.viewMode==="year"||this.yearViewClosing;const t=this.viewMode==="calendar"&&!this.yearViewClosing;const i=this.dockedCalendarBloom||this.modalCalendarBloom;if(e&&!this.isDocked){return r("div",{class:{"md-date-picker__body":true,"md-date-picker__body--year-view":true,"md-date-picker__body--no-actions":!this.hasActionRow},part:"body"},this.renderNav(),this.renderYearGrid(this.yearViewClosing))}if(this.isDocked){const e=this.monthMenuOpen||this.yearMenuOpen||!!this.selectionMenuClosing;const t=this.dockedSelectionMenuToShow();const i=t==="year";const a=t==="month";return r("div",{class:{"md-date-picker__body":true,"md-date-picker__body--docked":true,"md-date-picker__body--docked-selection":e,"md-date-picker__body--no-actions":!this.hasActionRow},part:"body"},this.renderDockedNav(),e&&r("div",{class:"md-date-picker__docked-below-nav",part:"docked-below-nav"},this.renderDockedSelectionDivider()),a&&this.renderDockedMonthMenu(this.selectionMenuClosing==="month"),i&&this.renderDockedYearMenu(this.selectionMenuClosing==="year"),!e&&this.renderCalendar(this.viewYear,this.viewMonth,true,this.dockedCalendarBloom))}return r("div",{class:{"md-date-picker__body":true,"md-date-picker__body--no-actions":!this.hasActionRow},part:"body"},this.renderNav(),t&&this.renderCalendar(this.viewYear,this.viewMonth,true,i))}renderPanel(e=false){const t=e&&this.dockedPanelMaxBlockSize?{maxBlockSize:this.dockedPanelMaxBlockSize}:undefined;return r("div",{class:{"md-date-picker__panel":true,"md-date-picker__panel--docked":e,"md-date-picker__panel--align-end":e&&this.dockedPanelAlign==="end","md-date-picker__panel--placement-above":e&&this.dockedPanelPlacement==="above","md-date-picker__panel--input-mode":!e&&this.inputMode,"md-date-picker__panel--bloom-in":!this.panelClosing,"md-date-picker__panel--bloom-out":this.panelClosing},part:"panel",role:"dialog","aria-modal":e?undefined:"true","aria-label":this.label,style:t,ref:e=>this.panelEl=e,tabindex:"-1",onMouseDown:this.onPanelMouseDown,onKeyDown:this.onPanelKeyDown},!e&&this.renderHeader(),this.renderBody(),this.renderActions())}renderModal(){return r("div",{class:{"md-date-picker__modal":true,"md-date-picker__modal--closing":this.panelClosing},part:"modal"},r("div",{class:"md-date-picker__scrim",part:"scrim",onClick:()=>this.scrimDismissible&&this.requestDismiss()}),this.renderPanel(false))}render(){const e=this.open||this.panelClosing;const t=this.open&&!this.panelClosing;return r(a,{key:"af7d2176a6cd828de541eb157cce9f3686efc56f",class:{"md-date-picker":true,[`md-date-picker--${this.variant}`]:true,"md-date-picker--open":t,"md-date-picker--panel-closing":this.panelClosing,"md-date-picker--disabled":this.disabled,"md-date-picker--error":this.error},"aria-disabled":this.disabled?"true":null},this.isDocked?r("div",{class:"md-date-picker__docked-anchor",ref:e=>this.dockedAnchorEl=e},this.renderTextFieldTrigger(),e&&r("div",{class:{"md-date-picker__docked-popup":true,"md-date-picker__docked-popup--above":this.dockedPanelPlacement==="above"}},this.renderPanel(true))):this.hasField&&this.renderTextFieldTrigger(),e&&!this.isDocked&&this.renderModal())}syncFormValue(){o(this.internals,this.value||null);d(this.internals,{missing:this.required&&!this.value,missingMessage:this.valueMissingLabel,customMessage:this.customValidityMessage});this.emitValidityChange()}formResetCallback(){this.value=this.defaultValue}async getValidity(){return l(this.internals)}emitValidityChange(){const e=l(this.internals);const t=`${e.valid}|${e.validationMessage}`;if(this.lastValidityKey===t)return;const i=this.lastValidityKey!==null;this.lastValidityKey=t;if(i)this.mdValidityChange.emit(e)}async checkValidity(){return c(this.internals)}async reportValidity(){return h(this.internals)}async setCustomValidity(e){this.customValidityMessage=e;this.syncFormValue()}static get formAssociated(){return true}get el(){return this}static get watchers(){return{value:[{onBoundsChange:0},{syncFormValue:0}],min:[{onBoundsChange:0}],max:[{onBoundsChange:0}],dateSeparator:[{onDateSeparatorChange:0}],open:[{onOpenChange:0}],required:[{syncFormValue:0}],valueMissingLabel:[{syncFormValue:0}]}}static get style(){return B()}},[321,"md-date-picker",{valueMissingLabel:[1,"value-missing-label"],reserveSupportingSpace:[4,"reserve-supporting-space"],variant:[513],value:[1537],label:[1],placeholder:[1],min:[1],max:[1],open:[1540],disabled:[516],required:[516],clearable:[516],clearLabel:[1,"clear-label"],error:[1540],errorText:[1025,"error-text"],supportingText:[1,"supporting-text"],locale:[1],dateSeparator:[1,"date-separator"],fieldVariant:[1,"field-variant"],firstDayOfWeek:[2,"first-day-of-week"],headline:[1],cancelLabel:[1,"cancel-label"],okLabel:[1,"ok-label"],selectDateLabel:[1,"select-date-label"],enterDatesLabel:[1,"enter-dates-label"],invalidDateLabel:[1,"invalid-date-label"],previousMonthLabel:[1,"previous-month-label"],nextMonthLabel:[1,"next-month-label"],previousYearLabel:[1,"previous-year-label"],nextYearLabel:[1,"next-year-label"],chooseMonthLabel:[1,"choose-month-label"],chooseYearLabel:[1,"choose-year-label"],chooseMonthYearLabel:[1,"choose-month-year-label"],chooseMonthAndYearLabel:[1,"choose-month-and-year-label"],toggleCalendarLabel:[1,"toggle-calendar-label"],toggleTextLabel:[1,"toggle-text-label"],openCalendarLabel:[1,"open-calendar-label"],closeCalendarLabel:[1,"close-calendar-label"],calendarIcon:[1,"calendar-icon"],yearGridLabel:[1,"year-grid-label"],scrimDismissible:[4,"scrim-dismissible"],outsideClickDismissible:[4,"outside-click-dismissible"],commitOnSelect:[516,"commit-on-select"],name:[1],isDateDisabled:[16],density:[514],focused:[32],inputDraft:[32],viewYear:[32],viewMonth:[32],viewMode:[32],inputMode:[32],focusedDate:[32],pendingDate:[32],hasSlottedHeader:[32],hasSlottedActions:[32],hasSlottedLeading:[32],hasSlottedCalendarIcon:[32],monthMenuOpen:[32],yearMenuOpen:[32],selectionMenuClosing:[32],dockedCalendarBloom:[32],gridSlideDirection:[32],yearViewClosing:[32],modalCalendarBloom:[32],panelClosing:[32],dockedPanelAlign:[32],dockedPanelPlacement:[32],dockedPanelMaxBlockSize:[32],show:[64],close:[64],clear:[64],focusInput:[64],getValidity:[64],checkValidity:[64],reportValidity:[64],setCustomValidity:[64]},[[6,"keydown","handleDocumentKeyDown"],[7,"pointerdown","handleDocumentPointerDown"],[2,"keydown","handleHostKeyDown"],[0,"mdOpen","swallowNestedMdOpen"],[0,"mdClose","swallowNestedMdClose"]],{value:[{onBoundsChange:0},{syncFormValue:0}],min:[{onBoundsChange:0}],max:[{onBoundsChange:0}],dateSeparator:[{onDateSeparatorChange:0}],open:[{onOpenChange:0}],required:[{syncFormValue:0}],valueMissingLabel:[{syncFormValue:0}]}]);G.DOCKED_POSITION_RAF_MAX=60;function X(){if(typeof customElements==="undefined"){return}const e=["md-date-picker","md-button","md-icon-button","md-menu","md-menu-item","md-ripple","md-text-field","md-tooltip"];e.forEach((e=>{switch(e){case"md-date-picker":if(!customElements.get(n(e))){customElements.define(n(e),G)}break;case"md-button":if(!customElements.get(n(e))){m()}break;case"md-icon-button":if(!customElements.get(n(e))){p()}break;case"md-menu":if(!customElements.get(n(e))){u()}break;case"md-menu-item":if(!customElements.get(n(e))){f()}break;case"md-ripple":if(!customElements.get(n(e))){_()}break;case"md-text-field":if(!customElements.get(n(e))){k()}break;case"md-tooltip":if(!customElements.get(n(e))){y()}break}}))}X();const W=G;const J=X;export{W as MdDatePicker,J as defineCustomElement};
|
|
2
2
|
//# sourceMappingURL=md-date-picker.js.map
|