@aurodesignsystem-dev/auro-formkit 0.0.0-pr1477.2 → 0.0.0-pr1480.1
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/components/bibtemplate/dist/auro-bibtemplate.d.ts +7 -0
- package/components/bibtemplate/dist/index.js +9 -1
- package/components/bibtemplate/dist/registered.js +9 -1
- package/components/checkbox/demo/customize.min.js +1 -1
- package/components/checkbox/demo/getting-started.min.js +1 -1
- package/components/checkbox/demo/index.min.js +1 -1
- package/components/checkbox/demo/pages.json +1 -1
- package/components/checkbox/demo/why-checkbox.html +57 -0
- package/components/checkbox/demo/why-checkbox.md +86 -0
- package/components/checkbox/dist/index.js +1 -1
- package/components/checkbox/dist/registered.js +1 -1
- package/components/combobox/demo/customize.min.js +236 -18
- package/components/combobox/demo/getting-started.min.js +236 -18
- package/components/combobox/demo/index.min.js +236 -18
- package/components/combobox/demo/keyboard-behavior.md +8 -68
- package/components/combobox/demo/pages.json +1 -1
- package/components/combobox/demo/why-combobox.html +57 -0
- package/components/combobox/demo/why-combobox.md +113 -0
- package/components/combobox/dist/index.js +236 -18
- package/components/combobox/dist/registered.js +236 -18
- package/components/counter/demo/customize.min.js +233 -15
- package/components/counter/demo/index.min.js +233 -15
- package/components/counter/demo/keyboard-behavior.md +1 -0
- package/components/counter/demo/pages.json +1 -1
- package/components/counter/demo/why-counter.html +57 -0
- package/components/counter/demo/why-counter.md +108 -0
- package/components/counter/dist/index.js +10 -2
- package/components/counter/dist/registered.js +10 -2
- package/components/datepicker/demo/accessibility.md +54 -3
- package/components/datepicker/demo/api.md +11 -2
- package/components/datepicker/demo/customize.html +2 -0
- package/components/datepicker/demo/customize.js +19 -0
- package/components/datepicker/demo/customize.md +72 -8
- package/components/datepicker/demo/customize.min.js +26492 -0
- package/components/datepicker/demo/design.md +3 -1
- package/components/datepicker/demo/index.js +5 -1
- package/components/datepicker/demo/index.md +85 -2
- package/components/datepicker/demo/index.min.js +2115 -184
- package/components/datepicker/demo/keyboard-behavior.md +201 -2
- package/components/datepicker/demo/pages.json +1 -1
- package/components/datepicker/demo/voiceover.md +21 -12
- package/components/datepicker/demo/why-datepicker.html +57 -0
- package/components/datepicker/demo/why-datepicker.md +133 -0
- package/components/datepicker/dist/index.js +2010 -155
- package/components/datepicker/dist/registered.js +2010 -155
- package/components/datepicker/dist/src/auro-calendar-cell.d.ts +112 -11
- package/components/datepicker/dist/src/auro-calendar-month.d.ts +37 -0
- package/components/datepicker/dist/src/auro-calendar.d.ts +177 -0
- package/components/datepicker/dist/src/auro-datepicker.d.ts +88 -0
- package/components/datepicker/dist/src/datepickerKeyboardStrategy.d.ts +5 -3
- package/components/dropdown/demo/accessibility.md +11 -0
- package/components/dropdown/demo/api.md +1 -0
- package/components/dropdown/demo/customize.md +3 -0
- package/components/dropdown/demo/customize.min.js +223 -13
- package/components/dropdown/demo/getting-started.min.js +223 -13
- package/components/dropdown/demo/index.min.js +223 -13
- package/components/dropdown/demo/keyboard-behavior.md +1 -0
- package/components/dropdown/demo/pages.json +1 -1
- package/components/dropdown/demo/why-dropdown.html +57 -0
- package/components/dropdown/demo/why-dropdown.md +97 -0
- package/components/dropdown/dist/auro-dropdown.d.ts +33 -1
- package/components/dropdown/dist/index.js +223 -13
- package/components/dropdown/dist/registered.js +223 -13
- package/components/form/demo/customize.min.js +2726 -219
- package/components/form/demo/getting-started.min.js +2726 -219
- package/components/form/demo/index.min.js +2726 -219
- package/components/form/demo/pages.json +1 -1
- package/components/form/demo/registerDemoDeps.min.js +2726 -219
- package/components/form/demo/why-form.html +57 -0
- package/components/form/demo/why-form.md +101 -0
- package/components/input/demo/customize.min.js +1 -1
- package/components/input/demo/getting-started.min.js +1 -1
- package/components/input/demo/index.min.js +1 -1
- package/components/input/demo/pages.json +1 -1
- package/components/input/demo/why-input.html +57 -0
- package/components/input/demo/why-input.md +121 -0
- package/components/input/dist/index.js +1 -1
- package/components/input/dist/registered.js +1 -1
- package/components/menu/demo/pages.json +1 -1
- package/components/menu/demo/why-menu.html +57 -0
- package/components/menu/demo/why-menu.md +104 -0
- package/components/radio/demo/customize.min.js +2186 -0
- package/components/radio/demo/demo-support.min.js +55807 -0
- package/components/radio/demo/getting-started.js +1 -1
- package/components/radio/demo/getting-started.md +1 -1
- package/components/radio/demo/getting-started.min.js +2205 -0
- package/components/radio/demo/index.min.js +1 -1
- package/components/radio/demo/pages.json +1 -1
- package/components/radio/demo/why-radio.html +57 -0
- package/components/radio/demo/why-radio.md +92 -0
- package/components/radio/dist/index.js +1 -1
- package/components/radio/dist/registered.js +1 -1
- package/components/select/demo/customize.min.js +249 -33
- package/components/select/demo/getting-started.min.js +249 -33
- package/components/select/demo/index.min.js +249 -33
- package/components/select/demo/keyboard-behavior.md +9 -54
- package/components/select/demo/pages.json +1 -1
- package/components/select/demo/why-select.html +57 -0
- package/components/select/demo/why-select.md +128 -0
- package/components/select/dist/index.js +249 -33
- package/components/select/dist/registered.js +249 -33
- package/custom-elements.json +2446 -1502
- package/package.json +2 -2
|
@@ -7458,7 +7458,7 @@ let AuroHelpText$9 = class AuroHelpText extends i$4 {
|
|
|
7458
7458
|
}
|
|
7459
7459
|
};
|
|
7460
7460
|
|
|
7461
|
-
var formkitVersion$9 = '
|
|
7461
|
+
var formkitVersion$9 = '202605210326';
|
|
7462
7462
|
|
|
7463
7463
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
7464
7464
|
// See LICENSE in the project root for license information.
|
|
@@ -9481,7 +9481,6 @@ class UtilitiesCalendarRender {
|
|
|
9481
9481
|
.max="${elem.max}"
|
|
9482
9482
|
?noRange="${elem.noRange}"
|
|
9483
9483
|
.monthFirst="${elem.monthFirst}"
|
|
9484
|
-
.hoveredDate="${elem.hoveredDate}"
|
|
9485
9484
|
.dateTo="${elem.dateTo}"
|
|
9486
9485
|
.dateFrom="${elem.dateFrom}"
|
|
9487
9486
|
.locale="${elem.locale}"
|
|
@@ -9513,43 +9512,6 @@ var snowflakeStyle = i$7`:host([layout*=snowflake]) [auro-input]{flex:1;text-ali
|
|
|
9513
9512
|
|
|
9514
9513
|
var snowflakeColors = i$7`:host([layout=snowflake]) [auro-dropdown]:not(:is([error],.hasFocus)){--ds-auro-dropdown-trigger-border-color: transparent}`;
|
|
9515
9514
|
|
|
9516
|
-
var styleCss$7$1 = i$7`.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}:host{--calendar-width: 336px;--mobile-footer-height: 150px;--mobile-header-height: 68px;height:100vh;height:100dvh}.calendars{display:flex;flex-direction:row}.calendarNavButtons{position:absolute;top:var(--ds-size-200, 1rem);right:var(--ds-size-50, 0.25rem);left:var(--ds-size-50, 0.25rem)}.calendarNavBtn{display:flex;width:var(--ds-size-500, 2.5rem);height:var(--ds-size-500, 2.5rem);align-items:center;justify-content:center;border-width:1px;border-style:solid;border-radius:50%;cursor:pointer}.prevMonth,.nextMonth{position:absolute;top:0}.prevMonth{left:0}.nextMonth{right:0}.headerActions{padding:0 var(--ds-size-200, 1rem)}.mobileHeader{width:100%;height:var(--mobile-header-height);z-index:1;align-items:center;flex-direction:row}.headerDateFrom,.headerDateTo{display:flex;height:var(--mobile-header-height);flex:1;flex-direction:column;justify-content:center;padding:0 var(--ds-size-150, 0.75rem) 0 var(--ds-size-200, 1rem)}.mobileDateLabel{padding:var(--ds-size-25, 0.125rem) 0}.mobileFooter{display:none;width:100%;align-items:flex-end;flex-direction:column;justify-content:flex-end}.mobileFooterActions{position:relative;bottom:0;left:50%;display:none;width:calc(100% - var(--ds-size-200, 1rem)*2);align-items:flex-end;flex-direction:column;justify-content:flex-end;padding:var(--ds-size-150) calc(var(--ds-size-200, 1rem));transform:translateX(-50%)}.mobileFooterActions auro-button{width:100%}:host([isfullscreen]){width:100%;max-height:100dvh;overflow:hidden}:host([isfullscreen]) .prevMonth,:host([isfullscreen]) .nextMonth{display:none}:host([isfullscreen]) .mobileHeader,:host([isfullscreen]) .mobileFooter,:host([isfullscreen]) .mobileFooterActions{display:flex}:host([isfullscreen]) .calendarWrapper{display:flex;flex-direction:column}:host([isfullscreen]) .calendars{display:flex;flex-direction:column;flex:1;align-items:center;width:100%;overscroll-behavior:contain}:host([isfullscreen]) .calendars:after{display:block;width:100%;height:var(--mobile-footer-height);content:""}`;
|
|
9517
|
-
|
|
9518
|
-
var colorCss$7$1 = i$7`.calendarNavBtn{border-color:var(--ds-auro-calendar-nav-btn-border-color);background-color:var(--ds-auro-calendar-nav-btn-container-color);color:var(--ds-auro-calendar-nav-btn-chevron-color)}.calendarNavBtn:hover{--ds-auro-calendar-nav-btn-container-color: var(--ds-advanced-color-state-background-hover, #f2f2f2);--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}.calendarNavBtn:focus{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}.calendarNavBtn:active{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a);box-shadow:inset 0 0 0 1px var(--ds-auro-calendar-nav-btn-border-color)}.mobileHeader{background-color:var(--ds-auro-calendar-mobile-header-container-color)}.mobileDateLabel{color:var(--ds-auro-calendar-mobile-header-text-color)}:host(:not([noRange])) .headerDateTo:after{background-color:var(--ds-auro-calendar-mobile-header-divider-color)}::slotted([slot="bib.fullscreen.fromStr"]),::slotted([slot=mobileDateToStr]){color:var(--ds-auro-datepicker-placeholder-color)}@media screen and (max-width: 576px){.calendarNavBtn{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}}`;
|
|
9519
|
-
|
|
9520
|
-
var styleCss$6$1 = i$7`:focus:not(:focus-visible){outline:3px solid transparent}.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}:host{position:relative;display:block;width:calc(100% - var(--ds-size-200, 1rem) - var(--ds-size-200, 1rem));margin:0 var(--ds-size-200, 1rem)}@media screen and (min-width: 576px){:host{width:336px;padding:var(--ds-size-200, 1rem)}}@media screen and (min-width: 576px){:host(:not(:last-of-type)):after{position:absolute;top:var(--ds-size-200, 1rem);right:calc(-1*var(--ds-size-200, 1rem));height:calc(100% - var(--ds-size-200, 1rem) - var(--ds-size-200, 1rem));display:block;width:1px;content:""}}.header{display:flex;height:var(--ds-size-500, 2.5rem);margin-bottom:var(--ds-size-150, 0.75rem);align-items:center;flex-direction:row;text-align:center}.headerTitle{display:flex;align-items:center;flex:1;flex-direction:row;justify-content:center}.headerTitle div:first-child{margin-right:var(--ds-size-100, 0.5rem)}.calendarNavBtn{position:relative;display:flex;width:var(--ds-size-500, 2.5rem);height:var(--ds-size-500, 2.5rem);align-items:center;justify-content:center;border-width:1px;border-style:solid;border-radius:50%;cursor:pointer}.table{width:100%;border-collapse:collapse}.thead{margin-bottom:var(--ds-size-100, 0.5rem)}.th{display:flex;flex:1;align-items:center;justify-content:center}.tbody{width:100%;transition:all 0ms;transform:translateX(0)}@media screen and (min-width: 576px){.tbody{height:384px}}.td{flex:1;margin:0;padding:0}.tr{display:flex;flex-direction:row;width:100%}`;
|
|
9521
|
-
|
|
9522
|
-
var colorCss$6$1 = i$7`:focus:not(:focus-visible){outline:3px solid transparent}:host{background-color:var(--ds-auro-calendar-month-container-color)}@media screen and (min-width: 576px){:host(:not(:last-of-type)):after{background-color:var(--ds-auro-calendar-month-divider-color)}}.header{color:var(--ds-auro-calendar-month-header-color)}`;
|
|
9523
|
-
|
|
9524
|
-
/******************************************************************************
|
|
9525
|
-
Copyright (c) Microsoft Corporation.
|
|
9526
|
-
|
|
9527
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
9528
|
-
purpose with or without fee is hereby granted.
|
|
9529
|
-
|
|
9530
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
9531
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
9532
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
9533
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
9534
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
9535
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
9536
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
9537
|
-
***************************************************************************** */
|
|
9538
|
-
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */
|
|
9539
|
-
|
|
9540
|
-
|
|
9541
|
-
function __decorate(decorators, target, key, desc) {
|
|
9542
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
9543
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
9544
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
9545
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
9546
|
-
}
|
|
9547
|
-
|
|
9548
|
-
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
9549
|
-
var e = new Error(message);
|
|
9550
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
9551
|
-
};
|
|
9552
|
-
|
|
9553
9515
|
/**
|
|
9554
9516
|
* @module constants
|
|
9555
9517
|
* @summary Useful constants
|
|
@@ -15304,6 +15266,43 @@ function subYears(date, amount, options) {
|
|
|
15304
15266
|
return addYears(date, -1, options);
|
|
15305
15267
|
}
|
|
15306
15268
|
|
|
15269
|
+
var styleCss$7$1 = i$7`.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}:host{--calendar-width: 336px;--mobile-footer-height: 150px;--mobile-header-height: 68px;--desktop-footer-height: 80px;height:100vh;height:100dvh}.calendars{display:flex;flex-direction:row}.calendars:focus{outline:none}.calendarNavButtons{position:absolute;z-index:1;top:var(--ds-size-200, 1rem);right:var(--ds-size-50, 0.25rem);left:var(--ds-size-50, 0.25rem)}.calendarNavBtn{display:flex;width:var(--ds-size-500, 2.5rem);height:var(--ds-size-500, 2.5rem);align-items:center;justify-content:center;border-width:1px;border-style:solid;border-radius:50%;cursor:pointer}.prevMonth,.nextMonth{position:absolute;top:0}.prevMonth{left:0}.nextMonth{right:0}.headerActions{padding:0 var(--ds-size-200, 1rem)}.mobileHeader{width:100%;height:var(--mobile-header-height);z-index:1;align-items:center;flex-direction:row}.headerDateFrom,.headerDateTo{display:flex;height:var(--mobile-header-height);flex:1;flex-direction:column;justify-content:center;padding:0 var(--ds-size-150, 0.75rem) 0 var(--ds-size-200, 1rem)}.mobileDateLabel{padding:var(--ds-size-25, 0.125rem) 0}.mobileFooter{display:none;width:100%;align-items:flex-end;flex-direction:column;justify-content:flex-end}.mobileFooterActions{position:relative;bottom:0;left:50%;display:none;width:calc(100% - var(--ds-size-200, 1rem)*2);align-items:flex-end;flex-direction:column;justify-content:flex-end;padding:var(--ds-size-150) calc(var(--ds-size-200, 1rem));transform:translateX(-50%)}.mobileFooterActions auro-button{width:100%}.calendarWrapper.hasFooter{padding-bottom:var(--desktop-footer-height)}:host([isfullscreen]){width:100%;max-height:100dvh;overflow:hidden}:host([isfullscreen]) .prevMonth,:host([isfullscreen]) .nextMonth{display:none}:host([isfullscreen]) .mobileHeader,:host([isfullscreen]) .mobileFooter,:host([isfullscreen]) .mobileFooterActions{display:flex}:host([isfullscreen]) .calendarWrapper{display:flex;flex-direction:column}:host([isfullscreen]) .calendars{display:flex;flex-direction:column;flex:1;align-items:center;width:100%;overscroll-behavior:contain}:host([isfullscreen]) .calendars:after{display:block;width:100%;height:var(--mobile-footer-height);content:""}.sr-only{position:absolute;overflow:hidden;clip:rect(0, 0, 0, 0);width:1px;height:1px;margin:-1px;padding:0;border:0;white-space:nowrap}`;
|
|
15270
|
+
|
|
15271
|
+
var colorCss$7$1 = i$7`.calendarNavBtn{border-color:var(--ds-auro-calendar-nav-btn-border-color);background-color:var(--ds-auro-calendar-nav-btn-container-color);color:var(--ds-auro-calendar-nav-btn-chevron-color)}.calendarNavBtn:hover{--ds-auro-calendar-nav-btn-container-color: var(--ds-advanced-color-state-background-hover, #f2f2f2);--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}.calendarNavBtn:focus{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}.calendarNavBtn:active{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a);box-shadow:inset 0 0 0 1px var(--ds-auro-calendar-nav-btn-border-color)}.mobileHeader{background-color:var(--ds-auro-calendar-mobile-header-container-color)}.mobileDateLabel{color:var(--ds-auro-calendar-mobile-header-text-color)}:host(:not([noRange])) .headerDateTo:after{background-color:var(--ds-auro-calendar-mobile-header-divider-color)}::slotted([slot="bib.fullscreen.fromStr"]),::slotted([slot=mobileDateToStr]){color:var(--ds-auro-datepicker-placeholder-color)}@media screen and (max-width: 576px){.calendarNavBtn{--ds-auro-calendar-nav-btn-border-color: var(--ds-basic-color-brand-primary, #01426a)}}`;
|
|
15272
|
+
|
|
15273
|
+
var styleCss$6$1 = i$7`:focus:not(:focus-visible){outline:3px solid transparent}.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}:host{position:relative;display:block;width:calc(100% - var(--ds-size-200, 1rem) - var(--ds-size-200, 1rem));margin:0 var(--ds-size-200, 1rem)}@media screen and (min-width: 576px){:host{width:336px;padding:var(--ds-size-200, 1rem)}}@media screen and (min-width: 576px){:host(:not(:last-of-type)):after{position:absolute;top:var(--ds-size-200, 1rem);right:calc(-1*var(--ds-size-200, 1rem));height:calc(100% - var(--ds-size-200, 1rem) - var(--ds-size-200, 1rem));display:block;width:1px;content:""}}.header{display:flex;height:var(--ds-size-500, 2.5rem);margin-bottom:var(--ds-size-150, 0.75rem);align-items:center;flex-direction:row;text-align:center}.headerTitle{display:flex;align-items:center;flex:1;flex-direction:row;justify-content:center}.headerTitle div:first-child{margin-right:var(--ds-size-100, 0.5rem)}.calendarNavBtn{position:relative;display:flex;width:var(--ds-size-500, 2.5rem);height:var(--ds-size-500, 2.5rem);align-items:center;justify-content:center;border-width:1px;border-style:solid;border-radius:50%;cursor:pointer}.table{width:100%;border-collapse:collapse}.thead{margin-bottom:var(--ds-size-100, 0.5rem)}.th{display:flex;flex:1;align-items:center;justify-content:center}.th abbr{text-decoration:none}.tbody{width:100%;transition:all 0ms;transform:translateX(0)}@media screen and (min-width: 576px){.tbody{height:384px}}.td{flex:1;margin:0;padding:0}.tr{display:flex;flex-direction:row;width:100%}`;
|
|
15274
|
+
|
|
15275
|
+
var colorCss$6$1 = i$7`:focus:not(:focus-visible){outline:3px solid transparent}:host{background-color:var(--ds-auro-calendar-month-container-color)}@media screen and (min-width: 576px){:host(:not(:last-of-type)):after{background-color:var(--ds-auro-calendar-month-divider-color)}}.header{color:var(--ds-auro-calendar-month-header-color)}`;
|
|
15276
|
+
|
|
15277
|
+
/******************************************************************************
|
|
15278
|
+
Copyright (c) Microsoft Corporation.
|
|
15279
|
+
|
|
15280
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
15281
|
+
purpose with or without fee is hereby granted.
|
|
15282
|
+
|
|
15283
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
15284
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
15285
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
15286
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
15287
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
15288
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
15289
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
15290
|
+
***************************************************************************** */
|
|
15291
|
+
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */
|
|
15292
|
+
|
|
15293
|
+
|
|
15294
|
+
function __decorate(decorators, target, key, desc) {
|
|
15295
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
15296
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
15297
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
15298
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
15299
|
+
}
|
|
15300
|
+
|
|
15301
|
+
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
15302
|
+
var e = new Error(message);
|
|
15303
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
15304
|
+
};
|
|
15305
|
+
|
|
15307
15306
|
class RangeDatepickerCell extends i$4 {
|
|
15308
15307
|
constructor() {
|
|
15309
15308
|
super(...arguments);
|
|
@@ -16026,20 +16025,25 @@ __decorate([n$5({ type: Array })], RangeDatepickerCalendar.prototype, "dayNamesO
|
|
|
16026
16025
|
__decorate([n$5({ type: Array })], RangeDatepickerCalendar.prototype, "daysOfMonth", void 0);
|
|
16027
16026
|
AuroLibraryRuntimeUtils$5$1.prototype.registerComponent('wc-range-datepicker-calendar', RangeDatepickerCalendar);
|
|
16028
16027
|
|
|
16029
|
-
var styleCss$5$1 = i$7`.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}@media screen and (max-width: 576px){:host{display:flex;justify-content:center}}.day{position:relative;width:var(--ds-size-500, 2.5rem);height:calc(var(--ds-size-700, 3.5rem) - 2px);padding:0;border-width:1px;border-style:solid;border-radius:var(--ds-size-300, 1.5rem);cursor:pointer;user-select:none}.day.disabled{cursor:default !important;pointer-events:none}.day.reference{box-shadow:inset 0 0 0 2px var(--ds-advanced-color-shared-background, #ffffff)}.day.inRange::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%)}@media screen and (min-width: 576px){.day.inRange::before{width:var(--ds-size-600, 3rem)}}.day.rangeDepartDate::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%);width:7.1428571429vw;transform:translate(0%, -50%)}@media screen and (min-width: 576px){.day.rangeDepartDate::before{width:calc(var(--ds-size-600, 3rem)/2)}}.day.rangeReturnDate::before,.day.lastHoveredDate::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%);width:7.1428571429vw;transform:translate(-100%, -50%)}@media screen and (min-width: 576px){.day.rangeReturnDate::before,.day.lastHoveredDate::before{width:calc(var(--ds-size-600, 3rem)/2)}}.dateSlot{display:flex;flex-direction:column}::slotted([slot^=date_]){position:absolute;top:80%;left:50%;width:100%;white-space:nowrap;transform:translate(-50%, -50%)}::slotted(auro-icon){max-height:24px;max-width:24px}:host([renderForDateSlot]) .buttonWrapper{position:relative;width:100%;top:5px}:host([renderForDateSlot]) .currentDayMarker{position:relative;padding-bottom:5px;top:-8px}@media screen and (min-width: 576px){.day{width:var(--ds-size-600, 3rem);height:var(--ds-size-800, 4rem)}.day:hover{cursor:pointer}}`;
|
|
16028
|
+
var styleCss$5$1 = i$7`.body-default{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-default-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-default-emphasized-font-size, 1rem);line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-lg-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-font-size, 0.875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-sm-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-font-size, 0.75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-font-size, 0.625rem);line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-2xs-emphasized-weight, );letter-spacing:var(--wcss-body-letter-spacing, 0);font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-2xl-weight, 300);line-height:var(--wcss-display-2xl-line-height, 1.3);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));letter-spacing:var(--wcss-display-2xl-letter-spacing, 0)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xl-weight, 300);line-height:var(--wcss-display-xl-line-height, 1.3);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));letter-spacing:var(--wcss-display-xl-letter-spacing, 0)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-lg-weight, 300);line-height:var(--wcss-display-lg-line-height, 1.3);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));letter-spacing:var(--wcss-display-lg-letter-spacing, 0)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-md-weight, 300);line-height:var(--wcss-display-md-line-height, 1.3);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));letter-spacing:var(--wcss-display-md-letter-spacing, 0)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-sm-weight, 300);line-height:var(--wcss-display-sm-line-height, 1.3);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));letter-spacing:var(--wcss-display-sm-letter-spacing, 0)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-display-xs-weight, 300);line-height:var(--wcss-display-xs-line-height, 1.3);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));letter-spacing:var(--wcss-display-xs-letter-spacing, 0)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xl-weight, 300);line-height:var(--wcss-heading-xl-line-height, 1.3);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));letter-spacing:var(--wcss-heading-xl-letter-spacing, 0)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-lg-weight, 300);line-height:var(--wcss-heading-lg-line-height, 1.3);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));letter-spacing:var(--wcss-heading-lg-letter-spacing, 0)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-md-weight, 300);line-height:var(--wcss-heading-md-line-height, 1.3);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));letter-spacing:var(--wcss-heading-md-letter-spacing, 0)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-sm-weight, 300);line-height:var(--wcss-heading-sm-line-height, 1.3);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));letter-spacing:var(--wcss-heading-sm-letter-spacing, 0)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-xs-weight, 300);line-height:var(--wcss-heading-xs-line-height, 1.3);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));letter-spacing:var(--wcss-heading-xs-letter-spacing, 0)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-heading-2xs-weight, 300);line-height:var(--wcss-heading-2xs-line-height, 1.3);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xl-weight, 450);line-height:var(--wcss-accent-2xl-line-height, 1);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xl-weight, 450);line-height:var(--wcss-accent-xl-line-height, 1.3);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);text-transform:uppercase}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-lg-weight, 450);line-height:var(--wcss-accent-lg-line-height, 1.3);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-md-weight, 500);line-height:var(--wcss-accent-md-line-height, 1.3);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);text-transform:uppercase}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-sm-weight, 500);line-height:var(--wcss-accent-sm-line-height, 1.3);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-xs-weight, 500);line-height:var(--wcss-accent-xs-line-height, 1.3);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);text-transform:uppercase}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-weight:var(--wcss-accent-2xs-weight, 450);line-height:var(--wcss-accent-2xs-line-height, 1.3);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);text-transform:uppercase}@media screen and (max-width: 576px){:host{display:flex;justify-content:center}}.day{position:relative;width:var(--ds-size-500, 2.5rem);height:calc(var(--ds-size-700, 3.5rem) - 2px);padding:0;border-width:1px;border-style:solid;border-radius:var(--ds-size-300, 1.5rem);cursor:pointer;user-select:none}.day:focus-visible,.day.visualFocus{outline:2px solid var(--ds-basic-color-border-default, #959595);outline-offset:2px}.day.disabled{cursor:default !important;pointer-events:none}.day.blackout{cursor:default}.day.reference{box-shadow:inset 0 0 0 2px var(--ds-advanced-color-shared-background, #ffffff)}.day.inRange::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%)}@media screen and (min-width: 576px){.day.inRange::before{width:var(--ds-size-600, 3rem)}}.day.rangeDepartDate::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%);width:7.1428571429vw;transform:translate(0%, -50%)}@media screen and (min-width: 576px){.day.rangeDepartDate::before{width:calc(var(--ds-size-600, 3rem)/2)}}.day.rangeReturnDate::before,.day.lastHoveredDate::before{position:absolute;z-index:-1;top:50%;left:50%;display:block;width:14.2857142857vw;height:var(--ds-size-600, 3rem);content:"";transform:translate(-50%, -50%);width:7.1428571429vw;transform:translate(-100%, -50%)}@media screen and (min-width: 576px){.day.rangeReturnDate::before,.day.lastHoveredDate::before{width:calc(var(--ds-size-600, 3rem)/2)}}.dateSlot{display:flex;flex-direction:column}.srOnly{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;clip:rect(0, 0, 0, 0);white-space:nowrap}::slotted([slot^=date_]){position:absolute;top:80%;left:50%;width:100%;white-space:nowrap;transform:translate(-50%, -50%)}::slotted(auro-icon){max-height:24px;max-width:24px}:host([renderForDateSlot]) .buttonWrapper{position:relative;width:100%;top:5px}:host([renderForDateSlot]) .currentDayMarker{position:relative;padding-bottom:5px;top:-8px}@media screen and (min-width: 576px){.day{width:var(--ds-size-600, 3rem);height:var(--ds-size-800, 4rem)}.day:hover{cursor:pointer}}`;
|
|
16030
16029
|
|
|
16031
|
-
var colorCss$5$1 = i$7`:host ::slotted([slot^=date_]){color:var(--ds-auro-calendar-cell-price-text-color)}:host ::slotted([slot^=date_][highlight]){--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-status-success, #447a1f)}:host .day{border-color:var(--ds-auro-calendar-cell-border-color);background-color:var(--ds-auro-calendar-cell-container-color);color:var(--ds-auro-calendar-cell-text-color)}:host .day.selected{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-selected, #01426a);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day.selected ::slotted([slot^=date_][highlight]){--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-status-success-subtle, #d6eac7)}:host .day.selected:hover{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-selected-hover, #00274a);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day.reference{--ds-auro-calendar-cell-border-color: var(--ds-basic-color-border-default, #959595)}:host .day.reference:not(.selected):not(.disabled){--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-muted, #676767)}:host .day.reference.selected{--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day:hover{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-background-hover, #f2f2f2);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host .day.disabled{--ds-auro-calendar-cell-container-color: transparent;--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host .day.inRange:before,:host .day.rangeDepartDate:before,:host .day.rangeReturnDate:before,:host .day.lastHoveredDate:before{background-color:var(--ds-auro-calendar-cell-in-range-color)}:host .day.sameDateTrip:before{--ds-auro-calendar-cell-in-range-color: transparent}`;
|
|
16030
|
+
var colorCss$5$1 = i$7`:host ::slotted([slot^=date_]){color:var(--ds-auro-calendar-cell-price-text-color)}:host ::slotted([slot^=date_][highlight]){--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-status-success, #447a1f)}:host .day{border-color:var(--ds-auro-calendar-cell-border-color);background-color:var(--ds-auro-calendar-cell-container-color);color:var(--ds-auro-calendar-cell-text-color)}:host .day:focus-visible:not(.selected),:host .day.visualFocus:not(.selected){--ds-auro-calendar-cell-container-color: var(--ds-auro-calendar-cell-in-range-color)}:host .day.selected{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-selected, #01426a);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day.selected ::slotted([slot^=date_][highlight]){--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-status-success-subtle, #d6eac7)}:host .day.selected:hover{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-selected-hover, #00274a);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day.reference{--ds-auro-calendar-cell-border-color: var(--ds-basic-color-border-default, #959595)}:host .day.reference:not(.selected):not(.disabled){--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-muted, #676767)}:host .day.reference.selected{--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host .day:hover{--ds-auro-calendar-cell-container-color: var(--ds-advanced-color-state-background-hover, #f2f2f2);--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host .day.disabled{--ds-auro-calendar-cell-container-color: transparent;--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host .day.blackout{--ds-auro-calendar-cell-container-color: transparent;--ds-auro-calendar-cell-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0);--ds-auro-calendar-cell-price-text-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host .day.inRange:before,:host .day.rangeDepartDate:before,:host .day.rangeReturnDate:before,:host .day.lastHoveredDate:before{background-color:var(--ds-auro-calendar-cell-in-range-color)}:host .day.sameDateTrip:before{--ds-auro-calendar-cell-in-range-color: transparent}`;
|
|
16032
16031
|
|
|
16033
|
-
let s$3 = class s{registerComponent(e,t){customElements.get(e)||customElements.define(e,class extends t{});}closestElement(e,t=this,i=(t,s=t&&t.closest(e))=>t&&t!==document&&t!==window?s||i(t.getRootNode().host):null){return i(t)}handleComponentTagRename(e,t){const i=t.toLowerCase();e.tagName.toLowerCase()!==i&&e.setAttribute(i,true);}elementMatch(e,t){const i=t.toLowerCase();return e.tagName.toLowerCase()===i||e.hasAttribute(i)}getSlotText(e,t){const i=e.shadowRoot?.querySelector(`slot[name="${t}"]`);return (i?.assignedNodes({flatten:true})||[]).map(e=>e.textContent?.trim()).join(" ").trim()||null}};var r$1$1="top",o="bottom",n$1$1="right",a="left",l$3$1="auto",c$3$1=[r$1$1,o,n$1$1,a],p$6$1="start",d$3$1="end",f$6$1="viewport",h$3$1="popper",m$6$1=c$3$1.reduce(function(e,t){return e.concat([t+"-"+p$6$1,t+"-"+d$3$1])},[]),u$6$1=[].concat(c$3$1,[l$3$1]).reduce(function(e,t){return e.concat([t,t+"-"+p$6$1,t+"-"+d$3$1])},[]),g$6$1=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v$3$1(e){return e?(e.nodeName||"").toLowerCase():null}function y$6$1(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function w$6$1(e){return e instanceof y$6$1(e).Element||e instanceof Element}function b$3$1(e){return e instanceof y$6$1(e).HTMLElement||e instanceof HTMLElement}function x$3$1(e){return "undefined"!=typeof ShadowRoot&&(e instanceof y$6$1(e).ShadowRoot||e instanceof ShadowRoot)}var S$3$1={name:"applyStyles",enabled:true,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var i=t.styles[e]||{},s=t.attributes[e]||{},r=t.elements[e];b$3$1(r)&&v$3$1(r)&&(Object.assign(r.style,i),Object.keys(s).forEach(function(e){var t=s[e];false===t?r.removeAttribute(e):r.setAttribute(e,true===t?"":t);}));});},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],r=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce(function(e,t){return e[t]="",e},{});b$3$1(s)&&v$3$1(s)&&(Object.assign(s.style,o),Object.keys(r).forEach(function(e){s.removeAttribute(e);}));});}},requires:["computeStyles"]};function _$4$1(e){return e.split("-")[0]}var O=Math.max,k$6$1=Math.min,A$3$1=Math.round;function z$6$1(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function E(){return !/^((?!chrome|android).)*safari/i.test(z$6$1())}function M$6$1(e,t,i){ void 0===t&&(t=false),void 0===i&&(i=false);var s=e.getBoundingClientRect(),r=1,o=1;t&&b$3$1(e)&&(r=e.offsetWidth>0&&A$3$1(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&A$3$1(s.height)/e.offsetHeight||1);var n=(w$6$1(e)?y$6$1(e):window).visualViewport,a=!E()&&i,l=(s.left+(a&&n?n.offsetLeft:0))/r,c=(s.top+(a&&n?n.offsetTop:0))/o,p=s.width/r,d=s.height/o;return {width:p,height:d,top:c,right:l+p,bottom:c+d,left:l,x:l,y:c}}function T$3$1(e){var t=M$6$1(e),i=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:s}}function B$3$1(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return true;if(i&&x$3$1(i)){var s=t;do{if(s&&e.isSameNode(s))return true;s=s.parentNode||s.host;}while(s)}return false}function L(e){return y$6$1(e).getComputedStyle(e)}function H$3$1(e){return ["table","td","th"].indexOf(v$3$1(e))>=0}function C$3$1(e){return ((w$6$1(e)?e.ownerDocument:e.document)||window.document).documentElement}function R$3$1(e){return "html"===v$3$1(e)?e:e.assignedSlot||e.parentNode||(x$3$1(e)?e.host:null)||C$3$1(e)}function j(e){return b$3$1(e)&&"fixed"!==L(e).position?e.offsetParent:null}function N$3$1(e){for(var t=y$6$1(e),i=j(e);i&&H$3$1(i)&&"static"===L(i).position;)i=j(i);return i&&("html"===v$3$1(i)||"body"===v$3$1(i)&&"static"===L(i).position)?t:i||function(e){var t=/firefox/i.test(z$6$1());if(/Trident/i.test(z$6$1())&&b$3$1(e)&&"fixed"===L(e).position)return null;var i=R$3$1(e);for(x$3$1(i)&&(i=i.host);b$3$1(i)&&["html","body"].indexOf(v$3$1(i))<0;){var s=L(i);if("none"!==s.transform||"none"!==s.perspective||"paint"===s.contain||-1!==["transform","perspective"].indexOf(s.willChange)||t&&"filter"===s.willChange||t&&s.filter&&"none"!==s.filter)return i;i=i.parentNode;}return null}(e)||t}function P(e){return ["top","bottom"].indexOf(e)>=0?"x":"y"}function D(e,t,i){return O(e,k$6$1(t,i))}function I(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function F(e,t){return t.reduce(function(t,i){return t[i]=e,t},{})}var U$3$1={name:"arrow",enabled:true,phase:"main",fn:function(e){var t,i=e.state,s=e.name,l=e.options,p=i.elements.arrow,d=i.modifiersData.popperOffsets,f=_$4$1(i.placement),h=P(f),m=[a,n$1$1].indexOf(f)>=0?"height":"width";if(p&&d){var u=function(e,t){return I("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:F(e,c$3$1))}(l.padding,i),g=T$3$1(p),v="y"===h?r$1$1:a,y="y"===h?o:n$1$1,w=i.rects.reference[m]+i.rects.reference[h]-d[h]-i.rects.popper[m],b=d[h]-i.rects.reference[h],x=N$3$1(p),S=x?"y"===h?x.clientHeight||0:x.clientWidth||0:0,O=w/2-b/2,k=u[v],A=S-g[m]-u[y],z=S/2-g[m]/2+O,E=D(k,z,A),M=h;i.modifiersData[s]=((t={})[M]=E,t.centerOffset=E-z,t);}},effect:function(e){var t=e.state,i=e.options.element,s=void 0===i?"[data-popper-arrow]":i;null!=s&&("string"!=typeof s||(s=t.elements.popper.querySelector(s)))&&B$3$1(t.elements.popper,s)&&(t.elements.arrow=s);},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function q$3$1(e){return e.split("-")[1]}var W={top:"auto",right:"auto",bottom:"auto",left:"auto"};function X(e){var t,i=e.popper,s=e.popperRect,l=e.placement,c=e.variation,p=e.offsets,f=e.position,h=e.gpuAcceleration,m=e.adaptive,u=e.roundOffsets,g=e.isFixed,v=p.x,w=void 0===v?0:v,b=p.y,x=void 0===b?0:b,S="function"==typeof u?u({x:w,y:x}):{x:w,y:x};w=S.x,x=S.y;var _=p.hasOwnProperty("x"),O=p.hasOwnProperty("y"),k=a,z=r$1$1,E=window;if(m){var M=N$3$1(i),T="clientHeight",B="clientWidth";if(M===y$6$1(i)&&"static"!==L(M=C$3$1(i)).position&&"absolute"===f&&(T="scrollHeight",B="scrollWidth"),l===r$1$1||(l===a||l===n$1$1)&&c===d$3$1)z=o,x-=(g&&M===E&&E.visualViewport?E.visualViewport.height:M[T])-s.height,x*=h?1:-1;if(l===a||(l===r$1$1||l===o)&&c===d$3$1)k=n$1$1,w-=(g&&M===E&&E.visualViewport?E.visualViewport.width:M[B])-s.width,w*=h?1:-1;}var H,R=Object.assign({position:f},m&&W),j=true===u?function(e,t){var i=e.x,s=e.y,r=t.devicePixelRatio||1;return {x:A$3$1(i*r)/r||0,y:A$3$1(s*r)/r||0}}({x:w,y:x},y$6$1(i)):{x:w,y:x};return w=j.x,x=j.y,h?Object.assign({},R,((H={})[z]=O?"0":"",H[k]=_?"0":"",H.transform=(E.devicePixelRatio||1)<=1?"translate("+w+"px, "+x+"px)":"translate3d("+w+"px, "+x+"px, 0)",H)):Object.assign({},R,((t={})[z]=O?x+"px":"",t[k]=_?w+"px":"",t.transform="",t))}var V={passive:true};var G={left:"right",right:"left",bottom:"top",top:"bottom"};function $(e){return e.replace(/left|right|bottom|top/g,function(e){return G[e]})}var K={start:"end",end:"start"};function Y(e){return e.replace(/start|end/g,function(e){return K[e]})}function J(e){var t=y$6$1(e);return {scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Q(e){return M$6$1(C$3$1(e)).left+J(e).scrollLeft}function Z(e){var t=L(e),i=t.overflow,s=t.overflowX,r=t.overflowY;return /auto|scroll|overlay|hidden/.test(i+r+s)}function ee(e){return ["html","body","#document"].indexOf(v$3$1(e))>=0?e.ownerDocument.body:b$3$1(e)&&Z(e)?e:ee(R$3$1(e))}function te(e,t){var i;void 0===t&&(t=[]);var s=ee(e),r=s===(null==(i=e.ownerDocument)?void 0:i.body),o=y$6$1(s),n=r?[o].concat(o.visualViewport||[],Z(s)?s:[]):s,a=t.concat(n);return r?a:a.concat(te(R$3$1(n)))}function ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function se(e,t,i){return t===f$6$1?ie(function(e,t){var i=y$6$1(e),s=C$3$1(e),r=i.visualViewport,o=s.clientWidth,n=s.clientHeight,a=0,l=0;if(r){o=r.width,n=r.height;var c=E();(c||!c&&"fixed"===t)&&(a=r.offsetLeft,l=r.offsetTop);}return {width:o,height:n,x:a+Q(e),y:l}}(e,i)):w$6$1(t)?function(e,t){var i=M$6$1(e,false,"fixed"===t);return i.top=i.top+e.clientTop,i.left=i.left+e.clientLeft,i.bottom=i.top+e.clientHeight,i.right=i.left+e.clientWidth,i.width=e.clientWidth,i.height=e.clientHeight,i.x=i.left,i.y=i.top,i}(t,i):ie(function(e){var t,i=C$3$1(e),s=J(e),r=null==(t=e.ownerDocument)?void 0:t.body,o=O(i.scrollWidth,i.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),n=O(i.scrollHeight,i.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),a=-s.scrollLeft+Q(e),l=-s.scrollTop;return "rtl"===L(r||i).direction&&(a+=O(i.clientWidth,r?r.clientWidth:0)-o),{width:o,height:n,x:a,y:l}}(C$3$1(e)))}function re(e,t,i,s){var r="clippingParents"===t?function(e){var t=te(R$3$1(e)),i=["absolute","fixed"].indexOf(L(e).position)>=0&&b$3$1(e)?N$3$1(e):e;return w$6$1(i)?t.filter(function(e){return w$6$1(e)&&B$3$1(e,i)&&"body"!==v$3$1(e)}):[]}(e):[].concat(t),o=[].concat(r,[i]),n=o[0],a=o.reduce(function(t,i){var r=se(e,i,s);return t.top=O(r.top,t.top),t.right=k$6$1(r.right,t.right),t.bottom=k$6$1(r.bottom,t.bottom),t.left=O(r.left,t.left),t},se(e,n,s));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function oe(e){var t,i=e.reference,s=e.element,l=e.placement,c=l?_$4$1(l):null,f=l?q$3$1(l):null,h=i.x+i.width/2-s.width/2,m=i.y+i.height/2-s.height/2;switch(c){case r$1$1:t={x:h,y:i.y-s.height};break;case o:t={x:h,y:i.y+i.height};break;case n$1$1:t={x:i.x+i.width,y:m};break;case a:t={x:i.x-s.width,y:m};break;default:t={x:i.x,y:i.y};}var u=c?P(c):null;if(null!=u){var g="y"===u?"height":"width";switch(f){case p$6$1:t[u]=t[u]-(i[g]/2-s[g]/2);break;case d$3$1:t[u]=t[u]+(i[g]/2-s[g]/2);}}return t}function ne(e,t){ void 0===t&&(t={});var i=t,s=i.placement,a=void 0===s?e.placement:s,l=i.strategy,p=void 0===l?e.strategy:l,d=i.boundary,m=void 0===d?"clippingParents":d,u=i.rootBoundary,g=void 0===u?f$6$1:u,v=i.elementContext,y=void 0===v?h$3$1:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,O=I("number"!=typeof _?_:F(_,c$3$1)),k=y===h$3$1?"reference":h$3$1,A=e.rects.popper,z=e.elements[x?k:y],E=re(w$6$1(z)?z:z.contextElement||C$3$1(e.elements.popper),m,g,p),T=M$6$1(e.elements.reference),B=oe({reference:T,element:A,placement:a}),L=ie(Object.assign({},A,B)),H=y===h$3$1?L:T,R={top:E.top-H.top+O.top,bottom:H.bottom-E.bottom+O.bottom,left:E.left-H.left+O.left,right:H.right-E.right+O.right},j=e.modifiersData.offset;if(y===h$3$1&&j){var N=j[a];Object.keys(R).forEach(function(e){var t=[n$1$1,o].indexOf(e)>=0?1:-1,i=[r$1$1,o].indexOf(e)>=0?"y":"x";R[e]+=N[i]*t;});}return R}function ae(e,t){ void 0===t&&(t={});var i=t,s=i.placement,r=i.boundary,o=i.rootBoundary,n=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,p=void 0===l?u$6$1:l,d=q$3$1(s),f=d?a?m$6$1:m$6$1.filter(function(e){return q$3$1(e)===d}):c$3$1,h=f.filter(function(e){return p.indexOf(e)>=0});0===h.length&&(h=f);var g=h.reduce(function(t,i){return t[i]=ne(e,{placement:i,boundary:r,rootBoundary:o,padding:n})[_$4$1(i)],t},{});return Object.keys(g).sort(function(e,t){return g[e]-g[t]})}var le={name:"flip",enabled:true,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name;if(!t.modifiersData[s]._skip){for(var c=i.mainAxis,d=void 0===c||c,f=i.altAxis,h=void 0===f||f,m=i.fallbackPlacements,u=i.padding,g=i.boundary,v=i.rootBoundary,y=i.altBoundary,w=i.flipVariations,b=void 0===w||w,x=i.allowedAutoPlacements,S=t.options.placement,O=_$4$1(S),k=m||(O===S||!b?[$(S)]:function(e){if(_$4$1(e)===l$3$1)return [];var t=$(e);return [Y(e),t,Y(t)]}(S)),A=[S].concat(k).reduce(function(e,i){return e.concat(_$4$1(i)===l$3$1?ae(t,{placement:i,boundary:g,rootBoundary:v,padding:u,flipVariations:b,allowedAutoPlacements:x}):i)},[]),z=t.rects.reference,E=t.rects.popper,M=new Map,T=true,B=A[0],L=0;L<A.length;L++){var H=A[L],C=_$4$1(H),R=q$3$1(H)===p$6$1,j=[r$1$1,o].indexOf(C)>=0,N=j?"width":"height",P=ne(t,{placement:H,boundary:g,rootBoundary:v,altBoundary:y,padding:u}),D=j?R?n$1$1:a:R?o:r$1$1;z[N]>E[N]&&(D=$(D));var I=$(D),F=[];if(d&&F.push(P[C]<=0),h&&F.push(P[D]<=0,P[I]<=0),F.every(function(e){return e})){B=H,T=false;break}M.set(H,F);}if(T)for(var U=function(e){var t=A.find(function(t){var i=M.get(t);if(i)return i.slice(0,e).every(function(e){return e})});if(t)return B=t,"break"},W=b?3:1;W>0;W--){if("break"===U(W))break}t.placement!==B&&(t.modifiersData[s]._skip=true,t.placement=B,t.reset=true);}},requiresIfExists:["offset"],data:{_skip:false}};function ce(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function pe(e){return [r$1$1,n$1$1,o,a].some(function(t){return e[t]>=0})}var de={name:"offset",enabled:true,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,s=e.name,o=i.offset,l=void 0===o?[0,0]:o,c=u$6$1.reduce(function(e,i){return e[i]=function(e,t,i){var s=_$4$1(e),o=[a,r$1$1].indexOf(s)>=0?-1:1,l="function"==typeof i?i(Object.assign({},t,{placement:e})):i,c=l[0],p=l[1];return c=c||0,p=(p||0)*o,[a,n$1$1].indexOf(s)>=0?{x:p,y:c}:{x:c,y:p}}(i,t.rects,l),e},{}),p=c[t.placement],d=p.x,f=p.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=f),t.modifiersData[s]=c;}};var fe={name:"preventOverflow",enabled:true,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name,l=i.mainAxis,c=void 0===l||l,d=i.altAxis,f=void 0!==d&&d,h=i.boundary,m=i.rootBoundary,u=i.altBoundary,g=i.padding,v=i.tether,y=void 0===v||v,w=i.tetherOffset,b=void 0===w?0:w,x=ne(t,{boundary:h,rootBoundary:m,padding:g,altBoundary:u}),S=_$4$1(t.placement),A=q$3$1(t.placement),z=!A,E=P(S),M="x"===E?"y":"x",B=t.modifiersData.popperOffsets,L=t.rects.reference,H=t.rects.popper,C="function"==typeof b?b(Object.assign({},t.rects,{placement:t.placement})):b,R="number"==typeof C?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),j=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,I={x:0,y:0};if(B){if(c){var F,U="y"===E?r$1$1:a,W="y"===E?o:n$1$1,X="y"===E?"height":"width",V=B[E],G=V+x[U],$=V-x[W],K=y?-H[X]/2:0,Y=A===p$6$1?L[X]:H[X],J=A===p$6$1?-H[X]:-L[X],Q=t.elements.arrow,Z=y&&Q?T$3$1(Q):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[U],ie=ee[W],se=D(0,L[X],Z[X]),re=z?L[X]/2-K-se-te-R.mainAxis:Y-se-te-R.mainAxis,oe=z?-L[X]/2+K+se+ie+R.mainAxis:J+se+ie+R.mainAxis,ae=t.elements.arrow&&N$3$1(t.elements.arrow),le=ae?"y"===E?ae.clientTop||0:ae.clientLeft||0:0,ce=null!=(F=null==j?void 0:j[E])?F:0,pe=V+oe-ce,de=D(y?k$6$1(G,V+re-ce-le):G,V,y?O($,pe):$);B[E]=de,I[E]=de-V;}if(f){var fe,he="x"===E?r$1$1:a,me="x"===E?o:n$1$1,ue=B[M],ge="y"===M?"height":"width",ve=ue+x[he],ye=ue-x[me],we=-1!==[r$1$1,a].indexOf(S),be=null!=(fe=null==j?void 0:j[M])?fe:0,xe=we?ve:ue-L[ge]-H[ge]-be+R.altAxis,Se=we?ue+L[ge]+H[ge]-be-R.altAxis:ye,_e=y&&we?function(e,t,i){var s=D(e,t,i);return s>i?i:s}(xe,ue,Se):D(y?xe:ve,ue,y?Se:ye);B[M]=_e,I[M]=_e-ue;}t.modifiersData[s]=I;}},requiresIfExists:["offset"]};function he(e,t,i){ void 0===i&&(i=false);var s,r,o=b$3$1(t),n=b$3$1(t)&&function(e){var t=e.getBoundingClientRect(),i=A$3$1(t.width)/e.offsetWidth||1,s=A$3$1(t.height)/e.offsetHeight||1;return 1!==i||1!==s}(t),a=C$3$1(t),l=M$6$1(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return (o||!o&&!i)&&(("body"!==v$3$1(t)||Z(a))&&(c=(s=t)!==y$6$1(s)&&b$3$1(s)?{scrollLeft:(r=s).scrollLeft,scrollTop:r.scrollTop}:J(s)),b$3$1(t)?((p=M$6$1(t,true)).x+=t.clientLeft,p.y+=t.clientTop):a&&(p.x=Q(a))),{x:l.left+c.scrollLeft-p.x,y:l.top+c.scrollTop-p.y,width:l.width,height:l.height}}function me(e){var t=new Map,i=new Set,s=[];function r(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!i.has(e)){var s=t.get(e);s&&r(s);}}),s.push(e);}return e.forEach(function(e){t.set(e.name,e);}),e.forEach(function(e){i.has(e.name)||r(e);}),s}var ue={placement:"bottom",modifiers:[],strategy:"absolute"};function ge(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return !t.some(function(e){return !(e&&"function"==typeof e.getBoundingClientRect)})}function ve(e){ void 0===e&&(e={});var t=e,i=t.defaultModifiers,s=void 0===i?[]:i,r=t.defaultOptions,o=void 0===r?ue:r;return function(e,t,i){ void 0===i&&(i=o);var r,n,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},ue,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},l=[],c=false,p={state:a,setOptions:function(i){var r="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,r),a.scrollParents={reference:w$6$1(e)?te(e):e.contextElement?te(e.contextElement):[],popper:te(t)};var n,c,f=function(e){var t=me(e);return g$6$1.reduce(function(e,i){return e.concat(t.filter(function(e){return e.phase===i}))},[])}((n=[].concat(s,a.options.modifiers),c=n.reduce(function(e,t){var i=e[t.name];return e[t.name]=i?Object.assign({},i,t,{options:Object.assign({},i.options,t.options),data:Object.assign({},i.data,t.data)}):t,e},{}),Object.keys(c).map(function(e){return c[e]})));return a.orderedModifiers=f.filter(function(e){return e.enabled}),a.orderedModifiers.forEach(function(e){var t=e.name,i=e.options,s=void 0===i?{}:i,r=e.effect;if("function"==typeof r){var o=r({state:a,name:t,instance:p,options:s}),n=function(){};l.push(o||n);}}),p.update()},forceUpdate:function(){if(!c){var e=a.elements,t=e.reference,i=e.popper;if(ge(t,i)){a.rects={reference:he(t,N$3$1(i),"fixed"===a.options.strategy),popper:T$3$1(i)},a.reset=false,a.placement=a.options.placement,a.orderedModifiers.forEach(function(e){return a.modifiersData[e.name]=Object.assign({},e.data)});for(var s=0;s<a.orderedModifiers.length;s++)if(true!==a.reset){var r=a.orderedModifiers[s],o=r.fn,n=r.options,l=void 0===n?{}:n,d=r.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:p})||a);}else a.reset=false,s=-1;}}},update:(r=function(){return new Promise(function(e){p.forceUpdate(),e(a);})},function(){return n||(n=new Promise(function(e){Promise.resolve().then(function(){n=void 0,e(r());});})),n}),destroy:function(){d(),c=true;}};if(!ge(e,t))return p;function d(){l.forEach(function(e){return e()}),l=[];}return p.setOptions(i).then(function(e){!c&&i.onFirstUpdate&&i.onFirstUpdate(e);}),p}}var ye=ve({defaultModifiers:[{name:"eventListeners",enabled:true,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,s=e.options,r=s.scroll,o=void 0===r||r,n=s.resize,a=void 0===n||n,l=y$6$1(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach(function(e){e.addEventListener("scroll",i.update,V);}),a&&l.addEventListener("resize",i.update,V),function(){o&&c.forEach(function(e){e.removeEventListener("scroll",i.update,V);}),a&&l.removeEventListener("resize",i.update,V);}},data:{}},{name:"popperOffsets",enabled:true,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=oe({reference:t.rects.reference,element:t.rects.popper,placement:t.placement});},data:{}},{name:"computeStyles",enabled:true,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.options,s=i.gpuAcceleration,r=void 0===s||s,o=i.adaptive,n=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:_$4$1(t.placement),variation:q$3$1(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,X(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:n,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,X(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:false,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement});},data:{}},S$3$1,de,le,fe,U$3$1,{name:"hide",enabled:true,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,s=t.rects.reference,r=t.rects.popper,o=t.modifiersData.preventOverflow,n=ne(t,{elementContext:"reference"}),a=ne(t,{altBoundary:true}),l=ce(n,s),c=ce(a,r,o),p=pe(l),d=pe(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":d});}}]});class we{constructor(e,t,i,s){this.anchor=e,this.popover=t,this.boundaryElement=this.setBoundary(s),this.options={placement:i,visibleClass:"data-show"},this.popover.classList.remove(this.options.visibleClass);}setBoundary(e){return "string"==typeof e?document.querySelector(e)||document.body:e||document.body}show(){this.popper&&this.popper.destroy(),this.popper=ye(this.anchor,this.popover,{tooltip:this.anchor,placement:this.options.placement,modifiers:[{name:"offset",options:{offset:[0,18]}},{name:"preventOverflow",options:{mainAxis:true,boundary:this.boundaryElement,rootBoundary:"document",padding:16}}]});}triggerUpdate(){this.popper.update();}hide(){this.popover.classList.remove(this.options.visibleClass);}}var be=i$7`::slotted(*):not([onDark]),::slotted(*):not([appearance=inverse]){color:var(--ds-auro-popover-text-color)}.popover{background-color:var(--ds-auro-popover-container-color);box-shadow:var(--ds-auro-popover-boxshadow-color)}.arrow:before{background-color:var(--ds-auro-popover-container-color);box-shadow:2px 2px 1px 0 var(--ds-auro-popover-boxshadow-color)}
|
|
16032
|
+
let s$3 = class s{registerComponent(e,t){customElements.get(e)||customElements.define(e,class extends t{});}closestElement(e,t=this,i=(t,s=t&&t.closest(e))=>t&&t!==document&&t!==window?s||i(t.getRootNode().host):null){return i(t)}handleComponentTagRename(e,t){const i=t.toLowerCase();e.tagName.toLowerCase()!==i&&e.setAttribute(i,true);}elementMatch(e,t){const i=t.toLowerCase();return e.tagName.toLowerCase()===i||e.hasAttribute(i)}getSlotText(e,t){const i=e.shadowRoot?.querySelector(`slot[name="${t}"]`);return (i?.assignedNodes({flatten:true})||[]).map(e=>e.textContent?.trim()).join(" ").trim()||null}};var r$1$1="top",o="bottom",n$1$1="right",a="left",l$3$1="auto",c$3$1=[r$1$1,o,n$1$1,a],p$6$1="start",d$3$1="end",f$6$1="viewport",h$3$1="popper",u$6$1=c$3$1.reduce(function(e,t){return e.concat([t+"-"+p$6$1,t+"-"+d$3$1])},[]),m$6$1=[].concat(c$3$1,[l$3$1]).reduce(function(e,t){return e.concat([t,t+"-"+p$6$1,t+"-"+d$3$1])},[]),g$6$1=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v$3$1(e){return e?(e.nodeName||"").toLowerCase():null}function y$6$1(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function w$6$1(e){return e instanceof y$6$1(e).Element||e instanceof Element}function b$3$1(e){return e instanceof y$6$1(e).HTMLElement||e instanceof HTMLElement}function x$3$1(e){return "undefined"!=typeof ShadowRoot&&(e instanceof y$6$1(e).ShadowRoot||e instanceof ShadowRoot)}var S$3$1={name:"applyStyles",enabled:true,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach(function(e){var i=t.styles[e]||{},s=t.attributes[e]||{},r=t.elements[e];b$3$1(r)&&v$3$1(r)&&(Object.assign(r.style,i),Object.keys(s).forEach(function(e){var t=s[e];false===t?r.removeAttribute(e):r.setAttribute(e,true===t?"":t);}));});},effect:function(e){var t=e.state,i={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,i.popper),t.styles=i,t.elements.arrow&&Object.assign(t.elements.arrow.style,i.arrow),function(){Object.keys(t.elements).forEach(function(e){var s=t.elements[e],r=t.attributes[e]||{},o=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:i[e]).reduce(function(e,t){return e[t]="",e},{});b$3$1(s)&&v$3$1(s)&&(Object.assign(s.style,o),Object.keys(r).forEach(function(e){s.removeAttribute(e);}));});}},requires:["computeStyles"]};function _$4$1(e){return e.split("-")[0]}var A$3$1=Math.max,O=Math.min,k$6$1=Math.round;function T$3$1(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(e){return e.brand+"/"+e.version}).join(" "):navigator.userAgent}function z$6$1(){return !/^((?!chrome|android).)*safari/i.test(T$3$1())}function E(e,t,i){ void 0===t&&(t=false),void 0===i&&(i=false);var s=e.getBoundingClientRect(),r=1,o=1;t&&b$3$1(e)&&(r=e.offsetWidth>0&&k$6$1(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&k$6$1(s.height)/e.offsetHeight||1);var n=(w$6$1(e)?y$6$1(e):window).visualViewport,a=!z$6$1()&&i,l=(s.left+(a&&n?n.offsetLeft:0))/r,c=(s.top+(a&&n?n.offsetTop:0))/o,p=s.width/r,d=s.height/o;return {width:p,height:d,top:c,right:l+p,bottom:c+d,left:l,x:l,y:c}}function M$6$1(e){var t=E(e),i=e.offsetWidth,s=e.offsetHeight;return Math.abs(t.width-i)<=1&&(i=t.width),Math.abs(t.height-s)<=1&&(s=t.height),{x:e.offsetLeft,y:e.offsetTop,width:i,height:s}}function B$3$1(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return true;if(i&&x$3$1(i)){var s=t;do{if(s&&e.isSameNode(s))return true;s=s.parentNode||s.host;}while(s)}return false}function L(e){return y$6$1(e).getComputedStyle(e)}function R$3$1(e){return ["table","td","th"].indexOf(v$3$1(e))>=0}function H$3$1(e){return ((w$6$1(e)?e.ownerDocument:e.document)||window.document).documentElement}function C$3$1(e){return "html"===v$3$1(e)?e:e.assignedSlot||e.parentNode||(x$3$1(e)?e.host:null)||H$3$1(e)}function D(e){return b$3$1(e)&&"fixed"!==L(e).position?e.offsetParent:null}function N$3$1(e){for(var t=y$6$1(e),i=D(e);i&&R$3$1(i)&&"static"===L(i).position;)i=D(i);return i&&("html"===v$3$1(i)||"body"===v$3$1(i)&&"static"===L(i).position)?t:i||function(e){var t=/firefox/i.test(T$3$1());if(/Trident/i.test(T$3$1())&&b$3$1(e)&&"fixed"===L(e).position)return null;var i=C$3$1(e);for(x$3$1(i)&&(i=i.host);b$3$1(i)&&["html","body"].indexOf(v$3$1(i))<0;){var s=L(i);if("none"!==s.transform||"none"!==s.perspective||"paint"===s.contain||-1!==["transform","perspective"].indexOf(s.willChange)||t&&"filter"===s.willChange||t&&s.filter&&"none"!==s.filter)return i;i=i.parentNode;}return null}(e)||t}function P(e){return ["top","bottom"].indexOf(e)>=0?"x":"y"}function j(e,t,i){return A$3$1(e,O(t,i))}function I(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function q$3$1(e,t){return t.reduce(function(t,i){return t[i]=e,t},{})}var F={name:"arrow",enabled:true,phase:"main",fn:function(e){var t,i=e.state,s=e.name,l=e.options,p=i.elements.arrow,d=i.modifiersData.popperOffsets,f=_$4$1(i.placement),h=P(f),u=[a,n$1$1].indexOf(f)>=0?"height":"width";if(p&&d){var m=function(e,t){return I("number"!=typeof(e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e)?e:q$3$1(e,c$3$1))}(l.padding,i),g=M$6$1(p),v="y"===h?r$1$1:a,y="y"===h?o:n$1$1,w=i.rects.reference[u]+i.rects.reference[h]-d[h]-i.rects.popper[u],b=d[h]-i.rects.reference[h],x=N$3$1(p),S=x?"y"===h?x.clientHeight||0:x.clientWidth||0:0,A=w/2-b/2,O=m[v],k=S-g[u]-m[y],T=S/2-g[u]/2+A,z=j(O,T,k),E=h;i.modifiersData[s]=((t={})[E]=z,t.centerOffset=z-T,t);}},effect:function(e){var t=e.state,i=e.options.element,s=void 0===i?"[data-popper-arrow]":i;null!=s&&("string"!=typeof s||(s=t.elements.popper.querySelector(s)))&&B$3$1(t.elements.popper,s)&&(t.elements.arrow=s);},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function U$3$1(e){return e.split("-")[1]}var V={top:"auto",right:"auto",bottom:"auto",left:"auto"};function W(e){var t,i=e.popper,s=e.popperRect,l=e.placement,c=e.variation,p=e.offsets,f=e.position,h=e.gpuAcceleration,u=e.adaptive,m=e.roundOffsets,g=e.isFixed,v=p.x,w=void 0===v?0:v,b=p.y,x=void 0===b?0:b,S="function"==typeof m?m({x:w,y:x}):{x:w,y:x};w=S.x,x=S.y;var _=p.hasOwnProperty("x"),A=p.hasOwnProperty("y"),O=a,T=r$1$1,z=window;if(u){var E=N$3$1(i),M="clientHeight",B="clientWidth";if(E===y$6$1(i)&&"static"!==L(E=H$3$1(i)).position&&"absolute"===f&&(M="scrollHeight",B="scrollWidth"),l===r$1$1||(l===a||l===n$1$1)&&c===d$3$1)T=o,x-=(g&&E===z&&z.visualViewport?z.visualViewport.height:E[M])-s.height,x*=h?1:-1;if(l===a||(l===r$1$1||l===o)&&c===d$3$1)O=n$1$1,w-=(g&&E===z&&z.visualViewport?z.visualViewport.width:E[B])-s.width,w*=h?1:-1;}var R,C=Object.assign({position:f},u&&V),D=true===m?function(e,t){var i=e.x,s=e.y,r=t.devicePixelRatio||1;return {x:k$6$1(i*r)/r||0,y:k$6$1(s*r)/r||0}}({x:w,y:x},y$6$1(i)):{x:w,y:x};return w=D.x,x=D.y,h?Object.assign({},C,((R={})[T]=A?"0":"",R[O]=_?"0":"",R.transform=(z.devicePixelRatio||1)<=1?"translate("+w+"px, "+x+"px)":"translate3d("+w+"px, "+x+"px, 0)",R)):Object.assign({},C,((t={})[T]=A?x+"px":"",t[O]=_?w+"px":"",t.transform="",t))}var X={passive:true};var $={left:"right",right:"left",bottom:"top",top:"bottom"};function G(e){return e.replace(/left|right|bottom|top/g,function(e){return $[e]})}var K={start:"end",end:"start"};function Y(e){return e.replace(/start|end/g,function(e){return K[e]})}function J(e){var t=y$6$1(e);return {scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Q(e){return E(H$3$1(e)).left+J(e).scrollLeft}function Z(e){var t=L(e),i=t.overflow,s=t.overflowX,r=t.overflowY;return /auto|scroll|overlay|hidden/.test(i+r+s)}function ee(e){return ["html","body","#document"].indexOf(v$3$1(e))>=0?e.ownerDocument.body:b$3$1(e)&&Z(e)?e:ee(C$3$1(e))}function te(e,t){var i;void 0===t&&(t=[]);var s=ee(e),r=s===(null==(i=e.ownerDocument)?void 0:i.body),o=y$6$1(s),n=r?[o].concat(o.visualViewport||[],Z(s)?s:[]):s,a=t.concat(n);return r?a:a.concat(te(C$3$1(n)))}function ie(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function se(e,t,i){return t===f$6$1?ie(function(e,t){var i=y$6$1(e),s=H$3$1(e),r=i.visualViewport,o=s.clientWidth,n=s.clientHeight,a=0,l=0;if(r){o=r.width,n=r.height;var c=z$6$1();(c||!c&&"fixed"===t)&&(a=r.offsetLeft,l=r.offsetTop);}return {width:o,height:n,x:a+Q(e),y:l}}(e,i)):w$6$1(t)?function(e,t){var i=E(e,false,"fixed"===t);return i.top=i.top+e.clientTop,i.left=i.left+e.clientLeft,i.bottom=i.top+e.clientHeight,i.right=i.left+e.clientWidth,i.width=e.clientWidth,i.height=e.clientHeight,i.x=i.left,i.y=i.top,i}(t,i):ie(function(e){var t,i=H$3$1(e),s=J(e),r=null==(t=e.ownerDocument)?void 0:t.body,o=A$3$1(i.scrollWidth,i.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),n=A$3$1(i.scrollHeight,i.clientHeight,r?r.scrollHeight:0,r?r.clientHeight:0),a=-s.scrollLeft+Q(e),l=-s.scrollTop;return "rtl"===L(r||i).direction&&(a+=A$3$1(i.clientWidth,r?r.clientWidth:0)-o),{width:o,height:n,x:a,y:l}}(H$3$1(e)))}function re(e,t,i,s){var r="clippingParents"===t?function(e){var t=te(C$3$1(e)),i=["absolute","fixed"].indexOf(L(e).position)>=0&&b$3$1(e)?N$3$1(e):e;return w$6$1(i)?t.filter(function(e){return w$6$1(e)&&B$3$1(e,i)&&"body"!==v$3$1(e)}):[]}(e):[].concat(t),o=[].concat(r,[i]),n=o[0],a=o.reduce(function(t,i){var r=se(e,i,s);return t.top=A$3$1(r.top,t.top),t.right=O(r.right,t.right),t.bottom=O(r.bottom,t.bottom),t.left=A$3$1(r.left,t.left),t},se(e,n,s));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function oe(e){var t,i=e.reference,s=e.element,l=e.placement,c=l?_$4$1(l):null,f=l?U$3$1(l):null,h=i.x+i.width/2-s.width/2,u=i.y+i.height/2-s.height/2;switch(c){case r$1$1:t={x:h,y:i.y-s.height};break;case o:t={x:h,y:i.y+i.height};break;case n$1$1:t={x:i.x+i.width,y:u};break;case a:t={x:i.x-s.width,y:u};break;default:t={x:i.x,y:i.y};}var m=c?P(c):null;if(null!=m){var g="y"===m?"height":"width";switch(f){case p$6$1:t[m]=t[m]-(i[g]/2-s[g]/2);break;case d$3$1:t[m]=t[m]+(i[g]/2-s[g]/2);}}return t}function ne(e,t){ void 0===t&&(t={});var i=t,s=i.placement,a=void 0===s?e.placement:s,l=i.strategy,p=void 0===l?e.strategy:l,d=i.boundary,u=void 0===d?"clippingParents":d,m=i.rootBoundary,g=void 0===m?f$6$1:m,v=i.elementContext,y=void 0===v?h$3$1:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,A=I("number"!=typeof _?_:q$3$1(_,c$3$1)),O=y===h$3$1?"reference":h$3$1,k=e.rects.popper,T=e.elements[x?O:y],z=re(w$6$1(T)?T:T.contextElement||H$3$1(e.elements.popper),u,g,p),M=E(e.elements.reference),B=oe({reference:M,element:k,placement:a}),L=ie(Object.assign({},k,B)),R=y===h$3$1?L:M,C={top:z.top-R.top+A.top,bottom:R.bottom-z.bottom+A.bottom,left:z.left-R.left+A.left,right:R.right-z.right+A.right},D=e.modifiersData.offset;if(y===h$3$1&&D){var N=D[a];Object.keys(C).forEach(function(e){var t=[n$1$1,o].indexOf(e)>=0?1:-1,i=[r$1$1,o].indexOf(e)>=0?"y":"x";C[e]+=N[i]*t;});}return C}function ae(e,t){ void 0===t&&(t={});var i=t,s=i.placement,r=i.boundary,o=i.rootBoundary,n=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,p=void 0===l?m$6$1:l,d=U$3$1(s),f=d?a?u$6$1:u$6$1.filter(function(e){return U$3$1(e)===d}):c$3$1,h=f.filter(function(e){return p.indexOf(e)>=0});0===h.length&&(h=f);var g=h.reduce(function(t,i){return t[i]=ne(e,{placement:i,boundary:r,rootBoundary:o,padding:n})[_$4$1(i)],t},{});return Object.keys(g).sort(function(e,t){return g[e]-g[t]})}var le={name:"flip",enabled:true,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name;if(!t.modifiersData[s]._skip){for(var c=i.mainAxis,d=void 0===c||c,f=i.altAxis,h=void 0===f||f,u=i.fallbackPlacements,m=i.padding,g=i.boundary,v=i.rootBoundary,y=i.altBoundary,w=i.flipVariations,b=void 0===w||w,x=i.allowedAutoPlacements,S=t.options.placement,A=_$4$1(S),O=u||(A===S||!b?[G(S)]:function(e){if(_$4$1(e)===l$3$1)return [];var t=G(e);return [Y(e),t,Y(t)]}(S)),k=[S].concat(O).reduce(function(e,i){return e.concat(_$4$1(i)===l$3$1?ae(t,{placement:i,boundary:g,rootBoundary:v,padding:m,flipVariations:b,allowedAutoPlacements:x}):i)},[]),T=t.rects.reference,z=t.rects.popper,E=new Map,M=true,B=k[0],L=0;L<k.length;L++){var R=k[L],H=_$4$1(R),C=U$3$1(R)===p$6$1,D=[r$1$1,o].indexOf(H)>=0,N=D?"width":"height",P=ne(t,{placement:R,boundary:g,rootBoundary:v,altBoundary:y,padding:m}),j=D?C?n$1$1:a:C?o:r$1$1;T[N]>z[N]&&(j=G(j));var I=G(j),q=[];if(d&&q.push(P[H]<=0),h&&q.push(P[j]<=0,P[I]<=0),q.every(function(e){return e})){B=R,M=false;break}E.set(R,q);}if(M)for(var F=function(e){var t=k.find(function(t){var i=E.get(t);if(i)return i.slice(0,e).every(function(e){return e})});if(t)return B=t,"break"},V=b?3:1;V>0;V--){if("break"===F(V))break}t.placement!==B&&(t.modifiersData[s]._skip=true,t.placement=B,t.reset=true);}},requiresIfExists:["offset"],data:{_skip:false}};function ce(e,t,i){return void 0===i&&(i={x:0,y:0}),{top:e.top-t.height-i.y,right:e.right-t.width+i.x,bottom:e.bottom-t.height+i.y,left:e.left-t.width-i.x}}function pe(e){return [r$1$1,n$1$1,o,a].some(function(t){return e[t]>=0})}var de={name:"offset",enabled:true,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,i=e.options,s=e.name,o=i.offset,l=void 0===o?[0,0]:o,c=m$6$1.reduce(function(e,i){return e[i]=function(e,t,i){var s=_$4$1(e),o=[a,r$1$1].indexOf(s)>=0?-1:1,l="function"==typeof i?i(Object.assign({},t,{placement:e})):i,c=l[0],p=l[1];return c=c||0,p=(p||0)*o,[a,n$1$1].indexOf(s)>=0?{x:p,y:c}:{x:c,y:p}}(i,t.rects,l),e},{}),p=c[t.placement],d=p.x,f=p.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=d,t.modifiersData.popperOffsets.y+=f),t.modifiersData[s]=c;}};var fe={name:"preventOverflow",enabled:true,phase:"main",fn:function(e){var t=e.state,i=e.options,s=e.name,l=i.mainAxis,c=void 0===l||l,d=i.altAxis,f=void 0!==d&&d,h=i.boundary,u=i.rootBoundary,m=i.altBoundary,g=i.padding,v=i.tether,y=void 0===v||v,w=i.tetherOffset,b=void 0===w?0:w,x=ne(t,{boundary:h,rootBoundary:u,padding:g,altBoundary:m}),S=_$4$1(t.placement),k=U$3$1(t.placement),T=!k,z=P(S),E="x"===z?"y":"x",B=t.modifiersData.popperOffsets,L=t.rects.reference,R=t.rects.popper,H="function"==typeof b?b(Object.assign({},t.rects,{placement:t.placement})):b,C="number"==typeof H?{mainAxis:H,altAxis:H}:Object.assign({mainAxis:0,altAxis:0},H),D=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,I={x:0,y:0};if(B){if(c){var q,F="y"===z?r$1$1:a,V="y"===z?o:n$1$1,W="y"===z?"height":"width",X=B[z],$=X+x[F],G=X-x[V],K=y?-R[W]/2:0,Y=k===p$6$1?L[W]:R[W],J=k===p$6$1?-R[W]:-L[W],Q=t.elements.arrow,Z=y&&Q?M$6$1(Q):{width:0,height:0},ee=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},te=ee[F],ie=ee[V],se=j(0,L[W],Z[W]),re=T?L[W]/2-K-se-te-C.mainAxis:Y-se-te-C.mainAxis,oe=T?-L[W]/2+K+se+ie+C.mainAxis:J+se+ie+C.mainAxis,ae=t.elements.arrow&&N$3$1(t.elements.arrow),le=ae?"y"===z?ae.clientTop||0:ae.clientLeft||0:0,ce=null!=(q=null==D?void 0:D[z])?q:0,pe=X+oe-ce,de=j(y?O($,X+re-ce-le):$,X,y?A$3$1(G,pe):G);B[z]=de,I[z]=de-X;}if(f){var fe,he="x"===z?r$1$1:a,ue="x"===z?o:n$1$1,me=B[E],ge="y"===E?"height":"width",ve=me+x[he],ye=me-x[ue],we=-1!==[r$1$1,a].indexOf(S),be=null!=(fe=null==D?void 0:D[E])?fe:0,xe=we?ve:me-L[ge]-R[ge]-be+C.altAxis,Se=we?me+L[ge]+R[ge]-be-C.altAxis:ye,_e=y&&we?function(e,t,i){var s=j(e,t,i);return s>i?i:s}(xe,me,Se):j(y?xe:ve,me,y?Se:ye);B[E]=_e,I[E]=_e-me;}t.modifiersData[s]=I;}},requiresIfExists:["offset"]};function he(e,t,i){ void 0===i&&(i=false);var s,r,o=b$3$1(t),n=b$3$1(t)&&function(e){var t=e.getBoundingClientRect(),i=k$6$1(t.width)/e.offsetWidth||1,s=k$6$1(t.height)/e.offsetHeight||1;return 1!==i||1!==s}(t),a=H$3$1(t),l=E(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return (o||!o&&!i)&&(("body"!==v$3$1(t)||Z(a))&&(c=(s=t)!==y$6$1(s)&&b$3$1(s)?{scrollLeft:(r=s).scrollLeft,scrollTop:r.scrollTop}:J(s)),b$3$1(t)?((p=E(t,true)).x+=t.clientLeft,p.y+=t.clientTop):a&&(p.x=Q(a))),{x:l.left+c.scrollLeft-p.x,y:l.top+c.scrollTop-p.y,width:l.width,height:l.height}}function ue(e){var t=new Map,i=new Set,s=[];function r(e){i.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach(function(e){if(!i.has(e)){var s=t.get(e);s&&r(s);}}),s.push(e);}return e.forEach(function(e){t.set(e.name,e);}),e.forEach(function(e){i.has(e.name)||r(e);}),s}var me={placement:"bottom",modifiers:[],strategy:"absolute"};function ge(){for(var e=arguments.length,t=new Array(e),i=0;i<e;i++)t[i]=arguments[i];return !t.some(function(e){return !(e&&"function"==typeof e.getBoundingClientRect)})}function ve(e){ void 0===e&&(e={});var t=e,i=t.defaultModifiers,s=void 0===i?[]:i,r=t.defaultOptions,o=void 0===r?me:r;return function(e,t,i){ void 0===i&&(i=o);var r,n,a={placement:"bottom",orderedModifiers:[],options:Object.assign({},me,o),modifiersData:{},elements:{reference:e,popper:t},attributes:{},styles:{}},l=[],c=false,p={state:a,setOptions:function(i){var r="function"==typeof i?i(a.options):i;d(),a.options=Object.assign({},o,a.options,r),a.scrollParents={reference:w$6$1(e)?te(e):e.contextElement?te(e.contextElement):[],popper:te(t)};var n,c,f=function(e){var t=ue(e);return g$6$1.reduce(function(e,i){return e.concat(t.filter(function(e){return e.phase===i}))},[])}((n=[].concat(s,a.options.modifiers),c=n.reduce(function(e,t){var i=e[t.name];return e[t.name]=i?Object.assign({},i,t,{options:Object.assign({},i.options,t.options),data:Object.assign({},i.data,t.data)}):t,e},{}),Object.keys(c).map(function(e){return c[e]})));return a.orderedModifiers=f.filter(function(e){return e.enabled}),a.orderedModifiers.forEach(function(e){var t=e.name,i=e.options,s=void 0===i?{}:i,r=e.effect;if("function"==typeof r){var o=r({state:a,name:t,instance:p,options:s}),n=function(){};l.push(o||n);}}),p.update()},forceUpdate:function(){if(!c){var e=a.elements,t=e.reference,i=e.popper;if(ge(t,i)){a.rects={reference:he(t,N$3$1(i),"fixed"===a.options.strategy),popper:M$6$1(i)},a.reset=false,a.placement=a.options.placement,a.orderedModifiers.forEach(function(e){return a.modifiersData[e.name]=Object.assign({},e.data)});for(var s=0;s<a.orderedModifiers.length;s++)if(true!==a.reset){var r=a.orderedModifiers[s],o=r.fn,n=r.options,l=void 0===n?{}:n,d=r.name;"function"==typeof o&&(a=o({state:a,options:l,name:d,instance:p})||a);}else a.reset=false,s=-1;}}},update:(r=function(){return new Promise(function(e){p.forceUpdate(),e(a);})},function(){return n||(n=new Promise(function(e){Promise.resolve().then(function(){n=void 0,e(r());});})),n}),destroy:function(){d(),c=true;}};if(!ge(e,t))return p;function d(){l.forEach(function(e){return e()}),l=[];}return p.setOptions(i).then(function(e){!c&&i.onFirstUpdate&&i.onFirstUpdate(e);}),p}}var ye=ve({defaultModifiers:[{name:"eventListeners",enabled:true,phase:"write",fn:function(){},effect:function(e){var t=e.state,i=e.instance,s=e.options,r=s.scroll,o=void 0===r||r,n=s.resize,a=void 0===n||n,l=y$6$1(t.elements.popper),c=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&c.forEach(function(e){e.addEventListener("scroll",i.update,X);}),a&&l.addEventListener("resize",i.update,X),function(){o&&c.forEach(function(e){e.removeEventListener("scroll",i.update,X);}),a&&l.removeEventListener("resize",i.update,X);}},data:{}},{name:"popperOffsets",enabled:true,phase:"read",fn:function(e){var t=e.state,i=e.name;t.modifiersData[i]=oe({reference:t.rects.reference,element:t.rects.popper,placement:t.placement});},data:{}},{name:"computeStyles",enabled:true,phase:"beforeWrite",fn:function(e){var t=e.state,i=e.options,s=i.gpuAcceleration,r=void 0===s||s,o=i.adaptive,n=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:_$4$1(t.placement),variation:U$3$1(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:r,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,W(Object.assign({},c,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:n,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,W(Object.assign({},c,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:false,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement});},data:{}},S$3$1,de,le,fe,F,{name:"hide",enabled:true,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,i=e.name,s=t.rects.reference,r=t.rects.popper,o=t.modifiersData.preventOverflow,n=ne(t,{elementContext:"reference"}),a=ne(t,{altBoundary:true}),l=ce(n,s),c=ce(a,r,o),p=pe(l),d=pe(c);t.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:p,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":d});}}]});class we{constructor(e,t,i,s){this.anchor=e,this.popover=t,this.boundaryElement=this.setBoundary(s),this.options={placement:i,visibleClass:"data-show"},this.popover.classList.remove(this.options.visibleClass);}setBoundary(e){return "string"==typeof e?document.querySelector(e)||document.body:e||document.body}show(){this.popper&&this.popper.destroy(),this.popper=ye(this.anchor,this.popover,{tooltip:this.anchor,placement:this.options.placement,modifiers:[{name:"offset",options:{offset:[0,18]}},{name:"preventOverflow",options:{mainAxis:true,boundary:this.boundaryElement,rootBoundary:"document",padding:16}}]});}triggerUpdate(){this.popper.update();}hide(){this.popover.classList.remove(this.options.visibleClass);}}var be=i$7`::slotted(*):not([onDark]),::slotted(*):not([appearance=inverse]){color:var(--ds-auro-popover-text-color)}.popover{background-color:var(--ds-auro-popover-container-color);box-shadow:var(--ds-auro-popover-boxshadow-color)}.arrow:before{background-color:var(--ds-auro-popover-container-color);box-shadow:2px 2px 1px 0 var(--ds-auro-popover-boxshadow-color)}
|
|
16034
16033
|
`,xe=i$7`.body-default{font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, .875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs{font-size:var(--wcss-body-xs-font-size, .75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:var(--wcss-body-2xs-font-size, .625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-line-height, .875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 450);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 450);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, .05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, .05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, .05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, .05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, .05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, .1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(.875rem, 1.1666666667vw, .875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, .1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}:focus:not(:focus-visible){outline:3px solid transparent}.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden,:host(:not([data-show])) .popover,:host([disabled]) .popover,:host([addSpace]) :host(:not([data-show])) .popover{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;padding:0;border:0}.util_insetNone{padding:0}.util_insetXxxs{padding:.125rem}.util_insetXxxs--stretch{padding:.25rem .125rem}.util_insetXxxs--squish{padding:0 .125rem}.util_insetXxs{padding:.25rem}.util_insetXxs--stretch{padding:.375rem .25rem}.util_insetXxs--squish{padding:.125rem .25rem}.util_insetXs{padding:.5rem}.util_insetXs--stretch{padding:.75rem .5rem}.util_insetXs--squish{padding:.25rem .5rem}.util_insetSm{padding:.75rem}.util_insetSm--stretch{padding:1.125rem .75rem}.util_insetSm--squish{padding:.375rem .75rem}.util_insetMd{padding:1rem}.util_insetMd--stretch{padding:1.5rem 1rem}.util_insetMd--squish{padding:.5rem 1rem}.util_insetLg{padding:1.5rem}.util_insetLg--stretch{padding:2.25rem 1.5rem}.util_insetLg--squish{padding:.75rem 1.5rem}.util_insetXl{padding:2rem}.util_insetXl--stretch{padding:3rem 2rem}.util_insetXl--squish{padding:1rem 2rem}.util_insetXxl{padding:3rem}.util_insetXxl--stretch{padding:4.5rem 3rem}.util_insetXxl--squish{padding:1.5rem 3rem}.util_insetXxxl{padding:4rem}.util_insetXxxl--stretch{padding:6rem 4rem}.util_insetXxxl--squish{padding:2rem 4rem}::slotted(*){white-space:normal}::slotted(*:hover){cursor:pointer}[data-trigger-placement]::slotted(*:hover){position:relative}[data-trigger-placement]::slotted(*:hover):before{position:absolute;left:0;display:block;width:100%;height:calc(var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem));content:""}[data-trigger-placement^=top]::slotted(*:hover):before{top:calc(-1 * (var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem)))}[data-trigger-placement^=bottom]::slotted(*:hover):before{bottom:calc(-1 * (var(--ds-size-200, 1rem) + var(--ds-size-50, .25rem)))}:host([data-show]) .popover{z-index:var(--ds-depth-tooltip, 400)}:host([removeSpace]) .popover{margin:calc(-1 * (var(--ds-size-50, .25rem) + 1px)) 0!important}:host([addSpace]) .popover{margin:var(--ds-size-200, 1rem) 0!important}:host([addSpace]) [data-trigger-placement]::slotted(*:hover):before{height:var(--ds-size-500, 2.5rem)}:host([addSpace]) [data-trigger-placement^=top]::slotted(*:hover):before{top:calc(-1 * var(--ds-size-500, 2.5rem))}:host([addSpace]) [data-trigger-placement^=bottom]::slotted(*:hover):before{bottom:calc(-1 * var(--ds-size-500, 2.5rem))}.popover{display:inline-block;max-width:calc(100% - var(--ds-size-400, 2rem));border-radius:var(--ds-border-radius, .375rem)}@media screen and (min-width:576px){.popover{max-width:50%}}@media screen and (min-width:768px){.popover{max-width:40%}}@media screen and (min-width:1024px){.popover{max-width:27rem}}[data-popper-placement^=top]>.arrow{bottom:calc(-1 * (var(--ds-size-100, .5rem) + var(--ds-size-25, .125rem)))}[data-popper-placement^=top]>.arrow:before{top:calc(-1 * var(--ds-size-200, 1rem));left:calc(-1 * var(--ds-size-75, .375rem));transform:rotate(45deg)}[data-popper-placement^=bottom]>.arrow{top:calc(-1 * (var(--ds-size-100, .5rem) + var(--ds-size-25, .125rem)))}[data-popper-placement^=bottom]>.arrow:before{top:var(--ds-size-50, .25rem);right:calc(-1 * var(--ds-size-200, 1rem));transform:rotate(-135deg)}.arrow{position:relative;margin-top:-var(--ds-size-100,.5rem)}.arrow:before{position:absolute;width:var(--ds-size-150, .75rem);height:var(--ds-size-150, .75rem);content:""}
|
|
16035
16034
|
`,Se=i$7`:host{--ds-auro-popover-boxshadow-color: var(--ds-elevation-200, 0px 0px 10px rgba(0, 0, 0, .15));--ds-auro-popover-container-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-popover-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}
|
|
16036
|
-
`;class _e extends i$4{constructor(){super(),this.placement="top",this._onTouchStart=null,this._onTriggerMouseEnter=null,this._onTriggerMouseLeave=null,this._onTriggerFocus=null,this._onTriggerBlur=null,this._onTriggerKeydown=null,this._onHidePopover=null,this._onBodyMouseover=null,this._onSlotChange=null,this._addedTabIndex=false;}_initializeDefaults(){this.
|
|
16037
|
-
<div
|
|
16035
|
+
`;class _e extends i$4{constructor(){super(),this.placement="top",this.isPopoverVisible=false,this._onTouchStart=null,this._onTriggerMouseEnter=null,this._onTriggerMouseLeave=null,this._onTriggerFocus=null,this._onTriggerBlur=null,this._onTriggerKeydown=null,this._onHidePopover=null,this._onBodyMouseover=null,this._onSlotChange=null,this._addedTabIndex=false;}_initializeDefaults(){this.runtimeUtils=new s$3;}static get properties(){return {addSpace:{type:Boolean,reflect:true},boundary:{type:String},disabled:{type:Boolean,reflect:true},for:{type:String,reflect:true},placement:{type:String},removeSpace:{type:Boolean,reflect:true},isPopoverVisible:{type:Boolean,reflect:true,attribute:"data-show",converter:{fromAttribute:e=>null!==e,toAttribute:e=>e?"true":null}}}}static get styles(){return [i$7`${xe}`,i$7`${be}`,i$7`${Se}`]}static register(e="auro-popover"){s$3.prototype.registerComponent(e,_e);}connectedCallback(){super.connectedCallback(),this.hasAttribute("role")||this.setAttribute("role","none"),this._initializeDefaults(),this._onTouchStart||(this._onTouchStart=()=>{this.toggle();}),this.addEventListener("touchstart",this._onTouchStart);}disconnectedCallback(){if(super.disconnectedCallback(),this.removeEventListener("touchstart",this._onTouchStart),this.trigger){this._onTriggerMouseEnter&&this._eventTarget.removeEventListener("mouseenter",this._onTriggerMouseEnter),this._onTriggerMouseLeave&&this._eventTarget.removeEventListener("mouseleave",this._onTriggerMouseLeave),this._onTriggerFocus&&this.trigger.removeEventListener("focusin",this._onTriggerFocus),this._onTriggerBlur&&this.trigger.removeEventListener("focusout",this._onTriggerBlur),this._onTriggerKeydown&&this.trigger.removeEventListener("keydown",this._onTriggerKeydown),this._onSlotChange&&this.shadowRoot?.querySelector("slot:not([name])")?.removeEventListener("slotchange",this._onSlotChange);for(const e of this._ariaDescriptionTargets||[this.trigger])e.removeAttribute("aria-description");this._addedTabIndex&&"0"===this.trigger.getAttribute("tabindex")&&this.trigger.removeAttribute("tabindex");}this._onHidePopover&&this.removeEventListener("hidePopover",this._onHidePopover),this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper?.popper&&"function"==typeof this.popper.popper.destroy&&(this.popper.popper.destroy(),this.popper.popper=null);}firstUpdated(){this.runtimeUtils.handleComponentTagRename(this,"auro-popover"),this.for&&(this.trigger=document.querySelector(`#${this.for}`)||this.getRootNode().querySelector(`#${this.for}`)),this.trigger||([this.trigger]=this.shadowRoot.querySelector('slot[name="trigger"]').assignedElements()),this.trigger&&(this._setupAccessibility(),this._setupEventListeners(),this.isPopoverVisible&&this.popper&&(this.disabled?this.isPopoverVisible=false:(this.popper.show(),document.body.addEventListener("mouseover",this._onBodyMouseover))));}_setupEventListeners(){this.auroPopover=this.shadowRoot.querySelector("#popover"),this.popper=new we(this.trigger,this.auroPopover,this.placement,this.boundary),this._onBodyMouseover=e=>this.handleMouseoverEvent(e),this._onTriggerMouseEnter=()=>{this.toggleShow();},this._onTriggerMouseLeave=()=>{this.toggleHide();},this._onTriggerFocus=()=>{this.toggleShow();},this._onTriggerBlur=e=>{let t=e.relatedTarget,i=false;for(;t;){if(this.trigger.contains(t)||this.contains(t)){i=true;break}const e=t.getRootNode();t=e instanceof ShadowRoot?e.host:null;}i||this.toggleHide();},this._onTriggerKeydown=e=>{const t=e.key.toLowerCase();if(this.isPopoverVisible&&("tab"!==t&&"escape"!==t||this.toggleHide())," "===t||"enter"===t){if(e.target!==this.trigger&&!this._addedTabIndex)return;" "===t&&this._addedTabIndex&&e.preventDefault(),this.toggle();}},this._onHidePopover=()=>{this.toggleHide();},this._eventTarget=this.trigger.parentElement.localName===this.localName?this:this.trigger,this._eventTarget.addEventListener("mouseenter",this._onTriggerMouseEnter),this._eventTarget.addEventListener("mouseleave",this._onTriggerMouseLeave),this.trigger.addEventListener("keydown",this._onTriggerKeydown),this.trigger.addEventListener("focusin",this._onTriggerFocus),this.trigger.addEventListener("focusout",this._onTriggerBlur),this.addEventListener("hidePopover",this._onHidePopover);}_setupAccessibility(){const e=this.trigger.tabIndex>=0,t='button:not([disabled]), a[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex^="-"]), [contenteditable]:not([contenteditable="false"]), summary, iframe, audio[controls], video[controls]',i=e=>{if(e.tabIndex<0)return false;let t=e;for(;t;){if(t.closest("[hidden], [inert]"))return false;const e=t.getRootNode();t=e instanceof ShadowRoot?e.host:null;}return true};let s=[...this.trigger.querySelectorAll(t)].some(i);if(!s){const e=this.trigger.querySelectorAll("*");for(const r of e)if(r.localName.includes("-")&&(r.tabIndex>=0||r.shadowRoot&&[...r.shadowRoot.querySelectorAll(t)].some(i))){s=true;break}}!s&&this.trigger.localName.includes("-")&&this.trigger.shadowRoot&&(s=[...this.trigger.shadowRoot.querySelectorAll(t)].some(i)),e||s||this.trigger.hasAttribute("tabindex")||(this.trigger.setAttribute("tabindex","0"),this._addedTabIndex=true);const r=this.shadowRoot.querySelector("slot:not([name])"),o=()=>r.assignedNodes({flatten:true}).map(e=>e.textContent??"").join(" ").replace(/\s+/g," ").trim();if(this._ariaDescriptionTargets=[],!e&&s){const e=[...this.trigger.querySelectorAll(t)].filter(i);this._ariaDescriptionTargets.push(...e);const s=this.trigger.querySelectorAll("*");for(const r of s)if(r.localName.includes("-")&&!e.includes(r))if(r.tabIndex>=0)this._ariaDescriptionTargets.push(r);else if(r.shadowRoot){const e=[...r.shadowRoot.querySelectorAll(t)].filter(i);for(const t of e)this._ariaDescriptionTargets.push(t);}if(0===this._ariaDescriptionTargets.length){if(this.trigger.localName.includes("-")&&this.trigger.shadowRoot){const e=[...this.trigger.shadowRoot.querySelectorAll(t)].filter(i);this._ariaDescriptionTargets.push(...e);}0===this._ariaDescriptionTargets.length&&this._ariaDescriptionTargets.push(this.trigger);}}else this._ariaDescriptionTargets.push(this.trigger);const n=o();for(const e of this._ariaDescriptionTargets)e.setAttribute("aria-description",n);this._onSlotChange=()=>{const e=o();for(const t of this._ariaDescriptionTargets)t?.setAttribute("aria-description",e);},r.addEventListener("slotchange",this._onSlotChange);}toggle(){this.popper&&(this.isPopoverVisible?this.toggleHide():this.toggleShow());}toggleHide(){this.isPopoverVisible=false;}toggleShow(){this.popper&&!this.disabled&&(this.isPopoverVisible=true);}handleMouseoverEvent(e){this.isPopoverVisible&&!e.composedPath().includes(this)&&this.toggleHide();}updated(e){if(e.has("boundary")&&this.popper&&(this.popper.boundaryElement=this.popper.setBoundary(this.boundary)),e.has("isPopoverVisible")&&this.popper)if(this.isPopoverVisible){if(this.disabled)return void(this.isPopoverVisible=false);this.popper.show(),document.body.addEventListener("mouseover",this._onBodyMouseover);}else this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper.hide();e.has("disabled")&&this.disabled&&this.isPopoverVisible&&(this.isPopoverVisible=false);}render(){return b$7`
|
|
16036
|
+
<div
|
|
16037
|
+
id="popover"
|
|
16038
|
+
class="popover util_insetLg body-default"
|
|
16039
|
+
part="popover"
|
|
16040
|
+
role="tooltip"
|
|
16041
|
+
aria-hidden="${this.isPopoverVisible?"false":"true"}">
|
|
16038
16042
|
<div id="arrow" class="arrow" data-popper-arrow></div>
|
|
16039
|
-
<
|
|
16043
|
+
<slot></slot>
|
|
16040
16044
|
</div>
|
|
16041
16045
|
|
|
16042
|
-
<span>
|
|
16046
|
+
<span role="presentation">
|
|
16043
16047
|
<slot name="trigger" data-trigger-placement="${this.placement}"></slot>
|
|
16044
16048
|
</span>
|
|
16045
16049
|
`}}
|
|
@@ -16054,7 +16058,6 @@ class AuroCalendarCell extends i$4 {
|
|
|
16054
16058
|
|
|
16055
16059
|
this.day = null;
|
|
16056
16060
|
this.selected = false;
|
|
16057
|
-
this.hovered = false;
|
|
16058
16061
|
this.dateTo = null;
|
|
16059
16062
|
this.dateFrom = null;
|
|
16060
16063
|
this.month = null;
|
|
@@ -16062,11 +16065,12 @@ class AuroCalendarCell extends i$4 {
|
|
|
16062
16065
|
this.max = null;
|
|
16063
16066
|
this.disabled = false;
|
|
16064
16067
|
this.disabledDays = [];
|
|
16065
|
-
this.hoveredDate = null;
|
|
16066
16068
|
this.isCurrentDate = false;
|
|
16067
16069
|
this._locale = null;
|
|
16068
16070
|
this.dateStr = null;
|
|
16069
16071
|
this.renderForDateSlot = false; // When false, the numerical date will render vertically centered. When true, the date will render off-center to the top and leave room below for the slot content.
|
|
16072
|
+
this.active = false;
|
|
16073
|
+
this.hasPopoverContent = false;
|
|
16070
16074
|
|
|
16071
16075
|
this.runtimeUtils = new AuroLibraryRuntimeUtils$5$1();
|
|
16072
16076
|
|
|
@@ -16085,7 +16089,6 @@ class AuroCalendarCell extends i$4 {
|
|
|
16085
16089
|
// ...super.properties,
|
|
16086
16090
|
day: { type: Object },
|
|
16087
16091
|
selected: { type: Boolean },
|
|
16088
|
-
hovered: { type: Boolean },
|
|
16089
16092
|
dateTo: { type: String },
|
|
16090
16093
|
dateFrom: { type: String },
|
|
16091
16094
|
month: { type: String },
|
|
@@ -16096,11 +16099,11 @@ class AuroCalendarCell extends i$4 {
|
|
|
16096
16099
|
reflect: true
|
|
16097
16100
|
},
|
|
16098
16101
|
disabledDays: { type: Array },
|
|
16099
|
-
hoveredDate: { type: String },
|
|
16100
16102
|
isCurrentDate: { type: Boolean },
|
|
16101
16103
|
locale: { type: Object },
|
|
16102
16104
|
dateStr: { type: String },
|
|
16103
|
-
renderForDateSlot: { type: Boolean }
|
|
16105
|
+
renderForDateSlot: { type: Boolean },
|
|
16106
|
+
hasPopoverContent: { type: Boolean }
|
|
16104
16107
|
};
|
|
16105
16108
|
}
|
|
16106
16109
|
|
|
@@ -16124,17 +16127,17 @@ class AuroCalendarCell extends i$4 {
|
|
|
16124
16127
|
}
|
|
16125
16128
|
|
|
16126
16129
|
/**
|
|
16127
|
-
* Handles selected
|
|
16130
|
+
* Handles selected state of the calendar cell when the selection changes.
|
|
16131
|
+
* Also clears any imperative range preview classes so classMap is the
|
|
16132
|
+
* sole source of truth after a selection update.
|
|
16128
16133
|
* @private
|
|
16129
16134
|
* @param {Number} dateFrom - Depart date.
|
|
16130
16135
|
* @param {Number} dateTo - Return date.
|
|
16131
|
-
* @param {Number} hoveredDate - Hovered date.
|
|
16132
16136
|
* @param {Object} day - An object containing the dateFrom and day of month values.
|
|
16133
16137
|
* @returns {void}
|
|
16134
16138
|
*/
|
|
16135
|
-
dateChanged(dateFrom, dateTo,
|
|
16139
|
+
dateChanged(dateFrom, dateTo, day) {
|
|
16136
16140
|
this.selected = false;
|
|
16137
|
-
this.hovered = false;
|
|
16138
16141
|
|
|
16139
16142
|
const parsedDateFrom = parseInt(dateFrom, 10);
|
|
16140
16143
|
const parsedDateTo = parseInt(dateTo, 10);
|
|
@@ -16146,10 +16149,6 @@ class AuroCalendarCell extends i$4 {
|
|
|
16146
16149
|
if (day.date === departTimestamp || day.date === returnTimestamp) {
|
|
16147
16150
|
this.selected = true;
|
|
16148
16151
|
}
|
|
16149
|
-
|
|
16150
|
-
if (((hoveredDate === day.date || day.date < hoveredDate) && day.date > parsedDateFrom && !parsedDateTo && !Number.isNaN(parsedDateFrom) && parsedDateFrom !== undefined && !this.selected) || (day.date > parsedDateFrom && day.date < parsedDateTo)) {
|
|
16151
|
-
this.hovered = true;
|
|
16152
|
-
}
|
|
16153
16152
|
}
|
|
16154
16153
|
}
|
|
16155
16154
|
|
|
@@ -16159,27 +16158,105 @@ class AuroCalendarCell extends i$4 {
|
|
|
16159
16158
|
* @returns {void}
|
|
16160
16159
|
*/
|
|
16161
16160
|
handleTap() {
|
|
16162
|
-
if (!this.disabled) {
|
|
16161
|
+
if (!this.disabled && !this.isBlackout()) {
|
|
16163
16162
|
this.datepicker.handleCellClick(this.day.date);
|
|
16164
16163
|
}
|
|
16164
|
+
|
|
16165
|
+
// Set this cell as the active cell regardless of blackout status
|
|
16166
|
+
if (this.day) {
|
|
16167
|
+
this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
|
|
16168
|
+
bubbles: true,
|
|
16169
|
+
composed: true,
|
|
16170
|
+
detail: { date: this.day.date }
|
|
16171
|
+
}));
|
|
16172
|
+
}
|
|
16165
16173
|
}
|
|
16166
16174
|
|
|
16167
16175
|
/**
|
|
16168
16176
|
* Handles user hover events and dispatches a custom event.
|
|
16177
|
+
* Does NOT set any reactive properties — the range preview is handled
|
|
16178
|
+
* imperatively by the calendar component to avoid O(N) re-renders.
|
|
16169
16179
|
* @private
|
|
16170
16180
|
* @returns {void}
|
|
16171
16181
|
*/
|
|
16172
16182
|
handleHover() {
|
|
16173
|
-
this.hovered = true;
|
|
16174
|
-
|
|
16175
|
-
let _a;
|
|
16176
16183
|
this.dispatchEvent(new CustomEvent('date-is-hovered', {
|
|
16177
|
-
detail: { date:
|
|
16184
|
+
detail: { date: this.day?.date },
|
|
16185
|
+
}));
|
|
16186
|
+
}
|
|
16187
|
+
|
|
16188
|
+
/**
|
|
16189
|
+
* Handles focus events on the cell button.
|
|
16190
|
+
* Dispatches a lightweight event for the calendar to handle SR
|
|
16191
|
+
* announcements and range preview updates without triggering
|
|
16192
|
+
* any Lit lifecycle updates.
|
|
16193
|
+
* @private
|
|
16194
|
+
* @returns {void}
|
|
16195
|
+
*/
|
|
16196
|
+
handleFocus() {
|
|
16197
|
+
this.dispatchEvent(new CustomEvent('calendar-cell-focused', {
|
|
16198
|
+
bubbles: true,
|
|
16199
|
+
composed: true,
|
|
16200
|
+
detail: { date: this.day?.date },
|
|
16178
16201
|
}));
|
|
16179
16202
|
}
|
|
16180
16203
|
|
|
16181
16204
|
/**
|
|
16182
|
-
* Checks if the current date is
|
|
16205
|
+
* Checks if the current date is outside the valid min/max range.
|
|
16206
|
+
* Out-of-range cells are not focusable and are hidden from screen readers.
|
|
16207
|
+
* @private
|
|
16208
|
+
* @param {Object} day - An object containing the dateFrom and day of month values.
|
|
16209
|
+
* @param {Number} min - The minimum date value.
|
|
16210
|
+
* @param {Number} max - The maximum date value.
|
|
16211
|
+
* @returns {Boolean} - True if the date is out of range.
|
|
16212
|
+
*/
|
|
16213
|
+
isOutOfRange(day, min, max) {
|
|
16214
|
+
if (day && day.date != null) {
|
|
16215
|
+
return day.date < min || day.date > max;
|
|
16216
|
+
}
|
|
16217
|
+
return false;
|
|
16218
|
+
}
|
|
16219
|
+
|
|
16220
|
+
/**
|
|
16221
|
+
* Checks if the current date is a blackout date (in disabledDays but within range).
|
|
16222
|
+
* Blackout cells are focusable but not selectable.
|
|
16223
|
+
* @private
|
|
16224
|
+
* @returns {Boolean} - True if the date is a blackout date.
|
|
16225
|
+
*/
|
|
16226
|
+
isBlackout() {
|
|
16227
|
+
if (!this.day || this.day.date == null || this.isOutOfRange(this.day, this.min, this.max)) {
|
|
16228
|
+
return false;
|
|
16229
|
+
}
|
|
16230
|
+
|
|
16231
|
+
// Check against disabledDays timestamps (legacy path)
|
|
16232
|
+
if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
|
|
16233
|
+
if (this.disabledDays.findIndex(d => parseInt(d, 10) === this.day.date) !== -1) {
|
|
16234
|
+
return true;
|
|
16235
|
+
}
|
|
16236
|
+
}
|
|
16237
|
+
|
|
16238
|
+
// Check against blackoutDates (ISO format YYYY-MM-DD) on the datepicker
|
|
16239
|
+
const blackoutDates = this.datepicker?.blackoutDates;
|
|
16240
|
+
|
|
16241
|
+
if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
|
|
16242
|
+
const date = new Date(this.day.date * 1000);
|
|
16243
|
+
const yyyy = date.getFullYear();
|
|
16244
|
+
const mm = String(date.getMonth() + 1).padStart(2, '0');
|
|
16245
|
+
const dd = String(date.getDate()).padStart(2, '0');
|
|
16246
|
+
const cellDate = `${yyyy}-${mm}-${dd}`;
|
|
16247
|
+
if (blackoutDates.includes(cellDate)) {
|
|
16248
|
+
return true;
|
|
16249
|
+
}
|
|
16250
|
+
}
|
|
16251
|
+
|
|
16252
|
+
return false;
|
|
16253
|
+
}
|
|
16254
|
+
|
|
16255
|
+
/**
|
|
16256
|
+
* Checks if the current date is disabled based on min/max range or the
|
|
16257
|
+
* legacy disabledDays timestamp list. Sets the `disabled` attribute on the
|
|
16258
|
+
* host when the date falls outside the allowed range or appears in
|
|
16259
|
+
* disabledDays. Note: blackout dates are handled separately by `isBlackout()`.
|
|
16183
16260
|
* @private
|
|
16184
16261
|
* @param {Object} day - An object containing the dateFrom and day of month values.
|
|
16185
16262
|
* @param {Number} min - The minimum date value.
|
|
@@ -16199,6 +16276,105 @@ class AuroCalendarCell extends i$4 {
|
|
|
16199
16276
|
return false;
|
|
16200
16277
|
}
|
|
16201
16278
|
|
|
16279
|
+
/**
|
|
16280
|
+
* Generates a unique cell ID in the format cell-YYYY-MM-DD.
|
|
16281
|
+
* @private
|
|
16282
|
+
* @returns {String} The unique cell ID.
|
|
16283
|
+
*/
|
|
16284
|
+
getCellId() {
|
|
16285
|
+
if (!this.day || !this.day.date) return '';
|
|
16286
|
+
const date = new Date(this.day.date * 1000);
|
|
16287
|
+
const year = date.getFullYear();
|
|
16288
|
+
const month = String(date.getMonth() + 1).padStart(2, '0');
|
|
16289
|
+
const day = String(date.getDate()).padStart(2, '0');
|
|
16290
|
+
return `cell-${year}-${month}-${day}`;
|
|
16291
|
+
}
|
|
16292
|
+
|
|
16293
|
+
/**
|
|
16294
|
+
* Generates a localized aria-label for the cell button using Intl.DateTimeFormat.
|
|
16295
|
+
* Includes range position and blackout status.
|
|
16296
|
+
* @private
|
|
16297
|
+
* @returns {String} The aria-label string.
|
|
16298
|
+
*/
|
|
16299
|
+
getAriaLabel() {
|
|
16300
|
+
if (!this.day || this.day.date === undefined) return '';
|
|
16301
|
+
|
|
16302
|
+
const date = new Date(this.day.date * 1000);
|
|
16303
|
+
|
|
16304
|
+
// Generate localized full date string using the configured locale
|
|
16305
|
+
const localeCode = this.locale?.code || undefined;
|
|
16306
|
+
const dateFormatter = new Intl.DateTimeFormat(localeCode, {
|
|
16307
|
+
weekday: 'long',
|
|
16308
|
+
year: 'numeric',
|
|
16309
|
+
month: 'long',
|
|
16310
|
+
day: 'numeric'
|
|
16311
|
+
});
|
|
16312
|
+
|
|
16313
|
+
let label = dateFormatter.format(date);
|
|
16314
|
+
|
|
16315
|
+
// Append date slot content (e.g. prices) so it is announced with the date.
|
|
16316
|
+
if (this.renderForDateSlot) {
|
|
16317
|
+
const dateSlotEl = this.querySelector(`[slot="date_${this.dateStr}"]`);
|
|
16318
|
+
if (dateSlotEl) {
|
|
16319
|
+
const text = dateSlotEl.innerText?.trim();
|
|
16320
|
+
if (text) {
|
|
16321
|
+
label += `, ${text}`;
|
|
16322
|
+
}
|
|
16323
|
+
}
|
|
16324
|
+
}
|
|
16325
|
+
|
|
16326
|
+
// appending popover content here so that it gets read in a logical order with the other date content.
|
|
16327
|
+
if (this.hasPopoverContent) {
|
|
16328
|
+
const popoverEl = this.querySelector(`[slot="popover_${this.dateStr}"]`);
|
|
16329
|
+
if (popoverEl) {
|
|
16330
|
+
label += `, ${popoverEl.innerText.trim()}`;
|
|
16331
|
+
}
|
|
16332
|
+
}
|
|
16333
|
+
|
|
16334
|
+
// Append range position label for range datepickers
|
|
16335
|
+
const rangePosition = this.getRangePosition();
|
|
16336
|
+
if (rangePosition) {
|
|
16337
|
+
label += `, ${rangePosition}`;
|
|
16338
|
+
}
|
|
16339
|
+
|
|
16340
|
+
// Append blackout label for blackout cells
|
|
16341
|
+
if (this.isBlackout()) {
|
|
16342
|
+
label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
|
|
16343
|
+
}
|
|
16344
|
+
|
|
16345
|
+
return label;
|
|
16346
|
+
}
|
|
16347
|
+
|
|
16348
|
+
/**
|
|
16349
|
+
* Determines the range position of this cell relative to the current selection.
|
|
16350
|
+
* @private
|
|
16351
|
+
* @returns {String|null} Range position label or null if not in range mode.
|
|
16352
|
+
*/
|
|
16353
|
+
getRangePosition() {
|
|
16354
|
+
if (!this.datepicker || !this.datepicker.hasAttribute('range')) return null;
|
|
16355
|
+
|
|
16356
|
+
const parsedDateFrom = Number.parseInt(this.dateFrom, 10);
|
|
16357
|
+
if (!Number.isFinite(parsedDateFrom)) return null;
|
|
16358
|
+
|
|
16359
|
+
const departTimestamp = startOfDay(parsedDateFrom * 1000) / 1000;
|
|
16360
|
+
const dayDate = this.day.date;
|
|
16361
|
+
|
|
16362
|
+
const parsedDateTo = Number.parseInt(this.dateTo, 10);
|
|
16363
|
+
const hasDateTo = Number.isFinite(parsedDateTo);
|
|
16364
|
+
const returnTimestamp = hasDateTo ? startOfDay(parsedDateTo * 1000) / 1000 : null;
|
|
16365
|
+
|
|
16366
|
+
if (dayDate === departTimestamp) return this.datepicker.rangeLabelStart || 'range start';
|
|
16367
|
+
|
|
16368
|
+
if (hasDateTo && dayDate === returnTimestamp) return this.datepicker.rangeLabelEnd || 'range end';
|
|
16369
|
+
|
|
16370
|
+
if (dayDate < departTimestamp) return this.datepicker.rangeLabelBeforeRange || 'before range';
|
|
16371
|
+
|
|
16372
|
+
if (hasDateTo && dayDate > departTimestamp && dayDate < returnTimestamp) return this.datepicker.rangeLabelInRange || 'in range';
|
|
16373
|
+
|
|
16374
|
+
// After start date, no end date yet, or after end date
|
|
16375
|
+
return this.datepicker.rangeLabelAfterRange || 'after range';
|
|
16376
|
+
}
|
|
16377
|
+
|
|
16202
16378
|
/**
|
|
16203
16379
|
* Checks if the current date is the depart date.
|
|
16204
16380
|
* @private
|
|
@@ -16360,9 +16536,9 @@ class AuroCalendarCell extends i$4 {
|
|
|
16360
16536
|
|
|
16361
16537
|
if (popoverSlotContent) {
|
|
16362
16538
|
this.appendChild(popoverSlotContent.cloneNode(true));
|
|
16363
|
-
this.
|
|
16539
|
+
this.hasPopoverContent = true;
|
|
16364
16540
|
} else {
|
|
16365
|
-
this.
|
|
16541
|
+
this.hasPopoverContent = false;
|
|
16366
16542
|
}
|
|
16367
16543
|
} catch (err) { // eslint-disable-line no-unused-vars
|
|
16368
16544
|
// Error handling goes here
|
|
@@ -16378,60 +16554,238 @@ class AuroCalendarCell extends i$4 {
|
|
|
16378
16554
|
return;
|
|
16379
16555
|
}
|
|
16380
16556
|
this.datepicker = calendar.datepicker;
|
|
16381
|
-
this.
|
|
16557
|
+
this._slotContentHandler = () => {
|
|
16382
16558
|
this.handleSlotContent();
|
|
16559
|
+
// Force re-render so isBlackout()/aria-disabled reflect updated blackoutDates.
|
|
16560
|
+
this.requestUpdate();
|
|
16561
|
+
};
|
|
16562
|
+
this.datepicker.addEventListener('auroDatePicker-newSlotContent', this._slotContentHandler);
|
|
16563
|
+
|
|
16564
|
+
// Cache button reference for imperative class manipulation.
|
|
16565
|
+
this.updateComplete.then(() => {
|
|
16566
|
+
this._cachedButton = this.shadowRoot.querySelector('button.day');
|
|
16383
16567
|
});
|
|
16384
16568
|
|
|
16569
|
+
// Trigger an initial update now that `this.datepicker` is assigned so
|
|
16570
|
+
// cells reflect blackout/slot state that was configured before first render.
|
|
16571
|
+
this.requestUpdate();
|
|
16572
|
+
|
|
16573
|
+
this.calendarMonth = calendarMonth;
|
|
16574
|
+
this.configurePopover();
|
|
16575
|
+
}
|
|
16576
|
+
|
|
16577
|
+
disconnectedCallback() {
|
|
16578
|
+
super.disconnectedCallback();
|
|
16579
|
+
if (this.datepicker && this._slotContentHandler) {
|
|
16580
|
+
this.datepicker.removeEventListener('auroDatePicker-newSlotContent', this._slotContentHandler);
|
|
16581
|
+
}
|
|
16582
|
+
}
|
|
16583
|
+
|
|
16584
|
+
/**
|
|
16585
|
+
* Configures the popover instance with the calendar month boundary.
|
|
16586
|
+
* Called from firstUpdated and updated because the popover element is only
|
|
16587
|
+
* rendered after hasPopoverContent becomes true (set by handleSlotContent).
|
|
16588
|
+
* @private
|
|
16589
|
+
* @returns {void}
|
|
16590
|
+
*/
|
|
16591
|
+
configurePopover() {
|
|
16385
16592
|
this.auroPopover = this.shadowRoot.querySelector(this.popoverTag._$litStatic$);
|
|
16386
16593
|
|
|
16387
|
-
this.auroPopover
|
|
16594
|
+
if (this.auroPopover && this.calendarMonth) {
|
|
16595
|
+
this.auroPopover.boundary = this.calendarMonth;
|
|
16596
|
+
}
|
|
16388
16597
|
}
|
|
16389
16598
|
|
|
16390
16599
|
updated(properties) {
|
|
16391
|
-
if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('
|
|
16392
|
-
this.dateChanged(this.dateFrom, this.dateTo, this.
|
|
16600
|
+
if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('day')) {
|
|
16601
|
+
this.dateChanged(this.dateFrom, this.dateTo, this.day);
|
|
16602
|
+
}
|
|
16603
|
+
|
|
16604
|
+
if (properties.has('day') && this.day) {
|
|
16605
|
+
this.setDateSlotName();
|
|
16606
|
+
this.handleSlotContent();
|
|
16607
|
+
|
|
16608
|
+
// Re-cache button reference when the day changes (cell may have re-rendered).
|
|
16609
|
+
this.updateComplete.then(() => {
|
|
16610
|
+
this._cachedButton = this.shadowRoot.querySelector('button.day');
|
|
16611
|
+
});
|
|
16612
|
+
|
|
16613
|
+
// Update host-level aria attributes for ariaActiveDescendantElement.
|
|
16614
|
+
this.updateHostAria();
|
|
16615
|
+
}
|
|
16616
|
+
|
|
16617
|
+
// Update host aria when selection changes (aria-selected, range labels)
|
|
16618
|
+
if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('selected')) {
|
|
16619
|
+
this.updateHostAria();
|
|
16393
16620
|
}
|
|
16394
16621
|
|
|
16395
|
-
|
|
16396
|
-
|
|
16622
|
+
// Configure popover when it first becomes rendered
|
|
16623
|
+
if (properties.has('hasPopoverContent') && this.hasPopoverContent) {
|
|
16624
|
+
this.updateComplete.then(() => this.configurePopover());
|
|
16625
|
+
}
|
|
16397
16626
|
}
|
|
16398
16627
|
|
|
16399
|
-
|
|
16628
|
+
/**
|
|
16629
|
+
* Updates ARIA attributes on the host element so that
|
|
16630
|
+
* ariaActiveDescendantElement can expose cell info to the SR.
|
|
16631
|
+
* @private
|
|
16632
|
+
* @returns {void}
|
|
16633
|
+
*/
|
|
16634
|
+
updateHostAria() {
|
|
16635
|
+
if (!this.day || this.day.date === undefined) return;
|
|
16636
|
+
|
|
16637
|
+
const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
|
|
16638
|
+
if (outOfRange) {
|
|
16639
|
+
this.removeAttribute('role');
|
|
16640
|
+
this.removeAttribute('aria-label');
|
|
16641
|
+
return;
|
|
16642
|
+
}
|
|
16643
|
+
|
|
16644
|
+
// The host acts as the gridcell for ariaActiveDescendantElement.
|
|
16645
|
+
this.setAttribute('role', 'gridcell');
|
|
16646
|
+
this.setAttribute('aria-label', this.getAriaLabel());
|
|
16647
|
+
this.setAttribute('aria-selected', this.selected ? 'true' : 'false');
|
|
16648
|
+
|
|
16649
|
+
if (this.isBlackout()) {
|
|
16650
|
+
this.setAttribute('aria-disabled', 'true');
|
|
16651
|
+
} else {
|
|
16652
|
+
this.removeAttribute('aria-disabled');
|
|
16653
|
+
}
|
|
16654
|
+
}
|
|
16655
|
+
|
|
16656
|
+
/**
|
|
16657
|
+
* Programmatically focuses the cell's interactive button element.
|
|
16658
|
+
* Uses focusVisible: true so the :focus-visible ring appears even when
|
|
16659
|
+
* the bib was opened via mouse click (which sets mouse input modality).
|
|
16660
|
+
* @returns {void}
|
|
16661
|
+
*/
|
|
16662
|
+
focusButton() {
|
|
16663
|
+
const button = this._cachedButton || this.shadowRoot.querySelector('button:not([aria-hidden])');
|
|
16664
|
+
if (button) {
|
|
16665
|
+
button.focus({ focusVisible: true });
|
|
16666
|
+
}
|
|
16667
|
+
}
|
|
16668
|
+
|
|
16669
|
+
/**
|
|
16670
|
+
* Imperatively marks this cell as active (tabindex="0") without
|
|
16671
|
+
* triggering a Lit re-render.
|
|
16672
|
+
* @returns {void}
|
|
16673
|
+
*/
|
|
16674
|
+
setActive() {
|
|
16675
|
+
this.active = true;
|
|
16676
|
+
const btn = this._cachedButton;
|
|
16677
|
+
if (btn) {
|
|
16678
|
+
btn.setAttribute('tabindex', '0');
|
|
16679
|
+
btn.classList.add('visualFocus');
|
|
16680
|
+
}
|
|
16681
|
+
}
|
|
16682
|
+
|
|
16683
|
+
/**
|
|
16684
|
+
* Imperatively marks this cell as inactive (tabindex="-1") without
|
|
16685
|
+
* triggering a Lit re-render.
|
|
16686
|
+
* @returns {void}
|
|
16687
|
+
*/
|
|
16688
|
+
clearActive() {
|
|
16689
|
+
this.active = false;
|
|
16690
|
+
const btn = this._cachedButton;
|
|
16691
|
+
if (btn) {
|
|
16692
|
+
btn.setAttribute('tabindex', '-1');
|
|
16693
|
+
btn.classList.remove('visualFocus');
|
|
16694
|
+
}
|
|
16695
|
+
}
|
|
16696
|
+
|
|
16697
|
+
/**
|
|
16698
|
+
* Updates range preview classes imperatively (no Lit re-render).
|
|
16699
|
+
* Called by the calendar component when the hovered date changes
|
|
16700
|
+
* during range selection (dateFrom set, dateTo not yet set).
|
|
16701
|
+
* @param {Number} hoveredDate - Unix timestamp of the currently hovered/focused date.
|
|
16702
|
+
* @param {Number} dateFrom - Unix timestamp of the selected departure date.
|
|
16703
|
+
* @returns {void}
|
|
16704
|
+
*/
|
|
16705
|
+
updateRangePreviewClasses(hoveredDate, dateFrom) {
|
|
16706
|
+
const btn = this._cachedButton;
|
|
16707
|
+
if (!btn || !this.day) return;
|
|
16708
|
+
|
|
16709
|
+
const dayDate = this.day.date;
|
|
16710
|
+
const departTimestamp = startOfDay(dateFrom * 1000) / 1000;
|
|
16711
|
+
const isInRange = dayDate > departTimestamp && dayDate < hoveredDate;
|
|
16712
|
+
const isLastHovered = dayDate === hoveredDate && hoveredDate > departTimestamp;
|
|
16713
|
+
const isDepartWithPreview = dayDate === departTimestamp && hoveredDate > departTimestamp;
|
|
16714
|
+
|
|
16715
|
+
btn.classList.toggle('inRange', isInRange);
|
|
16716
|
+
btn.classList.toggle('lastHoveredDate', isLastHovered);
|
|
16717
|
+
btn.classList.toggle('rangeDepartDate', isDepartWithPreview);
|
|
16718
|
+
}
|
|
16719
|
+
|
|
16720
|
+
/**
|
|
16721
|
+
* Clears all imperative range preview classes from the cell button.
|
|
16722
|
+
* Called when a selection occurs so classMap becomes the sole source of truth.
|
|
16723
|
+
* @returns {void}
|
|
16724
|
+
*/
|
|
16725
|
+
clearRangePreviewClasses() {
|
|
16726
|
+
const btn = this._cachedButton;
|
|
16727
|
+
if (!btn) return;
|
|
16728
|
+
|
|
16729
|
+
btn.classList.remove('inRange', 'lastHoveredDate', 'rangeDepartDate');
|
|
16730
|
+
}
|
|
16731
|
+
|
|
16732
|
+
renderCellButton() {
|
|
16733
|
+
const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
|
|
16734
|
+
const blackout = this.isBlackout();
|
|
16735
|
+
|
|
16736
|
+
// Static and selection-driven classes only. Hover-driven classes
|
|
16737
|
+
// (inRange, lastHoveredDate, rangeDepartDate during preview) are
|
|
16738
|
+
// managed imperatively via updateRangePreviewClasses() to avoid
|
|
16739
|
+
// O(N) Lit re-renders on every focus/hover event.
|
|
16400
16740
|
const buttonClasses = {
|
|
16401
16741
|
'day': true,
|
|
16402
16742
|
'body-lg': true,
|
|
16403
|
-
'currentDate': this.
|
|
16743
|
+
'currentDate': this.isCurrentDate,
|
|
16404
16744
|
'selected': this.selected,
|
|
16405
|
-
'inRange': this.
|
|
16406
|
-
'
|
|
16407
|
-
'
|
|
16408
|
-
'rangeDepartDate': this.isDepartDate(this.day, this.dateFrom) &&
|
|
16409
|
-
'rangeReturnDate': this.isReturnDate(this.day, this.dateFrom, this.dateTo),
|
|
16745
|
+
'inRange': this.datepicker?.hasAttribute('range') && this.dateTo && this.isInRange(this.day, this.dateFrom, this.dateTo),
|
|
16746
|
+
'disabled': outOfRange,
|
|
16747
|
+
'blackout': blackout,
|
|
16748
|
+
'rangeDepartDate': this.datepicker?.hasAttribute('range') && this.isDepartDate(this.day, this.dateFrom) && this.dateTo,
|
|
16749
|
+
'rangeReturnDate': this.datepicker?.hasAttribute('range') && this.isReturnDate(this.day, this.dateFrom, this.dateTo),
|
|
16410
16750
|
'reference': this.isReferenceDate(this.dateStr),
|
|
16411
|
-
'sameDateTrip': this.dateFrom === this.dateTo
|
|
16751
|
+
'sameDateTrip': this.datepicker?.hasAttribute('range') && this.dateFrom === this.dateTo
|
|
16412
16752
|
};
|
|
16413
16753
|
|
|
16414
|
-
let _a, _b;
|
|
16415
16754
|
return u$c`
|
|
16416
|
-
|
|
16417
|
-
|
|
16418
|
-
|
|
16419
|
-
|
|
16420
|
-
|
|
16421
|
-
|
|
16422
|
-
|
|
16423
|
-
|
|
16424
|
-
|
|
16425
|
-
|
|
16426
|
-
|
|
16427
|
-
<div class="
|
|
16428
|
-
|
|
16429
|
-
|
|
16430
|
-
|
|
16431
|
-
|
|
16432
|
-
|
|
16433
|
-
|
|
16434
|
-
|
|
16755
|
+
<button
|
|
16756
|
+
slot="trigger"
|
|
16757
|
+
id="${this.getCellId()}"
|
|
16758
|
+
@click="${outOfRange ? undefined : this.handleTap}"
|
|
16759
|
+
@mouseover="${outOfRange ? undefined : this.handleHover}"
|
|
16760
|
+
@focus="${outOfRange ? undefined : this.handleFocus}"
|
|
16761
|
+
class="${e$3(buttonClasses)}"
|
|
16762
|
+
?disabled="${outOfRange}"
|
|
16763
|
+
aria-hidden="${outOfRange ? 'true' : A$7}"
|
|
16764
|
+
tabindex="${this.active ? '0' : '-1'}">
|
|
16765
|
+
<div class="buttonWrapper" aria-hidden="true">
|
|
16766
|
+
<div class="currentDayMarker">${this.day?.title || A$7}</div>
|
|
16767
|
+
</div>
|
|
16768
|
+
<div class="dateSlot body-2xs" part="dateSlot" aria-hidden="true" ?hidden="${!this.renderForDateSlot}">
|
|
16769
|
+
<slot name="date_${this.dateStr}"></slot>
|
|
16770
|
+
</div>
|
|
16771
|
+
</button>
|
|
16772
|
+
`;
|
|
16773
|
+
}
|
|
16774
|
+
|
|
16775
|
+
render() {
|
|
16776
|
+
const hasPopoverContent = this.hasPopoverContent;
|
|
16777
|
+
|
|
16778
|
+
if (hasPopoverContent) {
|
|
16779
|
+
return u$c`
|
|
16780
|
+
<${this.popoverTag}>
|
|
16781
|
+
<span aria-hidden="true"><slot name="popover_${this.dateStr}"></slot></span>
|
|
16782
|
+
${this.renderCellButton()}
|
|
16783
|
+
</${this.popoverTag}>
|
|
16784
|
+
`;
|
|
16785
|
+
}
|
|
16786
|
+
|
|
16787
|
+
return u$c`
|
|
16788
|
+
${this.renderCellButton()}
|
|
16435
16789
|
`;
|
|
16436
16790
|
}
|
|
16437
16791
|
}
|
|
@@ -16499,16 +16853,28 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16499
16853
|
return this.monthNames[month - 1];
|
|
16500
16854
|
}
|
|
16501
16855
|
|
|
16856
|
+
/**
|
|
16857
|
+
* Returns the unique heading ID for this month, used by aria-labelledby.
|
|
16858
|
+
* @private
|
|
16859
|
+
* @returns {String} The heading ID.
|
|
16860
|
+
*/
|
|
16861
|
+
getHeadingId() {
|
|
16862
|
+
return `month-heading-${this.month}-${this.year}`;
|
|
16863
|
+
}
|
|
16864
|
+
|
|
16502
16865
|
/**
|
|
16503
16866
|
* Determines the current month name based on locale.
|
|
16867
|
+
* Also builds parallel arrays of full day names for abbr attributes.
|
|
16504
16868
|
* This is a rewrite of the function used in the class RangeDatepickerCalendar and should not be removed from here.
|
|
16505
16869
|
* @private
|
|
16506
16870
|
* @returns {void}
|
|
16507
16871
|
*/
|
|
16508
16872
|
localeChanged() {
|
|
16509
16873
|
const dayNamesOfTheWeek = [];
|
|
16874
|
+
const dayFullNames = [];
|
|
16510
16875
|
for (let int = 0; int < 7; int += 1) {
|
|
16511
16876
|
dayNamesOfTheWeek.push(this.locale.localize.day(int, { width: 'narrow' }));
|
|
16877
|
+
dayFullNames.push(this.locale.localize.day(int, { width: 'long' }));
|
|
16512
16878
|
}
|
|
16513
16879
|
const firstDayOfWeek = this.locale.options.weekStartsOn
|
|
16514
16880
|
? this.locale.options.weekStartsOn
|
|
@@ -16519,6 +16885,139 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16519
16885
|
.splice(firstDayOfWeek, dayNamesOfTheWeek.length)
|
|
16520
16886
|
.concat(tmp);
|
|
16521
16887
|
this.dayNamesOfTheWeek = newDayNamesOfTheWeek;
|
|
16888
|
+
|
|
16889
|
+
const tmpFull = dayFullNames.slice().splice(0, firstDayOfWeek);
|
|
16890
|
+
const newDayFullNames = dayFullNames
|
|
16891
|
+
.slice()
|
|
16892
|
+
.splice(firstDayOfWeek, dayFullNames.length)
|
|
16893
|
+
.concat(tmpFull);
|
|
16894
|
+
this.dayFullNames = newDayFullNames;
|
|
16895
|
+
}
|
|
16896
|
+
|
|
16897
|
+
/**
|
|
16898
|
+
* Renders a day-of-week header with abbr attribute for the full day name.
|
|
16899
|
+
* @private
|
|
16900
|
+
* @param {String} dayOfWeek - The short day name.
|
|
16901
|
+
* @param {Number} index - The index in the dayNamesOfTheWeek array.
|
|
16902
|
+
* @returns {Object} The header HTML.
|
|
16903
|
+
*/
|
|
16904
|
+
renderDayOfWeek(dayOfWeek, index) {
|
|
16905
|
+
const fullName = this.dayFullNames ? this.dayFullNames[index] : dayOfWeek;
|
|
16906
|
+
return b$7`<div class="th body-default"><abbr title="${fullName}">${dayOfWeek}</abbr></div>`;
|
|
16907
|
+
}
|
|
16908
|
+
|
|
16909
|
+
/**
|
|
16910
|
+
* Returns all focusable cell elements (enabled + blackout, not out-of-range) in this month.
|
|
16911
|
+
* @returns {Array} Array of auro-formkit-calendar-cell elements.
|
|
16912
|
+
*/
|
|
16913
|
+
getFocusableCells() {
|
|
16914
|
+
const cells = Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-cell'));
|
|
16915
|
+
return cells.filter(cell => {
|
|
16916
|
+
if (!cell.day) return false;
|
|
16917
|
+
return !cell.isOutOfRange(cell.day, cell.min, cell.max);
|
|
16918
|
+
});
|
|
16919
|
+
}
|
|
16920
|
+
|
|
16921
|
+
/**
|
|
16922
|
+
* Overrides the base class handler to prevent setting `this.hoveredDate`
|
|
16923
|
+
* as a reactive property. Instead, just dispatches the event upward so
|
|
16924
|
+
* the calendar can handle range preview imperatively.
|
|
16925
|
+
* @private
|
|
16926
|
+
* @param {CustomEvent} event - The date-is-hovered event from a cell.
|
|
16927
|
+
* @returns {void}
|
|
16928
|
+
*/
|
|
16929
|
+
handleDateHovered(event) {
|
|
16930
|
+
this.dispatchEvent(new CustomEvent('hovered-date-changed', {
|
|
16931
|
+
detail: { value: event.detail.date },
|
|
16932
|
+
}));
|
|
16933
|
+
}
|
|
16934
|
+
|
|
16935
|
+
/**
|
|
16936
|
+
* Handles arrow key navigation within the month grid.
|
|
16937
|
+
* Dispatches a cross-month navigation event when the boundary is reached.
|
|
16938
|
+
* @private
|
|
16939
|
+
* @param {KeyboardEvent} event - The keyboard event.
|
|
16940
|
+
* @returns {void}
|
|
16941
|
+
*/
|
|
16942
|
+
handleGridKeyDown(event) {
|
|
16943
|
+
const { key } = event;
|
|
16944
|
+
const arrowKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp'];
|
|
16945
|
+
|
|
16946
|
+
if (!arrowKeys.includes(key)) return;
|
|
16947
|
+
|
|
16948
|
+
event.preventDefault();
|
|
16949
|
+
|
|
16950
|
+
const focusableCells = this.getFocusableCells();
|
|
16951
|
+
if (focusableCells.length === 0) return;
|
|
16952
|
+
|
|
16953
|
+
// Find the currently active cell within this month
|
|
16954
|
+
const activeCell = focusableCells.find(cell => cell.active);
|
|
16955
|
+
if (!activeCell) return;
|
|
16956
|
+
|
|
16957
|
+
const activeIndex = focusableCells.indexOf(activeCell);
|
|
16958
|
+
let targetCell = null;
|
|
16959
|
+
|
|
16960
|
+
if (key === 'ArrowRight') {
|
|
16961
|
+
if (activeIndex < focusableCells.length - 1) {
|
|
16962
|
+
targetCell = focusableCells[activeIndex + 1];
|
|
16963
|
+
} else {
|
|
16964
|
+
// At end of month, request cross-month navigation
|
|
16965
|
+
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
16966
|
+
bubbles: true,
|
|
16967
|
+
composed: true,
|
|
16968
|
+
detail: { direction: 'next', fromDate: activeCell.day.date, key }
|
|
16969
|
+
}));
|
|
16970
|
+
return;
|
|
16971
|
+
}
|
|
16972
|
+
} else if (key === 'ArrowLeft') {
|
|
16973
|
+
if (activeIndex > 0) {
|
|
16974
|
+
targetCell = focusableCells[activeIndex - 1];
|
|
16975
|
+
} else {
|
|
16976
|
+
// At start of month, request cross-month navigation
|
|
16977
|
+
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
16978
|
+
bubbles: true,
|
|
16979
|
+
composed: true,
|
|
16980
|
+
detail: { direction: 'prev', fromDate: activeCell.day.date, key }
|
|
16981
|
+
}));
|
|
16982
|
+
return;
|
|
16983
|
+
}
|
|
16984
|
+
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
16985
|
+
// Find the target day (same day-of-week, +/- 7 days)
|
|
16986
|
+
// Use Date arithmetic instead of fixed seconds to handle DST correctly
|
|
16987
|
+
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
16988
|
+
const currentDate = new Date(activeCell.day.date * 1000);
|
|
16989
|
+
currentDate.setDate(currentDate.getDate() + increment);
|
|
16990
|
+
currentDate.setHours(0, 0, 0, 0);
|
|
16991
|
+
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
16992
|
+
|
|
16993
|
+
// Look for the target date in this month's focusable cells
|
|
16994
|
+
targetCell = focusableCells.find(cell => cell.day.date === targetDate);
|
|
16995
|
+
|
|
16996
|
+
if (!targetCell) {
|
|
16997
|
+
// Target is in another month or all cells in that direction are disabled
|
|
16998
|
+
const direction = key === 'ArrowDown' ? 'next' : 'prev';
|
|
16999
|
+
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
17000
|
+
bubbles: true,
|
|
17001
|
+
composed: true,
|
|
17002
|
+
detail: { direction, fromDate: activeCell.day.date, key }
|
|
17003
|
+
}));
|
|
17004
|
+
return;
|
|
17005
|
+
}
|
|
17006
|
+
}
|
|
17007
|
+
|
|
17008
|
+
if (targetCell) {
|
|
17009
|
+
this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
|
|
17010
|
+
bubbles: true,
|
|
17011
|
+
composed: true,
|
|
17012
|
+
detail: { date: targetCell.day.date }
|
|
17013
|
+
}));
|
|
17014
|
+
}
|
|
17015
|
+
}
|
|
17016
|
+
|
|
17017
|
+
renderWeek(week) {
|
|
17018
|
+
return b$7`
|
|
17019
|
+
<div class="tr" role="row">${week.map((day) => this.renderDay(day))}</div>
|
|
17020
|
+
`;
|
|
16522
17021
|
}
|
|
16523
17022
|
|
|
16524
17023
|
renderDay(day) {
|
|
@@ -16531,7 +17030,6 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16531
17030
|
.min="${this.min}"
|
|
16532
17031
|
.max="${this.max}"
|
|
16533
17032
|
.month="${this.month}"
|
|
16534
|
-
.hoveredDate="${this.hoveredDate}"
|
|
16535
17033
|
.dateTo="${this.dateTo}"
|
|
16536
17034
|
.dateFrom="${this.dateFrom}"
|
|
16537
17035
|
.locale="${this.locale}"
|
|
@@ -16542,7 +17040,7 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16542
17040
|
>
|
|
16543
17041
|
</auro-formkit-calendar-cell>
|
|
16544
17042
|
`
|
|
16545
|
-
:
|
|
17043
|
+
: b$7`<div aria-hidden="true" inert></div>`}
|
|
16546
17044
|
</div>
|
|
16547
17045
|
`;
|
|
16548
17046
|
}
|
|
@@ -16553,10 +17051,10 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16553
17051
|
var _a, _b;
|
|
16554
17052
|
|
|
16555
17053
|
return b$7 `
|
|
16556
|
-
<div>
|
|
17054
|
+
<div aria-labelledby="${this.getHeadingId()}">
|
|
16557
17055
|
<div class="header">
|
|
16558
17056
|
${this.renderPrevButton()}
|
|
16559
|
-
<div class="headerTitle heading-xs">
|
|
17057
|
+
<div class="headerTitle heading-xs" id="${this.getHeadingId()}" aria-live="polite" aria-atomic="true">
|
|
16560
17058
|
${this.monthFirst ? b$7`
|
|
16561
17059
|
<div>${this.computeCurrentMonthName(this.month)}</div>
|
|
16562
17060
|
<div>${this.renderYear()}</div>
|
|
@@ -16568,13 +17066,13 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16568
17066
|
${this.renderNextButton()}
|
|
16569
17067
|
</div>
|
|
16570
17068
|
|
|
16571
|
-
<div class="table">
|
|
16572
|
-
<div class="thead">
|
|
17069
|
+
<div class="table" role="grid" aria-labelledby="${this.getHeadingId()}" @keydown="${this.handleGridKeyDown}">
|
|
17070
|
+
<div class="thead" aria-hidden="true">
|
|
16573
17071
|
<div class="tr">
|
|
16574
|
-
${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map(dayNameOfWeek => this.renderDayOfWeek(dayNameOfWeek))}
|
|
17072
|
+
${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map((dayNameOfWeek, index) => this.renderDayOfWeek(dayNameOfWeek, index))}
|
|
16575
17073
|
</div>
|
|
16576
17074
|
</div>
|
|
16577
|
-
<div class="tbody">
|
|
17075
|
+
<div class="tbody" role="rowgroup">
|
|
16578
17076
|
${(_b = this.daysOfMonth) === null || _b === void 0 ? void 0 : _b.map(week => this.renderWeek(week))}
|
|
16579
17077
|
</div>
|
|
16580
17078
|
</div>
|
|
@@ -17267,6 +17765,14 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$4 {
|
|
|
17267
17765
|
large: {
|
|
17268
17766
|
type: Boolean,
|
|
17269
17767
|
reflect: true
|
|
17768
|
+
},
|
|
17769
|
+
|
|
17770
|
+
/**
|
|
17771
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
17772
|
+
*/
|
|
17773
|
+
showFooter: {
|
|
17774
|
+
type: Boolean,
|
|
17775
|
+
reflect: true
|
|
17270
17776
|
}
|
|
17271
17777
|
};
|
|
17272
17778
|
}
|
|
@@ -17369,7 +17875,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$4 {
|
|
|
17369
17875
|
<slot></slot>
|
|
17370
17876
|
</div>
|
|
17371
17877
|
|
|
17372
|
-
${this.isFullscreen ? u$c`
|
|
17878
|
+
${this.isFullscreen || this.showFooter ? u$c`
|
|
17373
17879
|
<div id="footerContainer">
|
|
17374
17880
|
<slot name="footer"></slot>
|
|
17375
17881
|
</div>` : null}
|
|
@@ -17378,7 +17884,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$4 {
|
|
|
17378
17884
|
}
|
|
17379
17885
|
};
|
|
17380
17886
|
|
|
17381
|
-
var formkitVersion$2$1 = '
|
|
17887
|
+
var formkitVersion$2$1 = '202605210326';
|
|
17382
17888
|
|
|
17383
17889
|
let l$1$2 = class l{generateElementName(t,e){let o=t;return o+="-",o+=e.replace(/[.]/g,"_"),o}generateTag(o,s,a){const r=this.generateElementName(o,s),i=i$3`${s$6(r)}`;return customElements.get(r)||customElements.define(r,class extends a{}),i}};let d$1$2 = class d{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}getSlotText(t,e){const o=t.shadowRoot?.querySelector(`slot[name="${e}"]`),s=(o?.assignedNodes({flatten:true})||[]).map(t=>t.textContent?.trim()).join(" ").trim();return s||null}};let h$1$2 = class h{registerComponent(t,e){customElements.get(t)||customElements.define(t,class extends e{});}closestElement(t,e=this,o=(e,s=e&&e.closest(t))=>e&&e!==document&&e!==window?s||o(e.getRootNode().host):null){return o(e)}handleComponentTagRename(t,e){const o=e.toLowerCase();t.tagName.toLowerCase()!==o&&t.setAttribute(o,true);}elementMatch(t,e){const o=e.toLowerCase();return t.tagName.toLowerCase()===o||t.hasAttribute(o)}};var c$1$3=i$7`:host{color:var(--ds-auro-loader-color)}:host>span{background-color:var(--ds-auro-loader-background-color);border-color:var(--ds-auro-loader-border-color)}:host([onlight]),:host([appearance=brand]){--ds-auro-loader-color: var(--ds-basic-color-brand-primary, #01426a)}:host([ondark]),:host([appearance=inverse]){--ds-auro-loader-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([orbit])>span{--ds-auro-loader-background-color: transparent}:host([orbit])>span:nth-child(1){--ds-auro-loader-border-color: currentcolor;opacity:.25}:host([orbit])>span:nth-child(2){--ds-auro-loader-border-color: currentcolor;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}
|
|
17384
17890
|
`,u$4$1=i$7`.body-default{font-size:var(--wcss-body-default-font-size, 1rem);line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-lg{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, .875rem);line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs{font-size:var(--wcss-body-xs-font-size, .75rem);line-height:var(--wcss-body-xs-line-height, 1rem)}.body-2xs{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:var(--wcss-body-2xs-font-size, .625rem);font-weight:var(--wcss-body-weight, 450);letter-spacing:var(--wcss-body-letter-spacing, 0);line-height:var(--wcss-body-2xs-line-height, .875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 450);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 450);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, .05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, .05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, .05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, .05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, .05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, .1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(.875rem, 1.1666666667vw, .875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, .1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}:focus:not(:focus-visible){outline:3px solid transparent}:host,:host>span{position:relative}:host{width:2rem;height:2rem;display:inline-block;font-size:0}:host>span{position:absolute;display:inline-block;float:none;top:0;left:0;width:2rem;height:2rem;border-radius:100%;border-style:solid;border-width:0;box-sizing:border-box}:host([xs]),:host([xs])>span{width:1.2rem;height:1.2rem}:host([sm]),:host([sm])>span{width:3rem;height:3rem}:host([md]),:host([md])>span{width:5rem;height:5rem}:host([lg]),:host([lg])>span{width:8rem;height:8rem}:host{--margin: .375rem;--margin-xs: .2rem;--margin-sm: .5rem;--margin-md: .75rem;--margin-lg: 1rem}:host([pulse]),:host([pulse])>span{position:relative}:host([pulse]){width:calc(3rem + var(--margin) * 6);height:calc(1rem + var(--margin) * 2)}:host([pulse])>span{width:1rem;height:1rem;margin:var(--margin);animation:pulse 1.5s ease infinite}:host([pulse][xs]){width:calc(1.95rem + var(--margin-xs) * 6);height:calc(.65rem + var(--margin-xs) * 2)}:host([pulse][xs])>span{margin:var(--margin-xs);width:.65rem;height:.65rem}:host([pulse][sm]){width:calc(6rem + var(--margin-sm) * 6);height:calc(2rem + var(--margin-sm) * 2)}:host([pulse][sm])>span{margin:var(--margin-sm);width:2rem;height:2rem}:host([pulse][md]){width:calc(9rem + var(--margin-md) * 6);height:calc(3rem + var(--margin-md) * 2)}:host([pulse][md])>span{margin:var(--margin-md);width:3rem;height:3rem}:host([pulse][lg]){width:calc(15rem + var(--margin-lg) * 6);height:calc(5rem + var(--margin-lg) * 2)}:host([pulse][lg])>span{margin:var(--margin-lg);width:5rem;height:5rem}:host([pulse])>span:nth-child(1){animation-delay:-.4s}:host([pulse])>span:nth-child(2){animation-delay:-.2s}:host([pulse])>span:nth-child(3){animation-delay:0ms}@keyframes pulse{0%,to{opacity:.1;transform:scale(.9)}50%{opacity:1;transform:scale(1.1)}}:host([orbit]),:host([orbit])>span{opacity:1}:host([orbit])>span{border-width:5px}:host([orbit])>span:nth-child(2){animation:orbit 2s linear infinite}:host([orbit][sm])>span{border-width:8px}:host([orbit][md])>span{border-width:13px}:host([orbit][lg])>span{border-width:21px}@keyframes orbit{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:host([ringworm])>svg{animation:rotate 2s linear infinite;height:100%;width:100%;stroke:currentcolor;stroke-width:8}:host([ringworm]) .path{stroke-dashoffset:0;animation:ringworm 1.5s ease-in-out infinite;stroke-linecap:round}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes ringworm{0%{stroke-dasharray:1,200;stroke-dashoffset:0}50%{stroke-dasharray:89,200;stroke-dashoffset:-35px}to{stroke-dasharray:89,200;stroke-dashoffset:-124px}}:host([laser]){position:static;width:100%;display:block;height:0;overflow:hidden;font-size:unset}:host([laser])>span{position:fixed;width:100%;height:.25rem;border-radius:0;z-index:100}:host([laser])>span:nth-child(1){border-color:currentcolor;opacity:.25}:host([laser])>span:nth-child(2){border-color:currentcolor;animation:laser 2s linear infinite;opacity:1;width:50%}:host([laser][sm])>span:nth-child(2){width:20%}:host([laser][md])>span:nth-child(2){width:30%}:host([laser][lg])>span:nth-child(2){width:50%;animation-duration:1.5s}:host([laser][xl])>span:nth-child(2){width:80%;animation-duration:1.5s}@keyframes laser{0%{left:-100%}to{left:110%}}:host>.no-animation{display:none}@media (prefers-reduced-motion: reduce){:host{display:flex;align-items:center;justify-content:center}:host>span{opacity:1}:host>.loader{display:none}:host>svg{display:none}:host>.no-animation{display:block}}
|
|
@@ -17476,6 +17982,13 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17476
17982
|
this.largeFullscreenHeadline = false;
|
|
17477
17983
|
this.isFullscreen = false;
|
|
17478
17984
|
|
|
17985
|
+
/**
|
|
17986
|
+
* The date of the currently active cell (Unix timestamp).
|
|
17987
|
+
* Only one cell across the entire calendar has tabindex="0" at a time.
|
|
17988
|
+
* @private
|
|
17989
|
+
*/
|
|
17990
|
+
this.activeCellDate = null;
|
|
17991
|
+
|
|
17479
17992
|
/**
|
|
17480
17993
|
* @private
|
|
17481
17994
|
*/
|
|
@@ -17641,6 +18154,8 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17641
18154
|
*/
|
|
17642
18155
|
handlePrevMonth() {
|
|
17643
18156
|
this.utilCal.handleMonthChange(this, 'prev');
|
|
18157
|
+
this.updateActiveCellForVisibleMonth();
|
|
18158
|
+
this.announceMonthChange();
|
|
17644
18159
|
}
|
|
17645
18160
|
|
|
17646
18161
|
/**
|
|
@@ -17650,6 +18165,38 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17650
18165
|
*/
|
|
17651
18166
|
handleNextMonth() {
|
|
17652
18167
|
this.utilCal.handleMonthChange(this, 'next');
|
|
18168
|
+
this.updateActiveCellForVisibleMonth();
|
|
18169
|
+
this.announceMonthChange();
|
|
18170
|
+
}
|
|
18171
|
+
|
|
18172
|
+
/**
|
|
18173
|
+
* Announces the current month and year via the live region after navigation.
|
|
18174
|
+
* @private
|
|
18175
|
+
* @returns {void}
|
|
18176
|
+
*/
|
|
18177
|
+
announceMonthChange() {
|
|
18178
|
+
const date = new Date(this.centralDate);
|
|
18179
|
+
const localeCode = this.locale?.code || undefined;
|
|
18180
|
+
const formatter = new Intl.DateTimeFormat(localeCode, { month: 'long', year: 'numeric' });
|
|
18181
|
+
this.announceSelection(formatter.format(date));
|
|
18182
|
+
}
|
|
18183
|
+
|
|
18184
|
+
/**
|
|
18185
|
+
* Recomputes and sets the active cell for the newly visible month after
|
|
18186
|
+
* month navigation. Without this, activeCellDate can point at a date in
|
|
18187
|
+
* the old month, leaving no tabindex="0" cell in the grid.
|
|
18188
|
+
* @private
|
|
18189
|
+
* @returns {void}
|
|
18190
|
+
*/
|
|
18191
|
+
updateActiveCellForVisibleMonth() {
|
|
18192
|
+
// Skip the dateFrom shortcut so the active cell lands in the newly
|
|
18193
|
+
// visible month rather than jumping back to the selected date's month.
|
|
18194
|
+
this.activeCellDate = this.computeActiveDate({ skipDateFrom: true });
|
|
18195
|
+
this.updateComplete.then(() => {
|
|
18196
|
+
if (this.activeCellDate != null) {
|
|
18197
|
+
this.setActiveCell(this.activeCellDate);
|
|
18198
|
+
}
|
|
18199
|
+
});
|
|
17653
18200
|
}
|
|
17654
18201
|
|
|
17655
18202
|
/**
|
|
@@ -17757,6 +18304,778 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17757
18304
|
this.utilCal.scrollMonthIntoView(this, date, this.format);
|
|
17758
18305
|
}
|
|
17759
18306
|
|
|
18307
|
+
/**
|
|
18308
|
+
* Gets all rendered month components.
|
|
18309
|
+
* @private
|
|
18310
|
+
* @returns {Array} Array of auro-formkit-calendar-month elements.
|
|
18311
|
+
*/
|
|
18312
|
+
getMonthComponents() {
|
|
18313
|
+
return Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-month'));
|
|
18314
|
+
}
|
|
18315
|
+
|
|
18316
|
+
/**
|
|
18317
|
+
* Gets all focusable cells across all rendered months.
|
|
18318
|
+
* @private
|
|
18319
|
+
* @returns {Array} Array of auro-formkit-calendar-cell elements.
|
|
18320
|
+
*/
|
|
18321
|
+
getAllFocusableCells() {
|
|
18322
|
+
const months = this.getMonthComponents();
|
|
18323
|
+
let cells = [];
|
|
18324
|
+
months.forEach(month => {
|
|
18325
|
+
cells = cells.concat(month.getFocusableCells());
|
|
18326
|
+
});
|
|
18327
|
+
return cells;
|
|
18328
|
+
}
|
|
18329
|
+
|
|
18330
|
+
/**
|
|
18331
|
+
* Sets the active cell across all months. Only one cell has tabindex="0" at a time.
|
|
18332
|
+
* Uses imperative DOM manipulation — no Lit re-render triggered.
|
|
18333
|
+
* Also updates ariaActiveDescendantElement on the grid wrapper so
|
|
18334
|
+
* screen readers announce the active cell without moving DOM focus.
|
|
18335
|
+
* @param {Number} date - Unix timestamp of the cell to activate.
|
|
18336
|
+
* @returns {void}
|
|
18337
|
+
*/
|
|
18338
|
+
setActiveCell(date) {
|
|
18339
|
+
const allCells = this.getAllFocusableCells();
|
|
18340
|
+
|
|
18341
|
+
let newActiveCell = null;
|
|
18342
|
+
allCells.forEach(cell => {
|
|
18343
|
+
if (cell.day && cell.day.date === date) {
|
|
18344
|
+
cell.setActive();
|
|
18345
|
+
newActiveCell = cell;
|
|
18346
|
+
} else if (cell.active) {
|
|
18347
|
+
cell.clearActive();
|
|
18348
|
+
}
|
|
18349
|
+
});
|
|
18350
|
+
|
|
18351
|
+
this.activeCellDate = date;
|
|
18352
|
+
|
|
18353
|
+
// Update the proxy element that aria-activedescendant references.
|
|
18354
|
+
// The proxy lives in the same shadow root as the grid wrapper, so
|
|
18355
|
+
// string-based aria-activedescendant works reliably with all SRs.
|
|
18356
|
+
if (newActiveCell) {
|
|
18357
|
+
const proxy = this.shadowRoot.querySelector('#activeDescendantProxy');
|
|
18358
|
+
if (proxy) {
|
|
18359
|
+
proxy.setAttribute('aria-label', newActiveCell.getAriaLabel());
|
|
18360
|
+
proxy.setAttribute('aria-selected', newActiveCell.selected ? 'true' : 'false');
|
|
18361
|
+
if (newActiveCell.isCurrentDate) {
|
|
18362
|
+
proxy.setAttribute('aria-current', 'date');
|
|
18363
|
+
} else {
|
|
18364
|
+
proxy.removeAttribute('aria-current');
|
|
18365
|
+
}
|
|
18366
|
+
if (newActiveCell.isBlackout()) {
|
|
18367
|
+
proxy.setAttribute('aria-disabled', 'true');
|
|
18368
|
+
} else {
|
|
18369
|
+
proxy.removeAttribute('aria-disabled');
|
|
18370
|
+
}
|
|
18371
|
+
}
|
|
18372
|
+
}
|
|
18373
|
+
}
|
|
18374
|
+
|
|
18375
|
+
/**
|
|
18376
|
+
* Focuses the calendar grid wrapper and sets the active cell.
|
|
18377
|
+
* DOM focus stays on the grid wrapper; ariaActiveDescendantElement
|
|
18378
|
+
* tells the screen reader which cell is "active".
|
|
18379
|
+
* @returns {void}
|
|
18380
|
+
*/
|
|
18381
|
+
focusActiveCell() {
|
|
18382
|
+
if (this.activeCellDate != null) {
|
|
18383
|
+
this.setActiveCell(this.activeCellDate);
|
|
18384
|
+
}
|
|
18385
|
+
|
|
18386
|
+
const gridWrapper = this.shadowRoot.querySelector('#calendarGrid');
|
|
18387
|
+
if (gridWrapper) {
|
|
18388
|
+
gridWrapper.focus({ focusVisible: true });
|
|
18389
|
+
}
|
|
18390
|
+
}
|
|
18391
|
+
|
|
18392
|
+
/**
|
|
18393
|
+
* Computes the initial active date from data properties alone — no DOM required.
|
|
18394
|
+
* Priority:
|
|
18395
|
+
* 1. Selected date (dateFrom) if within range
|
|
18396
|
+
* 2. Today's date if not disabled (in-range and not blackout)
|
|
18397
|
+
* 3. First future non-disabled date (scans day-by-day from today up to 1 year)
|
|
18398
|
+
* 4. First previous non-disabled date (scans day-by-day from today up to 1 year)
|
|
18399
|
+
* 5. First enabled date in finite [min, max] range
|
|
18400
|
+
* 5b. First enabled date scanning forward from finite min (unbounded max)
|
|
18401
|
+
* 5c. First enabled date scanning backward from finite max (unbounded min)
|
|
18402
|
+
* 6. First in-range date (even if blackout) so focus can land somewhere
|
|
18403
|
+
* 7. undefined — no valid target
|
|
18404
|
+
*
|
|
18405
|
+
* @private
|
|
18406
|
+
* @param {Object} [options] - Optional settings.
|
|
18407
|
+
* @param {boolean} [options.skipDateFrom=false] - When true, skip the selected-date
|
|
18408
|
+
* shortcut (step 1). Used after month navigation so the active cell lands in the
|
|
18409
|
+
* newly visible month instead of jumping back to the selected date's month.
|
|
18410
|
+
* @returns {Number|undefined} Unix timestamp (seconds) of the date to activate, or undefined.
|
|
18411
|
+
*/
|
|
18412
|
+
computeActiveDate(options = {}) {
|
|
18413
|
+
const MAX_SCAN_DAYS = 366; // scan at most ~1 year in each direction
|
|
18414
|
+
|
|
18415
|
+
/**
|
|
18416
|
+
* Adds days to a timestamp using Date arithmetic to handle DST correctly.
|
|
18417
|
+
* Returns a local-midnight-aligned timestamp in seconds.
|
|
18418
|
+
*/
|
|
18419
|
+
const addDays = (ts, days) => {
|
|
18420
|
+
const d = new Date(ts * 1000);
|
|
18421
|
+
d.setDate(d.getDate() + days);
|
|
18422
|
+
d.setHours(0, 0, 0, 0);
|
|
18423
|
+
return Math.floor(d.getTime() / 1000);
|
|
18424
|
+
};
|
|
18425
|
+
|
|
18426
|
+
const rawMin = Number(this.min);
|
|
18427
|
+
const rawMax = Number(this.max);
|
|
18428
|
+
|
|
18429
|
+
// When min/max are NaN (no minDate/maxDate configured), treat as unbounded.
|
|
18430
|
+
const minTs = Number.isFinite(rawMin) ? rawMin : -Infinity;
|
|
18431
|
+
const maxTs = Number.isFinite(rawMax) ? rawMax : Infinity;
|
|
18432
|
+
|
|
18433
|
+
// Build a Set of blackout timestamps for O(1) lookup.
|
|
18434
|
+
const blackoutSet = new Set(
|
|
18435
|
+
(this.disabledDays || []).map(d => parseInt(d, 10))
|
|
18436
|
+
);
|
|
18437
|
+
|
|
18438
|
+
// Also include ISO-format blackoutDates from the datepicker if available.
|
|
18439
|
+
// Parse YYYY-MM-DD as local date to avoid UTC shift issues.
|
|
18440
|
+
const isoBlackouts = this.datepicker?.blackoutDates;
|
|
18441
|
+
if (Array.isArray(isoBlackouts)) {
|
|
18442
|
+
for (const isoStr of isoBlackouts) {
|
|
18443
|
+
const parts = isoStr.split('-');
|
|
18444
|
+
const ts = Math.floor(new Date(parseInt(parts[0], 10), parseInt(parts[1], 10) - 1, parseInt(parts[2], 10)).getTime() / 1000);
|
|
18445
|
+
if (Number.isFinite(ts)) blackoutSet.add(ts);
|
|
18446
|
+
}
|
|
18447
|
+
}
|
|
18448
|
+
|
|
18449
|
+
/**
|
|
18450
|
+
* A date (unix timestamp in seconds, midnight-aligned) is "enabled" when
|
|
18451
|
+
* it is within [min, max] AND not a blackout day.
|
|
18452
|
+
*/
|
|
18453
|
+
const isEnabled = (ts) => ts >= minTs && ts <= maxTs && !blackoutSet.has(ts);
|
|
18454
|
+
|
|
18455
|
+
/**
|
|
18456
|
+
* A date is "in range" (focusable in the grid) when it is within [min, max].
|
|
18457
|
+
* Blackout dates are focusable but not selectable.
|
|
18458
|
+
*/
|
|
18459
|
+
const isInRange = (ts) => ts >= minTs && ts <= maxTs;
|
|
18460
|
+
|
|
18461
|
+
// 1. Selected date — always valid target if within range (user chose it).
|
|
18462
|
+
// Skipped when called from month navigation so the active cell lands in
|
|
18463
|
+
// the newly visible month rather than the (possibly off-screen) selection.
|
|
18464
|
+
if (!options.skipDateFrom && this.dateFrom) {
|
|
18465
|
+
const parsedFrom = parseInt(this.dateFrom, 10);
|
|
18466
|
+
if (Number.isFinite(parsedFrom) && isInRange(parsedFrom)) return parsedFrom;
|
|
18467
|
+
}
|
|
18468
|
+
|
|
18469
|
+
// 2. Today's date (midnight-aligned) if enabled.
|
|
18470
|
+
const now = Math.floor(new Date().setHours(0, 0, 0, 0) / 1000);
|
|
18471
|
+
|
|
18472
|
+
// When centralDate is configured, prefer a date within the month(s) that
|
|
18473
|
+
// will actually be rendered. If today falls outside the visible range, an
|
|
18474
|
+
// active cell set to today would have no matching DOM element and keyboard
|
|
18475
|
+
// focus could not enter the calendar.
|
|
18476
|
+
const centralDateValue = this.centralDate ? new Date(this.centralDate) : null;
|
|
18477
|
+
|
|
18478
|
+
if (centralDateValue && !isNaN(centralDateValue.getTime())) {
|
|
18479
|
+
const centralMonth = centralDateValue.getMonth();
|
|
18480
|
+
const centralYear = centralDateValue.getFullYear();
|
|
18481
|
+
const todayDate = new Date(now * 1000);
|
|
18482
|
+
const todayMonth = todayDate.getMonth();
|
|
18483
|
+
const todayYear = todayDate.getFullYear();
|
|
18484
|
+
|
|
18485
|
+
// Today is outside the centralDate's month — scan for an enabled date
|
|
18486
|
+
// within the visible month instead.
|
|
18487
|
+
if (todayMonth !== centralMonth || todayYear !== centralYear) {
|
|
18488
|
+
const visibleStart = new Date(centralYear, centralMonth, 1);
|
|
18489
|
+
visibleStart.setHours(0, 0, 0, 0);
|
|
18490
|
+
const visibleEnd = new Date(centralYear, centralMonth + 1, 0); // last day of month
|
|
18491
|
+
visibleEnd.setHours(0, 0, 0, 0);
|
|
18492
|
+
const startTs = Math.floor(visibleStart.getTime() / 1000);
|
|
18493
|
+
const endTs = Math.floor(visibleEnd.getTime() / 1000);
|
|
18494
|
+
const daysInMonth = visibleEnd.getDate();
|
|
18495
|
+
|
|
18496
|
+
for (let idx = 0; idx < daysInMonth; idx++) {
|
|
18497
|
+
const ts = addDays(startTs, idx);
|
|
18498
|
+
if (ts > endTs) break;
|
|
18499
|
+
if (isEnabled(ts)) return ts;
|
|
18500
|
+
}
|
|
18501
|
+
|
|
18502
|
+
// No enabled date in the visible month — fall back to first in-range
|
|
18503
|
+
// date in the month so focus still lands on a focusable cell.
|
|
18504
|
+
for (let idx = 0; idx < daysInMonth; idx++) {
|
|
18505
|
+
const ts = addDays(startTs, idx);
|
|
18506
|
+
if (ts > endTs) break;
|
|
18507
|
+
if (isInRange(ts)) return ts;
|
|
18508
|
+
}
|
|
18509
|
+
}
|
|
18510
|
+
}
|
|
18511
|
+
|
|
18512
|
+
if (isEnabled(now)) return now;
|
|
18513
|
+
|
|
18514
|
+
// When a centralDate is configured (or inferred), constrain the scan to the
|
|
18515
|
+
// rendered month(s) first so a single-month calendar does not pick a date
|
|
18516
|
+
// that has no DOM cell. Determine the visible range based on centralDate and
|
|
18517
|
+
// the number of rendered months.
|
|
18518
|
+
const renderedMonths = this.numCalendars || 1;
|
|
18519
|
+
const visibleAnchor = centralDateValue && !isNaN(centralDateValue.getTime())
|
|
18520
|
+
? centralDateValue
|
|
18521
|
+
: new Date(now * 1000);
|
|
18522
|
+
const visMonthStart = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth(), 1);
|
|
18523
|
+
visMonthStart.setHours(0, 0, 0, 0);
|
|
18524
|
+
const visMonthEnd = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth() + renderedMonths, 0);
|
|
18525
|
+
visMonthEnd.setHours(0, 0, 0, 0);
|
|
18526
|
+
const visStartTs = Math.floor(visMonthStart.getTime() / 1000);
|
|
18527
|
+
const visEndTs = Math.floor(visMonthEnd.getTime() / 1000);
|
|
18528
|
+
const visDays = Math.round((visEndTs - visStartTs) / 86400) + 1;
|
|
18529
|
+
|
|
18530
|
+
// Scan visible months for an enabled date.
|
|
18531
|
+
for (let idx = 0; idx < visDays; idx++) {
|
|
18532
|
+
const ts = addDays(visStartTs, idx);
|
|
18533
|
+
if (ts > visEndTs) break;
|
|
18534
|
+
if (isEnabled(ts)) return ts;
|
|
18535
|
+
}
|
|
18536
|
+
|
|
18537
|
+
// No enabled date in visible months — try an in-range (focusable) date so
|
|
18538
|
+
// keyboard focus still has a tabindex="0" target.
|
|
18539
|
+
for (let idx = 0; idx < visDays; idx++) {
|
|
18540
|
+
const ts = addDays(visStartTs, idx);
|
|
18541
|
+
if (ts > visEndTs) break;
|
|
18542
|
+
if (isInRange(ts)) return ts;
|
|
18543
|
+
}
|
|
18544
|
+
|
|
18545
|
+
// 3. First future enabled date (scan forward from tomorrow, capped by max and MAX_SCAN_DAYS).
|
|
18546
|
+
for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
|
|
18547
|
+
const ts = addDays(now, idx);
|
|
18548
|
+
if (Number.isFinite(maxTs) && ts > maxTs) break;
|
|
18549
|
+
if (isEnabled(ts)) return ts;
|
|
18550
|
+
}
|
|
18551
|
+
|
|
18552
|
+
// 4. First previous enabled date (scan backward from yesterday, capped by min and MAX_SCAN_DAYS).
|
|
18553
|
+
for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
|
|
18554
|
+
const ts = addDays(now, -idx);
|
|
18555
|
+
if (Number.isFinite(minTs) && ts < minTs) break;
|
|
18556
|
+
if (isEnabled(ts)) return ts;
|
|
18557
|
+
}
|
|
18558
|
+
|
|
18559
|
+
// 5. If scans missed (e.g. min/max range is far from today), fall back to
|
|
18560
|
+
// the first enabled date in the [min, max] range.
|
|
18561
|
+
if (Number.isFinite(minTs) && Number.isFinite(maxTs)) {
|
|
18562
|
+
let ts = minTs;
|
|
18563
|
+
for (let idx = 0; ts <= maxTs; idx++) {
|
|
18564
|
+
if (isEnabled(ts)) return ts;
|
|
18565
|
+
ts = addDays(minTs, idx + 1);
|
|
18566
|
+
}
|
|
18567
|
+
}
|
|
18568
|
+
|
|
18569
|
+
// 5b. Finite min with unbounded max (e.g. minDate far in the future):
|
|
18570
|
+
// scan forward from min for up to MAX_SCAN_DAYS.
|
|
18571
|
+
if (Number.isFinite(minTs) && !Number.isFinite(maxTs)) {
|
|
18572
|
+
for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
|
|
18573
|
+
const ts = addDays(minTs, idx);
|
|
18574
|
+
if (isEnabled(ts)) return ts;
|
|
18575
|
+
}
|
|
18576
|
+
}
|
|
18577
|
+
|
|
18578
|
+
// 5c. Unbounded min with a finite max far in the past (e.g. birth-date picker):
|
|
18579
|
+
// scan backward from max for up to MAX_SCAN_DAYS.
|
|
18580
|
+
if (!Number.isFinite(minTs) && Number.isFinite(maxTs)) {
|
|
18581
|
+
for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
|
|
18582
|
+
const ts = addDays(maxTs, -idx);
|
|
18583
|
+
if (isEnabled(ts)) return ts;
|
|
18584
|
+
}
|
|
18585
|
+
}
|
|
18586
|
+
|
|
18587
|
+
// 6. All dates are blackout — fall back to the first in-range date so focus
|
|
18588
|
+
// still lands on a focusable (but not selectable) cell.
|
|
18589
|
+
if (Number.isFinite(minTs) && isInRange(minTs)) return minTs;
|
|
18590
|
+
if (isInRange(now)) return now;
|
|
18591
|
+
|
|
18592
|
+
return undefined;
|
|
18593
|
+
}
|
|
18594
|
+
|
|
18595
|
+
/**
|
|
18596
|
+
* Handles arrow key navigation on the calendar grid wrapper.
|
|
18597
|
+
* Focus stays on the grid wrapper; only ariaActiveDescendantElement
|
|
18598
|
+
* and the visual active-cell indicator change.
|
|
18599
|
+
* @private
|
|
18600
|
+
* @param {KeyboardEvent} event - The keyboard event.
|
|
18601
|
+
* @returns {void}
|
|
18602
|
+
*/
|
|
18603
|
+
handleGridKeyDown(event) {
|
|
18604
|
+
const { key } = event;
|
|
18605
|
+
const actionKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp', 'Enter', ' '];
|
|
18606
|
+
|
|
18607
|
+
if (!actionKeys.includes(key)) return;
|
|
18608
|
+
|
|
18609
|
+
event.preventDefault();
|
|
18610
|
+
|
|
18611
|
+
const allCells = this.getAllFocusableCells();
|
|
18612
|
+
if (allCells.length === 0) return;
|
|
18613
|
+
|
|
18614
|
+
const activeCell = allCells.find(cell => cell.active);
|
|
18615
|
+
if (!activeCell) return;
|
|
18616
|
+
|
|
18617
|
+
// Handle Enter/Space to select the active cell
|
|
18618
|
+
if (key === 'Enter' || key === ' ') {
|
|
18619
|
+
activeCell.handleTap();
|
|
18620
|
+
return;
|
|
18621
|
+
}
|
|
18622
|
+
|
|
18623
|
+
const activeIndex = allCells.indexOf(activeCell);
|
|
18624
|
+
|
|
18625
|
+
if (key === 'ArrowRight' || key === 'ArrowLeft') {
|
|
18626
|
+
const direction = key === 'ArrowRight' ? 1 : -1;
|
|
18627
|
+
const targetIndex = activeIndex + direction;
|
|
18628
|
+
|
|
18629
|
+
if (targetIndex >= 0 && targetIndex < allCells.length) {
|
|
18630
|
+
// Target cell exists in rendered months
|
|
18631
|
+
this.setActiveCell(allCells[targetIndex].day.date);
|
|
18632
|
+
this.scrollToActiveCell();
|
|
18633
|
+
// Dispatch focus event for the cell so live region + range preview update
|
|
18634
|
+
this.handleCellFocused({ detail: { date: allCells[targetIndex].day.date } });
|
|
18635
|
+
} else {
|
|
18636
|
+
// At boundary — need to navigate to next/prev month
|
|
18637
|
+
const navDir = direction === 1 ? 'next' : 'prev';
|
|
18638
|
+
if ((navDir === 'next' && this.showNextMonthBtn) || (navDir === 'prev' && this.showPrevMonthBtn)) {
|
|
18639
|
+
const targetDate = new Date(activeCell.day.date * 1000);
|
|
18640
|
+
targetDate.setDate(targetDate.getDate() + direction);
|
|
18641
|
+
targetDate.setHours(0, 0, 0, 0);
|
|
18642
|
+
const targetTs = Math.floor(targetDate.getTime() / 1000);
|
|
18643
|
+
|
|
18644
|
+
if (navDir === 'next') {
|
|
18645
|
+
this.handleNextMonth();
|
|
18646
|
+
} else {
|
|
18647
|
+
this.handlePrevMonth();
|
|
18648
|
+
}
|
|
18649
|
+
requestAnimationFrame(() => {
|
|
18650
|
+
requestAnimationFrame(() => {
|
|
18651
|
+
const cells = this.getAllFocusableCells();
|
|
18652
|
+
const target = cells.find(cell => cell.day && cell.day.date === targetTs);
|
|
18653
|
+
if (target) {
|
|
18654
|
+
this.setActiveCell(target.day.date);
|
|
18655
|
+
this.handleCellFocused({ detail: { date: target.day.date } });
|
|
18656
|
+
} else if (cells.length > 0) {
|
|
18657
|
+
const fallback = navDir === 'next' ? cells[cells.length - 1] : cells[0];
|
|
18658
|
+
this.setActiveCell(fallback.day.date);
|
|
18659
|
+
this.handleCellFocused({ detail: { date: fallback.day.date } });
|
|
18660
|
+
}
|
|
18661
|
+
// Re-focus grid wrapper after month change re-render
|
|
18662
|
+
this.focusActiveCell();
|
|
18663
|
+
});
|
|
18664
|
+
});
|
|
18665
|
+
}
|
|
18666
|
+
}
|
|
18667
|
+
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
18668
|
+
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
18669
|
+
const currentDate = new Date(activeCell.day.date * 1000);
|
|
18670
|
+
currentDate.setDate(currentDate.getDate() + increment);
|
|
18671
|
+
currentDate.setHours(0, 0, 0, 0);
|
|
18672
|
+
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
18673
|
+
|
|
18674
|
+
const targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
|
|
18675
|
+
|
|
18676
|
+
if (targetCell) {
|
|
18677
|
+
this.setActiveCell(targetCell.day.date);
|
|
18678
|
+
this.scrollToActiveCell();
|
|
18679
|
+
this.handleCellFocused({ detail: { date: targetCell.day.date } });
|
|
18680
|
+
} else {
|
|
18681
|
+
// Target might be in an unrendered month
|
|
18682
|
+
const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
|
|
18683
|
+
if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
|
|
18684
|
+
if (navDirection === 'next') {
|
|
18685
|
+
this.handleNextMonth();
|
|
18686
|
+
} else {
|
|
18687
|
+
this.handlePrevMonth();
|
|
18688
|
+
}
|
|
18689
|
+
requestAnimationFrame(() => {
|
|
18690
|
+
requestAnimationFrame(() => {
|
|
18691
|
+
const cells = this.getAllFocusableCells();
|
|
18692
|
+
const target = cells.find(cell => cell.day && cell.day.date === targetDate);
|
|
18693
|
+
if (target) {
|
|
18694
|
+
this.setActiveCell(target.day.date);
|
|
18695
|
+
this.handleCellFocused({ detail: { date: target.day.date } });
|
|
18696
|
+
} else if (cells.length > 0) {
|
|
18697
|
+
const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
|
|
18698
|
+
this.setActiveCell(nearest.day.date);
|
|
18699
|
+
this.handleCellFocused({ detail: { date: nearest.day.date } });
|
|
18700
|
+
}
|
|
18701
|
+
this.focusActiveCell();
|
|
18702
|
+
});
|
|
18703
|
+
});
|
|
18704
|
+
}
|
|
18705
|
+
}
|
|
18706
|
+
}
|
|
18707
|
+
}
|
|
18708
|
+
|
|
18709
|
+
/**
|
|
18710
|
+
* Handles cross-month boundary navigation events from month components.
|
|
18711
|
+
* @private
|
|
18712
|
+
* @param {CustomEvent} event - The boundary event with direction and source date info.
|
|
18713
|
+
* @returns {void}
|
|
18714
|
+
*/
|
|
18715
|
+
handleMonthBoundary(event) {
|
|
18716
|
+
const { direction, fromDate, key } = event.detail;
|
|
18717
|
+
|
|
18718
|
+
if (key === 'ArrowRight' || key === 'ArrowLeft') {
|
|
18719
|
+
// Linear navigation: find adjacent focusable cell across months
|
|
18720
|
+
const allCells = this.getAllFocusableCells();
|
|
18721
|
+
const currentIndex = allCells.findIndex(cell => cell.day && cell.day.date === fromDate);
|
|
18722
|
+
|
|
18723
|
+
if (currentIndex === -1) return;
|
|
18724
|
+
|
|
18725
|
+
let targetIndex;
|
|
18726
|
+
if (direction === 'next') {
|
|
18727
|
+
targetIndex = currentIndex + 1;
|
|
18728
|
+
} else {
|
|
18729
|
+
targetIndex = currentIndex - 1;
|
|
18730
|
+
}
|
|
18731
|
+
|
|
18732
|
+
if (targetIndex >= 0 && targetIndex < allCells.length) {
|
|
18733
|
+
const targetCell = allCells[targetIndex];
|
|
18734
|
+
this.setActiveCell(targetCell.day.date);
|
|
18735
|
+
this.scrollToActiveCell();
|
|
18736
|
+
this.focusActiveCell();
|
|
18737
|
+
} else if (direction === 'next' && this.showNextMonthBtn) {
|
|
18738
|
+
// Navigate to next month and focus the computed next date.
|
|
18739
|
+
// Using the target date (fromDate + 1 day) instead of cells[0]
|
|
18740
|
+
// avoids jumping backward in range datepickers where cells[0]
|
|
18741
|
+
// belongs to the previous (still-rendered) month.
|
|
18742
|
+
const nextDate = new Date(fromDate * 1000);
|
|
18743
|
+
nextDate.setDate(nextDate.getDate() + 1);
|
|
18744
|
+
nextDate.setHours(0, 0, 0, 0);
|
|
18745
|
+
const nextTs = Math.floor(nextDate.getTime() / 1000);
|
|
18746
|
+
|
|
18747
|
+
this.handleNextMonth();
|
|
18748
|
+
requestAnimationFrame(() => {
|
|
18749
|
+
requestAnimationFrame(() => {
|
|
18750
|
+
const cells = this.getAllFocusableCells();
|
|
18751
|
+
const target = cells.find(cell => cell.day && cell.day.date === nextTs);
|
|
18752
|
+
if (target) {
|
|
18753
|
+
this.setActiveCell(target.day.date);
|
|
18754
|
+
this.focusActiveCell();
|
|
18755
|
+
} else if (cells.length > 0) {
|
|
18756
|
+
// Fallback: first cell of the last rendered month
|
|
18757
|
+
this.setActiveCell(cells[cells.length - 1].day.date);
|
|
18758
|
+
this.focusActiveCell();
|
|
18759
|
+
}
|
|
18760
|
+
});
|
|
18761
|
+
});
|
|
18762
|
+
} else if (direction === 'prev' && this.showPrevMonthBtn) {
|
|
18763
|
+
// Navigate to previous month and focus the computed previous date.
|
|
18764
|
+
const prevDate = new Date(fromDate * 1000);
|
|
18765
|
+
prevDate.setDate(prevDate.getDate() - 1);
|
|
18766
|
+
prevDate.setHours(0, 0, 0, 0);
|
|
18767
|
+
const prevTs = Math.floor(prevDate.getTime() / 1000);
|
|
18768
|
+
|
|
18769
|
+
this.handlePrevMonth();
|
|
18770
|
+
requestAnimationFrame(() => {
|
|
18771
|
+
requestAnimationFrame(() => {
|
|
18772
|
+
const cells = this.getAllFocusableCells();
|
|
18773
|
+
const target = cells.find(cell => cell.day && cell.day.date === prevTs);
|
|
18774
|
+
if (target) {
|
|
18775
|
+
this.setActiveCell(target.day.date);
|
|
18776
|
+
this.focusActiveCell();
|
|
18777
|
+
} else if (cells.length > 0) {
|
|
18778
|
+
// Fallback: last cell of the first rendered month
|
|
18779
|
+
this.setActiveCell(cells[0].day.date);
|
|
18780
|
+
this.focusActiveCell();
|
|
18781
|
+
}
|
|
18782
|
+
});
|
|
18783
|
+
});
|
|
18784
|
+
}
|
|
18785
|
+
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
18786
|
+
// Vertical navigation: find same day-of-week +/- 7 days
|
|
18787
|
+
// Use Date arithmetic instead of fixed seconds to handle DST correctly
|
|
18788
|
+
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
18789
|
+
const currentDate = new Date(fromDate * 1000);
|
|
18790
|
+
currentDate.setDate(currentDate.getDate() + increment);
|
|
18791
|
+
currentDate.setHours(0, 0, 0, 0);
|
|
18792
|
+
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
18793
|
+
|
|
18794
|
+
const allCells = this.getAllFocusableCells();
|
|
18795
|
+
let targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
|
|
18796
|
+
|
|
18797
|
+
if (targetCell) {
|
|
18798
|
+
this.setActiveCell(targetCell.day.date);
|
|
18799
|
+
this.scrollToActiveCell();
|
|
18800
|
+
this.focusActiveCell();
|
|
18801
|
+
} else {
|
|
18802
|
+
// Target might be in an unrendered month, navigate there
|
|
18803
|
+
const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
|
|
18804
|
+
if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
|
|
18805
|
+
if (navDirection === 'next') {
|
|
18806
|
+
this.handleNextMonth();
|
|
18807
|
+
} else {
|
|
18808
|
+
this.handlePrevMonth();
|
|
18809
|
+
}
|
|
18810
|
+
requestAnimationFrame(() => {
|
|
18811
|
+
requestAnimationFrame(() => {
|
|
18812
|
+
const cells = this.getAllFocusableCells();
|
|
18813
|
+
const target = cells.find(cell => cell.day && cell.day.date === targetDate);
|
|
18814
|
+
if (target) {
|
|
18815
|
+
this.setActiveCell(target.day.date);
|
|
18816
|
+
this.focusActiveCell();
|
|
18817
|
+
} else if (cells.length > 0) {
|
|
18818
|
+
// Clamp to nearest focusable cell
|
|
18819
|
+
const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
|
|
18820
|
+
this.setActiveCell(nearest.day.date);
|
|
18821
|
+
this.focusActiveCell();
|
|
18822
|
+
}
|
|
18823
|
+
});
|
|
18824
|
+
});
|
|
18825
|
+
}
|
|
18826
|
+
}
|
|
18827
|
+
}
|
|
18828
|
+
}
|
|
18829
|
+
|
|
18830
|
+
/**
|
|
18831
|
+
* Handles cell activation events from month components.
|
|
18832
|
+
* @private
|
|
18833
|
+
* @param {CustomEvent} event - The activation event with target date.
|
|
18834
|
+
* @returns {void}
|
|
18835
|
+
*/
|
|
18836
|
+
handleCellActivate(event) {
|
|
18837
|
+
const { date } = event.detail;
|
|
18838
|
+
this.setActiveCell(date);
|
|
18839
|
+
this.focusActiveCell();
|
|
18840
|
+
}
|
|
18841
|
+
|
|
18842
|
+
/**
|
|
18843
|
+
* Handles focus events from calendar cells.
|
|
18844
|
+
* Updates the live region with an SR announcement and triggers
|
|
18845
|
+
* the imperative range preview if applicable.
|
|
18846
|
+
* @private
|
|
18847
|
+
* @param {CustomEvent} event - The calendar-cell-focused event.
|
|
18848
|
+
* @returns {void}
|
|
18849
|
+
*/
|
|
18850
|
+
handleCellFocused(event) {
|
|
18851
|
+
const { date } = event.detail;
|
|
18852
|
+
if (date == null) return;
|
|
18853
|
+
|
|
18854
|
+
// With aria-activedescendant, the button no longer receives native focus,
|
|
18855
|
+
// so we use the debounced live region for the full context announcement.
|
|
18856
|
+
const announcement = this.buildFocusAnnouncement(date);
|
|
18857
|
+
this.announceFocusDebounced(announcement);
|
|
18858
|
+
|
|
18859
|
+
// Update the range preview imperatively if in range-preview mode.
|
|
18860
|
+
this.updateRangePreview(date);
|
|
18861
|
+
}
|
|
18862
|
+
|
|
18863
|
+
/**
|
|
18864
|
+
* Builds a full SR announcement string for a focused cell date.
|
|
18865
|
+
* Includes the localized date, range position, popover content,
|
|
18866
|
+
* and blackout status.
|
|
18867
|
+
* @private
|
|
18868
|
+
* @param {Number} date - Unix timestamp (seconds) of the focused cell.
|
|
18869
|
+
* @returns {String} The announcement string.
|
|
18870
|
+
*/
|
|
18871
|
+
buildFocusAnnouncement(date) {
|
|
18872
|
+
let label = this.formatAnnouncementDate(date);
|
|
18873
|
+
|
|
18874
|
+
// Append date slot content (e.g. prices) if present.
|
|
18875
|
+
const dateObj = new Date(date * 1000);
|
|
18876
|
+
const mm = String(dateObj.getMonth() + 1).padStart(2, '0');
|
|
18877
|
+
const dd = String(dateObj.getDate()).padStart(2, '0');
|
|
18878
|
+
const yyyy = dateObj.getFullYear();
|
|
18879
|
+
const dateStr = `${mm}_${dd}_${yyyy}`;
|
|
18880
|
+
const dateSlotEl = this.datepicker?.querySelector(`[slot="date_${dateStr}"]`);
|
|
18881
|
+
if (dateSlotEl) {
|
|
18882
|
+
const text = dateSlotEl.innerText?.trim();
|
|
18883
|
+
if (text) {
|
|
18884
|
+
label += `, ${text}`;
|
|
18885
|
+
}
|
|
18886
|
+
}
|
|
18887
|
+
|
|
18888
|
+
// Append popover content if present.
|
|
18889
|
+
const popoverEl = this.datepicker?.querySelector(`[slot="popover_${dateStr}"]`);
|
|
18890
|
+
if (popoverEl) {
|
|
18891
|
+
const text = popoverEl.innerText?.trim();
|
|
18892
|
+
if (text) {
|
|
18893
|
+
label += `, ${text}`;
|
|
18894
|
+
}
|
|
18895
|
+
}
|
|
18896
|
+
|
|
18897
|
+
// Append range position context.
|
|
18898
|
+
if (this.datepicker?.hasAttribute('range')) {
|
|
18899
|
+
const rangeLabel = this.getRangePositionLabel(date);
|
|
18900
|
+
if (rangeLabel) {
|
|
18901
|
+
label += `, ${rangeLabel}`;
|
|
18902
|
+
}
|
|
18903
|
+
}
|
|
18904
|
+
|
|
18905
|
+
// Append blackout label.
|
|
18906
|
+
if (this.isDateBlackout(date)) {
|
|
18907
|
+
label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
|
|
18908
|
+
}
|
|
18909
|
+
|
|
18910
|
+
return label;
|
|
18911
|
+
}
|
|
18912
|
+
|
|
18913
|
+
/**
|
|
18914
|
+
* Determines the range position label for a given date.
|
|
18915
|
+
* @private
|
|
18916
|
+
* @param {Number} date - Unix timestamp (seconds).
|
|
18917
|
+
* @returns {String|null} The range position label, or null.
|
|
18918
|
+
*/
|
|
18919
|
+
getRangePositionLabel(date) {
|
|
18920
|
+
const parsedFrom = Number.parseInt(this.dateFrom, 10);
|
|
18921
|
+
if (!Number.isFinite(parsedFrom)) return null;
|
|
18922
|
+
|
|
18923
|
+
const departTs = startOfDay(parsedFrom * 1000) / 1000;
|
|
18924
|
+
const parsedTo = Number.parseInt(this.dateTo, 10);
|
|
18925
|
+
const hasTo = Number.isFinite(parsedTo);
|
|
18926
|
+
const returnTs = hasTo ? startOfDay(parsedTo * 1000) / 1000 : null;
|
|
18927
|
+
|
|
18928
|
+
if (date === departTs) return this.datepicker.rangeLabelStart || 'range start';
|
|
18929
|
+
if (hasTo && date === returnTs) return this.datepicker.rangeLabelEnd || 'range end';
|
|
18930
|
+
if (date < departTs) return this.datepicker.rangeLabelBeforeRange || 'before range';
|
|
18931
|
+
if (hasTo && date > departTs && date < returnTs) return this.datepicker.rangeLabelInRange || 'in range';
|
|
18932
|
+
return this.datepicker.rangeLabelAfterRange || 'after range';
|
|
18933
|
+
}
|
|
18934
|
+
|
|
18935
|
+
/**
|
|
18936
|
+
* Checks whether a given date is a blackout date.
|
|
18937
|
+
* @private
|
|
18938
|
+
* @param {Number} dateTs - Unix timestamp (seconds).
|
|
18939
|
+
* @returns {Boolean} True if the date is blacked out.
|
|
18940
|
+
*/
|
|
18941
|
+
isDateBlackout(dateTs) {
|
|
18942
|
+
// Check legacy disabledDays.
|
|
18943
|
+
if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
|
|
18944
|
+
if (this.disabledDays.findIndex(d => parseInt(d, 10) === dateTs) !== -1) {
|
|
18945
|
+
return true;
|
|
18946
|
+
}
|
|
18947
|
+
}
|
|
18948
|
+
|
|
18949
|
+
// Check ISO blackoutDates.
|
|
18950
|
+
const blackoutDates = this.datepicker?.blackoutDates;
|
|
18951
|
+
if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
|
|
18952
|
+
const date = new Date(dateTs * 1000);
|
|
18953
|
+
const yyyy = date.getFullYear();
|
|
18954
|
+
const mm = String(date.getMonth() + 1).padStart(2, '0');
|
|
18955
|
+
const dd = String(date.getDate()).padStart(2, '0');
|
|
18956
|
+
if (blackoutDates.includes(`${yyyy}-${mm}-${dd}`)) {
|
|
18957
|
+
return true;
|
|
18958
|
+
}
|
|
18959
|
+
}
|
|
18960
|
+
|
|
18961
|
+
return false;
|
|
18962
|
+
}
|
|
18963
|
+
|
|
18964
|
+
/**
|
|
18965
|
+
* Updates the range preview classes imperatively across all cells.
|
|
18966
|
+
* Only active when in range mode with dateFrom set and dateTo not yet set.
|
|
18967
|
+
* @private
|
|
18968
|
+
* @param {Number} hoveredDate - Unix timestamp of the hovered/focused date.
|
|
18969
|
+
* @returns {void}
|
|
18970
|
+
*/
|
|
18971
|
+
updateRangePreview(hoveredDate) {
|
|
18972
|
+
if (this.noRange || !this.dateFrom || this.dateTo) {
|
|
18973
|
+
return;
|
|
18974
|
+
}
|
|
18975
|
+
|
|
18976
|
+
const parsedDateFrom = parseInt(this.dateFrom, 10);
|
|
18977
|
+
const allCells = this.getAllFocusableCells();
|
|
18978
|
+
|
|
18979
|
+
allCells.forEach(cell => {
|
|
18980
|
+
cell.updateRangePreviewClasses(hoveredDate, parsedDateFrom);
|
|
18981
|
+
});
|
|
18982
|
+
}
|
|
18983
|
+
|
|
18984
|
+
/**
|
|
18985
|
+
* Clears range preview classes from all cells.
|
|
18986
|
+
* @private
|
|
18987
|
+
* @returns {void}
|
|
18988
|
+
*/
|
|
18989
|
+
clearRangePreview() {
|
|
18990
|
+
const allCells = this.getAllFocusableCells();
|
|
18991
|
+
allCells.forEach(cell => {
|
|
18992
|
+
cell.clearRangePreviewClasses();
|
|
18993
|
+
});
|
|
18994
|
+
}
|
|
18995
|
+
|
|
18996
|
+
/**
|
|
18997
|
+
* Overrides the base class handler to prevent setting `this.hoveredDate`
|
|
18998
|
+
* as a reactive property. Instead, handles the range preview imperatively.
|
|
18999
|
+
* @private
|
|
19000
|
+
* @param {CustomEvent} event - The hovered-date-changed event from a month.
|
|
19001
|
+
* @returns {void}
|
|
19002
|
+
*/
|
|
19003
|
+
hoveredDateChanged(event) {
|
|
19004
|
+
const hoveredDate = event.detail.value;
|
|
19005
|
+
this.updateRangePreview(hoveredDate);
|
|
19006
|
+
}
|
|
19007
|
+
|
|
19008
|
+
/**
|
|
19009
|
+
* Scrolls the calendar to ensure the month containing the active cell is visible.
|
|
19010
|
+
* @private
|
|
19011
|
+
* @returns {void}
|
|
19012
|
+
*/
|
|
19013
|
+
scrollToActiveCell() {
|
|
19014
|
+
if (this.activeCellDate == null) return;
|
|
19015
|
+
|
|
19016
|
+
const date = new Date(this.activeCellDate * 1000);
|
|
19017
|
+
const month = date.getMonth() + 1;
|
|
19018
|
+
const year = date.getFullYear();
|
|
19019
|
+
const selector = `#month-${month}-${year}`;
|
|
19020
|
+
const monthElem = this.shadowRoot.querySelector(selector);
|
|
19021
|
+
|
|
19022
|
+
if (monthElem) {
|
|
19023
|
+
const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
|
19024
|
+
monthElem.scrollIntoView({ block: 'nearest', behavior: prefersReducedMotion ? 'instant' : 'smooth' });
|
|
19025
|
+
}
|
|
19026
|
+
}
|
|
19027
|
+
|
|
19028
|
+
/**
|
|
19029
|
+
* Announces a date selection or focus change via the live region.
|
|
19030
|
+
* @private
|
|
19031
|
+
* @param {String} dateStr - The localized date string to announce.
|
|
19032
|
+
* @returns {void}
|
|
19033
|
+
*/
|
|
19034
|
+
announceSelection(dateStr) {
|
|
19035
|
+
const liveRegion = this.shadowRoot.querySelector('#calendar-live-region');
|
|
19036
|
+
if (liveRegion) {
|
|
19037
|
+
liveRegion.textContent = '';
|
|
19038
|
+
// Use microtask to ensure SR picks up the change
|
|
19039
|
+
Promise.resolve().then(() => {
|
|
19040
|
+
liveRegion.textContent = dateStr;
|
|
19041
|
+
});
|
|
19042
|
+
}
|
|
19043
|
+
}
|
|
19044
|
+
|
|
19045
|
+
/**
|
|
19046
|
+
* Debounced version of announceSelection for focus navigation.
|
|
19047
|
+
* Only announces the last focused date after rapid navigation pauses,
|
|
19048
|
+
* preventing the screen reader from queueing up stale announcements
|
|
19049
|
+
* that can't keep pace with arrow-key traversal.
|
|
19050
|
+
* @private
|
|
19051
|
+
* @param {String} dateStr - The localized date string to announce.
|
|
19052
|
+
* @returns {void}
|
|
19053
|
+
*/
|
|
19054
|
+
announceFocusDebounced(dateStr) {
|
|
19055
|
+
if (this._focusAnnounceTimer) {
|
|
19056
|
+
clearTimeout(this._focusAnnounceTimer);
|
|
19057
|
+
}
|
|
19058
|
+
this._focusAnnounceTimer = setTimeout(() => {
|
|
19059
|
+
this.announceSelection(dateStr);
|
|
19060
|
+
this._focusAnnounceTimer = null;
|
|
19061
|
+
}, 150);
|
|
19062
|
+
}
|
|
19063
|
+
|
|
19064
|
+
/**
|
|
19065
|
+
* Formats a Unix timestamp (seconds) as a localized date string for SR announcements.
|
|
19066
|
+
* @private
|
|
19067
|
+
* @param {String|Number} timestamp - Unix timestamp in seconds.
|
|
19068
|
+
* @returns {String} Localized date string.
|
|
19069
|
+
*/
|
|
19070
|
+
formatAnnouncementDate(timestamp) {
|
|
19071
|
+
const date = new Date(parseInt(timestamp, 10) * 1000);
|
|
19072
|
+
const localeCode = this.locale?.code || undefined;
|
|
19073
|
+
const formatter = new Intl.DateTimeFormat(localeCode, {
|
|
19074
|
+
weekday: 'long', year: 'numeric', month: 'long', day: 'numeric'
|
|
19075
|
+
});
|
|
19076
|
+
return formatter.format(date);
|
|
19077
|
+
}
|
|
19078
|
+
|
|
17760
19079
|
firstUpdated() {
|
|
17761
19080
|
this.addEventListener('date-from-changed', () => {
|
|
17762
19081
|
this.dispatchEvent(new CustomEvent('auroCalendar-dateSelected', {
|
|
@@ -17776,6 +19095,21 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17776
19095
|
composed: true,
|
|
17777
19096
|
}));
|
|
17778
19097
|
});
|
|
19098
|
+
|
|
19099
|
+
// Listen for cross-month boundary navigation events
|
|
19100
|
+
this.addEventListener('calendar-month-boundary', (event) => {
|
|
19101
|
+
this.handleMonthBoundary(event);
|
|
19102
|
+
});
|
|
19103
|
+
|
|
19104
|
+
// Listen for cell activation events
|
|
19105
|
+
this.addEventListener('calendar-cell-activate', (event) => {
|
|
19106
|
+
this.handleCellActivate(event);
|
|
19107
|
+
});
|
|
19108
|
+
|
|
19109
|
+
// Listen for cell focus events (SR announcements + range preview)
|
|
19110
|
+
this.addEventListener('calendar-cell-focused', (event) => {
|
|
19111
|
+
this.handleCellFocused(event);
|
|
19112
|
+
});
|
|
17779
19113
|
}
|
|
17780
19114
|
|
|
17781
19115
|
injectSlot(slotName, nodes) {
|
|
@@ -17800,7 +19134,37 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17800
19134
|
}
|
|
17801
19135
|
|
|
17802
19136
|
if (changedProperties.has('visible')) {
|
|
17803
|
-
|
|
19137
|
+
if (this.visible) {
|
|
19138
|
+
// Compute the active date eagerly from data — no DOM needed.
|
|
19139
|
+
if (this.activeCellDate == null) {
|
|
19140
|
+
this.activeCellDate = this.computeActiveDate();
|
|
19141
|
+
}
|
|
19142
|
+
|
|
19143
|
+
this.requestUpdate();
|
|
19144
|
+
} else {
|
|
19145
|
+
this.requestUpdate();
|
|
19146
|
+
}
|
|
19147
|
+
}
|
|
19148
|
+
|
|
19149
|
+
// Announce date selection to screen readers when user clicks/selects a cell
|
|
19150
|
+
const isCellClick = this.datepicker?.wasCellClick || this.datepicker?.cellClickActive;
|
|
19151
|
+
|
|
19152
|
+
if (changedProperties.has('dateFrom') && this.dateFrom && isCellClick) {
|
|
19153
|
+
const dateStr = this.formatAnnouncementDate(this.dateFrom);
|
|
19154
|
+
const isRange = !this.noRange;
|
|
19155
|
+
|
|
19156
|
+
if (isRange) {
|
|
19157
|
+
const rangeLabel = this.datepicker.rangeLabelStart || 'range start';
|
|
19158
|
+
this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
|
|
19159
|
+
} else {
|
|
19160
|
+
this.announceSelection(`${dateStr}, selected`);
|
|
19161
|
+
}
|
|
19162
|
+
}
|
|
19163
|
+
|
|
19164
|
+
if (changedProperties.has('dateTo') && this.dateTo && isCellClick) {
|
|
19165
|
+
const dateStr = this.formatAnnouncementDate(this.dateTo);
|
|
19166
|
+
const rangeLabel = this.datepicker.rangeLabelEnd || 'range end';
|
|
19167
|
+
this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
|
|
17804
19168
|
}
|
|
17805
19169
|
}
|
|
17806
19170
|
|
|
@@ -17809,6 +19173,7 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17809
19173
|
<${this.bibtemplateTag}
|
|
17810
19174
|
?large="${this.largeFullscreenHeadline}"
|
|
17811
19175
|
?isFullscreen="${this.isFullscreen}"
|
|
19176
|
+
?showFooter="${!this.isFullscreen && this.dropdown?.desktopModal}"
|
|
17812
19177
|
@close-click="${this.utilCal.requestDismiss}">
|
|
17813
19178
|
<span slot="ariaLabel.close">${this.slots["ariaLabel.bib.close"]}</span>
|
|
17814
19179
|
|
|
@@ -17826,24 +19191,27 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17826
19191
|
</div>
|
|
17827
19192
|
</div>
|
|
17828
19193
|
|
|
17829
|
-
<div class="calendarWrapper">
|
|
17830
|
-
<div class="calendars">
|
|
17831
|
-
${this.renderAllCalendars()}
|
|
17832
|
-
</div>
|
|
19194
|
+
<div class="calendarWrapper ${!this.isFullscreen && this.dropdown?.desktopModal ? 'hasFooter' : ''}">
|
|
17833
19195
|
<div class="calendarNavButtons">
|
|
17834
19196
|
${this.showPrevMonthBtn ? u$c`
|
|
17835
|
-
<button tabIndex="
|
|
19197
|
+
<button tabIndex="0" class="calendarNavBtn prevMonth" aria-label="${this.datepicker?.navLabelPrevMonth || 'Previous month'}" @click="${this.handlePrevMonth}">
|
|
17836
19198
|
${this.util.generateIconHtml(chevronLeft)}
|
|
17837
19199
|
</button>
|
|
17838
19200
|
` : undefined}
|
|
17839
19201
|
${this.showNextMonthBtn ? u$c`
|
|
17840
|
-
<button tabIndex="
|
|
19202
|
+
<button tabIndex="0" class="calendarNavBtn nextMonth" aria-label="${this.datepicker?.navLabelNextMonth || 'Next month'}" @click="${this.handleNextMonth}">
|
|
17841
19203
|
${this.util.generateIconHtml(chevronRight)}
|
|
17842
19204
|
</button>
|
|
17843
19205
|
` : undefined}
|
|
17844
19206
|
</div>
|
|
19207
|
+
<div id="calendarGrid" class="calendars" role="group" tabindex="-1" aria-activedescendant="activeDescendantProxy" @keydown="${this.handleGridKeyDown}">
|
|
19208
|
+
<span id="activeDescendantProxy" role="gridcell" aria-label="" class="sr-only"></span>
|
|
19209
|
+
${this.renderAllCalendars()}
|
|
19210
|
+
</div>
|
|
17845
19211
|
</div>
|
|
17846
19212
|
|
|
19213
|
+
<div id="calendar-live-region" aria-live="assertive" aria-atomic="true" class="sr-only"></div>
|
|
19214
|
+
|
|
17847
19215
|
<${this.buttonTag} slot="footer" fluid @click="${this.utilCal.requestDismiss}">Done</${this.buttonTag}>
|
|
17848
19216
|
</${this.bibtemplateTag}>
|
|
17849
19217
|
`;
|
|
@@ -21091,7 +22459,7 @@ function applyKeyboardStrategy$1$2(component, strategy, options = {}) {
|
|
|
21091
22459
|
});
|
|
21092
22460
|
}
|
|
21093
22461
|
|
|
21094
|
-
var styleCss$2$1$2 = i$7`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
22462
|
+
var styleCss$2$1$2 = i$7`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host([desktopmodal]:popover-open)::backdrop{background:transparent}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
21095
22463
|
|
|
21096
22464
|
var colorCss$2$7 = i$7`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
|
|
21097
22465
|
|
|
@@ -21722,7 +23090,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$4 {
|
|
|
21722
23090
|
}
|
|
21723
23091
|
};
|
|
21724
23092
|
|
|
21725
|
-
var formkitVersion$1$2 = '
|
|
23093
|
+
var formkitVersion$1$2 = '202605210326';
|
|
21726
23094
|
|
|
21727
23095
|
let AuroElement$2$2 = class AuroElement extends i$4 {
|
|
21728
23096
|
static get properties() {
|
|
@@ -21902,6 +23270,7 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
21902
23270
|
_intializeDefaults() {
|
|
21903
23271
|
this.appearance = 'default';
|
|
21904
23272
|
this.chevron = false;
|
|
23273
|
+
this.desktopModal = false;
|
|
21905
23274
|
this.disabled = false;
|
|
21906
23275
|
this.disableKeyboardHandling = false;
|
|
21907
23276
|
this.error = false;
|
|
@@ -22082,6 +23451,14 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22082
23451
|
reflect: true
|
|
22083
23452
|
},
|
|
22084
23453
|
|
|
23454
|
+
/**
|
|
23455
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
23456
|
+
*/
|
|
23457
|
+
desktopModal: {
|
|
23458
|
+
type: Boolean,
|
|
23459
|
+
reflect: true
|
|
23460
|
+
},
|
|
23461
|
+
|
|
22085
23462
|
/**
|
|
22086
23463
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
22087
23464
|
*/
|
|
@@ -22369,6 +23746,15 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22369
23746
|
|
|
22370
23747
|
disconnectedCallback() {
|
|
22371
23748
|
super.disconnectedCallback();
|
|
23749
|
+
this._clearPageInert();
|
|
23750
|
+
if (this._bibTabHandler) {
|
|
23751
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
23752
|
+
this._bibTabHandler = undefined;
|
|
23753
|
+
}
|
|
23754
|
+
if (this.focusTrap) {
|
|
23755
|
+
this.focusTrap.disconnect();
|
|
23756
|
+
this.focusTrap = undefined;
|
|
23757
|
+
}
|
|
22372
23758
|
if (this.floater) {
|
|
22373
23759
|
this.floater.hideBib('disconnect');
|
|
22374
23760
|
this.floater.disconnect();
|
|
@@ -22396,19 +23782,45 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22396
23782
|
if (this.isPopoverVisible) {
|
|
22397
23783
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
22398
23784
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
22399
|
-
|
|
22400
|
-
this.
|
|
23785
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
23786
|
+
this.updateFocusTrap();
|
|
23787
|
+
|
|
23788
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
23789
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
23790
|
+
this._setPageInert();
|
|
23791
|
+
}
|
|
22401
23792
|
} else {
|
|
22402
23793
|
this.bibElement.value.close();
|
|
23794
|
+
this._clearPageInert();
|
|
22403
23795
|
}
|
|
22404
23796
|
}
|
|
22405
23797
|
|
|
22406
23798
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
22407
23799
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
22408
23800
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
22409
|
-
const useModal = this.isBibFullscreen;
|
|
22410
23801
|
this.bibElement.value.close();
|
|
22411
|
-
this.bibElement.value.open(
|
|
23802
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
23803
|
+
|
|
23804
|
+
// Re-initialize focus management for the new strategy
|
|
23805
|
+
this.updateFocusTrap();
|
|
23806
|
+
|
|
23807
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
23808
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
23809
|
+
this._setPageInert();
|
|
23810
|
+
} else {
|
|
23811
|
+
this._clearPageInert();
|
|
23812
|
+
}
|
|
23813
|
+
}
|
|
23814
|
+
|
|
23815
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
23816
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
23817
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
23818
|
+
this.updateFocusTrap();
|
|
23819
|
+
if (this.desktopModal) {
|
|
23820
|
+
this._setPageInert();
|
|
23821
|
+
} else {
|
|
23822
|
+
this._clearPageInert();
|
|
23823
|
+
}
|
|
22412
23824
|
}
|
|
22413
23825
|
}
|
|
22414
23826
|
|
|
@@ -22418,8 +23830,14 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22418
23830
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
22419
23831
|
*/
|
|
22420
23832
|
handleDropdownToggle(event) {
|
|
22421
|
-
this.updateFocusTrap();
|
|
22422
23833
|
this.isPopoverVisible = event.detail.expanded;
|
|
23834
|
+
|
|
23835
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
23836
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
23837
|
+
if (!this.isPopoverVisible) {
|
|
23838
|
+
this.updateFocusTrap();
|
|
23839
|
+
}
|
|
23840
|
+
|
|
22423
23841
|
const eventType = event.detail.eventType || "unknown";
|
|
22424
23842
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
22425
23843
|
this.trigger.focus();
|
|
@@ -22518,19 +23936,178 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22518
23936
|
* @private
|
|
22519
23937
|
*/
|
|
22520
23938
|
updateFocusTrap() {
|
|
23939
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
23940
|
+
// to prevent duplicate listeners on repeated calls.
|
|
23941
|
+
if (this._bibTabHandler) {
|
|
23942
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
23943
|
+
this._bibTabHandler = undefined;
|
|
23944
|
+
}
|
|
23945
|
+
|
|
23946
|
+
if (this.focusTrap) {
|
|
23947
|
+
this.focusTrap.disconnect();
|
|
23948
|
+
this.focusTrap = undefined;
|
|
23949
|
+
}
|
|
23950
|
+
|
|
22521
23951
|
if (this.isPopoverVisible) {
|
|
22522
23952
|
if (!this.isBibFullscreen) {
|
|
22523
|
-
|
|
22524
|
-
|
|
22525
|
-
|
|
23953
|
+
if (this.desktopModal) {
|
|
23954
|
+
// Desktop modal: trap focus only within the bib content.
|
|
23955
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
23956
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
23957
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
23958
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
23959
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
23960
|
+
// within the bib's focusable elements.
|
|
23961
|
+
this._bibTabHandler = (event) => {
|
|
23962
|
+
if (event.key !== 'Tab') {
|
|
23963
|
+
return;
|
|
23964
|
+
}
|
|
23965
|
+
|
|
23966
|
+
// Collect focusable elements from the bib content.
|
|
23967
|
+
const focusables = getFocusableElements$3(this.bibContent);
|
|
23968
|
+
|
|
23969
|
+
// Fallback: try from slotted content directly
|
|
23970
|
+
if (!focusables.length) {
|
|
23971
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
23972
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
23973
|
+
|
|
23974
|
+
for (const node of assignedNodes) {
|
|
23975
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
23976
|
+
focusables.push(...getFocusableElements$3(node));
|
|
23977
|
+
}
|
|
23978
|
+
}
|
|
23979
|
+
}
|
|
23980
|
+
|
|
23981
|
+
if (!focusables.length) {
|
|
23982
|
+
return;
|
|
23983
|
+
}
|
|
23984
|
+
|
|
23985
|
+
event.preventDefault();
|
|
23986
|
+
|
|
23987
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
23988
|
+
|
|
23989
|
+
// Walk the active element chain through shadow roots
|
|
23990
|
+
const actives = this._getActiveElements();
|
|
23991
|
+
|
|
23992
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
23993
|
+
|
|
23994
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
23995
|
+
// Focus is not on a known element — move to first/last
|
|
23996
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
23997
|
+
}
|
|
23998
|
+
|
|
23999
|
+
// Try each element in order, skipping any that can't receive focus
|
|
24000
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
24001
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
24002
|
+
let nextIdx = idx + direction;
|
|
24003
|
+
|
|
24004
|
+
// Wrap around
|
|
24005
|
+
if (nextIdx < 0) {
|
|
24006
|
+
nextIdx = focusables.length - 1;
|
|
24007
|
+
} else if (nextIdx >= focusables.length) {
|
|
24008
|
+
nextIdx = 0;
|
|
24009
|
+
}
|
|
24010
|
+
|
|
24011
|
+
focusables[nextIdx].focus();
|
|
24012
|
+
|
|
24013
|
+
// Verify focus actually moved to the target
|
|
24014
|
+
const newActives = this._getActiveElements();
|
|
24015
|
+
|
|
24016
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
24017
|
+
return;
|
|
24018
|
+
}
|
|
24019
|
+
|
|
24020
|
+
// Focus didn't stick — skip this element and try the next
|
|
24021
|
+
idx = nextIdx;
|
|
24022
|
+
}
|
|
24023
|
+
};
|
|
24024
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
24025
|
+
|
|
24026
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
24027
|
+
requestAnimationFrame(() => {
|
|
24028
|
+
const focusables = getFocusableElements$3(this.bibContent);
|
|
24029
|
+
if (focusables.length) {
|
|
24030
|
+
focusables[0].focus();
|
|
24031
|
+
}
|
|
24032
|
+
});
|
|
24033
|
+
} else {
|
|
24034
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
24035
|
+
this.focusTrap = new FocusTrap$3(this.bibContent);
|
|
24036
|
+
this.focusTrap.focusFirstElement();
|
|
24037
|
+
}
|
|
22526
24038
|
}
|
|
22527
24039
|
// Fullscreen: showModal() provides native focus trapping
|
|
24040
|
+
}
|
|
24041
|
+
}
|
|
24042
|
+
|
|
24043
|
+
/**
|
|
24044
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
24045
|
+
* @private
|
|
24046
|
+
* @returns {Array<HTMLElement>}
|
|
24047
|
+
*/
|
|
24048
|
+
_getActiveElements() {
|
|
24049
|
+
let { activeElement } = document;
|
|
24050
|
+
const actives = [activeElement];
|
|
24051
|
+
|
|
24052
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
24053
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
24054
|
+
actives.push(activeElement);
|
|
24055
|
+
}
|
|
24056
|
+
|
|
24057
|
+
return actives;
|
|
24058
|
+
}
|
|
24059
|
+
|
|
24060
|
+
/**
|
|
24061
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
24062
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
24063
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
24064
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
24065
|
+
* to ensure all page content outside the host subtree is inert.
|
|
24066
|
+
* @private
|
|
24067
|
+
*/
|
|
24068
|
+
_setPageInert() {
|
|
24069
|
+
if (this._inertSiblings) {
|
|
22528
24070
|
return;
|
|
22529
24071
|
}
|
|
22530
24072
|
|
|
22531
|
-
|
|
22532
|
-
|
|
22533
|
-
|
|
24073
|
+
this._inertSiblings = [];
|
|
24074
|
+
|
|
24075
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
24076
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
24077
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
24078
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
24079
|
+
let host = this;
|
|
24080
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
24081
|
+
host = host.getRootNode().host;
|
|
24082
|
+
}
|
|
24083
|
+
|
|
24084
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
24085
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
24086
|
+
let current = host;
|
|
24087
|
+
while (current.parentElement) {
|
|
24088
|
+
const parent = current.parentElement;
|
|
24089
|
+
for (const sibling of parent.children) {
|
|
24090
|
+
if (sibling !== current) {
|
|
24091
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
24092
|
+
sibling.inert = true;
|
|
24093
|
+
}
|
|
24094
|
+
}
|
|
24095
|
+
current = parent;
|
|
24096
|
+
}
|
|
24097
|
+
}
|
|
24098
|
+
|
|
24099
|
+
/**
|
|
24100
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
24101
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
24102
|
+
* not inadvertently re-enabled.
|
|
24103
|
+
* @private
|
|
24104
|
+
*/
|
|
24105
|
+
_clearPageInert() {
|
|
24106
|
+
if (this._inertSiblings) {
|
|
24107
|
+
for (const entry of this._inertSiblings) {
|
|
24108
|
+
entry.element.inert = entry.wasInert;
|
|
24109
|
+
}
|
|
24110
|
+
this._inertSiblings = undefined;
|
|
22534
24111
|
}
|
|
22535
24112
|
}
|
|
22536
24113
|
|
|
@@ -22769,6 +24346,7 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22769
24346
|
shape="${this.shape}"
|
|
22770
24347
|
?data-show="${this.isPopoverVisible}"
|
|
22771
24348
|
?isfullscreen="${this.isBibFullscreen}"
|
|
24349
|
+
?desktopmodal="${this.desktopModal}"
|
|
22772
24350
|
.dialogLabel="${this.bibDialogLabel}"
|
|
22773
24351
|
${n$6(this.bibElement)}
|
|
22774
24352
|
>
|
|
@@ -29467,7 +31045,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$4 {
|
|
|
29467
31045
|
}
|
|
29468
31046
|
};
|
|
29469
31047
|
|
|
29470
|
-
var formkitVersion$8 = '
|
|
31048
|
+
var formkitVersion$8 = '202605210326';
|
|
29471
31049
|
|
|
29472
31050
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
29473
31051
|
// See LICENSE in the project root for license information.
|
|
@@ -30722,26 +32300,62 @@ function applyKeyboardStrategy$5(component, strategy, options = {}) {
|
|
|
30722
32300
|
// components/datepicker/docs/partials/keyboardBehavior.md
|
|
30723
32301
|
//
|
|
30724
32302
|
// Current behavior (transitional — full bib keyboard navigation is planned for a future iteration):
|
|
30725
|
-
// - The bib opens and closes via pointer/touch interaction only.
|
|
30726
32303
|
// - Escape closes the bib and prevents the event from reaching parent containers.
|
|
32304
|
+
// - Enter opens the bib when it is closed (trigger input only, not clear button).
|
|
32305
|
+
// - Space opens the bib when it is closed (trigger input only, not clear button).
|
|
30727
32306
|
// - Tab uses the browser's default tabindex sequence across trigger controls.
|
|
30728
|
-
// - Enter and Space do not open or close the bib.
|
|
30729
32307
|
//
|
|
30730
32308
|
// This file is an intentional placeholder for most keys. When datepicker bib keyboard navigation is
|
|
30731
32309
|
// added, handlers should go here following the same strategy pattern used by
|
|
30732
32310
|
// auro-select (selectKeyboardStrategy.js) and auro-combobox (comboboxKeyboardStrategy.js).
|
|
30733
32311
|
const datepickerKeyboardStrategy = {
|
|
30734
|
-
Escape(component, evt) {
|
|
30735
|
-
if (!
|
|
32312
|
+
Escape(component, evt, ctx) {
|
|
32313
|
+
if (!ctx.isExpanded) {
|
|
30736
32314
|
return;
|
|
30737
32315
|
}
|
|
30738
32316
|
|
|
30739
|
-
//
|
|
30740
|
-
//
|
|
30741
|
-
// seeing this event, we must also close the dropdown explicitly.
|
|
32317
|
+
// Stop propagation so parent containers (auro-dialog, auro-drawer)
|
|
32318
|
+
// don't also react to Escape.
|
|
30742
32319
|
evt.stopPropagation();
|
|
32320
|
+
evt.preventDefault();
|
|
30743
32321
|
|
|
30744
|
-
component.
|
|
32322
|
+
component.hideBib();
|
|
32323
|
+
},
|
|
32324
|
+
|
|
32325
|
+
Enter(component, evt, ctx) {
|
|
32326
|
+
if (ctx.isExpanded) {
|
|
32327
|
+
return;
|
|
32328
|
+
}
|
|
32329
|
+
|
|
32330
|
+
// Only open from the trigger input, not the clear button or other internal elements.
|
|
32331
|
+
// evt.target is retargeted to the host in shadow DOM, so use composedPath()
|
|
32332
|
+
// to find the real origin. The clear button is rendered with class "clearBtn".
|
|
32333
|
+
const path = evt.composedPath();
|
|
32334
|
+
if (path.some(el => el.classList?.contains('clearBtn'))) {
|
|
32335
|
+
return;
|
|
32336
|
+
}
|
|
32337
|
+
|
|
32338
|
+
evt.preventDefault();
|
|
32339
|
+
|
|
32340
|
+
component.dropdown.show();
|
|
32341
|
+
},
|
|
32342
|
+
|
|
32343
|
+
' '(component, evt, ctx) {
|
|
32344
|
+
if (ctx.isExpanded) {
|
|
32345
|
+
return;
|
|
32346
|
+
}
|
|
32347
|
+
|
|
32348
|
+
// Only open from the trigger input, not the clear button or other internal elements.
|
|
32349
|
+
// evt.target is retargeted to the host in shadow DOM, so use composedPath()
|
|
32350
|
+
// to find the real origin. The clear button is rendered with class "clearBtn".
|
|
32351
|
+
const path = evt.composedPath();
|
|
32352
|
+
if (path.some(el => el.classList?.contains('clearBtn'))) {
|
|
32353
|
+
return;
|
|
32354
|
+
}
|
|
32355
|
+
|
|
32356
|
+
evt.preventDefault();
|
|
32357
|
+
|
|
32358
|
+
component.dropdown.show();
|
|
30745
32359
|
},
|
|
30746
32360
|
};
|
|
30747
32361
|
|
|
@@ -30815,6 +32429,15 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
30815
32429
|
this.required = false;
|
|
30816
32430
|
this.onDark = false;
|
|
30817
32431
|
this.range = false;
|
|
32432
|
+
this.rangeLabelStart = 'range start';
|
|
32433
|
+
this.rangeLabelEnd = 'range end';
|
|
32434
|
+
this.rangeLabelBeforeRange = 'before range';
|
|
32435
|
+
this.rangeLabelInRange = 'in range';
|
|
32436
|
+
this.rangeLabelAfterRange = 'after range';
|
|
32437
|
+
this.blackoutDates = [];
|
|
32438
|
+
this.blackoutLabel = 'unavailable';
|
|
32439
|
+
this.navLabelPrevMonth = 'Previous month';
|
|
32440
|
+
this.navLabelNextMonth = 'Next month';
|
|
30818
32441
|
this.stacked = false;
|
|
30819
32442
|
this.noValidate = false;
|
|
30820
32443
|
this.validity = undefined;
|
|
@@ -31193,6 +32816,78 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31193
32816
|
reflect: true
|
|
31194
32817
|
},
|
|
31195
32818
|
|
|
32819
|
+
/**
|
|
32820
|
+
* Label announced for the range start date cell.
|
|
32821
|
+
*/
|
|
32822
|
+
rangeLabelStart: {
|
|
32823
|
+
type: String,
|
|
32824
|
+
reflect: true
|
|
32825
|
+
},
|
|
32826
|
+
|
|
32827
|
+
/**
|
|
32828
|
+
* Label announced for the range end date cell.
|
|
32829
|
+
*/
|
|
32830
|
+
rangeLabelEnd: {
|
|
32831
|
+
type: String,
|
|
32832
|
+
reflect: true
|
|
32833
|
+
},
|
|
32834
|
+
|
|
32835
|
+
/**
|
|
32836
|
+
* Label announced for cells before the range start.
|
|
32837
|
+
*/
|
|
32838
|
+
rangeLabelBeforeRange: {
|
|
32839
|
+
type: String,
|
|
32840
|
+
reflect: true
|
|
32841
|
+
},
|
|
32842
|
+
|
|
32843
|
+
/**
|
|
32844
|
+
* Label announced for cells within the selected range.
|
|
32845
|
+
*/
|
|
32846
|
+
rangeLabelInRange: {
|
|
32847
|
+
type: String,
|
|
32848
|
+
reflect: true
|
|
32849
|
+
},
|
|
32850
|
+
|
|
32851
|
+
/**
|
|
32852
|
+
* Label announced for cells after the range (or after start when no end is selected).
|
|
32853
|
+
*/
|
|
32854
|
+
rangeLabelAfterRange: {
|
|
32855
|
+
type: String,
|
|
32856
|
+
reflect: true
|
|
32857
|
+
},
|
|
32858
|
+
|
|
32859
|
+
/**
|
|
32860
|
+
* Array of dates that cannot be selected. Dates should be in ISO format (YYYY-MM-DD).
|
|
32861
|
+
*/
|
|
32862
|
+
blackoutDates: {
|
|
32863
|
+
type: Array,
|
|
32864
|
+
reflect: true
|
|
32865
|
+
},
|
|
32866
|
+
|
|
32867
|
+
/**
|
|
32868
|
+
* Label announced for blackout (disabled but in-range) date cells.
|
|
32869
|
+
*/
|
|
32870
|
+
blackoutLabel: {
|
|
32871
|
+
type: String,
|
|
32872
|
+
reflect: true
|
|
32873
|
+
},
|
|
32874
|
+
|
|
32875
|
+
/**
|
|
32876
|
+
* Accessible label for the previous month navigation button.
|
|
32877
|
+
*/
|
|
32878
|
+
navLabelPrevMonth: {
|
|
32879
|
+
type: String,
|
|
32880
|
+
reflect: true
|
|
32881
|
+
},
|
|
32882
|
+
|
|
32883
|
+
/**
|
|
32884
|
+
* Accessible label for the next month navigation button.
|
|
32885
|
+
*/
|
|
32886
|
+
navLabelNextMonth: {
|
|
32887
|
+
type: String,
|
|
32888
|
+
reflect: true
|
|
32889
|
+
},
|
|
32890
|
+
|
|
31196
32891
|
/**
|
|
31197
32892
|
* Dates that the user should have for reference as part of their decision making when selecting a date.
|
|
31198
32893
|
* This should be a JSON string array of dates in the format of `MM/DD/YYYY`.
|
|
@@ -31219,6 +32914,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31219
32914
|
|
|
31220
32915
|
/**
|
|
31221
32916
|
* Custom help text message to display when validity = `customError`.
|
|
32917
|
+
* Also used as the validation message when a blackout date is typed into the input.
|
|
31222
32918
|
*/
|
|
31223
32919
|
setCustomValidityCustomError: {
|
|
31224
32920
|
type: String
|
|
@@ -31540,6 +33236,61 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31540
33236
|
}));
|
|
31541
33237
|
}
|
|
31542
33238
|
|
|
33239
|
+
/**
|
|
33240
|
+
* Attempts to focus the active calendar cell using a rAF retry loop.
|
|
33241
|
+
* Shared by both fullscreen and desktop open paths.
|
|
33242
|
+
* @private
|
|
33243
|
+
* @returns {void}
|
|
33244
|
+
*/
|
|
33245
|
+
focusActiveCellWhenReady() {
|
|
33246
|
+
const MAX_ATTEMPTS = 20;
|
|
33247
|
+
let attempts = 0;
|
|
33248
|
+
|
|
33249
|
+
const tryFocus = () => {
|
|
33250
|
+
attempts += 1;
|
|
33251
|
+
const allCells = this.calendar.getAllFocusableCells();
|
|
33252
|
+
|
|
33253
|
+
if (!allCells.length && attempts < MAX_ATTEMPTS) {
|
|
33254
|
+
requestAnimationFrame(tryFocus);
|
|
33255
|
+
return;
|
|
33256
|
+
}
|
|
33257
|
+
|
|
33258
|
+
// Compute and mark the active cell
|
|
33259
|
+
if (this.calendar.activeCellDate == null) {
|
|
33260
|
+
this.calendar.activeCellDate = this.calendar.computeActiveDate();
|
|
33261
|
+
}
|
|
33262
|
+
if (this.calendar.activeCellDate !== undefined) {
|
|
33263
|
+
this.calendar.setActiveCell(this.calendar.activeCellDate);
|
|
33264
|
+
}
|
|
33265
|
+
|
|
33266
|
+
// If no cell matched (e.g. centralDate month differs from the rendered
|
|
33267
|
+
// range on mobile), fall back to the first rendered enabled cell.
|
|
33268
|
+
let activeCell = allCells.find(cell => cell.active);
|
|
33269
|
+
if (!activeCell && allCells.length) {
|
|
33270
|
+
const fallback = allCells[0];
|
|
33271
|
+
if (fallback.day) {
|
|
33272
|
+
this.calendar.activeCellDate = fallback.day.date;
|
|
33273
|
+
this.calendar.setActiveCell(this.calendar.activeCellDate);
|
|
33274
|
+
activeCell = allCells.find(cell => cell.active);
|
|
33275
|
+
}
|
|
33276
|
+
}
|
|
33277
|
+
|
|
33278
|
+
// Focus the calendar grid wrapper (aria-activedescendant handles
|
|
33279
|
+
// the SR announcement for the active cell).
|
|
33280
|
+
if (activeCell) {
|
|
33281
|
+
// Announce the initial active cell via the live region
|
|
33282
|
+
const announcement = this.calendar.buildFocusAnnouncement(activeCell.day.date);
|
|
33283
|
+
this.calendar.announceSelection(announcement);
|
|
33284
|
+
|
|
33285
|
+
this.calendar.focusActiveCell();
|
|
33286
|
+
} else if (attempts < MAX_ATTEMPTS) {
|
|
33287
|
+
requestAnimationFrame(tryFocus);
|
|
33288
|
+
}
|
|
33289
|
+
};
|
|
33290
|
+
|
|
33291
|
+
requestAnimationFrame(tryFocus);
|
|
33292
|
+
}
|
|
33293
|
+
|
|
31543
33294
|
/**
|
|
31544
33295
|
* Binds all behavior needed to the dropdown after rendering.
|
|
31545
33296
|
* @private
|
|
@@ -31548,6 +33299,12 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31548
33299
|
configureDropdown() {
|
|
31549
33300
|
this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
|
|
31550
33301
|
|
|
33302
|
+
// The datepicker manages its own open/close lifecycle (Space/Escape/date-select/done).
|
|
33303
|
+
// Prevent the floater's document-level focusin handler from closing the bib
|
|
33304
|
+
// when focus moves from the trigger into the calendar cells (which live inside
|
|
33305
|
+
// a top-layer popover where :focus-within on the dropdown host returns false).
|
|
33306
|
+
this.dropdown.noHideOnThisFocusLoss = true;
|
|
33307
|
+
|
|
31551
33308
|
// Pass label text to the dropdown bib for accessible dialog naming.
|
|
31552
33309
|
// Without this, the fullscreen <dialog> has no accessible name and
|
|
31553
33310
|
// screen readers announce it as just "dialog" with no context.
|
|
@@ -31565,6 +33322,23 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31565
33322
|
this.dropdown.addEventListener('auroDropdown-toggled', () => {
|
|
31566
33323
|
this.notifyDatepickerToggled();
|
|
31567
33324
|
|
|
33325
|
+
if (this.dropdown.isPopoverVisible) {
|
|
33326
|
+
// Reset calendar focus state so it recomputes from the current selection.
|
|
33327
|
+
// Without this, reopening after navigating to a month without a selected
|
|
33328
|
+
// date leaves activeCellDate pointing at a cell in a different month than
|
|
33329
|
+
// what centralDate renders, causing all cells to have tabindex="-1".
|
|
33330
|
+
this.calendar.activeCellDate = null;
|
|
33331
|
+
|
|
33332
|
+
// Show the month containing the selected date (or today) instead of
|
|
33333
|
+
// whichever month the user last navigated to.
|
|
33334
|
+
// Respect consumer-provided centralDate/calendarStartDate if no value is set.
|
|
33335
|
+
if (this.value && this.util.validDateStr(this.value, this.format)) {
|
|
33336
|
+
this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
|
|
33337
|
+
} else if (!this.centralDate && !this.calendarStartDate && !this.minDate) {
|
|
33338
|
+
this.calendarRenderUtil.updateCentralDate(this, new Date());
|
|
33339
|
+
}
|
|
33340
|
+
}
|
|
33341
|
+
|
|
31568
33342
|
// This forces the calendar to render when the dropdown is opened.
|
|
31569
33343
|
// It is not rendered by default
|
|
31570
33344
|
this.calendar.visible = this.dropdown.isPopoverVisible;
|
|
@@ -31597,12 +33371,23 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31597
33371
|
bibEl.open(true);
|
|
31598
33372
|
|
|
31599
33373
|
doubleRaf$3(() => {
|
|
31600
|
-
this.
|
|
33374
|
+
this.focusActiveCellWhenReady();
|
|
31601
33375
|
});
|
|
31602
33376
|
}
|
|
31603
33377
|
});
|
|
31604
33378
|
|
|
31605
33379
|
guardTouchPassthrough$2(this.shadowRoot.querySelector('.calendarWrapper'));
|
|
33380
|
+
} else {
|
|
33381
|
+
// Desktop (non-fullscreen) modal: make the trigger inert so users
|
|
33382
|
+
// cannot interact with the input while the modal bib is open.
|
|
33383
|
+
if (this.dropdown.desktopModal) {
|
|
33384
|
+
this.dropdown.trigger.inert = true;
|
|
33385
|
+
}
|
|
33386
|
+
|
|
33387
|
+
// Desktop (non-fullscreen): focus the active calendar cell.
|
|
33388
|
+
this.dropdown.updateComplete.then(() => {
|
|
33389
|
+
this.focusActiveCellWhenReady();
|
|
33390
|
+
});
|
|
31606
33391
|
}
|
|
31607
33392
|
} else {
|
|
31608
33393
|
// Always clear the inert flag. Only restore focus to the input when the datepicker
|
|
@@ -31648,7 +33433,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31648
33433
|
bibEl.close();
|
|
31649
33434
|
bibEl.open(true);
|
|
31650
33435
|
doubleRaf$3(() => {
|
|
31651
|
-
this.
|
|
33436
|
+
this.focusActiveCellWhenReady();
|
|
31652
33437
|
});
|
|
31653
33438
|
}
|
|
31654
33439
|
});
|
|
@@ -31843,14 +33628,8 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31843
33628
|
|
|
31844
33629
|
if (onEndValue) {
|
|
31845
33630
|
this.valueEnd = newDate;
|
|
31846
|
-
if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
|
|
31847
|
-
this.focus('startDate');
|
|
31848
|
-
}
|
|
31849
33631
|
} else {
|
|
31850
33632
|
this.value = newDate;
|
|
31851
|
-
if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
|
|
31852
|
-
this.focus('endDate');
|
|
31853
|
-
}
|
|
31854
33633
|
}
|
|
31855
33634
|
}
|
|
31856
33635
|
}
|
|
@@ -31890,6 +33669,27 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31890
33669
|
this.resetInputs();
|
|
31891
33670
|
}
|
|
31892
33671
|
|
|
33672
|
+
/**
|
|
33673
|
+
* Checks whether a formatted date string matches a blackout date.
|
|
33674
|
+
* @private
|
|
33675
|
+
* @param {string} dateStr - A date string in the component's configured format.
|
|
33676
|
+
* @returns {boolean} True if the date is in the blackoutDates list.
|
|
33677
|
+
*/
|
|
33678
|
+
isBlackoutDate(dateStr) {
|
|
33679
|
+
if (!Array.isArray(this.blackoutDates) || this.blackoutDates.length === 0 || !dateStr) {
|
|
33680
|
+
return false;
|
|
33681
|
+
}
|
|
33682
|
+
|
|
33683
|
+
const formatted = this.util.toNorthAmericanFormat(dateStr, this.format);
|
|
33684
|
+
if (!this.util.validDateStr(dateStr, this.format)) return false;
|
|
33685
|
+
|
|
33686
|
+
const d = new Date(formatted);
|
|
33687
|
+
const yyyy = d.getFullYear();
|
|
33688
|
+
const mm = String(d.getMonth() + 1).padStart(2, '0');
|
|
33689
|
+
const dd = String(d.getDate()).padStart(2, '0');
|
|
33690
|
+
return this.blackoutDates.includes(`${yyyy}-${mm}-${dd}`);
|
|
33691
|
+
}
|
|
33692
|
+
|
|
31893
33693
|
/**
|
|
31894
33694
|
* Validates value.
|
|
31895
33695
|
* @param {boolean} [force=false] - Whether to force validation.
|
|
@@ -31901,6 +33701,24 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31901
33701
|
}
|
|
31902
33702
|
|
|
31903
33703
|
this.validation.validate(this, force);
|
|
33704
|
+
|
|
33705
|
+
// After standard validation, check blackout dates for typed input
|
|
33706
|
+
if (this.validity !== 'customError') {
|
|
33707
|
+
if (this.isBlackoutDate(this.value) || (this.range && this.isBlackoutDate(this.valueEnd))) {
|
|
33708
|
+
const msg = this.setCustomValidityCustomError || 'Selected date is unavailable';
|
|
33709
|
+
this.validity = 'customError';
|
|
33710
|
+
this.errorMessage = msg;
|
|
33711
|
+
|
|
33712
|
+
this.dispatchEvent(new CustomEvent('auroFormElement-validated', {
|
|
33713
|
+
bubbles: true,
|
|
33714
|
+
composed: true,
|
|
33715
|
+
detail: {
|
|
33716
|
+
validity: this.validity,
|
|
33717
|
+
message: this.errorMessage
|
|
33718
|
+
}
|
|
33719
|
+
}));
|
|
33720
|
+
}
|
|
33721
|
+
}
|
|
31904
33722
|
}
|
|
31905
33723
|
|
|
31906
33724
|
/**
|
|
@@ -31981,6 +33799,9 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31981
33799
|
|
|
31982
33800
|
if (this.cellClickActive) {
|
|
31983
33801
|
this.cellClickActive = false;
|
|
33802
|
+
this.wasCellClick = true;
|
|
33803
|
+
} else {
|
|
33804
|
+
this.wasCellClick = false;
|
|
31984
33805
|
}
|
|
31985
33806
|
|
|
31986
33807
|
if (this.value && this.util.validDateStr(this.value, this.format)) {
|
|
@@ -32011,16 +33832,44 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32011
33832
|
}
|
|
32012
33833
|
|
|
32013
33834
|
if (this.value && this.value.length === this.inputList[0].lengthForType) {
|
|
32014
|
-
|
|
33835
|
+
// Skip centralDate update when user clicked a cell in range mode
|
|
33836
|
+
// to prevent the displayed months from shifting
|
|
33837
|
+
if (!(this.wasCellClick && this.range)) {
|
|
33838
|
+
this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
|
|
33839
|
+
}
|
|
32015
33840
|
}
|
|
32016
33841
|
|
|
32017
33842
|
this.setHasValue();
|
|
32018
33843
|
}
|
|
32019
33844
|
|
|
33845
|
+
if (changedProperties.has('blackoutDates')) {
|
|
33846
|
+
// Force calendar cells to re-render with updated blackout state.
|
|
33847
|
+
// requestUpdate on the calendar alone is insufficient because cells
|
|
33848
|
+
// don't receive blackoutDates as a bound property. Dispatching the
|
|
33849
|
+
// slot content event triggers handleSlotContent → requestUpdate on each cell.
|
|
33850
|
+
if (this.calendar) {
|
|
33851
|
+
this.calendar.requestUpdate();
|
|
33852
|
+
this.dispatchEvent(new CustomEvent('auroDatePicker-newSlotContent'));
|
|
33853
|
+
}
|
|
33854
|
+
|
|
33855
|
+
// Re-run validation so that a previously valid value that now falls on
|
|
33856
|
+
// a blackout date is flagged, and vice versa.
|
|
33857
|
+
if (this.value || this.valueEnd) {
|
|
33858
|
+
this.validate();
|
|
33859
|
+
}
|
|
33860
|
+
}
|
|
33861
|
+
|
|
32020
33862
|
if (changedProperties.has('valueEnd') && this.inputList[1]) {
|
|
32021
33863
|
|
|
32022
33864
|
this.formattedValueEnd = this.util.toNorthAmericanFormat(this.valueEnd, this.format);
|
|
32023
33865
|
|
|
33866
|
+
if (this.cellClickActive) {
|
|
33867
|
+
this.cellClickActive = false;
|
|
33868
|
+
this.wasCellClick = true;
|
|
33869
|
+
} else {
|
|
33870
|
+
this.wasCellClick = false;
|
|
33871
|
+
}
|
|
33872
|
+
|
|
32024
33873
|
// update the calendar
|
|
32025
33874
|
if (this.valueEnd && this.util.validDateStr(this.valueEnd, this.format)) {
|
|
32026
33875
|
this.calendar.dateTo = this.convertToWcValidTime(this.formattedValueEnd);
|
|
@@ -32048,7 +33897,11 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32048
33897
|
}
|
|
32049
33898
|
|
|
32050
33899
|
if (this.valueEnd && this.valueEnd.length === this.inputList[1].lengthForType) {
|
|
32051
|
-
|
|
33900
|
+
// Skip centralDate update when user clicked a cell in range mode
|
|
33901
|
+
// to prevent the displayed months from shifting
|
|
33902
|
+
if (!this.wasCellClick) {
|
|
33903
|
+
this.calendarRenderUtil.updateCentralDate(this, this.formattedValueEnd);
|
|
33904
|
+
}
|
|
32052
33905
|
}
|
|
32053
33906
|
|
|
32054
33907
|
this.validate();
|
|
@@ -32205,6 +34058,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32205
34058
|
}
|
|
32206
34059
|
|
|
32207
34060
|
firstUpdated() {
|
|
34061
|
+
|
|
32208
34062
|
// Add the tag name as an attribute if it is different than the component name
|
|
32209
34063
|
this.runtimeUtils.handleComponentTagRename(this, 'auro-datepicker');
|
|
32210
34064
|
|
|
@@ -32634,7 +34488,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32634
34488
|
// Base HTML render() handles dropdown and calendar bib
|
|
32635
34489
|
return u$c`
|
|
32636
34490
|
<!-- Hidden slot for clear button aria-label -->
|
|
32637
|
-
<slot name="ariaLabel.input.clear" hidden @slotchange=${this.requestUpdate}></slot>
|
|
34491
|
+
<slot name="ariaLabel.input.clear" hidden @slotchange=${() => this.requestUpdate()}></slot>
|
|
32638
34492
|
|
|
32639
34493
|
<${this.dropdownTag}
|
|
32640
34494
|
appearance="${this.onDark ? 'inverse' : this.appearance}"
|
|
@@ -32651,6 +34505,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32651
34505
|
.shape="${this.shape}"
|
|
32652
34506
|
.size="${this.size}"
|
|
32653
34507
|
class="${e$3(dropdownElementClassMap)}"
|
|
34508
|
+
desktopModal
|
|
32654
34509
|
disableEventShow
|
|
32655
34510
|
for="dropdownMenu"
|
|
32656
34511
|
part="dropdown"
|
|
@@ -35907,7 +37762,7 @@ function applyKeyboardStrategy$4(component, strategy, options = {}) {
|
|
|
35907
37762
|
});
|
|
35908
37763
|
}
|
|
35909
37764
|
|
|
35910
|
-
var styleCss$2$6 = i$7`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
37765
|
+
var styleCss$2$6 = i$7`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host([desktopmodal]:popover-open)::backdrop{background:transparent}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
35911
37766
|
|
|
35912
37767
|
var colorCss$2$6 = i$7`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
|
|
35913
37768
|
|
|
@@ -36538,7 +38393,7 @@ let AuroHelpText$7 = class AuroHelpText extends i$4 {
|
|
|
36538
38393
|
}
|
|
36539
38394
|
};
|
|
36540
38395
|
|
|
36541
|
-
var formkitVersion$7 = '
|
|
38396
|
+
var formkitVersion$7 = '202605210326';
|
|
36542
38397
|
|
|
36543
38398
|
let AuroElement$5 = class AuroElement extends i$4 {
|
|
36544
38399
|
static get properties() {
|
|
@@ -36718,6 +38573,7 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
36718
38573
|
_intializeDefaults() {
|
|
36719
38574
|
this.appearance = 'default';
|
|
36720
38575
|
this.chevron = false;
|
|
38576
|
+
this.desktopModal = false;
|
|
36721
38577
|
this.disabled = false;
|
|
36722
38578
|
this.disableKeyboardHandling = false;
|
|
36723
38579
|
this.error = false;
|
|
@@ -36898,6 +38754,14 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
36898
38754
|
reflect: true
|
|
36899
38755
|
},
|
|
36900
38756
|
|
|
38757
|
+
/**
|
|
38758
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
38759
|
+
*/
|
|
38760
|
+
desktopModal: {
|
|
38761
|
+
type: Boolean,
|
|
38762
|
+
reflect: true
|
|
38763
|
+
},
|
|
38764
|
+
|
|
36901
38765
|
/**
|
|
36902
38766
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
36903
38767
|
*/
|
|
@@ -37185,6 +39049,15 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37185
39049
|
|
|
37186
39050
|
disconnectedCallback() {
|
|
37187
39051
|
super.disconnectedCallback();
|
|
39052
|
+
this._clearPageInert();
|
|
39053
|
+
if (this._bibTabHandler) {
|
|
39054
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
39055
|
+
this._bibTabHandler = undefined;
|
|
39056
|
+
}
|
|
39057
|
+
if (this.focusTrap) {
|
|
39058
|
+
this.focusTrap.disconnect();
|
|
39059
|
+
this.focusTrap = undefined;
|
|
39060
|
+
}
|
|
37188
39061
|
if (this.floater) {
|
|
37189
39062
|
this.floater.hideBib('disconnect');
|
|
37190
39063
|
this.floater.disconnect();
|
|
@@ -37212,19 +39085,45 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37212
39085
|
if (this.isPopoverVisible) {
|
|
37213
39086
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
37214
39087
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
37215
|
-
|
|
37216
|
-
this.
|
|
39088
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
39089
|
+
this.updateFocusTrap();
|
|
39090
|
+
|
|
39091
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
39092
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
39093
|
+
this._setPageInert();
|
|
39094
|
+
}
|
|
37217
39095
|
} else {
|
|
37218
39096
|
this.bibElement.value.close();
|
|
39097
|
+
this._clearPageInert();
|
|
37219
39098
|
}
|
|
37220
39099
|
}
|
|
37221
39100
|
|
|
37222
39101
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
37223
39102
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
37224
39103
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
37225
|
-
const useModal = this.isBibFullscreen;
|
|
37226
39104
|
this.bibElement.value.close();
|
|
37227
|
-
this.bibElement.value.open(
|
|
39105
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
39106
|
+
|
|
39107
|
+
// Re-initialize focus management for the new strategy
|
|
39108
|
+
this.updateFocusTrap();
|
|
39109
|
+
|
|
39110
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
39111
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
39112
|
+
this._setPageInert();
|
|
39113
|
+
} else {
|
|
39114
|
+
this._clearPageInert();
|
|
39115
|
+
}
|
|
39116
|
+
}
|
|
39117
|
+
|
|
39118
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
39119
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
39120
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
39121
|
+
this.updateFocusTrap();
|
|
39122
|
+
if (this.desktopModal) {
|
|
39123
|
+
this._setPageInert();
|
|
39124
|
+
} else {
|
|
39125
|
+
this._clearPageInert();
|
|
39126
|
+
}
|
|
37228
39127
|
}
|
|
37229
39128
|
}
|
|
37230
39129
|
|
|
@@ -37234,8 +39133,14 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37234
39133
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
37235
39134
|
*/
|
|
37236
39135
|
handleDropdownToggle(event) {
|
|
37237
|
-
this.updateFocusTrap();
|
|
37238
39136
|
this.isPopoverVisible = event.detail.expanded;
|
|
39137
|
+
|
|
39138
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
39139
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
39140
|
+
if (!this.isPopoverVisible) {
|
|
39141
|
+
this.updateFocusTrap();
|
|
39142
|
+
}
|
|
39143
|
+
|
|
37239
39144
|
const eventType = event.detail.eventType || "unknown";
|
|
37240
39145
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
37241
39146
|
this.trigger.focus();
|
|
@@ -37334,19 +39239,178 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37334
39239
|
* @private
|
|
37335
39240
|
*/
|
|
37336
39241
|
updateFocusTrap() {
|
|
39242
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
39243
|
+
// to prevent duplicate listeners on repeated calls.
|
|
39244
|
+
if (this._bibTabHandler) {
|
|
39245
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
39246
|
+
this._bibTabHandler = undefined;
|
|
39247
|
+
}
|
|
39248
|
+
|
|
39249
|
+
if (this.focusTrap) {
|
|
39250
|
+
this.focusTrap.disconnect();
|
|
39251
|
+
this.focusTrap = undefined;
|
|
39252
|
+
}
|
|
39253
|
+
|
|
37337
39254
|
if (this.isPopoverVisible) {
|
|
37338
39255
|
if (!this.isBibFullscreen) {
|
|
37339
|
-
|
|
37340
|
-
|
|
37341
|
-
|
|
39256
|
+
if (this.desktopModal) {
|
|
39257
|
+
// Desktop modal: trap focus only within the bib content.
|
|
39258
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
39259
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
39260
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
39261
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
39262
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
39263
|
+
// within the bib's focusable elements.
|
|
39264
|
+
this._bibTabHandler = (event) => {
|
|
39265
|
+
if (event.key !== 'Tab') {
|
|
39266
|
+
return;
|
|
39267
|
+
}
|
|
39268
|
+
|
|
39269
|
+
// Collect focusable elements from the bib content.
|
|
39270
|
+
const focusables = getFocusableElements$2(this.bibContent);
|
|
39271
|
+
|
|
39272
|
+
// Fallback: try from slotted content directly
|
|
39273
|
+
if (!focusables.length) {
|
|
39274
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
39275
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
39276
|
+
|
|
39277
|
+
for (const node of assignedNodes) {
|
|
39278
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
39279
|
+
focusables.push(...getFocusableElements$2(node));
|
|
39280
|
+
}
|
|
39281
|
+
}
|
|
39282
|
+
}
|
|
39283
|
+
|
|
39284
|
+
if (!focusables.length) {
|
|
39285
|
+
return;
|
|
39286
|
+
}
|
|
39287
|
+
|
|
39288
|
+
event.preventDefault();
|
|
39289
|
+
|
|
39290
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
39291
|
+
|
|
39292
|
+
// Walk the active element chain through shadow roots
|
|
39293
|
+
const actives = this._getActiveElements();
|
|
39294
|
+
|
|
39295
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
39296
|
+
|
|
39297
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
39298
|
+
// Focus is not on a known element — move to first/last
|
|
39299
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
39300
|
+
}
|
|
39301
|
+
|
|
39302
|
+
// Try each element in order, skipping any that can't receive focus
|
|
39303
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
39304
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
39305
|
+
let nextIdx = idx + direction;
|
|
39306
|
+
|
|
39307
|
+
// Wrap around
|
|
39308
|
+
if (nextIdx < 0) {
|
|
39309
|
+
nextIdx = focusables.length - 1;
|
|
39310
|
+
} else if (nextIdx >= focusables.length) {
|
|
39311
|
+
nextIdx = 0;
|
|
39312
|
+
}
|
|
39313
|
+
|
|
39314
|
+
focusables[nextIdx].focus();
|
|
39315
|
+
|
|
39316
|
+
// Verify focus actually moved to the target
|
|
39317
|
+
const newActives = this._getActiveElements();
|
|
39318
|
+
|
|
39319
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
39320
|
+
return;
|
|
39321
|
+
}
|
|
39322
|
+
|
|
39323
|
+
// Focus didn't stick — skip this element and try the next
|
|
39324
|
+
idx = nextIdx;
|
|
39325
|
+
}
|
|
39326
|
+
};
|
|
39327
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
39328
|
+
|
|
39329
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
39330
|
+
requestAnimationFrame(() => {
|
|
39331
|
+
const focusables = getFocusableElements$2(this.bibContent);
|
|
39332
|
+
if (focusables.length) {
|
|
39333
|
+
focusables[0].focus();
|
|
39334
|
+
}
|
|
39335
|
+
});
|
|
39336
|
+
} else {
|
|
39337
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
39338
|
+
this.focusTrap = new FocusTrap$2(this.bibContent);
|
|
39339
|
+
this.focusTrap.focusFirstElement();
|
|
39340
|
+
}
|
|
37342
39341
|
}
|
|
37343
39342
|
// Fullscreen: showModal() provides native focus trapping
|
|
39343
|
+
}
|
|
39344
|
+
}
|
|
39345
|
+
|
|
39346
|
+
/**
|
|
39347
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
39348
|
+
* @private
|
|
39349
|
+
* @returns {Array<HTMLElement>}
|
|
39350
|
+
*/
|
|
39351
|
+
_getActiveElements() {
|
|
39352
|
+
let { activeElement } = document;
|
|
39353
|
+
const actives = [activeElement];
|
|
39354
|
+
|
|
39355
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
39356
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
39357
|
+
actives.push(activeElement);
|
|
39358
|
+
}
|
|
39359
|
+
|
|
39360
|
+
return actives;
|
|
39361
|
+
}
|
|
39362
|
+
|
|
39363
|
+
/**
|
|
39364
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
39365
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
39366
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
39367
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
39368
|
+
* to ensure all page content outside the host subtree is inert.
|
|
39369
|
+
* @private
|
|
39370
|
+
*/
|
|
39371
|
+
_setPageInert() {
|
|
39372
|
+
if (this._inertSiblings) {
|
|
37344
39373
|
return;
|
|
37345
39374
|
}
|
|
37346
39375
|
|
|
37347
|
-
|
|
37348
|
-
|
|
37349
|
-
|
|
39376
|
+
this._inertSiblings = [];
|
|
39377
|
+
|
|
39378
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
39379
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
39380
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
39381
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
39382
|
+
let host = this;
|
|
39383
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
39384
|
+
host = host.getRootNode().host;
|
|
39385
|
+
}
|
|
39386
|
+
|
|
39387
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
39388
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
39389
|
+
let current = host;
|
|
39390
|
+
while (current.parentElement) {
|
|
39391
|
+
const parent = current.parentElement;
|
|
39392
|
+
for (const sibling of parent.children) {
|
|
39393
|
+
if (sibling !== current) {
|
|
39394
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
39395
|
+
sibling.inert = true;
|
|
39396
|
+
}
|
|
39397
|
+
}
|
|
39398
|
+
current = parent;
|
|
39399
|
+
}
|
|
39400
|
+
}
|
|
39401
|
+
|
|
39402
|
+
/**
|
|
39403
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
39404
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
39405
|
+
* not inadvertently re-enabled.
|
|
39406
|
+
* @private
|
|
39407
|
+
*/
|
|
39408
|
+
_clearPageInert() {
|
|
39409
|
+
if (this._inertSiblings) {
|
|
39410
|
+
for (const entry of this._inertSiblings) {
|
|
39411
|
+
entry.element.inert = entry.wasInert;
|
|
39412
|
+
}
|
|
39413
|
+
this._inertSiblings = undefined;
|
|
37350
39414
|
}
|
|
37351
39415
|
}
|
|
37352
39416
|
|
|
@@ -37585,6 +39649,7 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37585
39649
|
shape="${this.shape}"
|
|
37586
39650
|
?data-show="${this.isPopoverVisible}"
|
|
37587
39651
|
?isfullscreen="${this.isBibFullscreen}"
|
|
39652
|
+
?desktopmodal="${this.desktopModal}"
|
|
37588
39653
|
.dialogLabel="${this.bibDialogLabel}"
|
|
37589
39654
|
${n$6(this.bibElement)}
|
|
37590
39655
|
>
|
|
@@ -39139,7 +41204,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$4 {
|
|
|
39139
41204
|
}
|
|
39140
41205
|
};
|
|
39141
41206
|
|
|
39142
|
-
var formkitVersion$6 = '
|
|
41207
|
+
var formkitVersion$6 = '202605210326';
|
|
39143
41208
|
|
|
39144
41209
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
39145
41210
|
// See LICENSE in the project root for license information.
|
|
@@ -39877,6 +41942,14 @@ let AuroBibtemplate$2 = class AuroBibtemplate extends i$4 {
|
|
|
39877
41942
|
large: {
|
|
39878
41943
|
type: Boolean,
|
|
39879
41944
|
reflect: true
|
|
41945
|
+
},
|
|
41946
|
+
|
|
41947
|
+
/**
|
|
41948
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
41949
|
+
*/
|
|
41950
|
+
showFooter: {
|
|
41951
|
+
type: Boolean,
|
|
41952
|
+
reflect: true
|
|
39880
41953
|
}
|
|
39881
41954
|
};
|
|
39882
41955
|
}
|
|
@@ -39979,7 +42052,7 @@ let AuroBibtemplate$2 = class AuroBibtemplate extends i$4 {
|
|
|
39979
42052
|
<slot></slot>
|
|
39980
42053
|
</div>
|
|
39981
42054
|
|
|
39982
|
-
${this.isFullscreen ? u$c`
|
|
42055
|
+
${this.isFullscreen || this.showFooter ? u$c`
|
|
39983
42056
|
<div id="footerContainer">
|
|
39984
42057
|
<slot name="footer"></slot>
|
|
39985
42058
|
</div>` : null}
|
|
@@ -42557,7 +44630,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$4 {
|
|
|
42557
44630
|
}
|
|
42558
44631
|
};
|
|
42559
44632
|
|
|
42560
|
-
var formkitVersion$5 = '
|
|
44633
|
+
var formkitVersion$5 = '202605210326';
|
|
42561
44634
|
|
|
42562
44635
|
// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
|
|
42563
44636
|
// See LICENSE in the project root for license information.
|
|
@@ -44729,7 +46802,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$4 {
|
|
|
44729
46802
|
}
|
|
44730
46803
|
};
|
|
44731
46804
|
|
|
44732
|
-
var formkitVersion$4 = '
|
|
46805
|
+
var formkitVersion$4 = '202605210326';
|
|
44733
46806
|
|
|
44734
46807
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
44735
46808
|
// See LICENSE in the project root for license information.
|
|
@@ -46370,7 +48443,7 @@ const comboboxKeyboardStrategy = {
|
|
|
46370
48443
|
|
|
46371
48444
|
// navigate if bib is open otherwise open it
|
|
46372
48445
|
if (component.dropdown.isPopoverVisible) {
|
|
46373
|
-
if (evt.altKey || evt.
|
|
48446
|
+
if (evt.altKey || evt.metaKey) {
|
|
46374
48447
|
component.activateLastEnabledAvailableOption();
|
|
46375
48448
|
} else {
|
|
46376
48449
|
navigateArrow$1(component, 'down');
|
|
@@ -46393,7 +48466,7 @@ const comboboxKeyboardStrategy = {
|
|
|
46393
48466
|
|
|
46394
48467
|
// navigate if bib is open otherwise open it
|
|
46395
48468
|
if (component.dropdown.isPopoverVisible) {
|
|
46396
|
-
if (evt.altKey || evt.
|
|
48469
|
+
if (evt.altKey || evt.metaKey) {
|
|
46397
48470
|
component.activateFirstEnabledAvailableOption();
|
|
46398
48471
|
} else {
|
|
46399
48472
|
navigateArrow$1(component, 'up');
|
|
@@ -49718,7 +51791,7 @@ function applyKeyboardStrategy$2(component, strategy, options = {}) {
|
|
|
49718
51791
|
});
|
|
49719
51792
|
}
|
|
49720
51793
|
|
|
49721
|
-
var styleCss$2$1$1 = i$7`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
51794
|
+
var styleCss$2$1$1 = i$7`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host([desktopmodal]:popover-open)::backdrop{background:transparent}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
49722
51795
|
|
|
49723
51796
|
var colorCss$2$1 = i$7`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
|
|
49724
51797
|
|
|
@@ -50349,7 +52422,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$4 {
|
|
|
50349
52422
|
}
|
|
50350
52423
|
};
|
|
50351
52424
|
|
|
50352
|
-
var formkitVersion$2 = '
|
|
52425
|
+
var formkitVersion$2 = '202605210326';
|
|
50353
52426
|
|
|
50354
52427
|
let AuroElement$2$1 = class AuroElement extends i$4 {
|
|
50355
52428
|
static get properties() {
|
|
@@ -50529,6 +52602,7 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
50529
52602
|
_intializeDefaults() {
|
|
50530
52603
|
this.appearance = 'default';
|
|
50531
52604
|
this.chevron = false;
|
|
52605
|
+
this.desktopModal = false;
|
|
50532
52606
|
this.disabled = false;
|
|
50533
52607
|
this.disableKeyboardHandling = false;
|
|
50534
52608
|
this.error = false;
|
|
@@ -50709,6 +52783,14 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
50709
52783
|
reflect: true
|
|
50710
52784
|
},
|
|
50711
52785
|
|
|
52786
|
+
/**
|
|
52787
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
52788
|
+
*/
|
|
52789
|
+
desktopModal: {
|
|
52790
|
+
type: Boolean,
|
|
52791
|
+
reflect: true
|
|
52792
|
+
},
|
|
52793
|
+
|
|
50712
52794
|
/**
|
|
50713
52795
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
50714
52796
|
*/
|
|
@@ -50996,6 +53078,15 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
50996
53078
|
|
|
50997
53079
|
disconnectedCallback() {
|
|
50998
53080
|
super.disconnectedCallback();
|
|
53081
|
+
this._clearPageInert();
|
|
53082
|
+
if (this._bibTabHandler) {
|
|
53083
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
53084
|
+
this._bibTabHandler = undefined;
|
|
53085
|
+
}
|
|
53086
|
+
if (this.focusTrap) {
|
|
53087
|
+
this.focusTrap.disconnect();
|
|
53088
|
+
this.focusTrap = undefined;
|
|
53089
|
+
}
|
|
50999
53090
|
if (this.floater) {
|
|
51000
53091
|
this.floater.hideBib('disconnect');
|
|
51001
53092
|
this.floater.disconnect();
|
|
@@ -51023,19 +53114,45 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
51023
53114
|
if (this.isPopoverVisible) {
|
|
51024
53115
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
51025
53116
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
51026
|
-
|
|
51027
|
-
this.
|
|
53117
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
53118
|
+
this.updateFocusTrap();
|
|
53119
|
+
|
|
53120
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
53121
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
53122
|
+
this._setPageInert();
|
|
53123
|
+
}
|
|
51028
53124
|
} else {
|
|
51029
53125
|
this.bibElement.value.close();
|
|
53126
|
+
this._clearPageInert();
|
|
51030
53127
|
}
|
|
51031
53128
|
}
|
|
51032
53129
|
|
|
51033
53130
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
51034
53131
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
51035
53132
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
51036
|
-
const useModal = this.isBibFullscreen;
|
|
51037
53133
|
this.bibElement.value.close();
|
|
51038
|
-
this.bibElement.value.open(
|
|
53134
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
53135
|
+
|
|
53136
|
+
// Re-initialize focus management for the new strategy
|
|
53137
|
+
this.updateFocusTrap();
|
|
53138
|
+
|
|
53139
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
53140
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
53141
|
+
this._setPageInert();
|
|
53142
|
+
} else {
|
|
53143
|
+
this._clearPageInert();
|
|
53144
|
+
}
|
|
53145
|
+
}
|
|
53146
|
+
|
|
53147
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
53148
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
53149
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
53150
|
+
this.updateFocusTrap();
|
|
53151
|
+
if (this.desktopModal) {
|
|
53152
|
+
this._setPageInert();
|
|
53153
|
+
} else {
|
|
53154
|
+
this._clearPageInert();
|
|
53155
|
+
}
|
|
51039
53156
|
}
|
|
51040
53157
|
}
|
|
51041
53158
|
|
|
@@ -51045,8 +53162,14 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
51045
53162
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
51046
53163
|
*/
|
|
51047
53164
|
handleDropdownToggle(event) {
|
|
51048
|
-
this.updateFocusTrap();
|
|
51049
53165
|
this.isPopoverVisible = event.detail.expanded;
|
|
53166
|
+
|
|
53167
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
53168
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
53169
|
+
if (!this.isPopoverVisible) {
|
|
53170
|
+
this.updateFocusTrap();
|
|
53171
|
+
}
|
|
53172
|
+
|
|
51050
53173
|
const eventType = event.detail.eventType || "unknown";
|
|
51051
53174
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
51052
53175
|
this.trigger.focus();
|
|
@@ -51145,19 +53268,178 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
51145
53268
|
* @private
|
|
51146
53269
|
*/
|
|
51147
53270
|
updateFocusTrap() {
|
|
53271
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
53272
|
+
// to prevent duplicate listeners on repeated calls.
|
|
53273
|
+
if (this._bibTabHandler) {
|
|
53274
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
53275
|
+
this._bibTabHandler = undefined;
|
|
53276
|
+
}
|
|
53277
|
+
|
|
53278
|
+
if (this.focusTrap) {
|
|
53279
|
+
this.focusTrap.disconnect();
|
|
53280
|
+
this.focusTrap = undefined;
|
|
53281
|
+
}
|
|
53282
|
+
|
|
51148
53283
|
if (this.isPopoverVisible) {
|
|
51149
53284
|
if (!this.isBibFullscreen) {
|
|
51150
|
-
|
|
51151
|
-
|
|
51152
|
-
|
|
53285
|
+
if (this.desktopModal) {
|
|
53286
|
+
// Desktop modal: trap focus only within the bib content.
|
|
53287
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
53288
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
53289
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
53290
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
53291
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
53292
|
+
// within the bib's focusable elements.
|
|
53293
|
+
this._bibTabHandler = (event) => {
|
|
53294
|
+
if (event.key !== 'Tab') {
|
|
53295
|
+
return;
|
|
53296
|
+
}
|
|
53297
|
+
|
|
53298
|
+
// Collect focusable elements from the bib content.
|
|
53299
|
+
const focusables = getFocusableElements$1(this.bibContent);
|
|
53300
|
+
|
|
53301
|
+
// Fallback: try from slotted content directly
|
|
53302
|
+
if (!focusables.length) {
|
|
53303
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
53304
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
53305
|
+
|
|
53306
|
+
for (const node of assignedNodes) {
|
|
53307
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
53308
|
+
focusables.push(...getFocusableElements$1(node));
|
|
53309
|
+
}
|
|
53310
|
+
}
|
|
53311
|
+
}
|
|
53312
|
+
|
|
53313
|
+
if (!focusables.length) {
|
|
53314
|
+
return;
|
|
53315
|
+
}
|
|
53316
|
+
|
|
53317
|
+
event.preventDefault();
|
|
53318
|
+
|
|
53319
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
53320
|
+
|
|
53321
|
+
// Walk the active element chain through shadow roots
|
|
53322
|
+
const actives = this._getActiveElements();
|
|
53323
|
+
|
|
53324
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
53325
|
+
|
|
53326
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
53327
|
+
// Focus is not on a known element — move to first/last
|
|
53328
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
53329
|
+
}
|
|
53330
|
+
|
|
53331
|
+
// Try each element in order, skipping any that can't receive focus
|
|
53332
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
53333
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
53334
|
+
let nextIdx = idx + direction;
|
|
53335
|
+
|
|
53336
|
+
// Wrap around
|
|
53337
|
+
if (nextIdx < 0) {
|
|
53338
|
+
nextIdx = focusables.length - 1;
|
|
53339
|
+
} else if (nextIdx >= focusables.length) {
|
|
53340
|
+
nextIdx = 0;
|
|
53341
|
+
}
|
|
53342
|
+
|
|
53343
|
+
focusables[nextIdx].focus();
|
|
53344
|
+
|
|
53345
|
+
// Verify focus actually moved to the target
|
|
53346
|
+
const newActives = this._getActiveElements();
|
|
53347
|
+
|
|
53348
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
53349
|
+
return;
|
|
53350
|
+
}
|
|
53351
|
+
|
|
53352
|
+
// Focus didn't stick — skip this element and try the next
|
|
53353
|
+
idx = nextIdx;
|
|
53354
|
+
}
|
|
53355
|
+
};
|
|
53356
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
53357
|
+
|
|
53358
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
53359
|
+
requestAnimationFrame(() => {
|
|
53360
|
+
const focusables = getFocusableElements$1(this.bibContent);
|
|
53361
|
+
if (focusables.length) {
|
|
53362
|
+
focusables[0].focus();
|
|
53363
|
+
}
|
|
53364
|
+
});
|
|
53365
|
+
} else {
|
|
53366
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
53367
|
+
this.focusTrap = new FocusTrap$1(this.bibContent);
|
|
53368
|
+
this.focusTrap.focusFirstElement();
|
|
53369
|
+
}
|
|
51153
53370
|
}
|
|
51154
53371
|
// Fullscreen: showModal() provides native focus trapping
|
|
53372
|
+
}
|
|
53373
|
+
}
|
|
53374
|
+
|
|
53375
|
+
/**
|
|
53376
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
53377
|
+
* @private
|
|
53378
|
+
* @returns {Array<HTMLElement>}
|
|
53379
|
+
*/
|
|
53380
|
+
_getActiveElements() {
|
|
53381
|
+
let { activeElement } = document;
|
|
53382
|
+
const actives = [activeElement];
|
|
53383
|
+
|
|
53384
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
53385
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
53386
|
+
actives.push(activeElement);
|
|
53387
|
+
}
|
|
53388
|
+
|
|
53389
|
+
return actives;
|
|
53390
|
+
}
|
|
53391
|
+
|
|
53392
|
+
/**
|
|
53393
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
53394
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
53395
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
53396
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
53397
|
+
* to ensure all page content outside the host subtree is inert.
|
|
53398
|
+
* @private
|
|
53399
|
+
*/
|
|
53400
|
+
_setPageInert() {
|
|
53401
|
+
if (this._inertSiblings) {
|
|
51155
53402
|
return;
|
|
51156
53403
|
}
|
|
51157
53404
|
|
|
51158
|
-
|
|
51159
|
-
|
|
51160
|
-
|
|
53405
|
+
this._inertSiblings = [];
|
|
53406
|
+
|
|
53407
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
53408
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
53409
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
53410
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
53411
|
+
let host = this;
|
|
53412
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
53413
|
+
host = host.getRootNode().host;
|
|
53414
|
+
}
|
|
53415
|
+
|
|
53416
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
53417
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
53418
|
+
let current = host;
|
|
53419
|
+
while (current.parentElement) {
|
|
53420
|
+
const parent = current.parentElement;
|
|
53421
|
+
for (const sibling of parent.children) {
|
|
53422
|
+
if (sibling !== current) {
|
|
53423
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
53424
|
+
sibling.inert = true;
|
|
53425
|
+
}
|
|
53426
|
+
}
|
|
53427
|
+
current = parent;
|
|
53428
|
+
}
|
|
53429
|
+
}
|
|
53430
|
+
|
|
53431
|
+
/**
|
|
53432
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
53433
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
53434
|
+
* not inadvertently re-enabled.
|
|
53435
|
+
* @private
|
|
53436
|
+
*/
|
|
53437
|
+
_clearPageInert() {
|
|
53438
|
+
if (this._inertSiblings) {
|
|
53439
|
+
for (const entry of this._inertSiblings) {
|
|
53440
|
+
entry.element.inert = entry.wasInert;
|
|
53441
|
+
}
|
|
53442
|
+
this._inertSiblings = undefined;
|
|
51161
53443
|
}
|
|
51162
53444
|
}
|
|
51163
53445
|
|
|
@@ -51396,6 +53678,7 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
51396
53678
|
shape="${this.shape}"
|
|
51397
53679
|
?data-show="${this.isPopoverVisible}"
|
|
51398
53680
|
?isfullscreen="${this.isBibFullscreen}"
|
|
53681
|
+
?desktopmodal="${this.desktopModal}"
|
|
51399
53682
|
.dialogLabel="${this.bibDialogLabel}"
|
|
51400
53683
|
${n$6(this.bibElement)}
|
|
51401
53684
|
>
|
|
@@ -58094,7 +60377,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$4 {
|
|
|
58094
60377
|
}
|
|
58095
60378
|
};
|
|
58096
60379
|
|
|
58097
|
-
var formkitVersion$1$1 = '
|
|
60380
|
+
var formkitVersion$1$1 = '202605210326';
|
|
58098
60381
|
|
|
58099
60382
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
58100
60383
|
// See LICENSE in the project root for license information.
|
|
@@ -59048,6 +61331,14 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$4 {
|
|
|
59048
61331
|
large: {
|
|
59049
61332
|
type: Boolean,
|
|
59050
61333
|
reflect: true
|
|
61334
|
+
},
|
|
61335
|
+
|
|
61336
|
+
/**
|
|
61337
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
61338
|
+
*/
|
|
61339
|
+
showFooter: {
|
|
61340
|
+
type: Boolean,
|
|
61341
|
+
reflect: true
|
|
59051
61342
|
}
|
|
59052
61343
|
};
|
|
59053
61344
|
}
|
|
@@ -59150,7 +61441,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$4 {
|
|
|
59150
61441
|
<slot></slot>
|
|
59151
61442
|
</div>
|
|
59152
61443
|
|
|
59153
|
-
${this.isFullscreen ? u$c`
|
|
61444
|
+
${this.isFullscreen || this.showFooter ? u$c`
|
|
59154
61445
|
<div id="footerContainer">
|
|
59155
61446
|
<slot name="footer"></slot>
|
|
59156
61447
|
</div>` : null}
|
|
@@ -59159,7 +61450,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$4 {
|
|
|
59159
61450
|
}
|
|
59160
61451
|
};
|
|
59161
61452
|
|
|
59162
|
-
var formkitVersion$3 = '
|
|
61453
|
+
var formkitVersion$3 = '202605210326';
|
|
59163
61454
|
|
|
59164
61455
|
var styleCss$1$3 = i$7`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
|
|
59165
61456
|
|
|
@@ -64645,30 +66936,28 @@ function navigateArrow(component, direction, options = {}) {
|
|
|
64645
66936
|
const selectKeyboardStrategy = {
|
|
64646
66937
|
ArrowDown(component, evt, ctx) {
|
|
64647
66938
|
evt.preventDefault();
|
|
64648
|
-
if (
|
|
64649
|
-
|
|
64650
|
-
|
|
64651
|
-
|
|
64652
|
-
} else {
|
|
64653
|
-
navigateArrow(component, 'down', { ctx });
|
|
64654
|
-
}
|
|
64655
|
-
} else {
|
|
64656
|
-
component.dropdown.show();
|
|
66939
|
+
if (evt.altKey || evt.metaKey) {
|
|
66940
|
+
// navigate to last enabled option
|
|
66941
|
+
selectKeyboardStrategy.End(component, evt, ctx);
|
|
66942
|
+
return;
|
|
64657
66943
|
}
|
|
66944
|
+
navigateArrow(component, 'down', {
|
|
66945
|
+
ctx,
|
|
66946
|
+
showFn: () => component.dropdown.show(),
|
|
66947
|
+
});
|
|
64658
66948
|
},
|
|
64659
66949
|
|
|
64660
66950
|
ArrowUp(component, evt, ctx) {
|
|
64661
66951
|
evt.preventDefault();
|
|
64662
|
-
if (
|
|
64663
|
-
|
|
64664
|
-
|
|
64665
|
-
|
|
64666
|
-
} else {
|
|
64667
|
-
navigateArrow(component, 'up', { ctx });
|
|
64668
|
-
}
|
|
64669
|
-
} else {
|
|
64670
|
-
component.dropdown.show();
|
|
66952
|
+
if (evt.altKey || evt.metaKey) {
|
|
66953
|
+
// navigate to first enabled option
|
|
66954
|
+
selectKeyboardStrategy.Home(component, evt, ctx);
|
|
66955
|
+
return;
|
|
64671
66956
|
}
|
|
66957
|
+
navigateArrow(component, 'up', {
|
|
66958
|
+
ctx,
|
|
66959
|
+
showFn: () => component.dropdown.show(),
|
|
66960
|
+
});
|
|
64672
66961
|
},
|
|
64673
66962
|
|
|
64674
66963
|
Escape(component, evt, ctx) {
|
|
@@ -68020,7 +70309,7 @@ function applyKeyboardStrategy(component, strategy, options = {}) {
|
|
|
68020
70309
|
});
|
|
68021
70310
|
}
|
|
68022
70311
|
|
|
68023
|
-
var styleCss$2$1 = i$7`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
70312
|
+
var styleCss$2$1 = i$7`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}:host dialog{width:auto;max-width:none;height:auto;max-height:none;padding:0;border:none;margin:0;outline:none;transform:translateZ(0)}:host dialog::backdrop{background:transparent}:host(:not([isfullscreen])) dialog{position:relative;inset:unset}:host(:not([isfullscreen])) .container.shape-box{border-radius:unset}:host(:not([isfullscreen])) .container[class*=shape-pill],:host(:not([isfullscreen])) .container[class*=shape-snowflake]{border-radius:30px}:host(:not([isfullscreen])) .container[class*=shape-rounded]{border-radius:16px}:host([desktopmodal]:popover-open)::backdrop{background:transparent}:host(:not([matchWidth])) .container{min-width:fit-content}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([isfullscreen]) .container::backdrop{background:var(--ds-color-background-primary, #fff)}:host(:popover-open){position:fixed;overflow:visible;padding:0;border:none;margin:0;background:transparent;inset:unset;outline:none}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}.container{display:inline-block;overflow:auto;box-sizing:border-box;border-radius:var(--ds-border-radius, 0.375rem);margin:var(--ds-size-50, 0.25rem) 0}.util_displayHiddenVisually{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip-path:inset(50%);white-space:nowrap}`;
|
|
68024
70313
|
|
|
68025
70314
|
var colorCss$2 = i$7`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
|
|
68026
70315
|
|
|
@@ -68651,7 +70940,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$4 {
|
|
|
68651
70940
|
}
|
|
68652
70941
|
};
|
|
68653
70942
|
|
|
68654
|
-
var formkitVersion$1 = '
|
|
70943
|
+
var formkitVersion$1 = '202605210326';
|
|
68655
70944
|
|
|
68656
70945
|
class AuroElement extends i$4 {
|
|
68657
70946
|
static get properties() {
|
|
@@ -68831,6 +71120,7 @@ class AuroDropdown extends AuroElement {
|
|
|
68831
71120
|
_intializeDefaults() {
|
|
68832
71121
|
this.appearance = 'default';
|
|
68833
71122
|
this.chevron = false;
|
|
71123
|
+
this.desktopModal = false;
|
|
68834
71124
|
this.disabled = false;
|
|
68835
71125
|
this.disableKeyboardHandling = false;
|
|
68836
71126
|
this.error = false;
|
|
@@ -69011,6 +71301,14 @@ class AuroDropdown extends AuroElement {
|
|
|
69011
71301
|
reflect: true
|
|
69012
71302
|
},
|
|
69013
71303
|
|
|
71304
|
+
/**
|
|
71305
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
71306
|
+
*/
|
|
71307
|
+
desktopModal: {
|
|
71308
|
+
type: Boolean,
|
|
71309
|
+
reflect: true
|
|
71310
|
+
},
|
|
71311
|
+
|
|
69014
71312
|
/**
|
|
69015
71313
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
69016
71314
|
*/
|
|
@@ -69298,6 +71596,15 @@ class AuroDropdown extends AuroElement {
|
|
|
69298
71596
|
|
|
69299
71597
|
disconnectedCallback() {
|
|
69300
71598
|
super.disconnectedCallback();
|
|
71599
|
+
this._clearPageInert();
|
|
71600
|
+
if (this._bibTabHandler) {
|
|
71601
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
71602
|
+
this._bibTabHandler = undefined;
|
|
71603
|
+
}
|
|
71604
|
+
if (this.focusTrap) {
|
|
71605
|
+
this.focusTrap.disconnect();
|
|
71606
|
+
this.focusTrap = undefined;
|
|
71607
|
+
}
|
|
69301
71608
|
if (this.floater) {
|
|
69302
71609
|
this.floater.hideBib('disconnect');
|
|
69303
71610
|
this.floater.disconnect();
|
|
@@ -69325,19 +71632,45 @@ class AuroDropdown extends AuroElement {
|
|
|
69325
71632
|
if (this.isPopoverVisible) {
|
|
69326
71633
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
69327
71634
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
69328
|
-
|
|
69329
|
-
this.
|
|
71635
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
71636
|
+
this.updateFocusTrap();
|
|
71637
|
+
|
|
71638
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
71639
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
71640
|
+
this._setPageInert();
|
|
71641
|
+
}
|
|
69330
71642
|
} else {
|
|
69331
71643
|
this.bibElement.value.close();
|
|
71644
|
+
this._clearPageInert();
|
|
69332
71645
|
}
|
|
69333
71646
|
}
|
|
69334
71647
|
|
|
69335
71648
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
69336
71649
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
69337
71650
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
69338
|
-
const useModal = this.isBibFullscreen;
|
|
69339
71651
|
this.bibElement.value.close();
|
|
69340
|
-
this.bibElement.value.open(
|
|
71652
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
71653
|
+
|
|
71654
|
+
// Re-initialize focus management for the new strategy
|
|
71655
|
+
this.updateFocusTrap();
|
|
71656
|
+
|
|
71657
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
71658
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
71659
|
+
this._setPageInert();
|
|
71660
|
+
} else {
|
|
71661
|
+
this._clearPageInert();
|
|
71662
|
+
}
|
|
71663
|
+
}
|
|
71664
|
+
|
|
71665
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
71666
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
71667
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
71668
|
+
this.updateFocusTrap();
|
|
71669
|
+
if (this.desktopModal) {
|
|
71670
|
+
this._setPageInert();
|
|
71671
|
+
} else {
|
|
71672
|
+
this._clearPageInert();
|
|
71673
|
+
}
|
|
69341
71674
|
}
|
|
69342
71675
|
}
|
|
69343
71676
|
|
|
@@ -69347,8 +71680,14 @@ class AuroDropdown extends AuroElement {
|
|
|
69347
71680
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
69348
71681
|
*/
|
|
69349
71682
|
handleDropdownToggle(event) {
|
|
69350
|
-
this.updateFocusTrap();
|
|
69351
71683
|
this.isPopoverVisible = event.detail.expanded;
|
|
71684
|
+
|
|
71685
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
71686
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
71687
|
+
if (!this.isPopoverVisible) {
|
|
71688
|
+
this.updateFocusTrap();
|
|
71689
|
+
}
|
|
71690
|
+
|
|
69352
71691
|
const eventType = event.detail.eventType || "unknown";
|
|
69353
71692
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
69354
71693
|
this.trigger.focus();
|
|
@@ -69447,19 +71786,178 @@ class AuroDropdown extends AuroElement {
|
|
|
69447
71786
|
* @private
|
|
69448
71787
|
*/
|
|
69449
71788
|
updateFocusTrap() {
|
|
71789
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
71790
|
+
// to prevent duplicate listeners on repeated calls.
|
|
71791
|
+
if (this._bibTabHandler) {
|
|
71792
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
71793
|
+
this._bibTabHandler = undefined;
|
|
71794
|
+
}
|
|
71795
|
+
|
|
71796
|
+
if (this.focusTrap) {
|
|
71797
|
+
this.focusTrap.disconnect();
|
|
71798
|
+
this.focusTrap = undefined;
|
|
71799
|
+
}
|
|
71800
|
+
|
|
69450
71801
|
if (this.isPopoverVisible) {
|
|
69451
71802
|
if (!this.isBibFullscreen) {
|
|
69452
|
-
|
|
69453
|
-
|
|
69454
|
-
|
|
71803
|
+
if (this.desktopModal) {
|
|
71804
|
+
// Desktop modal: trap focus only within the bib content.
|
|
71805
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
71806
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
71807
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
71808
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
71809
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
71810
|
+
// within the bib's focusable elements.
|
|
71811
|
+
this._bibTabHandler = (event) => {
|
|
71812
|
+
if (event.key !== 'Tab') {
|
|
71813
|
+
return;
|
|
71814
|
+
}
|
|
71815
|
+
|
|
71816
|
+
// Collect focusable elements from the bib content.
|
|
71817
|
+
const focusables = getFocusableElements(this.bibContent);
|
|
71818
|
+
|
|
71819
|
+
// Fallback: try from slotted content directly
|
|
71820
|
+
if (!focusables.length) {
|
|
71821
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
71822
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
71823
|
+
|
|
71824
|
+
for (const node of assignedNodes) {
|
|
71825
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
71826
|
+
focusables.push(...getFocusableElements(node));
|
|
71827
|
+
}
|
|
71828
|
+
}
|
|
71829
|
+
}
|
|
71830
|
+
|
|
71831
|
+
if (!focusables.length) {
|
|
71832
|
+
return;
|
|
71833
|
+
}
|
|
71834
|
+
|
|
71835
|
+
event.preventDefault();
|
|
71836
|
+
|
|
71837
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
71838
|
+
|
|
71839
|
+
// Walk the active element chain through shadow roots
|
|
71840
|
+
const actives = this._getActiveElements();
|
|
71841
|
+
|
|
71842
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
71843
|
+
|
|
71844
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
71845
|
+
// Focus is not on a known element — move to first/last
|
|
71846
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
71847
|
+
}
|
|
71848
|
+
|
|
71849
|
+
// Try each element in order, skipping any that can't receive focus
|
|
71850
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
71851
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
71852
|
+
let nextIdx = idx + direction;
|
|
71853
|
+
|
|
71854
|
+
// Wrap around
|
|
71855
|
+
if (nextIdx < 0) {
|
|
71856
|
+
nextIdx = focusables.length - 1;
|
|
71857
|
+
} else if (nextIdx >= focusables.length) {
|
|
71858
|
+
nextIdx = 0;
|
|
71859
|
+
}
|
|
71860
|
+
|
|
71861
|
+
focusables[nextIdx].focus();
|
|
71862
|
+
|
|
71863
|
+
// Verify focus actually moved to the target
|
|
71864
|
+
const newActives = this._getActiveElements();
|
|
71865
|
+
|
|
71866
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
71867
|
+
return;
|
|
71868
|
+
}
|
|
71869
|
+
|
|
71870
|
+
// Focus didn't stick — skip this element and try the next
|
|
71871
|
+
idx = nextIdx;
|
|
71872
|
+
}
|
|
71873
|
+
};
|
|
71874
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
71875
|
+
|
|
71876
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
71877
|
+
requestAnimationFrame(() => {
|
|
71878
|
+
const focusables = getFocusableElements(this.bibContent);
|
|
71879
|
+
if (focusables.length) {
|
|
71880
|
+
focusables[0].focus();
|
|
71881
|
+
}
|
|
71882
|
+
});
|
|
71883
|
+
} else {
|
|
71884
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
71885
|
+
this.focusTrap = new FocusTrap(this.bibContent);
|
|
71886
|
+
this.focusTrap.focusFirstElement();
|
|
71887
|
+
}
|
|
69455
71888
|
}
|
|
69456
71889
|
// Fullscreen: showModal() provides native focus trapping
|
|
71890
|
+
}
|
|
71891
|
+
}
|
|
71892
|
+
|
|
71893
|
+
/**
|
|
71894
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
71895
|
+
* @private
|
|
71896
|
+
* @returns {Array<HTMLElement>}
|
|
71897
|
+
*/
|
|
71898
|
+
_getActiveElements() {
|
|
71899
|
+
let { activeElement } = document;
|
|
71900
|
+
const actives = [activeElement];
|
|
71901
|
+
|
|
71902
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
71903
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
71904
|
+
actives.push(activeElement);
|
|
71905
|
+
}
|
|
71906
|
+
|
|
71907
|
+
return actives;
|
|
71908
|
+
}
|
|
71909
|
+
|
|
71910
|
+
/**
|
|
71911
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
71912
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
71913
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
71914
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
71915
|
+
* to ensure all page content outside the host subtree is inert.
|
|
71916
|
+
* @private
|
|
71917
|
+
*/
|
|
71918
|
+
_setPageInert() {
|
|
71919
|
+
if (this._inertSiblings) {
|
|
69457
71920
|
return;
|
|
69458
71921
|
}
|
|
69459
71922
|
|
|
69460
|
-
|
|
69461
|
-
|
|
69462
|
-
|
|
71923
|
+
this._inertSiblings = [];
|
|
71924
|
+
|
|
71925
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
71926
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
71927
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
71928
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
71929
|
+
let host = this;
|
|
71930
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
71931
|
+
host = host.getRootNode().host;
|
|
71932
|
+
}
|
|
71933
|
+
|
|
71934
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
71935
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
71936
|
+
let current = host;
|
|
71937
|
+
while (current.parentElement) {
|
|
71938
|
+
const parent = current.parentElement;
|
|
71939
|
+
for (const sibling of parent.children) {
|
|
71940
|
+
if (sibling !== current) {
|
|
71941
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
71942
|
+
sibling.inert = true;
|
|
71943
|
+
}
|
|
71944
|
+
}
|
|
71945
|
+
current = parent;
|
|
71946
|
+
}
|
|
71947
|
+
}
|
|
71948
|
+
|
|
71949
|
+
/**
|
|
71950
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
71951
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
71952
|
+
* not inadvertently re-enabled.
|
|
71953
|
+
* @private
|
|
71954
|
+
*/
|
|
71955
|
+
_clearPageInert() {
|
|
71956
|
+
if (this._inertSiblings) {
|
|
71957
|
+
for (const entry of this._inertSiblings) {
|
|
71958
|
+
entry.element.inert = entry.wasInert;
|
|
71959
|
+
}
|
|
71960
|
+
this._inertSiblings = undefined;
|
|
69463
71961
|
}
|
|
69464
71962
|
}
|
|
69465
71963
|
|
|
@@ -69698,6 +72196,7 @@ class AuroDropdown extends AuroElement {
|
|
|
69698
72196
|
shape="${this.shape}"
|
|
69699
72197
|
?data-show="${this.isPopoverVisible}"
|
|
69700
72198
|
?isfullscreen="${this.isBibFullscreen}"
|
|
72199
|
+
?desktopmodal="${this.desktopModal}"
|
|
69701
72200
|
.dialogLabel="${this.bibDialogLabel}"
|
|
69702
72201
|
${n$6(this.bibElement)}
|
|
69703
72202
|
>
|
|
@@ -70065,6 +72564,14 @@ class AuroBibtemplate extends i$4 {
|
|
|
70065
72564
|
large: {
|
|
70066
72565
|
type: Boolean,
|
|
70067
72566
|
reflect: true
|
|
72567
|
+
},
|
|
72568
|
+
|
|
72569
|
+
/**
|
|
72570
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
72571
|
+
*/
|
|
72572
|
+
showFooter: {
|
|
72573
|
+
type: Boolean,
|
|
72574
|
+
reflect: true
|
|
70068
72575
|
}
|
|
70069
72576
|
};
|
|
70070
72577
|
}
|
|
@@ -70167,7 +72674,7 @@ class AuroBibtemplate extends i$4 {
|
|
|
70167
72674
|
<slot></slot>
|
|
70168
72675
|
</div>
|
|
70169
72676
|
|
|
70170
|
-
${this.isFullscreen ? u$c`
|
|
72677
|
+
${this.isFullscreen || this.showFooter ? u$c`
|
|
70171
72678
|
<div id="footerContainer">
|
|
70172
72679
|
<slot name="footer"></slot>
|
|
70173
72680
|
</div>` : null}
|
|
@@ -70404,7 +72911,7 @@ class AuroHelpText extends i$4 {
|
|
|
70404
72911
|
}
|
|
70405
72912
|
}
|
|
70406
72913
|
|
|
70407
|
-
var formkitVersion = '
|
|
72914
|
+
var formkitVersion = '202605210326';
|
|
70408
72915
|
|
|
70409
72916
|
var styleCss = i$7`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}.body-default{font-size:var(--wcss-body-default-font-size, 1rem);font-weight:var(--wcss-body-default-weight, );line-height:var(--wcss-body-default-line-height, 1.5rem)}.body-default,.body-default-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-default-emphasized{font-size:var(--wcss-body-default-emphasized-font-size, 1rem);font-weight:var(--wcss-body-default-emphasized-weight, );line-height:var(--wcss-body-default-emphasized-line-height, 1.5rem)}.body-lg{font-size:var(--wcss-body-lg-font-size, 1.125rem);font-weight:var(--wcss-body-lg-weight, );line-height:var(--wcss-body-lg-line-height, 1.625rem)}.body-lg,.body-lg-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-lg-emphasized{font-size:var(--wcss-body-lg-emphasized-font-size, 1.125rem);font-weight:var(--wcss-body-lg-emphasized-weight, );line-height:var(--wcss-body-lg-emphasized-line-height, 1.625rem)}.body-sm{font-size:var(--wcss-body-sm-font-size, 0.875rem);font-weight:var(--wcss-body-sm-weight, );line-height:var(--wcss-body-sm-line-height, 1.25rem)}.body-sm,.body-sm-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-sm-emphasized{font-size:var(--wcss-body-sm-emphasized-font-size, 0.875rem);font-weight:var(--wcss-body-sm-emphasized-weight, );line-height:var(--wcss-body-sm-emphasized-line-height, 1.25rem)}.body-xs{font-size:var(--wcss-body-xs-font-size, 0.75rem);font-weight:var(--wcss-body-xs-weight, );line-height:var(--wcss-body-xs-line-height, 1rem)}.body-xs,.body-xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-xs-emphasized{font-size:var(--wcss-body-xs-emphasized-font-size, 0.75rem);font-weight:var(--wcss-body-xs-emphasized-weight, );line-height:var(--wcss-body-xs-emphasized-line-height, 1rem)}.body-2xs{font-size:var(--wcss-body-2xs-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-weight, );line-height:var(--wcss-body-2xs-line-height, 0.875rem)}.body-2xs,.body-2xs-emphasized{font-family:var(--wcss-body-family, "AS Circular"),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;letter-spacing:var(--wcss-body-letter-spacing, 0)}.body-2xs-emphasized{font-size:var(--wcss-body-2xs-emphasized-font-size, 0.625rem);font-weight:var(--wcss-body-2xs-emphasized-weight, );line-height:var(--wcss-body-2xs-emphasized-line-height, 0.875rem)}.display-2xl{font-family:var(--wcss-display-2xl-family, "AS Circular"),var(--wcss-display-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-2xl-font-size, clamp(3.5rem, 6vw, 5.375rem));font-weight:var(--wcss-display-2xl-weight, 300);letter-spacing:var(--wcss-display-2xl-letter-spacing, 0);line-height:var(--wcss-display-2xl-line-height, 1.3)}.display-xl{font-family:var(--wcss-display-xl-family, "AS Circular"),var(--wcss-display-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xl-font-size, clamp(3rem, 5.3333333333vw, 4.5rem));font-weight:var(--wcss-display-xl-weight, 300);letter-spacing:var(--wcss-display-xl-letter-spacing, 0);line-height:var(--wcss-display-xl-line-height, 1.3)}.display-lg{font-family:var(--wcss-display-lg-family, "AS Circular"),var(--wcss-display-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-lg-font-size, clamp(2.75rem, 4.6666666667vw, 4rem));font-weight:var(--wcss-display-lg-weight, 300);letter-spacing:var(--wcss-display-lg-letter-spacing, 0);line-height:var(--wcss-display-lg-line-height, 1.3)}.display-md{font-family:var(--wcss-display-md-family, "AS Circular"),var(--wcss-display-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-md-font-size, clamp(2.5rem, 4vw, 3.5rem));font-weight:var(--wcss-display-md-weight, 300);letter-spacing:var(--wcss-display-md-letter-spacing, 0);line-height:var(--wcss-display-md-line-height, 1.3)}.display-sm{font-family:var(--wcss-display-sm-family, "AS Circular"),var(--wcss-display-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-sm-font-size, clamp(2rem, 3.6666666667vw, 3rem));font-weight:var(--wcss-display-sm-weight, 300);letter-spacing:var(--wcss-display-sm-letter-spacing, 0);line-height:var(--wcss-display-sm-line-height, 1.3)}.display-xs{font-family:var(--wcss-display-xs-family, "AS Circular"),var(--wcss-display-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-display-xs-font-size, clamp(1.75rem, 3vw, 2.375rem));font-weight:var(--wcss-display-xs-weight, 300);letter-spacing:var(--wcss-display-xs-letter-spacing, 0);line-height:var(--wcss-display-xs-line-height, 1.3)}.heading-xl{font-family:var(--wcss-heading-xl-family, "AS Circular"),var(--wcss-heading-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xl-font-size, clamp(2rem, 3vw, 2.5rem));font-weight:var(--wcss-heading-xl-weight, 300);letter-spacing:var(--wcss-heading-xl-letter-spacing, 0);line-height:var(--wcss-heading-xl-line-height, 1.3)}.heading-lg{font-family:var(--wcss-heading-lg-family, "AS Circular"),var(--wcss-heading-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-lg-font-size, clamp(1.75rem, 2.6666666667vw, 2.25rem));font-weight:var(--wcss-heading-lg-weight, 300);letter-spacing:var(--wcss-heading-lg-letter-spacing, 0);line-height:var(--wcss-heading-lg-line-height, 1.3)}.heading-md{font-family:var(--wcss-heading-md-family, "AS Circular"),var(--wcss-heading-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-md-font-size, clamp(1.625rem, 2.3333333333vw, 1.75rem));font-weight:var(--wcss-heading-md-weight, 300);letter-spacing:var(--wcss-heading-md-letter-spacing, 0);line-height:var(--wcss-heading-md-line-height, 1.3)}.heading-sm{font-family:var(--wcss-heading-sm-family, "AS Circular"),var(--wcss-heading-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-sm-font-size, clamp(1.375rem, 2vw, 1.5rem));font-weight:var(--wcss-heading-sm-weight, 300);letter-spacing:var(--wcss-heading-sm-letter-spacing, 0);line-height:var(--wcss-heading-sm-line-height, 1.3)}.heading-xs{font-family:var(--wcss-heading-xs-family, "AS Circular"),var(--wcss-heading-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-xs-font-size, clamp(1.25rem, 1.6666666667vw, 1.25rem));font-weight:var(--wcss-heading-xs-weight, 300);letter-spacing:var(--wcss-heading-xs-letter-spacing, 0);line-height:var(--wcss-heading-xs-line-height, 1.3)}.heading-2xs{font-family:var(--wcss-heading-2xs-family, "AS Circular"),var(--wcss-heading-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-heading-2xs-font-size, clamp(1.125rem, 1.5vw, 1.125rem));font-weight:var(--wcss-heading-2xs-weight, 300);letter-spacing:var(--wcss-heading-2xs-letter-spacing, 0);line-height:var(--wcss-heading-2xs-line-height, 1.3)}.accent-2xl{font-family:var(--wcss-accent-2xl-family, "Good OT"),var(--wcss-accent-2xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xl-font-size, clamp(2rem, 3.1666666667vw, 2.375rem));font-weight:var(--wcss-accent-2xl-weight, 450);letter-spacing:var(--wcss-accent-2xl-letter-spacing, 0.05em);line-height:var(--wcss-accent-2xl-line-height, 1)}.accent-2xl,.accent-xl{text-transform:uppercase}.accent-xl{font-family:var(--wcss-accent-xl-family, "Good OT"),var(--wcss-accent-xl-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xl-font-size, clamp(1.625rem, 2.3333333333vw, 2rem));font-weight:var(--wcss-accent-xl-weight, 450);letter-spacing:var(--wcss-accent-xl-letter-spacing, 0.05em);line-height:var(--wcss-accent-xl-line-height, 1.3)}.accent-lg{font-family:var(--wcss-accent-lg-family, "Good OT"),var(--wcss-accent-lg-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-lg-font-size, clamp(1.5rem, 2.1666666667vw, 1.75rem));font-weight:var(--wcss-accent-lg-weight, 450);letter-spacing:var(--wcss-accent-lg-letter-spacing, 0.05em);line-height:var(--wcss-accent-lg-line-height, 1.3)}.accent-lg,.accent-md{text-transform:uppercase}.accent-md{font-family:var(--wcss-accent-md-family, "Good OT"),var(--wcss-accent-md-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-md-font-size, clamp(1.375rem, 1.8333333333vw, 1.5rem));font-weight:var(--wcss-accent-md-weight, 500);letter-spacing:var(--wcss-accent-md-letter-spacing, 0.05em);line-height:var(--wcss-accent-md-line-height, 1.3)}.accent-sm{font-family:var(--wcss-accent-sm-family, "Good OT"),var(--wcss-accent-sm-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-sm-font-size, clamp(1.125rem, 1.5vw, 1.25rem));font-weight:var(--wcss-accent-sm-weight, 500);letter-spacing:var(--wcss-accent-sm-letter-spacing, 0.05em);line-height:var(--wcss-accent-sm-line-height, 1.3)}.accent-sm,.accent-xs{text-transform:uppercase}.accent-xs{font-family:var(--wcss-accent-xs-family, "Good OT"),var(--wcss-accent-xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-xs-font-size, clamp(1rem, 1.3333333333vw, 1rem));font-weight:var(--wcss-accent-xs-weight, 500);letter-spacing:var(--wcss-accent-xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-xs-line-height, 1.3)}.accent-2xs{font-family:var(--wcss-accent-2xs-family, "Good OT"),var(--wcss-accent-2xs-family-fallback, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif);font-size:var(--wcss-accent-2xs-font-size, clamp(0.875rem, 1.1666666667vw, 0.875rem));font-weight:var(--wcss-accent-2xs-weight, 450);letter-spacing:var(--wcss-accent-2xs-letter-spacing, 0.1em);line-height:var(--wcss-accent-2xs-line-height, 1.3);text-transform:uppercase}[auro-dropdown]{--ds-auro-dropdown-trigger-border-color: var(--ds-auro-select-border-color);--ds-auro-dropdown-trigger-background-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-container-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-outline-color: var(--ds-auro-select-outline-color)}:host{display:inline-block;text-align:left;vertical-align:top}:host([layout*=emphasized]) [auro-dropdown],:host([layout*=snowflake]) [auro-dropdown]{--ds-auro-select-border-color: transparent}:host([layout*=emphasized]) .mainContent,:host([layout*=snowflake]) .mainContent{text-align:center}.mainContent{position:relative;display:flex;overflow:hidden;flex:1;flex-direction:column;align-items:center;justify-content:center}.valueContainer [slot=displayValue]{display:none}.accents{display:flex;flex-direction:row;align-items:center;justify-content:center}::slotted([slot=typeIcon]){margin-right:var(--ds-size-100, 0.5rem)}.displayValue{display:block}.displayValue:not(.force){display:none}.displayValue:not(.force).hasContent:is(.withValue):not(.hasFocus){display:block}.triggerContent{display:flex;width:100%;align-items:center;justify-content:center}:host([layout*=emphasized]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-300, 1.5rem)}:host([layout*=snowflake]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem) 0 var(--ds-size-200, 1rem)}:host([layout*=snowflake]) label{padding-block:var(--ds-size-25, 0.125rem)}:host([layout*=classic]) .triggerContent{padding:0 var(--ds-size-100, 0.5rem)}:host([layout*=classic]) .mainContent{align-items:start}:host([layout*=classic]) label{overflow:hidden;cursor:text;text-overflow:ellipsis;white-space:nowrap}:host([layout*=classic]) .value{height:auto}label{color:var(--ds-auro-select-label-text-color)}:host(:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-select-outline-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host([ondark]:is([validity]:not([validity=valid]))) [auro-dropdown],:host([appearance=inverse]:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-select-outline-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}#slotHolder{display:none}:host([fluid]){width:100%}:host([disabled]){pointer-events:none;user-select:none}:host([disabled]:not([ondark])) [auro-dropdown],:host([disabled]:not([appearance=inverse])) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-border-subtle, #dddddd)}:host(:not([layout*=classic])[disabled][ondark]) [auro-dropdown],:host(:not([layout*=classic])[disabled][appearance=inverse]) [auro-dropdown]{--ds-auro-select-border-color: transparent}`;
|
|
70410
72917
|
|