@aurodesignsystem-dev/auro-formkit 0.0.0-pr1477.1 → 0.0.0-pr1480.0
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 +26498 -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 +2122 -185
- 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 +2017 -156
- package/components/datepicker/dist/registered.js +2017 -156
- 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 +2733 -220
- package/components/form/demo/getting-started.min.js +2733 -220
- package/components/form/demo/index.min.js +2733 -220
- package/components/form/demo/pages.json +1 -1
- package/components/form/demo/registerDemoDeps.min.js +2733 -220
- 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 +1018 -74
- 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 = '202605210248';
|
|
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,244 @@ 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 role = outOfRange ? 'presentation' : 'gridcell';
|
|
16735
|
+
const blackout = this.isBlackout();
|
|
16736
|
+
|
|
16737
|
+
// Static and selection-driven classes only. Hover-driven classes
|
|
16738
|
+
// (inRange, lastHoveredDate, rangeDepartDate during preview) are
|
|
16739
|
+
// managed imperatively via updateRangePreviewClasses() to avoid
|
|
16740
|
+
// O(N) Lit re-renders on every focus/hover event.
|
|
16400
16741
|
const buttonClasses = {
|
|
16401
16742
|
'day': true,
|
|
16402
16743
|
'body-lg': true,
|
|
16403
|
-
'currentDate': this.
|
|
16744
|
+
'currentDate': this.isCurrentDate,
|
|
16404
16745
|
'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),
|
|
16746
|
+
'inRange': this.datepicker?.hasAttribute('range') && this.dateTo && this.isInRange(this.day, this.dateFrom, this.dateTo),
|
|
16747
|
+
'disabled': outOfRange,
|
|
16748
|
+
'blackout': blackout,
|
|
16749
|
+
'rangeDepartDate': this.datepicker?.hasAttribute('range') && this.isDepartDate(this.day, this.dateFrom) && this.dateTo,
|
|
16750
|
+
'rangeReturnDate': this.datepicker?.hasAttribute('range') && this.isReturnDate(this.day, this.dateFrom, this.dateTo),
|
|
16410
16751
|
'reference': this.isReferenceDate(this.dateStr),
|
|
16411
|
-
'sameDateTrip': this.dateFrom === this.dateTo
|
|
16752
|
+
'sameDateTrip': this.datepicker?.hasAttribute('range') && this.dateFrom === this.dateTo
|
|
16412
16753
|
};
|
|
16413
16754
|
|
|
16414
|
-
let _a, _b;
|
|
16415
16755
|
return u$c`
|
|
16416
|
-
|
|
16417
|
-
|
|
16418
|
-
|
|
16419
|
-
|
|
16420
|
-
|
|
16421
|
-
|
|
16422
|
-
|
|
16423
|
-
|
|
16424
|
-
|
|
16425
|
-
|
|
16426
|
-
|
|
16427
|
-
|
|
16428
|
-
|
|
16429
|
-
|
|
16430
|
-
|
|
16431
|
-
|
|
16432
|
-
</div>
|
|
16433
|
-
</
|
|
16434
|
-
|
|
16756
|
+
<button
|
|
16757
|
+
slot="trigger"
|
|
16758
|
+
id="${this.getCellId()}"
|
|
16759
|
+
role="${role}"
|
|
16760
|
+
@click="${outOfRange ? undefined : this.handleTap}"
|
|
16761
|
+
@mouseover="${outOfRange ? undefined : this.handleHover}"
|
|
16762
|
+
@focus="${outOfRange ? undefined : this.handleFocus}"
|
|
16763
|
+
class="${e$3(buttonClasses)}"
|
|
16764
|
+
?disabled="${outOfRange}"
|
|
16765
|
+
aria-label="${this.getAriaLabel()}"
|
|
16766
|
+
aria-disabled="${blackout ? 'true' : A$7}"
|
|
16767
|
+
aria-hidden="${outOfRange ? 'true' : A$7}"
|
|
16768
|
+
aria-selected="${this.selected ? 'true' : 'false'}"
|
|
16769
|
+
aria-current="${this.isCurrentDate ? 'date' : A$7}"
|
|
16770
|
+
tabindex="${this.active ? '0' : '-1'}">
|
|
16771
|
+
<div class="buttonWrapper" aria-hidden="true">
|
|
16772
|
+
<div class="currentDayMarker">${this.day?.title || A$7}</div>
|
|
16773
|
+
</div>
|
|
16774
|
+
<div class="dateSlot body-2xs" part="dateSlot" aria-hidden="true" ?hidden="${!this.renderForDateSlot}">
|
|
16775
|
+
<slot name="date_${this.dateStr}"></slot>
|
|
16776
|
+
</div>
|
|
16777
|
+
</button>
|
|
16778
|
+
`;
|
|
16779
|
+
}
|
|
16780
|
+
|
|
16781
|
+
render() {
|
|
16782
|
+
const hasPopoverContent = this.hasPopoverContent;
|
|
16783
|
+
|
|
16784
|
+
if (hasPopoverContent) {
|
|
16785
|
+
return u$c`
|
|
16786
|
+
<${this.popoverTag}>
|
|
16787
|
+
<span aria-hidden="true"><slot name="popover_${this.dateStr}"></slot></span>
|
|
16788
|
+
${this.renderCellButton()}
|
|
16789
|
+
</${this.popoverTag}>
|
|
16790
|
+
`;
|
|
16791
|
+
}
|
|
16792
|
+
|
|
16793
|
+
return u$c`
|
|
16794
|
+
${this.renderCellButton()}
|
|
16435
16795
|
`;
|
|
16436
16796
|
}
|
|
16437
16797
|
}
|
|
@@ -16499,16 +16859,28 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16499
16859
|
return this.monthNames[month - 1];
|
|
16500
16860
|
}
|
|
16501
16861
|
|
|
16862
|
+
/**
|
|
16863
|
+
* Returns the unique heading ID for this month, used by aria-labelledby.
|
|
16864
|
+
* @private
|
|
16865
|
+
* @returns {String} The heading ID.
|
|
16866
|
+
*/
|
|
16867
|
+
getHeadingId() {
|
|
16868
|
+
return `month-heading-${this.month}-${this.year}`;
|
|
16869
|
+
}
|
|
16870
|
+
|
|
16502
16871
|
/**
|
|
16503
16872
|
* Determines the current month name based on locale.
|
|
16873
|
+
* Also builds parallel arrays of full day names for abbr attributes.
|
|
16504
16874
|
* This is a rewrite of the function used in the class RangeDatepickerCalendar and should not be removed from here.
|
|
16505
16875
|
* @private
|
|
16506
16876
|
* @returns {void}
|
|
16507
16877
|
*/
|
|
16508
16878
|
localeChanged() {
|
|
16509
16879
|
const dayNamesOfTheWeek = [];
|
|
16880
|
+
const dayFullNames = [];
|
|
16510
16881
|
for (let int = 0; int < 7; int += 1) {
|
|
16511
16882
|
dayNamesOfTheWeek.push(this.locale.localize.day(int, { width: 'narrow' }));
|
|
16883
|
+
dayFullNames.push(this.locale.localize.day(int, { width: 'long' }));
|
|
16512
16884
|
}
|
|
16513
16885
|
const firstDayOfWeek = this.locale.options.weekStartsOn
|
|
16514
16886
|
? this.locale.options.weekStartsOn
|
|
@@ -16519,6 +16891,139 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16519
16891
|
.splice(firstDayOfWeek, dayNamesOfTheWeek.length)
|
|
16520
16892
|
.concat(tmp);
|
|
16521
16893
|
this.dayNamesOfTheWeek = newDayNamesOfTheWeek;
|
|
16894
|
+
|
|
16895
|
+
const tmpFull = dayFullNames.slice().splice(0, firstDayOfWeek);
|
|
16896
|
+
const newDayFullNames = dayFullNames
|
|
16897
|
+
.slice()
|
|
16898
|
+
.splice(firstDayOfWeek, dayFullNames.length)
|
|
16899
|
+
.concat(tmpFull);
|
|
16900
|
+
this.dayFullNames = newDayFullNames;
|
|
16901
|
+
}
|
|
16902
|
+
|
|
16903
|
+
/**
|
|
16904
|
+
* Renders a day-of-week header with abbr attribute for the full day name.
|
|
16905
|
+
* @private
|
|
16906
|
+
* @param {String} dayOfWeek - The short day name.
|
|
16907
|
+
* @param {Number} index - The index in the dayNamesOfTheWeek array.
|
|
16908
|
+
* @returns {Object} The header HTML.
|
|
16909
|
+
*/
|
|
16910
|
+
renderDayOfWeek(dayOfWeek, index) {
|
|
16911
|
+
const fullName = this.dayFullNames ? this.dayFullNames[index] : dayOfWeek;
|
|
16912
|
+
return b$7`<div class="th body-default" role="columnheader"><abbr title="${fullName}">${dayOfWeek}</abbr></div>`;
|
|
16913
|
+
}
|
|
16914
|
+
|
|
16915
|
+
/**
|
|
16916
|
+
* Returns all focusable cell elements (enabled + blackout, not out-of-range) in this month.
|
|
16917
|
+
* @returns {Array} Array of auro-formkit-calendar-cell elements.
|
|
16918
|
+
*/
|
|
16919
|
+
getFocusableCells() {
|
|
16920
|
+
const cells = Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-cell'));
|
|
16921
|
+
return cells.filter(cell => {
|
|
16922
|
+
if (!cell.day) return false;
|
|
16923
|
+
return !cell.isOutOfRange(cell.day, cell.min, cell.max);
|
|
16924
|
+
});
|
|
16925
|
+
}
|
|
16926
|
+
|
|
16927
|
+
/**
|
|
16928
|
+
* Overrides the base class handler to prevent setting `this.hoveredDate`
|
|
16929
|
+
* as a reactive property. Instead, just dispatches the event upward so
|
|
16930
|
+
* the calendar can handle range preview imperatively.
|
|
16931
|
+
* @private
|
|
16932
|
+
* @param {CustomEvent} event - The date-is-hovered event from a cell.
|
|
16933
|
+
* @returns {void}
|
|
16934
|
+
*/
|
|
16935
|
+
handleDateHovered(event) {
|
|
16936
|
+
this.dispatchEvent(new CustomEvent('hovered-date-changed', {
|
|
16937
|
+
detail: { value: event.detail.date },
|
|
16938
|
+
}));
|
|
16939
|
+
}
|
|
16940
|
+
|
|
16941
|
+
/**
|
|
16942
|
+
* Handles arrow key navigation within the month grid.
|
|
16943
|
+
* Dispatches a cross-month navigation event when the boundary is reached.
|
|
16944
|
+
* @private
|
|
16945
|
+
* @param {KeyboardEvent} event - The keyboard event.
|
|
16946
|
+
* @returns {void}
|
|
16947
|
+
*/
|
|
16948
|
+
handleGridKeyDown(event) {
|
|
16949
|
+
const { key } = event;
|
|
16950
|
+
const arrowKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp'];
|
|
16951
|
+
|
|
16952
|
+
if (!arrowKeys.includes(key)) return;
|
|
16953
|
+
|
|
16954
|
+
event.preventDefault();
|
|
16955
|
+
|
|
16956
|
+
const focusableCells = this.getFocusableCells();
|
|
16957
|
+
if (focusableCells.length === 0) return;
|
|
16958
|
+
|
|
16959
|
+
// Find the currently active cell within this month
|
|
16960
|
+
const activeCell = focusableCells.find(cell => cell.active);
|
|
16961
|
+
if (!activeCell) return;
|
|
16962
|
+
|
|
16963
|
+
const activeIndex = focusableCells.indexOf(activeCell);
|
|
16964
|
+
let targetCell = null;
|
|
16965
|
+
|
|
16966
|
+
if (key === 'ArrowRight') {
|
|
16967
|
+
if (activeIndex < focusableCells.length - 1) {
|
|
16968
|
+
targetCell = focusableCells[activeIndex + 1];
|
|
16969
|
+
} else {
|
|
16970
|
+
// At end of month, request cross-month navigation
|
|
16971
|
+
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
16972
|
+
bubbles: true,
|
|
16973
|
+
composed: true,
|
|
16974
|
+
detail: { direction: 'next', fromDate: activeCell.day.date, key }
|
|
16975
|
+
}));
|
|
16976
|
+
return;
|
|
16977
|
+
}
|
|
16978
|
+
} else if (key === 'ArrowLeft') {
|
|
16979
|
+
if (activeIndex > 0) {
|
|
16980
|
+
targetCell = focusableCells[activeIndex - 1];
|
|
16981
|
+
} else {
|
|
16982
|
+
// At start of month, request cross-month navigation
|
|
16983
|
+
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
16984
|
+
bubbles: true,
|
|
16985
|
+
composed: true,
|
|
16986
|
+
detail: { direction: 'prev', fromDate: activeCell.day.date, key }
|
|
16987
|
+
}));
|
|
16988
|
+
return;
|
|
16989
|
+
}
|
|
16990
|
+
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
16991
|
+
// Find the target day (same day-of-week, +/- 7 days)
|
|
16992
|
+
// Use Date arithmetic instead of fixed seconds to handle DST correctly
|
|
16993
|
+
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
16994
|
+
const currentDate = new Date(activeCell.day.date * 1000);
|
|
16995
|
+
currentDate.setDate(currentDate.getDate() + increment);
|
|
16996
|
+
currentDate.setHours(0, 0, 0, 0);
|
|
16997
|
+
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
16998
|
+
|
|
16999
|
+
// Look for the target date in this month's focusable cells
|
|
17000
|
+
targetCell = focusableCells.find(cell => cell.day.date === targetDate);
|
|
17001
|
+
|
|
17002
|
+
if (!targetCell) {
|
|
17003
|
+
// Target is in another month or all cells in that direction are disabled
|
|
17004
|
+
const direction = key === 'ArrowDown' ? 'next' : 'prev';
|
|
17005
|
+
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
17006
|
+
bubbles: true,
|
|
17007
|
+
composed: true,
|
|
17008
|
+
detail: { direction, fromDate: activeCell.day.date, key }
|
|
17009
|
+
}));
|
|
17010
|
+
return;
|
|
17011
|
+
}
|
|
17012
|
+
}
|
|
17013
|
+
|
|
17014
|
+
if (targetCell) {
|
|
17015
|
+
this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
|
|
17016
|
+
bubbles: true,
|
|
17017
|
+
composed: true,
|
|
17018
|
+
detail: { date: targetCell.day.date }
|
|
17019
|
+
}));
|
|
17020
|
+
}
|
|
17021
|
+
}
|
|
17022
|
+
|
|
17023
|
+
renderWeek(week) {
|
|
17024
|
+
return b$7`
|
|
17025
|
+
<div class="tr" role="row">${week.map((day) => this.renderDay(day))}</div>
|
|
17026
|
+
`;
|
|
16522
17027
|
}
|
|
16523
17028
|
|
|
16524
17029
|
renderDay(day) {
|
|
@@ -16531,7 +17036,6 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16531
17036
|
.min="${this.min}"
|
|
16532
17037
|
.max="${this.max}"
|
|
16533
17038
|
.month="${this.month}"
|
|
16534
|
-
.hoveredDate="${this.hoveredDate}"
|
|
16535
17039
|
.dateTo="${this.dateTo}"
|
|
16536
17040
|
.dateFrom="${this.dateFrom}"
|
|
16537
17041
|
.locale="${this.locale}"
|
|
@@ -16542,7 +17046,7 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16542
17046
|
>
|
|
16543
17047
|
</auro-formkit-calendar-cell>
|
|
16544
17048
|
`
|
|
16545
|
-
:
|
|
17049
|
+
: b$7`<div aria-hidden="true" inert></div>`}
|
|
16546
17050
|
</div>
|
|
16547
17051
|
`;
|
|
16548
17052
|
}
|
|
@@ -16553,10 +17057,10 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16553
17057
|
var _a, _b;
|
|
16554
17058
|
|
|
16555
17059
|
return b$7 `
|
|
16556
|
-
<div>
|
|
17060
|
+
<div aria-labelledby="${this.getHeadingId()}">
|
|
16557
17061
|
<div class="header">
|
|
16558
17062
|
${this.renderPrevButton()}
|
|
16559
|
-
<div class="headerTitle heading-xs">
|
|
17063
|
+
<div class="headerTitle heading-xs" id="${this.getHeadingId()}" aria-live="polite" aria-atomic="true">
|
|
16560
17064
|
${this.monthFirst ? b$7`
|
|
16561
17065
|
<div>${this.computeCurrentMonthName(this.month)}</div>
|
|
16562
17066
|
<div>${this.renderYear()}</div>
|
|
@@ -16568,13 +17072,13 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
16568
17072
|
${this.renderNextButton()}
|
|
16569
17073
|
</div>
|
|
16570
17074
|
|
|
16571
|
-
<div class="table">
|
|
16572
|
-
<div class="thead">
|
|
16573
|
-
<div class="tr">
|
|
16574
|
-
${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map(dayNameOfWeek => this.renderDayOfWeek(dayNameOfWeek))}
|
|
17075
|
+
<div class="table" role="grid" aria-labelledby="${this.getHeadingId()}" @keydown="${this.handleGridKeyDown}">
|
|
17076
|
+
<div class="thead" role="rowgroup">
|
|
17077
|
+
<div class="tr" role="row">
|
|
17078
|
+
${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map((dayNameOfWeek, index) => this.renderDayOfWeek(dayNameOfWeek, index))}
|
|
16575
17079
|
</div>
|
|
16576
17080
|
</div>
|
|
16577
|
-
<div class="tbody">
|
|
17081
|
+
<div class="tbody" role="rowgroup">
|
|
16578
17082
|
${(_b = this.daysOfMonth) === null || _b === void 0 ? void 0 : _b.map(week => this.renderWeek(week))}
|
|
16579
17083
|
</div>
|
|
16580
17084
|
</div>
|
|
@@ -17267,6 +17771,14 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$4 {
|
|
|
17267
17771
|
large: {
|
|
17268
17772
|
type: Boolean,
|
|
17269
17773
|
reflect: true
|
|
17774
|
+
},
|
|
17775
|
+
|
|
17776
|
+
/**
|
|
17777
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
17778
|
+
*/
|
|
17779
|
+
showFooter: {
|
|
17780
|
+
type: Boolean,
|
|
17781
|
+
reflect: true
|
|
17270
17782
|
}
|
|
17271
17783
|
};
|
|
17272
17784
|
}
|
|
@@ -17369,7 +17881,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$4 {
|
|
|
17369
17881
|
<slot></slot>
|
|
17370
17882
|
</div>
|
|
17371
17883
|
|
|
17372
|
-
${this.isFullscreen ? u$c`
|
|
17884
|
+
${this.isFullscreen || this.showFooter ? u$c`
|
|
17373
17885
|
<div id="footerContainer">
|
|
17374
17886
|
<slot name="footer"></slot>
|
|
17375
17887
|
</div>` : null}
|
|
@@ -17378,7 +17890,7 @@ let AuroBibtemplate$3 = class AuroBibtemplate extends i$4 {
|
|
|
17378
17890
|
}
|
|
17379
17891
|
};
|
|
17380
17892
|
|
|
17381
|
-
var formkitVersion$2$1 = '
|
|
17893
|
+
var formkitVersion$2$1 = '202605210248';
|
|
17382
17894
|
|
|
17383
17895
|
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
17896
|
`,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 +17988,13 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17476
17988
|
this.largeFullscreenHeadline = false;
|
|
17477
17989
|
this.isFullscreen = false;
|
|
17478
17990
|
|
|
17991
|
+
/**
|
|
17992
|
+
* The date of the currently active cell (Unix timestamp).
|
|
17993
|
+
* Only one cell across the entire calendar has tabindex="0" at a time.
|
|
17994
|
+
* @private
|
|
17995
|
+
*/
|
|
17996
|
+
this.activeCellDate = null;
|
|
17997
|
+
|
|
17479
17998
|
/**
|
|
17480
17999
|
* @private
|
|
17481
18000
|
*/
|
|
@@ -17641,6 +18160,8 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17641
18160
|
*/
|
|
17642
18161
|
handlePrevMonth() {
|
|
17643
18162
|
this.utilCal.handleMonthChange(this, 'prev');
|
|
18163
|
+
this.updateActiveCellForVisibleMonth();
|
|
18164
|
+
this.announceMonthChange();
|
|
17644
18165
|
}
|
|
17645
18166
|
|
|
17646
18167
|
/**
|
|
@@ -17650,6 +18171,38 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17650
18171
|
*/
|
|
17651
18172
|
handleNextMonth() {
|
|
17652
18173
|
this.utilCal.handleMonthChange(this, 'next');
|
|
18174
|
+
this.updateActiveCellForVisibleMonth();
|
|
18175
|
+
this.announceMonthChange();
|
|
18176
|
+
}
|
|
18177
|
+
|
|
18178
|
+
/**
|
|
18179
|
+
* Announces the current month and year via the live region after navigation.
|
|
18180
|
+
* @private
|
|
18181
|
+
* @returns {void}
|
|
18182
|
+
*/
|
|
18183
|
+
announceMonthChange() {
|
|
18184
|
+
const date = new Date(this.centralDate);
|
|
18185
|
+
const localeCode = this.locale?.code || undefined;
|
|
18186
|
+
const formatter = new Intl.DateTimeFormat(localeCode, { month: 'long', year: 'numeric' });
|
|
18187
|
+
this.announceSelection(formatter.format(date));
|
|
18188
|
+
}
|
|
18189
|
+
|
|
18190
|
+
/**
|
|
18191
|
+
* Recomputes and sets the active cell for the newly visible month after
|
|
18192
|
+
* month navigation. Without this, activeCellDate can point at a date in
|
|
18193
|
+
* the old month, leaving no tabindex="0" cell in the grid.
|
|
18194
|
+
* @private
|
|
18195
|
+
* @returns {void}
|
|
18196
|
+
*/
|
|
18197
|
+
updateActiveCellForVisibleMonth() {
|
|
18198
|
+
// Skip the dateFrom shortcut so the active cell lands in the newly
|
|
18199
|
+
// visible month rather than jumping back to the selected date's month.
|
|
18200
|
+
this.activeCellDate = this.computeActiveDate({ skipDateFrom: true });
|
|
18201
|
+
this.updateComplete.then(() => {
|
|
18202
|
+
if (this.activeCellDate != null) {
|
|
18203
|
+
this.setActiveCell(this.activeCellDate);
|
|
18204
|
+
}
|
|
18205
|
+
});
|
|
17653
18206
|
}
|
|
17654
18207
|
|
|
17655
18208
|
/**
|
|
@@ -17757,6 +18310,778 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17757
18310
|
this.utilCal.scrollMonthIntoView(this, date, this.format);
|
|
17758
18311
|
}
|
|
17759
18312
|
|
|
18313
|
+
/**
|
|
18314
|
+
* Gets all rendered month components.
|
|
18315
|
+
* @private
|
|
18316
|
+
* @returns {Array} Array of auro-formkit-calendar-month elements.
|
|
18317
|
+
*/
|
|
18318
|
+
getMonthComponents() {
|
|
18319
|
+
return Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-month'));
|
|
18320
|
+
}
|
|
18321
|
+
|
|
18322
|
+
/**
|
|
18323
|
+
* Gets all focusable cells across all rendered months.
|
|
18324
|
+
* @private
|
|
18325
|
+
* @returns {Array} Array of auro-formkit-calendar-cell elements.
|
|
18326
|
+
*/
|
|
18327
|
+
getAllFocusableCells() {
|
|
18328
|
+
const months = this.getMonthComponents();
|
|
18329
|
+
let cells = [];
|
|
18330
|
+
months.forEach(month => {
|
|
18331
|
+
cells = cells.concat(month.getFocusableCells());
|
|
18332
|
+
});
|
|
18333
|
+
return cells;
|
|
18334
|
+
}
|
|
18335
|
+
|
|
18336
|
+
/**
|
|
18337
|
+
* Sets the active cell across all months. Only one cell has tabindex="0" at a time.
|
|
18338
|
+
* Uses imperative DOM manipulation — no Lit re-render triggered.
|
|
18339
|
+
* Also updates ariaActiveDescendantElement on the grid wrapper so
|
|
18340
|
+
* screen readers announce the active cell without moving DOM focus.
|
|
18341
|
+
* @param {Number} date - Unix timestamp of the cell to activate.
|
|
18342
|
+
* @returns {void}
|
|
18343
|
+
*/
|
|
18344
|
+
setActiveCell(date) {
|
|
18345
|
+
const allCells = this.getAllFocusableCells();
|
|
18346
|
+
|
|
18347
|
+
let newActiveCell = null;
|
|
18348
|
+
allCells.forEach(cell => {
|
|
18349
|
+
if (cell.day && cell.day.date === date) {
|
|
18350
|
+
cell.setActive();
|
|
18351
|
+
newActiveCell = cell;
|
|
18352
|
+
} else if (cell.active) {
|
|
18353
|
+
cell.clearActive();
|
|
18354
|
+
}
|
|
18355
|
+
});
|
|
18356
|
+
|
|
18357
|
+
this.activeCellDate = date;
|
|
18358
|
+
|
|
18359
|
+
// Update the proxy element that aria-activedescendant references.
|
|
18360
|
+
// The proxy lives in the same shadow root as the grid wrapper, so
|
|
18361
|
+
// string-based aria-activedescendant works reliably with all SRs.
|
|
18362
|
+
if (newActiveCell) {
|
|
18363
|
+
const proxy = this.shadowRoot.querySelector('#activeDescendantProxy');
|
|
18364
|
+
if (proxy) {
|
|
18365
|
+
proxy.setAttribute('aria-label', newActiveCell.getAriaLabel());
|
|
18366
|
+
proxy.setAttribute('aria-selected', newActiveCell.selected ? 'true' : 'false');
|
|
18367
|
+
if (newActiveCell.isCurrentDate) {
|
|
18368
|
+
proxy.setAttribute('aria-current', 'date');
|
|
18369
|
+
} else {
|
|
18370
|
+
proxy.removeAttribute('aria-current');
|
|
18371
|
+
}
|
|
18372
|
+
if (newActiveCell.isBlackout()) {
|
|
18373
|
+
proxy.setAttribute('aria-disabled', 'true');
|
|
18374
|
+
} else {
|
|
18375
|
+
proxy.removeAttribute('aria-disabled');
|
|
18376
|
+
}
|
|
18377
|
+
}
|
|
18378
|
+
}
|
|
18379
|
+
}
|
|
18380
|
+
|
|
18381
|
+
/**
|
|
18382
|
+
* Focuses the calendar grid wrapper and sets the active cell.
|
|
18383
|
+
* DOM focus stays on the grid wrapper; ariaActiveDescendantElement
|
|
18384
|
+
* tells the screen reader which cell is "active".
|
|
18385
|
+
* @returns {void}
|
|
18386
|
+
*/
|
|
18387
|
+
focusActiveCell() {
|
|
18388
|
+
if (this.activeCellDate != null) {
|
|
18389
|
+
this.setActiveCell(this.activeCellDate);
|
|
18390
|
+
}
|
|
18391
|
+
|
|
18392
|
+
const gridWrapper = this.shadowRoot.querySelector('#calendarGrid');
|
|
18393
|
+
if (gridWrapper) {
|
|
18394
|
+
gridWrapper.focus({ focusVisible: true });
|
|
18395
|
+
}
|
|
18396
|
+
}
|
|
18397
|
+
|
|
18398
|
+
/**
|
|
18399
|
+
* Computes the initial active date from data properties alone — no DOM required.
|
|
18400
|
+
* Priority:
|
|
18401
|
+
* 1. Selected date (dateFrom) if within range
|
|
18402
|
+
* 2. Today's date if not disabled (in-range and not blackout)
|
|
18403
|
+
* 3. First future non-disabled date (scans day-by-day from today up to 1 year)
|
|
18404
|
+
* 4. First previous non-disabled date (scans day-by-day from today up to 1 year)
|
|
18405
|
+
* 5. First enabled date in finite [min, max] range
|
|
18406
|
+
* 5b. First enabled date scanning forward from finite min (unbounded max)
|
|
18407
|
+
* 5c. First enabled date scanning backward from finite max (unbounded min)
|
|
18408
|
+
* 6. First in-range date (even if blackout) so focus can land somewhere
|
|
18409
|
+
* 7. undefined — no valid target
|
|
18410
|
+
*
|
|
18411
|
+
* @private
|
|
18412
|
+
* @param {Object} [options] - Optional settings.
|
|
18413
|
+
* @param {boolean} [options.skipDateFrom=false] - When true, skip the selected-date
|
|
18414
|
+
* shortcut (step 1). Used after month navigation so the active cell lands in the
|
|
18415
|
+
* newly visible month instead of jumping back to the selected date's month.
|
|
18416
|
+
* @returns {Number|undefined} Unix timestamp (seconds) of the date to activate, or undefined.
|
|
18417
|
+
*/
|
|
18418
|
+
computeActiveDate(options = {}) {
|
|
18419
|
+
const MAX_SCAN_DAYS = 366; // scan at most ~1 year in each direction
|
|
18420
|
+
|
|
18421
|
+
/**
|
|
18422
|
+
* Adds days to a timestamp using Date arithmetic to handle DST correctly.
|
|
18423
|
+
* Returns a local-midnight-aligned timestamp in seconds.
|
|
18424
|
+
*/
|
|
18425
|
+
const addDays = (ts, days) => {
|
|
18426
|
+
const d = new Date(ts * 1000);
|
|
18427
|
+
d.setDate(d.getDate() + days);
|
|
18428
|
+
d.setHours(0, 0, 0, 0);
|
|
18429
|
+
return Math.floor(d.getTime() / 1000);
|
|
18430
|
+
};
|
|
18431
|
+
|
|
18432
|
+
const rawMin = Number(this.min);
|
|
18433
|
+
const rawMax = Number(this.max);
|
|
18434
|
+
|
|
18435
|
+
// When min/max are NaN (no minDate/maxDate configured), treat as unbounded.
|
|
18436
|
+
const minTs = Number.isFinite(rawMin) ? rawMin : -Infinity;
|
|
18437
|
+
const maxTs = Number.isFinite(rawMax) ? rawMax : Infinity;
|
|
18438
|
+
|
|
18439
|
+
// Build a Set of blackout timestamps for O(1) lookup.
|
|
18440
|
+
const blackoutSet = new Set(
|
|
18441
|
+
(this.disabledDays || []).map(d => parseInt(d, 10))
|
|
18442
|
+
);
|
|
18443
|
+
|
|
18444
|
+
// Also include ISO-format blackoutDates from the datepicker if available.
|
|
18445
|
+
// Parse YYYY-MM-DD as local date to avoid UTC shift issues.
|
|
18446
|
+
const isoBlackouts = this.datepicker?.blackoutDates;
|
|
18447
|
+
if (Array.isArray(isoBlackouts)) {
|
|
18448
|
+
for (const isoStr of isoBlackouts) {
|
|
18449
|
+
const parts = isoStr.split('-');
|
|
18450
|
+
const ts = Math.floor(new Date(parseInt(parts[0], 10), parseInt(parts[1], 10) - 1, parseInt(parts[2], 10)).getTime() / 1000);
|
|
18451
|
+
if (Number.isFinite(ts)) blackoutSet.add(ts);
|
|
18452
|
+
}
|
|
18453
|
+
}
|
|
18454
|
+
|
|
18455
|
+
/**
|
|
18456
|
+
* A date (unix timestamp in seconds, midnight-aligned) is "enabled" when
|
|
18457
|
+
* it is within [min, max] AND not a blackout day.
|
|
18458
|
+
*/
|
|
18459
|
+
const isEnabled = (ts) => ts >= minTs && ts <= maxTs && !blackoutSet.has(ts);
|
|
18460
|
+
|
|
18461
|
+
/**
|
|
18462
|
+
* A date is "in range" (focusable in the grid) when it is within [min, max].
|
|
18463
|
+
* Blackout dates are focusable but not selectable.
|
|
18464
|
+
*/
|
|
18465
|
+
const isInRange = (ts) => ts >= minTs && ts <= maxTs;
|
|
18466
|
+
|
|
18467
|
+
// 1. Selected date — always valid target if within range (user chose it).
|
|
18468
|
+
// Skipped when called from month navigation so the active cell lands in
|
|
18469
|
+
// the newly visible month rather than the (possibly off-screen) selection.
|
|
18470
|
+
if (!options.skipDateFrom && this.dateFrom) {
|
|
18471
|
+
const parsedFrom = parseInt(this.dateFrom, 10);
|
|
18472
|
+
if (Number.isFinite(parsedFrom) && isInRange(parsedFrom)) return parsedFrom;
|
|
18473
|
+
}
|
|
18474
|
+
|
|
18475
|
+
// 2. Today's date (midnight-aligned) if enabled.
|
|
18476
|
+
const now = Math.floor(new Date().setHours(0, 0, 0, 0) / 1000);
|
|
18477
|
+
|
|
18478
|
+
// When centralDate is configured, prefer a date within the month(s) that
|
|
18479
|
+
// will actually be rendered. If today falls outside the visible range, an
|
|
18480
|
+
// active cell set to today would have no matching DOM element and keyboard
|
|
18481
|
+
// focus could not enter the calendar.
|
|
18482
|
+
const centralDateValue = this.centralDate ? new Date(this.centralDate) : null;
|
|
18483
|
+
|
|
18484
|
+
if (centralDateValue && !isNaN(centralDateValue.getTime())) {
|
|
18485
|
+
const centralMonth = centralDateValue.getMonth();
|
|
18486
|
+
const centralYear = centralDateValue.getFullYear();
|
|
18487
|
+
const todayDate = new Date(now * 1000);
|
|
18488
|
+
const todayMonth = todayDate.getMonth();
|
|
18489
|
+
const todayYear = todayDate.getFullYear();
|
|
18490
|
+
|
|
18491
|
+
// Today is outside the centralDate's month — scan for an enabled date
|
|
18492
|
+
// within the visible month instead.
|
|
18493
|
+
if (todayMonth !== centralMonth || todayYear !== centralYear) {
|
|
18494
|
+
const visibleStart = new Date(centralYear, centralMonth, 1);
|
|
18495
|
+
visibleStart.setHours(0, 0, 0, 0);
|
|
18496
|
+
const visibleEnd = new Date(centralYear, centralMonth + 1, 0); // last day of month
|
|
18497
|
+
visibleEnd.setHours(0, 0, 0, 0);
|
|
18498
|
+
const startTs = Math.floor(visibleStart.getTime() / 1000);
|
|
18499
|
+
const endTs = Math.floor(visibleEnd.getTime() / 1000);
|
|
18500
|
+
const daysInMonth = visibleEnd.getDate();
|
|
18501
|
+
|
|
18502
|
+
for (let idx = 0; idx < daysInMonth; idx++) {
|
|
18503
|
+
const ts = addDays(startTs, idx);
|
|
18504
|
+
if (ts > endTs) break;
|
|
18505
|
+
if (isEnabled(ts)) return ts;
|
|
18506
|
+
}
|
|
18507
|
+
|
|
18508
|
+
// No enabled date in the visible month — fall back to first in-range
|
|
18509
|
+
// date in the month so focus still lands on a focusable cell.
|
|
18510
|
+
for (let idx = 0; idx < daysInMonth; idx++) {
|
|
18511
|
+
const ts = addDays(startTs, idx);
|
|
18512
|
+
if (ts > endTs) break;
|
|
18513
|
+
if (isInRange(ts)) return ts;
|
|
18514
|
+
}
|
|
18515
|
+
}
|
|
18516
|
+
}
|
|
18517
|
+
|
|
18518
|
+
if (isEnabled(now)) return now;
|
|
18519
|
+
|
|
18520
|
+
// When a centralDate is configured (or inferred), constrain the scan to the
|
|
18521
|
+
// rendered month(s) first so a single-month calendar does not pick a date
|
|
18522
|
+
// that has no DOM cell. Determine the visible range based on centralDate and
|
|
18523
|
+
// the number of rendered months.
|
|
18524
|
+
const renderedMonths = this.numCalendars || 1;
|
|
18525
|
+
const visibleAnchor = centralDateValue && !isNaN(centralDateValue.getTime())
|
|
18526
|
+
? centralDateValue
|
|
18527
|
+
: new Date(now * 1000);
|
|
18528
|
+
const visMonthStart = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth(), 1);
|
|
18529
|
+
visMonthStart.setHours(0, 0, 0, 0);
|
|
18530
|
+
const visMonthEnd = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth() + renderedMonths, 0);
|
|
18531
|
+
visMonthEnd.setHours(0, 0, 0, 0);
|
|
18532
|
+
const visStartTs = Math.floor(visMonthStart.getTime() / 1000);
|
|
18533
|
+
const visEndTs = Math.floor(visMonthEnd.getTime() / 1000);
|
|
18534
|
+
const visDays = Math.round((visEndTs - visStartTs) / 86400) + 1;
|
|
18535
|
+
|
|
18536
|
+
// Scan visible months for an enabled date.
|
|
18537
|
+
for (let idx = 0; idx < visDays; idx++) {
|
|
18538
|
+
const ts = addDays(visStartTs, idx);
|
|
18539
|
+
if (ts > visEndTs) break;
|
|
18540
|
+
if (isEnabled(ts)) return ts;
|
|
18541
|
+
}
|
|
18542
|
+
|
|
18543
|
+
// No enabled date in visible months — try an in-range (focusable) date so
|
|
18544
|
+
// keyboard focus still has a tabindex="0" target.
|
|
18545
|
+
for (let idx = 0; idx < visDays; idx++) {
|
|
18546
|
+
const ts = addDays(visStartTs, idx);
|
|
18547
|
+
if (ts > visEndTs) break;
|
|
18548
|
+
if (isInRange(ts)) return ts;
|
|
18549
|
+
}
|
|
18550
|
+
|
|
18551
|
+
// 3. First future enabled date (scan forward from tomorrow, capped by max and MAX_SCAN_DAYS).
|
|
18552
|
+
for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
|
|
18553
|
+
const ts = addDays(now, idx);
|
|
18554
|
+
if (Number.isFinite(maxTs) && ts > maxTs) break;
|
|
18555
|
+
if (isEnabled(ts)) return ts;
|
|
18556
|
+
}
|
|
18557
|
+
|
|
18558
|
+
// 4. First previous enabled date (scan backward from yesterday, capped by min and MAX_SCAN_DAYS).
|
|
18559
|
+
for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
|
|
18560
|
+
const ts = addDays(now, -idx);
|
|
18561
|
+
if (Number.isFinite(minTs) && ts < minTs) break;
|
|
18562
|
+
if (isEnabled(ts)) return ts;
|
|
18563
|
+
}
|
|
18564
|
+
|
|
18565
|
+
// 5. If scans missed (e.g. min/max range is far from today), fall back to
|
|
18566
|
+
// the first enabled date in the [min, max] range.
|
|
18567
|
+
if (Number.isFinite(minTs) && Number.isFinite(maxTs)) {
|
|
18568
|
+
let ts = minTs;
|
|
18569
|
+
for (let idx = 0; ts <= maxTs; idx++) {
|
|
18570
|
+
if (isEnabled(ts)) return ts;
|
|
18571
|
+
ts = addDays(minTs, idx + 1);
|
|
18572
|
+
}
|
|
18573
|
+
}
|
|
18574
|
+
|
|
18575
|
+
// 5b. Finite min with unbounded max (e.g. minDate far in the future):
|
|
18576
|
+
// scan forward from min for up to MAX_SCAN_DAYS.
|
|
18577
|
+
if (Number.isFinite(minTs) && !Number.isFinite(maxTs)) {
|
|
18578
|
+
for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
|
|
18579
|
+
const ts = addDays(minTs, idx);
|
|
18580
|
+
if (isEnabled(ts)) return ts;
|
|
18581
|
+
}
|
|
18582
|
+
}
|
|
18583
|
+
|
|
18584
|
+
// 5c. Unbounded min with a finite max far in the past (e.g. birth-date picker):
|
|
18585
|
+
// scan backward from max for up to MAX_SCAN_DAYS.
|
|
18586
|
+
if (!Number.isFinite(minTs) && Number.isFinite(maxTs)) {
|
|
18587
|
+
for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
|
|
18588
|
+
const ts = addDays(maxTs, -idx);
|
|
18589
|
+
if (isEnabled(ts)) return ts;
|
|
18590
|
+
}
|
|
18591
|
+
}
|
|
18592
|
+
|
|
18593
|
+
// 6. All dates are blackout — fall back to the first in-range date so focus
|
|
18594
|
+
// still lands on a focusable (but not selectable) cell.
|
|
18595
|
+
if (Number.isFinite(minTs) && isInRange(minTs)) return minTs;
|
|
18596
|
+
if (isInRange(now)) return now;
|
|
18597
|
+
|
|
18598
|
+
return undefined;
|
|
18599
|
+
}
|
|
18600
|
+
|
|
18601
|
+
/**
|
|
18602
|
+
* Handles arrow key navigation on the calendar grid wrapper.
|
|
18603
|
+
* Focus stays on the grid wrapper; only ariaActiveDescendantElement
|
|
18604
|
+
* and the visual active-cell indicator change.
|
|
18605
|
+
* @private
|
|
18606
|
+
* @param {KeyboardEvent} event - The keyboard event.
|
|
18607
|
+
* @returns {void}
|
|
18608
|
+
*/
|
|
18609
|
+
handleGridKeyDown(event) {
|
|
18610
|
+
const { key } = event;
|
|
18611
|
+
const actionKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp', 'Enter', ' '];
|
|
18612
|
+
|
|
18613
|
+
if (!actionKeys.includes(key)) return;
|
|
18614
|
+
|
|
18615
|
+
event.preventDefault();
|
|
18616
|
+
|
|
18617
|
+
const allCells = this.getAllFocusableCells();
|
|
18618
|
+
if (allCells.length === 0) return;
|
|
18619
|
+
|
|
18620
|
+
const activeCell = allCells.find(cell => cell.active);
|
|
18621
|
+
if (!activeCell) return;
|
|
18622
|
+
|
|
18623
|
+
// Handle Enter/Space to select the active cell
|
|
18624
|
+
if (key === 'Enter' || key === ' ') {
|
|
18625
|
+
activeCell.handleTap();
|
|
18626
|
+
return;
|
|
18627
|
+
}
|
|
18628
|
+
|
|
18629
|
+
const activeIndex = allCells.indexOf(activeCell);
|
|
18630
|
+
|
|
18631
|
+
if (key === 'ArrowRight' || key === 'ArrowLeft') {
|
|
18632
|
+
const direction = key === 'ArrowRight' ? 1 : -1;
|
|
18633
|
+
const targetIndex = activeIndex + direction;
|
|
18634
|
+
|
|
18635
|
+
if (targetIndex >= 0 && targetIndex < allCells.length) {
|
|
18636
|
+
// Target cell exists in rendered months
|
|
18637
|
+
this.setActiveCell(allCells[targetIndex].day.date);
|
|
18638
|
+
this.scrollToActiveCell();
|
|
18639
|
+
// Dispatch focus event for the cell so live region + range preview update
|
|
18640
|
+
this.handleCellFocused({ detail: { date: allCells[targetIndex].day.date } });
|
|
18641
|
+
} else {
|
|
18642
|
+
// At boundary — need to navigate to next/prev month
|
|
18643
|
+
const navDir = direction === 1 ? 'next' : 'prev';
|
|
18644
|
+
if ((navDir === 'next' && this.showNextMonthBtn) || (navDir === 'prev' && this.showPrevMonthBtn)) {
|
|
18645
|
+
const targetDate = new Date(activeCell.day.date * 1000);
|
|
18646
|
+
targetDate.setDate(targetDate.getDate() + direction);
|
|
18647
|
+
targetDate.setHours(0, 0, 0, 0);
|
|
18648
|
+
const targetTs = Math.floor(targetDate.getTime() / 1000);
|
|
18649
|
+
|
|
18650
|
+
if (navDir === 'next') {
|
|
18651
|
+
this.handleNextMonth();
|
|
18652
|
+
} else {
|
|
18653
|
+
this.handlePrevMonth();
|
|
18654
|
+
}
|
|
18655
|
+
requestAnimationFrame(() => {
|
|
18656
|
+
requestAnimationFrame(() => {
|
|
18657
|
+
const cells = this.getAllFocusableCells();
|
|
18658
|
+
const target = cells.find(cell => cell.day && cell.day.date === targetTs);
|
|
18659
|
+
if (target) {
|
|
18660
|
+
this.setActiveCell(target.day.date);
|
|
18661
|
+
this.handleCellFocused({ detail: { date: target.day.date } });
|
|
18662
|
+
} else if (cells.length > 0) {
|
|
18663
|
+
const fallback = navDir === 'next' ? cells[cells.length - 1] : cells[0];
|
|
18664
|
+
this.setActiveCell(fallback.day.date);
|
|
18665
|
+
this.handleCellFocused({ detail: { date: fallback.day.date } });
|
|
18666
|
+
}
|
|
18667
|
+
// Re-focus grid wrapper after month change re-render
|
|
18668
|
+
this.focusActiveCell();
|
|
18669
|
+
});
|
|
18670
|
+
});
|
|
18671
|
+
}
|
|
18672
|
+
}
|
|
18673
|
+
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
18674
|
+
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
18675
|
+
const currentDate = new Date(activeCell.day.date * 1000);
|
|
18676
|
+
currentDate.setDate(currentDate.getDate() + increment);
|
|
18677
|
+
currentDate.setHours(0, 0, 0, 0);
|
|
18678
|
+
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
18679
|
+
|
|
18680
|
+
const targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
|
|
18681
|
+
|
|
18682
|
+
if (targetCell) {
|
|
18683
|
+
this.setActiveCell(targetCell.day.date);
|
|
18684
|
+
this.scrollToActiveCell();
|
|
18685
|
+
this.handleCellFocused({ detail: { date: targetCell.day.date } });
|
|
18686
|
+
} else {
|
|
18687
|
+
// Target might be in an unrendered month
|
|
18688
|
+
const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
|
|
18689
|
+
if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
|
|
18690
|
+
if (navDirection === 'next') {
|
|
18691
|
+
this.handleNextMonth();
|
|
18692
|
+
} else {
|
|
18693
|
+
this.handlePrevMonth();
|
|
18694
|
+
}
|
|
18695
|
+
requestAnimationFrame(() => {
|
|
18696
|
+
requestAnimationFrame(() => {
|
|
18697
|
+
const cells = this.getAllFocusableCells();
|
|
18698
|
+
const target = cells.find(cell => cell.day && cell.day.date === targetDate);
|
|
18699
|
+
if (target) {
|
|
18700
|
+
this.setActiveCell(target.day.date);
|
|
18701
|
+
this.handleCellFocused({ detail: { date: target.day.date } });
|
|
18702
|
+
} else if (cells.length > 0) {
|
|
18703
|
+
const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
|
|
18704
|
+
this.setActiveCell(nearest.day.date);
|
|
18705
|
+
this.handleCellFocused({ detail: { date: nearest.day.date } });
|
|
18706
|
+
}
|
|
18707
|
+
this.focusActiveCell();
|
|
18708
|
+
});
|
|
18709
|
+
});
|
|
18710
|
+
}
|
|
18711
|
+
}
|
|
18712
|
+
}
|
|
18713
|
+
}
|
|
18714
|
+
|
|
18715
|
+
/**
|
|
18716
|
+
* Handles cross-month boundary navigation events from month components.
|
|
18717
|
+
* @private
|
|
18718
|
+
* @param {CustomEvent} event - The boundary event with direction and source date info.
|
|
18719
|
+
* @returns {void}
|
|
18720
|
+
*/
|
|
18721
|
+
handleMonthBoundary(event) {
|
|
18722
|
+
const { direction, fromDate, key } = event.detail;
|
|
18723
|
+
|
|
18724
|
+
if (key === 'ArrowRight' || key === 'ArrowLeft') {
|
|
18725
|
+
// Linear navigation: find adjacent focusable cell across months
|
|
18726
|
+
const allCells = this.getAllFocusableCells();
|
|
18727
|
+
const currentIndex = allCells.findIndex(cell => cell.day && cell.day.date === fromDate);
|
|
18728
|
+
|
|
18729
|
+
if (currentIndex === -1) return;
|
|
18730
|
+
|
|
18731
|
+
let targetIndex;
|
|
18732
|
+
if (direction === 'next') {
|
|
18733
|
+
targetIndex = currentIndex + 1;
|
|
18734
|
+
} else {
|
|
18735
|
+
targetIndex = currentIndex - 1;
|
|
18736
|
+
}
|
|
18737
|
+
|
|
18738
|
+
if (targetIndex >= 0 && targetIndex < allCells.length) {
|
|
18739
|
+
const targetCell = allCells[targetIndex];
|
|
18740
|
+
this.setActiveCell(targetCell.day.date);
|
|
18741
|
+
this.scrollToActiveCell();
|
|
18742
|
+
this.focusActiveCell();
|
|
18743
|
+
} else if (direction === 'next' && this.showNextMonthBtn) {
|
|
18744
|
+
// Navigate to next month and focus the computed next date.
|
|
18745
|
+
// Using the target date (fromDate + 1 day) instead of cells[0]
|
|
18746
|
+
// avoids jumping backward in range datepickers where cells[0]
|
|
18747
|
+
// belongs to the previous (still-rendered) month.
|
|
18748
|
+
const nextDate = new Date(fromDate * 1000);
|
|
18749
|
+
nextDate.setDate(nextDate.getDate() + 1);
|
|
18750
|
+
nextDate.setHours(0, 0, 0, 0);
|
|
18751
|
+
const nextTs = Math.floor(nextDate.getTime() / 1000);
|
|
18752
|
+
|
|
18753
|
+
this.handleNextMonth();
|
|
18754
|
+
requestAnimationFrame(() => {
|
|
18755
|
+
requestAnimationFrame(() => {
|
|
18756
|
+
const cells = this.getAllFocusableCells();
|
|
18757
|
+
const target = cells.find(cell => cell.day && cell.day.date === nextTs);
|
|
18758
|
+
if (target) {
|
|
18759
|
+
this.setActiveCell(target.day.date);
|
|
18760
|
+
this.focusActiveCell();
|
|
18761
|
+
} else if (cells.length > 0) {
|
|
18762
|
+
// Fallback: first cell of the last rendered month
|
|
18763
|
+
this.setActiveCell(cells[cells.length - 1].day.date);
|
|
18764
|
+
this.focusActiveCell();
|
|
18765
|
+
}
|
|
18766
|
+
});
|
|
18767
|
+
});
|
|
18768
|
+
} else if (direction === 'prev' && this.showPrevMonthBtn) {
|
|
18769
|
+
// Navigate to previous month and focus the computed previous date.
|
|
18770
|
+
const prevDate = new Date(fromDate * 1000);
|
|
18771
|
+
prevDate.setDate(prevDate.getDate() - 1);
|
|
18772
|
+
prevDate.setHours(0, 0, 0, 0);
|
|
18773
|
+
const prevTs = Math.floor(prevDate.getTime() / 1000);
|
|
18774
|
+
|
|
18775
|
+
this.handlePrevMonth();
|
|
18776
|
+
requestAnimationFrame(() => {
|
|
18777
|
+
requestAnimationFrame(() => {
|
|
18778
|
+
const cells = this.getAllFocusableCells();
|
|
18779
|
+
const target = cells.find(cell => cell.day && cell.day.date === prevTs);
|
|
18780
|
+
if (target) {
|
|
18781
|
+
this.setActiveCell(target.day.date);
|
|
18782
|
+
this.focusActiveCell();
|
|
18783
|
+
} else if (cells.length > 0) {
|
|
18784
|
+
// Fallback: last cell of the first rendered month
|
|
18785
|
+
this.setActiveCell(cells[0].day.date);
|
|
18786
|
+
this.focusActiveCell();
|
|
18787
|
+
}
|
|
18788
|
+
});
|
|
18789
|
+
});
|
|
18790
|
+
}
|
|
18791
|
+
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
18792
|
+
// Vertical navigation: find same day-of-week +/- 7 days
|
|
18793
|
+
// Use Date arithmetic instead of fixed seconds to handle DST correctly
|
|
18794
|
+
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
18795
|
+
const currentDate = new Date(fromDate * 1000);
|
|
18796
|
+
currentDate.setDate(currentDate.getDate() + increment);
|
|
18797
|
+
currentDate.setHours(0, 0, 0, 0);
|
|
18798
|
+
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
18799
|
+
|
|
18800
|
+
const allCells = this.getAllFocusableCells();
|
|
18801
|
+
let targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
|
|
18802
|
+
|
|
18803
|
+
if (targetCell) {
|
|
18804
|
+
this.setActiveCell(targetCell.day.date);
|
|
18805
|
+
this.scrollToActiveCell();
|
|
18806
|
+
this.focusActiveCell();
|
|
18807
|
+
} else {
|
|
18808
|
+
// Target might be in an unrendered month, navigate there
|
|
18809
|
+
const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
|
|
18810
|
+
if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
|
|
18811
|
+
if (navDirection === 'next') {
|
|
18812
|
+
this.handleNextMonth();
|
|
18813
|
+
} else {
|
|
18814
|
+
this.handlePrevMonth();
|
|
18815
|
+
}
|
|
18816
|
+
requestAnimationFrame(() => {
|
|
18817
|
+
requestAnimationFrame(() => {
|
|
18818
|
+
const cells = this.getAllFocusableCells();
|
|
18819
|
+
const target = cells.find(cell => cell.day && cell.day.date === targetDate);
|
|
18820
|
+
if (target) {
|
|
18821
|
+
this.setActiveCell(target.day.date);
|
|
18822
|
+
this.focusActiveCell();
|
|
18823
|
+
} else if (cells.length > 0) {
|
|
18824
|
+
// Clamp to nearest focusable cell
|
|
18825
|
+
const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
|
|
18826
|
+
this.setActiveCell(nearest.day.date);
|
|
18827
|
+
this.focusActiveCell();
|
|
18828
|
+
}
|
|
18829
|
+
});
|
|
18830
|
+
});
|
|
18831
|
+
}
|
|
18832
|
+
}
|
|
18833
|
+
}
|
|
18834
|
+
}
|
|
18835
|
+
|
|
18836
|
+
/**
|
|
18837
|
+
* Handles cell activation events from month components.
|
|
18838
|
+
* @private
|
|
18839
|
+
* @param {CustomEvent} event - The activation event with target date.
|
|
18840
|
+
* @returns {void}
|
|
18841
|
+
*/
|
|
18842
|
+
handleCellActivate(event) {
|
|
18843
|
+
const { date } = event.detail;
|
|
18844
|
+
this.setActiveCell(date);
|
|
18845
|
+
this.focusActiveCell();
|
|
18846
|
+
}
|
|
18847
|
+
|
|
18848
|
+
/**
|
|
18849
|
+
* Handles focus events from calendar cells.
|
|
18850
|
+
* Updates the live region with an SR announcement and triggers
|
|
18851
|
+
* the imperative range preview if applicable.
|
|
18852
|
+
* @private
|
|
18853
|
+
* @param {CustomEvent} event - The calendar-cell-focused event.
|
|
18854
|
+
* @returns {void}
|
|
18855
|
+
*/
|
|
18856
|
+
handleCellFocused(event) {
|
|
18857
|
+
const { date } = event.detail;
|
|
18858
|
+
if (date == null) return;
|
|
18859
|
+
|
|
18860
|
+
// With aria-activedescendant, the button no longer receives native focus,
|
|
18861
|
+
// so we use the debounced live region for the full context announcement.
|
|
18862
|
+
const announcement = this.buildFocusAnnouncement(date);
|
|
18863
|
+
this.announceFocusDebounced(announcement);
|
|
18864
|
+
|
|
18865
|
+
// Update the range preview imperatively if in range-preview mode.
|
|
18866
|
+
this.updateRangePreview(date);
|
|
18867
|
+
}
|
|
18868
|
+
|
|
18869
|
+
/**
|
|
18870
|
+
* Builds a full SR announcement string for a focused cell date.
|
|
18871
|
+
* Includes the localized date, range position, popover content,
|
|
18872
|
+
* and blackout status.
|
|
18873
|
+
* @private
|
|
18874
|
+
* @param {Number} date - Unix timestamp (seconds) of the focused cell.
|
|
18875
|
+
* @returns {String} The announcement string.
|
|
18876
|
+
*/
|
|
18877
|
+
buildFocusAnnouncement(date) {
|
|
18878
|
+
let label = this.formatAnnouncementDate(date);
|
|
18879
|
+
|
|
18880
|
+
// Append date slot content (e.g. prices) if present.
|
|
18881
|
+
const dateObj = new Date(date * 1000);
|
|
18882
|
+
const mm = String(dateObj.getMonth() + 1).padStart(2, '0');
|
|
18883
|
+
const dd = String(dateObj.getDate()).padStart(2, '0');
|
|
18884
|
+
const yyyy = dateObj.getFullYear();
|
|
18885
|
+
const dateStr = `${mm}_${dd}_${yyyy}`;
|
|
18886
|
+
const dateSlotEl = this.datepicker?.querySelector(`[slot="date_${dateStr}"]`);
|
|
18887
|
+
if (dateSlotEl) {
|
|
18888
|
+
const text = dateSlotEl.innerText?.trim();
|
|
18889
|
+
if (text) {
|
|
18890
|
+
label += `, ${text}`;
|
|
18891
|
+
}
|
|
18892
|
+
}
|
|
18893
|
+
|
|
18894
|
+
// Append popover content if present.
|
|
18895
|
+
const popoverEl = this.datepicker?.querySelector(`[slot="popover_${dateStr}"]`);
|
|
18896
|
+
if (popoverEl) {
|
|
18897
|
+
const text = popoverEl.innerText?.trim();
|
|
18898
|
+
if (text) {
|
|
18899
|
+
label += `, ${text}`;
|
|
18900
|
+
}
|
|
18901
|
+
}
|
|
18902
|
+
|
|
18903
|
+
// Append range position context.
|
|
18904
|
+
if (this.datepicker?.hasAttribute('range')) {
|
|
18905
|
+
const rangeLabel = this.getRangePositionLabel(date);
|
|
18906
|
+
if (rangeLabel) {
|
|
18907
|
+
label += `, ${rangeLabel}`;
|
|
18908
|
+
}
|
|
18909
|
+
}
|
|
18910
|
+
|
|
18911
|
+
// Append blackout label.
|
|
18912
|
+
if (this.isDateBlackout(date)) {
|
|
18913
|
+
label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
|
|
18914
|
+
}
|
|
18915
|
+
|
|
18916
|
+
return label;
|
|
18917
|
+
}
|
|
18918
|
+
|
|
18919
|
+
/**
|
|
18920
|
+
* Determines the range position label for a given date.
|
|
18921
|
+
* @private
|
|
18922
|
+
* @param {Number} date - Unix timestamp (seconds).
|
|
18923
|
+
* @returns {String|null} The range position label, or null.
|
|
18924
|
+
*/
|
|
18925
|
+
getRangePositionLabel(date) {
|
|
18926
|
+
const parsedFrom = Number.parseInt(this.dateFrom, 10);
|
|
18927
|
+
if (!Number.isFinite(parsedFrom)) return null;
|
|
18928
|
+
|
|
18929
|
+
const departTs = startOfDay(parsedFrom * 1000) / 1000;
|
|
18930
|
+
const parsedTo = Number.parseInt(this.dateTo, 10);
|
|
18931
|
+
const hasTo = Number.isFinite(parsedTo);
|
|
18932
|
+
const returnTs = hasTo ? startOfDay(parsedTo * 1000) / 1000 : null;
|
|
18933
|
+
|
|
18934
|
+
if (date === departTs) return this.datepicker.rangeLabelStart || 'range start';
|
|
18935
|
+
if (hasTo && date === returnTs) return this.datepicker.rangeLabelEnd || 'range end';
|
|
18936
|
+
if (date < departTs) return this.datepicker.rangeLabelBeforeRange || 'before range';
|
|
18937
|
+
if (hasTo && date > departTs && date < returnTs) return this.datepicker.rangeLabelInRange || 'in range';
|
|
18938
|
+
return this.datepicker.rangeLabelAfterRange || 'after range';
|
|
18939
|
+
}
|
|
18940
|
+
|
|
18941
|
+
/**
|
|
18942
|
+
* Checks whether a given date is a blackout date.
|
|
18943
|
+
* @private
|
|
18944
|
+
* @param {Number} dateTs - Unix timestamp (seconds).
|
|
18945
|
+
* @returns {Boolean} True if the date is blacked out.
|
|
18946
|
+
*/
|
|
18947
|
+
isDateBlackout(dateTs) {
|
|
18948
|
+
// Check legacy disabledDays.
|
|
18949
|
+
if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
|
|
18950
|
+
if (this.disabledDays.findIndex(d => parseInt(d, 10) === dateTs) !== -1) {
|
|
18951
|
+
return true;
|
|
18952
|
+
}
|
|
18953
|
+
}
|
|
18954
|
+
|
|
18955
|
+
// Check ISO blackoutDates.
|
|
18956
|
+
const blackoutDates = this.datepicker?.blackoutDates;
|
|
18957
|
+
if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
|
|
18958
|
+
const date = new Date(dateTs * 1000);
|
|
18959
|
+
const yyyy = date.getFullYear();
|
|
18960
|
+
const mm = String(date.getMonth() + 1).padStart(2, '0');
|
|
18961
|
+
const dd = String(date.getDate()).padStart(2, '0');
|
|
18962
|
+
if (blackoutDates.includes(`${yyyy}-${mm}-${dd}`)) {
|
|
18963
|
+
return true;
|
|
18964
|
+
}
|
|
18965
|
+
}
|
|
18966
|
+
|
|
18967
|
+
return false;
|
|
18968
|
+
}
|
|
18969
|
+
|
|
18970
|
+
/**
|
|
18971
|
+
* Updates the range preview classes imperatively across all cells.
|
|
18972
|
+
* Only active when in range mode with dateFrom set and dateTo not yet set.
|
|
18973
|
+
* @private
|
|
18974
|
+
* @param {Number} hoveredDate - Unix timestamp of the hovered/focused date.
|
|
18975
|
+
* @returns {void}
|
|
18976
|
+
*/
|
|
18977
|
+
updateRangePreview(hoveredDate) {
|
|
18978
|
+
if (this.noRange || !this.dateFrom || this.dateTo) {
|
|
18979
|
+
return;
|
|
18980
|
+
}
|
|
18981
|
+
|
|
18982
|
+
const parsedDateFrom = parseInt(this.dateFrom, 10);
|
|
18983
|
+
const allCells = this.getAllFocusableCells();
|
|
18984
|
+
|
|
18985
|
+
allCells.forEach(cell => {
|
|
18986
|
+
cell.updateRangePreviewClasses(hoveredDate, parsedDateFrom);
|
|
18987
|
+
});
|
|
18988
|
+
}
|
|
18989
|
+
|
|
18990
|
+
/**
|
|
18991
|
+
* Clears range preview classes from all cells.
|
|
18992
|
+
* @private
|
|
18993
|
+
* @returns {void}
|
|
18994
|
+
*/
|
|
18995
|
+
clearRangePreview() {
|
|
18996
|
+
const allCells = this.getAllFocusableCells();
|
|
18997
|
+
allCells.forEach(cell => {
|
|
18998
|
+
cell.clearRangePreviewClasses();
|
|
18999
|
+
});
|
|
19000
|
+
}
|
|
19001
|
+
|
|
19002
|
+
/**
|
|
19003
|
+
* Overrides the base class handler to prevent setting `this.hoveredDate`
|
|
19004
|
+
* as a reactive property. Instead, handles the range preview imperatively.
|
|
19005
|
+
* @private
|
|
19006
|
+
* @param {CustomEvent} event - The hovered-date-changed event from a month.
|
|
19007
|
+
* @returns {void}
|
|
19008
|
+
*/
|
|
19009
|
+
hoveredDateChanged(event) {
|
|
19010
|
+
const hoveredDate = event.detail.value;
|
|
19011
|
+
this.updateRangePreview(hoveredDate);
|
|
19012
|
+
}
|
|
19013
|
+
|
|
19014
|
+
/**
|
|
19015
|
+
* Scrolls the calendar to ensure the month containing the active cell is visible.
|
|
19016
|
+
* @private
|
|
19017
|
+
* @returns {void}
|
|
19018
|
+
*/
|
|
19019
|
+
scrollToActiveCell() {
|
|
19020
|
+
if (this.activeCellDate == null) return;
|
|
19021
|
+
|
|
19022
|
+
const date = new Date(this.activeCellDate * 1000);
|
|
19023
|
+
const month = date.getMonth() + 1;
|
|
19024
|
+
const year = date.getFullYear();
|
|
19025
|
+
const selector = `#month-${month}-${year}`;
|
|
19026
|
+
const monthElem = this.shadowRoot.querySelector(selector);
|
|
19027
|
+
|
|
19028
|
+
if (monthElem) {
|
|
19029
|
+
const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
|
19030
|
+
monthElem.scrollIntoView({ block: 'nearest', behavior: prefersReducedMotion ? 'instant' : 'smooth' });
|
|
19031
|
+
}
|
|
19032
|
+
}
|
|
19033
|
+
|
|
19034
|
+
/**
|
|
19035
|
+
* Announces a date selection or focus change via the live region.
|
|
19036
|
+
* @private
|
|
19037
|
+
* @param {String} dateStr - The localized date string to announce.
|
|
19038
|
+
* @returns {void}
|
|
19039
|
+
*/
|
|
19040
|
+
announceSelection(dateStr) {
|
|
19041
|
+
const liveRegion = this.shadowRoot.querySelector('#calendar-live-region');
|
|
19042
|
+
if (liveRegion) {
|
|
19043
|
+
liveRegion.textContent = '';
|
|
19044
|
+
// Use microtask to ensure SR picks up the change
|
|
19045
|
+
Promise.resolve().then(() => {
|
|
19046
|
+
liveRegion.textContent = dateStr;
|
|
19047
|
+
});
|
|
19048
|
+
}
|
|
19049
|
+
}
|
|
19050
|
+
|
|
19051
|
+
/**
|
|
19052
|
+
* Debounced version of announceSelection for focus navigation.
|
|
19053
|
+
* Only announces the last focused date after rapid navigation pauses,
|
|
19054
|
+
* preventing the screen reader from queueing up stale announcements
|
|
19055
|
+
* that can't keep pace with arrow-key traversal.
|
|
19056
|
+
* @private
|
|
19057
|
+
* @param {String} dateStr - The localized date string to announce.
|
|
19058
|
+
* @returns {void}
|
|
19059
|
+
*/
|
|
19060
|
+
announceFocusDebounced(dateStr) {
|
|
19061
|
+
if (this._focusAnnounceTimer) {
|
|
19062
|
+
clearTimeout(this._focusAnnounceTimer);
|
|
19063
|
+
}
|
|
19064
|
+
this._focusAnnounceTimer = setTimeout(() => {
|
|
19065
|
+
this.announceSelection(dateStr);
|
|
19066
|
+
this._focusAnnounceTimer = null;
|
|
19067
|
+
}, 150);
|
|
19068
|
+
}
|
|
19069
|
+
|
|
19070
|
+
/**
|
|
19071
|
+
* Formats a Unix timestamp (seconds) as a localized date string for SR announcements.
|
|
19072
|
+
* @private
|
|
19073
|
+
* @param {String|Number} timestamp - Unix timestamp in seconds.
|
|
19074
|
+
* @returns {String} Localized date string.
|
|
19075
|
+
*/
|
|
19076
|
+
formatAnnouncementDate(timestamp) {
|
|
19077
|
+
const date = new Date(parseInt(timestamp, 10) * 1000);
|
|
19078
|
+
const localeCode = this.locale?.code || undefined;
|
|
19079
|
+
const formatter = new Intl.DateTimeFormat(localeCode, {
|
|
19080
|
+
weekday: 'long', year: 'numeric', month: 'long', day: 'numeric'
|
|
19081
|
+
});
|
|
19082
|
+
return formatter.format(date);
|
|
19083
|
+
}
|
|
19084
|
+
|
|
17760
19085
|
firstUpdated() {
|
|
17761
19086
|
this.addEventListener('date-from-changed', () => {
|
|
17762
19087
|
this.dispatchEvent(new CustomEvent('auroCalendar-dateSelected', {
|
|
@@ -17776,6 +19101,21 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17776
19101
|
composed: true,
|
|
17777
19102
|
}));
|
|
17778
19103
|
});
|
|
19104
|
+
|
|
19105
|
+
// Listen for cross-month boundary navigation events
|
|
19106
|
+
this.addEventListener('calendar-month-boundary', (event) => {
|
|
19107
|
+
this.handleMonthBoundary(event);
|
|
19108
|
+
});
|
|
19109
|
+
|
|
19110
|
+
// Listen for cell activation events
|
|
19111
|
+
this.addEventListener('calendar-cell-activate', (event) => {
|
|
19112
|
+
this.handleCellActivate(event);
|
|
19113
|
+
});
|
|
19114
|
+
|
|
19115
|
+
// Listen for cell focus events (SR announcements + range preview)
|
|
19116
|
+
this.addEventListener('calendar-cell-focused', (event) => {
|
|
19117
|
+
this.handleCellFocused(event);
|
|
19118
|
+
});
|
|
17779
19119
|
}
|
|
17780
19120
|
|
|
17781
19121
|
injectSlot(slotName, nodes) {
|
|
@@ -17800,7 +19140,37 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17800
19140
|
}
|
|
17801
19141
|
|
|
17802
19142
|
if (changedProperties.has('visible')) {
|
|
17803
|
-
|
|
19143
|
+
if (this.visible) {
|
|
19144
|
+
// Compute the active date eagerly from data — no DOM needed.
|
|
19145
|
+
if (this.activeCellDate == null) {
|
|
19146
|
+
this.activeCellDate = this.computeActiveDate();
|
|
19147
|
+
}
|
|
19148
|
+
|
|
19149
|
+
this.requestUpdate();
|
|
19150
|
+
} else {
|
|
19151
|
+
this.requestUpdate();
|
|
19152
|
+
}
|
|
19153
|
+
}
|
|
19154
|
+
|
|
19155
|
+
// Announce date selection to screen readers when user clicks/selects a cell
|
|
19156
|
+
const isCellClick = this.datepicker?.wasCellClick || this.datepicker?.cellClickActive;
|
|
19157
|
+
|
|
19158
|
+
if (changedProperties.has('dateFrom') && this.dateFrom && isCellClick) {
|
|
19159
|
+
const dateStr = this.formatAnnouncementDate(this.dateFrom);
|
|
19160
|
+
const isRange = !this.noRange;
|
|
19161
|
+
|
|
19162
|
+
if (isRange) {
|
|
19163
|
+
const rangeLabel = this.datepicker.rangeLabelStart || 'range start';
|
|
19164
|
+
this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
|
|
19165
|
+
} else {
|
|
19166
|
+
this.announceSelection(`${dateStr}, selected`);
|
|
19167
|
+
}
|
|
19168
|
+
}
|
|
19169
|
+
|
|
19170
|
+
if (changedProperties.has('dateTo') && this.dateTo && isCellClick) {
|
|
19171
|
+
const dateStr = this.formatAnnouncementDate(this.dateTo);
|
|
19172
|
+
const rangeLabel = this.datepicker.rangeLabelEnd || 'range end';
|
|
19173
|
+
this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
|
|
17804
19174
|
}
|
|
17805
19175
|
}
|
|
17806
19176
|
|
|
@@ -17809,6 +19179,7 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17809
19179
|
<${this.bibtemplateTag}
|
|
17810
19180
|
?large="${this.largeFullscreenHeadline}"
|
|
17811
19181
|
?isFullscreen="${this.isFullscreen}"
|
|
19182
|
+
?showFooter="${!this.isFullscreen && this.dropdown?.desktopModal}"
|
|
17812
19183
|
@close-click="${this.utilCal.requestDismiss}">
|
|
17813
19184
|
<span slot="ariaLabel.close">${this.slots["ariaLabel.bib.close"]}</span>
|
|
17814
19185
|
|
|
@@ -17826,24 +19197,27 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
17826
19197
|
</div>
|
|
17827
19198
|
</div>
|
|
17828
19199
|
|
|
17829
|
-
<div class="calendarWrapper">
|
|
17830
|
-
<div class="calendars">
|
|
17831
|
-
${this.renderAllCalendars()}
|
|
17832
|
-
</div>
|
|
19200
|
+
<div class="calendarWrapper ${!this.isFullscreen && this.dropdown?.desktopModal ? 'hasFooter' : ''}">
|
|
17833
19201
|
<div class="calendarNavButtons">
|
|
17834
19202
|
${this.showPrevMonthBtn ? u$c`
|
|
17835
|
-
<button tabIndex="
|
|
19203
|
+
<button tabIndex="0" class="calendarNavBtn prevMonth" aria-label="${this.datepicker?.navLabelPrevMonth || 'Previous month'}" @click="${this.handlePrevMonth}">
|
|
17836
19204
|
${this.util.generateIconHtml(chevronLeft)}
|
|
17837
19205
|
</button>
|
|
17838
19206
|
` : undefined}
|
|
17839
19207
|
${this.showNextMonthBtn ? u$c`
|
|
17840
|
-
<button tabIndex="
|
|
19208
|
+
<button tabIndex="0" class="calendarNavBtn nextMonth" aria-label="${this.datepicker?.navLabelNextMonth || 'Next month'}" @click="${this.handleNextMonth}">
|
|
17841
19209
|
${this.util.generateIconHtml(chevronRight)}
|
|
17842
19210
|
</button>
|
|
17843
19211
|
` : undefined}
|
|
17844
19212
|
</div>
|
|
19213
|
+
<div id="calendarGrid" class="calendars" role="group" tabindex="-1" aria-activedescendant="activeDescendantProxy" @keydown="${this.handleGridKeyDown}">
|
|
19214
|
+
<span id="activeDescendantProxy" role="gridcell" aria-label="" class="sr-only"></span>
|
|
19215
|
+
${this.renderAllCalendars()}
|
|
19216
|
+
</div>
|
|
17845
19217
|
</div>
|
|
17846
19218
|
|
|
19219
|
+
<div id="calendar-live-region" aria-live="assertive" aria-atomic="true" class="sr-only"></div>
|
|
19220
|
+
|
|
17847
19221
|
<${this.buttonTag} slot="footer" fluid @click="${this.utilCal.requestDismiss}">Done</${this.buttonTag}>
|
|
17848
19222
|
</${this.bibtemplateTag}>
|
|
17849
19223
|
`;
|
|
@@ -21091,7 +22465,7 @@ function applyKeyboardStrategy$1$2(component, strategy, options = {}) {
|
|
|
21091
22465
|
});
|
|
21092
22466
|
}
|
|
21093
22467
|
|
|
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}`;
|
|
22468
|
+
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
22469
|
|
|
21096
22470
|
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
22471
|
|
|
@@ -21722,7 +23096,7 @@ let AuroHelpText$2$1 = class AuroHelpText extends i$4 {
|
|
|
21722
23096
|
}
|
|
21723
23097
|
};
|
|
21724
23098
|
|
|
21725
|
-
var formkitVersion$1$2 = '
|
|
23099
|
+
var formkitVersion$1$2 = '202605210248';
|
|
21726
23100
|
|
|
21727
23101
|
let AuroElement$2$2 = class AuroElement extends i$4 {
|
|
21728
23102
|
static get properties() {
|
|
@@ -21902,6 +23276,7 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
21902
23276
|
_intializeDefaults() {
|
|
21903
23277
|
this.appearance = 'default';
|
|
21904
23278
|
this.chevron = false;
|
|
23279
|
+
this.desktopModal = false;
|
|
21905
23280
|
this.disabled = false;
|
|
21906
23281
|
this.disableKeyboardHandling = false;
|
|
21907
23282
|
this.error = false;
|
|
@@ -22082,6 +23457,14 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22082
23457
|
reflect: true
|
|
22083
23458
|
},
|
|
22084
23459
|
|
|
23460
|
+
/**
|
|
23461
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
23462
|
+
*/
|
|
23463
|
+
desktopModal: {
|
|
23464
|
+
type: Boolean,
|
|
23465
|
+
reflect: true
|
|
23466
|
+
},
|
|
23467
|
+
|
|
22085
23468
|
/**
|
|
22086
23469
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
22087
23470
|
*/
|
|
@@ -22369,6 +23752,15 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22369
23752
|
|
|
22370
23753
|
disconnectedCallback() {
|
|
22371
23754
|
super.disconnectedCallback();
|
|
23755
|
+
this._clearPageInert();
|
|
23756
|
+
if (this._bibTabHandler) {
|
|
23757
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
23758
|
+
this._bibTabHandler = undefined;
|
|
23759
|
+
}
|
|
23760
|
+
if (this.focusTrap) {
|
|
23761
|
+
this.focusTrap.disconnect();
|
|
23762
|
+
this.focusTrap = undefined;
|
|
23763
|
+
}
|
|
22372
23764
|
if (this.floater) {
|
|
22373
23765
|
this.floater.hideBib('disconnect');
|
|
22374
23766
|
this.floater.disconnect();
|
|
@@ -22396,19 +23788,45 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22396
23788
|
if (this.isPopoverVisible) {
|
|
22397
23789
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
22398
23790
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
22399
|
-
|
|
22400
|
-
this.
|
|
23791
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
23792
|
+
this.updateFocusTrap();
|
|
23793
|
+
|
|
23794
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
23795
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
23796
|
+
this._setPageInert();
|
|
23797
|
+
}
|
|
22401
23798
|
} else {
|
|
22402
23799
|
this.bibElement.value.close();
|
|
23800
|
+
this._clearPageInert();
|
|
22403
23801
|
}
|
|
22404
23802
|
}
|
|
22405
23803
|
|
|
22406
23804
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
22407
23805
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
22408
23806
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
22409
|
-
const useModal = this.isBibFullscreen;
|
|
22410
23807
|
this.bibElement.value.close();
|
|
22411
|
-
this.bibElement.value.open(
|
|
23808
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
23809
|
+
|
|
23810
|
+
// Re-initialize focus management for the new strategy
|
|
23811
|
+
this.updateFocusTrap();
|
|
23812
|
+
|
|
23813
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
23814
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
23815
|
+
this._setPageInert();
|
|
23816
|
+
} else {
|
|
23817
|
+
this._clearPageInert();
|
|
23818
|
+
}
|
|
23819
|
+
}
|
|
23820
|
+
|
|
23821
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
23822
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
23823
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
23824
|
+
this.updateFocusTrap();
|
|
23825
|
+
if (this.desktopModal) {
|
|
23826
|
+
this._setPageInert();
|
|
23827
|
+
} else {
|
|
23828
|
+
this._clearPageInert();
|
|
23829
|
+
}
|
|
22412
23830
|
}
|
|
22413
23831
|
}
|
|
22414
23832
|
|
|
@@ -22418,8 +23836,14 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22418
23836
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
22419
23837
|
*/
|
|
22420
23838
|
handleDropdownToggle(event) {
|
|
22421
|
-
this.updateFocusTrap();
|
|
22422
23839
|
this.isPopoverVisible = event.detail.expanded;
|
|
23840
|
+
|
|
23841
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
23842
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
23843
|
+
if (!this.isPopoverVisible) {
|
|
23844
|
+
this.updateFocusTrap();
|
|
23845
|
+
}
|
|
23846
|
+
|
|
22423
23847
|
const eventType = event.detail.eventType || "unknown";
|
|
22424
23848
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
22425
23849
|
this.trigger.focus();
|
|
@@ -22518,19 +23942,178 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22518
23942
|
* @private
|
|
22519
23943
|
*/
|
|
22520
23944
|
updateFocusTrap() {
|
|
23945
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
23946
|
+
// to prevent duplicate listeners on repeated calls.
|
|
23947
|
+
if (this._bibTabHandler) {
|
|
23948
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
23949
|
+
this._bibTabHandler = undefined;
|
|
23950
|
+
}
|
|
23951
|
+
|
|
23952
|
+
if (this.focusTrap) {
|
|
23953
|
+
this.focusTrap.disconnect();
|
|
23954
|
+
this.focusTrap = undefined;
|
|
23955
|
+
}
|
|
23956
|
+
|
|
22521
23957
|
if (this.isPopoverVisible) {
|
|
22522
23958
|
if (!this.isBibFullscreen) {
|
|
22523
|
-
|
|
22524
|
-
|
|
22525
|
-
|
|
23959
|
+
if (this.desktopModal) {
|
|
23960
|
+
// Desktop modal: trap focus only within the bib content.
|
|
23961
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
23962
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
23963
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
23964
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
23965
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
23966
|
+
// within the bib's focusable elements.
|
|
23967
|
+
this._bibTabHandler = (event) => {
|
|
23968
|
+
if (event.key !== 'Tab') {
|
|
23969
|
+
return;
|
|
23970
|
+
}
|
|
23971
|
+
|
|
23972
|
+
// Collect focusable elements from the bib content.
|
|
23973
|
+
const focusables = getFocusableElements$3(this.bibContent);
|
|
23974
|
+
|
|
23975
|
+
// Fallback: try from slotted content directly
|
|
23976
|
+
if (!focusables.length) {
|
|
23977
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
23978
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
23979
|
+
|
|
23980
|
+
for (const node of assignedNodes) {
|
|
23981
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
23982
|
+
focusables.push(...getFocusableElements$3(node));
|
|
23983
|
+
}
|
|
23984
|
+
}
|
|
23985
|
+
}
|
|
23986
|
+
|
|
23987
|
+
if (!focusables.length) {
|
|
23988
|
+
return;
|
|
23989
|
+
}
|
|
23990
|
+
|
|
23991
|
+
event.preventDefault();
|
|
23992
|
+
|
|
23993
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
23994
|
+
|
|
23995
|
+
// Walk the active element chain through shadow roots
|
|
23996
|
+
const actives = this._getActiveElements();
|
|
23997
|
+
|
|
23998
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
23999
|
+
|
|
24000
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
24001
|
+
// Focus is not on a known element — move to first/last
|
|
24002
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
24003
|
+
}
|
|
24004
|
+
|
|
24005
|
+
// Try each element in order, skipping any that can't receive focus
|
|
24006
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
24007
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
24008
|
+
let nextIdx = idx + direction;
|
|
24009
|
+
|
|
24010
|
+
// Wrap around
|
|
24011
|
+
if (nextIdx < 0) {
|
|
24012
|
+
nextIdx = focusables.length - 1;
|
|
24013
|
+
} else if (nextIdx >= focusables.length) {
|
|
24014
|
+
nextIdx = 0;
|
|
24015
|
+
}
|
|
24016
|
+
|
|
24017
|
+
focusables[nextIdx].focus();
|
|
24018
|
+
|
|
24019
|
+
// Verify focus actually moved to the target
|
|
24020
|
+
const newActives = this._getActiveElements();
|
|
24021
|
+
|
|
24022
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
24023
|
+
return;
|
|
24024
|
+
}
|
|
24025
|
+
|
|
24026
|
+
// Focus didn't stick — skip this element and try the next
|
|
24027
|
+
idx = nextIdx;
|
|
24028
|
+
}
|
|
24029
|
+
};
|
|
24030
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
24031
|
+
|
|
24032
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
24033
|
+
requestAnimationFrame(() => {
|
|
24034
|
+
const focusables = getFocusableElements$3(this.bibContent);
|
|
24035
|
+
if (focusables.length) {
|
|
24036
|
+
focusables[0].focus();
|
|
24037
|
+
}
|
|
24038
|
+
});
|
|
24039
|
+
} else {
|
|
24040
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
24041
|
+
this.focusTrap = new FocusTrap$3(this.bibContent);
|
|
24042
|
+
this.focusTrap.focusFirstElement();
|
|
24043
|
+
}
|
|
22526
24044
|
}
|
|
22527
24045
|
// Fullscreen: showModal() provides native focus trapping
|
|
24046
|
+
}
|
|
24047
|
+
}
|
|
24048
|
+
|
|
24049
|
+
/**
|
|
24050
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
24051
|
+
* @private
|
|
24052
|
+
* @returns {Array<HTMLElement>}
|
|
24053
|
+
*/
|
|
24054
|
+
_getActiveElements() {
|
|
24055
|
+
let { activeElement } = document;
|
|
24056
|
+
const actives = [activeElement];
|
|
24057
|
+
|
|
24058
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
24059
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
24060
|
+
actives.push(activeElement);
|
|
24061
|
+
}
|
|
24062
|
+
|
|
24063
|
+
return actives;
|
|
24064
|
+
}
|
|
24065
|
+
|
|
24066
|
+
/**
|
|
24067
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
24068
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
24069
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
24070
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
24071
|
+
* to ensure all page content outside the host subtree is inert.
|
|
24072
|
+
* @private
|
|
24073
|
+
*/
|
|
24074
|
+
_setPageInert() {
|
|
24075
|
+
if (this._inertSiblings) {
|
|
22528
24076
|
return;
|
|
22529
24077
|
}
|
|
22530
24078
|
|
|
22531
|
-
|
|
22532
|
-
|
|
22533
|
-
|
|
24079
|
+
this._inertSiblings = [];
|
|
24080
|
+
|
|
24081
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
24082
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
24083
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
24084
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
24085
|
+
let host = this;
|
|
24086
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
24087
|
+
host = host.getRootNode().host;
|
|
24088
|
+
}
|
|
24089
|
+
|
|
24090
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
24091
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
24092
|
+
let current = host;
|
|
24093
|
+
while (current.parentElement) {
|
|
24094
|
+
const parent = current.parentElement;
|
|
24095
|
+
for (const sibling of parent.children) {
|
|
24096
|
+
if (sibling !== current) {
|
|
24097
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
24098
|
+
sibling.inert = true;
|
|
24099
|
+
}
|
|
24100
|
+
}
|
|
24101
|
+
current = parent;
|
|
24102
|
+
}
|
|
24103
|
+
}
|
|
24104
|
+
|
|
24105
|
+
/**
|
|
24106
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
24107
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
24108
|
+
* not inadvertently re-enabled.
|
|
24109
|
+
* @private
|
|
24110
|
+
*/
|
|
24111
|
+
_clearPageInert() {
|
|
24112
|
+
if (this._inertSiblings) {
|
|
24113
|
+
for (const entry of this._inertSiblings) {
|
|
24114
|
+
entry.element.inert = entry.wasInert;
|
|
24115
|
+
}
|
|
24116
|
+
this._inertSiblings = undefined;
|
|
22534
24117
|
}
|
|
22535
24118
|
}
|
|
22536
24119
|
|
|
@@ -22769,6 +24352,7 @@ let AuroDropdown$3 = class AuroDropdown extends AuroElement$2$2 {
|
|
|
22769
24352
|
shape="${this.shape}"
|
|
22770
24353
|
?data-show="${this.isPopoverVisible}"
|
|
22771
24354
|
?isfullscreen="${this.isBibFullscreen}"
|
|
24355
|
+
?desktopmodal="${this.desktopModal}"
|
|
22772
24356
|
.dialogLabel="${this.bibDialogLabel}"
|
|
22773
24357
|
${n$6(this.bibElement)}
|
|
22774
24358
|
>
|
|
@@ -29467,7 +31051,7 @@ let AuroHelpText$1$2 = class AuroHelpText extends i$4 {
|
|
|
29467
31051
|
}
|
|
29468
31052
|
};
|
|
29469
31053
|
|
|
29470
|
-
var formkitVersion$8 = '
|
|
31054
|
+
var formkitVersion$8 = '202605210248';
|
|
29471
31055
|
|
|
29472
31056
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
29473
31057
|
// See LICENSE in the project root for license information.
|
|
@@ -30722,26 +32306,62 @@ function applyKeyboardStrategy$5(component, strategy, options = {}) {
|
|
|
30722
32306
|
// components/datepicker/docs/partials/keyboardBehavior.md
|
|
30723
32307
|
//
|
|
30724
32308
|
// 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
32309
|
// - Escape closes the bib and prevents the event from reaching parent containers.
|
|
32310
|
+
// - Enter opens the bib when it is closed (trigger input only, not clear button).
|
|
32311
|
+
// - Space opens the bib when it is closed (trigger input only, not clear button).
|
|
30727
32312
|
// - Tab uses the browser's default tabindex sequence across trigger controls.
|
|
30728
|
-
// - Enter and Space do not open or close the bib.
|
|
30729
32313
|
//
|
|
30730
32314
|
// This file is an intentional placeholder for most keys. When datepicker bib keyboard navigation is
|
|
30731
32315
|
// added, handlers should go here following the same strategy pattern used by
|
|
30732
32316
|
// auro-select (selectKeyboardStrategy.js) and auro-combobox (comboboxKeyboardStrategy.js).
|
|
30733
32317
|
const datepickerKeyboardStrategy = {
|
|
30734
|
-
Escape(component, evt) {
|
|
30735
|
-
if (!
|
|
32318
|
+
Escape(component, evt, ctx) {
|
|
32319
|
+
if (!ctx.isExpanded) {
|
|
30736
32320
|
return;
|
|
30737
32321
|
}
|
|
30738
32322
|
|
|
30739
|
-
//
|
|
30740
|
-
//
|
|
30741
|
-
// seeing this event, we must also close the dropdown explicitly.
|
|
32323
|
+
// Stop propagation so parent containers (auro-dialog, auro-drawer)
|
|
32324
|
+
// don't also react to Escape.
|
|
30742
32325
|
evt.stopPropagation();
|
|
32326
|
+
evt.preventDefault();
|
|
30743
32327
|
|
|
30744
|
-
component.
|
|
32328
|
+
component.hideBib();
|
|
32329
|
+
},
|
|
32330
|
+
|
|
32331
|
+
Enter(component, evt, ctx) {
|
|
32332
|
+
if (ctx.isExpanded) {
|
|
32333
|
+
return;
|
|
32334
|
+
}
|
|
32335
|
+
|
|
32336
|
+
// Only open from the trigger input, not the clear button or other internal elements.
|
|
32337
|
+
// evt.target is retargeted to the host in shadow DOM, so use composedPath()
|
|
32338
|
+
// to find the real origin. The clear button is rendered with class "clearBtn".
|
|
32339
|
+
const path = evt.composedPath();
|
|
32340
|
+
if (path.some(el => el.classList?.contains('clearBtn'))) {
|
|
32341
|
+
return;
|
|
32342
|
+
}
|
|
32343
|
+
|
|
32344
|
+
evt.preventDefault();
|
|
32345
|
+
|
|
32346
|
+
component.dropdown.show();
|
|
32347
|
+
},
|
|
32348
|
+
|
|
32349
|
+
' '(component, evt, ctx) {
|
|
32350
|
+
if (ctx.isExpanded) {
|
|
32351
|
+
return;
|
|
32352
|
+
}
|
|
32353
|
+
|
|
32354
|
+
// Only open from the trigger input, not the clear button or other internal elements.
|
|
32355
|
+
// evt.target is retargeted to the host in shadow DOM, so use composedPath()
|
|
32356
|
+
// to find the real origin. The clear button is rendered with class "clearBtn".
|
|
32357
|
+
const path = evt.composedPath();
|
|
32358
|
+
if (path.some(el => el.classList?.contains('clearBtn'))) {
|
|
32359
|
+
return;
|
|
32360
|
+
}
|
|
32361
|
+
|
|
32362
|
+
evt.preventDefault();
|
|
32363
|
+
|
|
32364
|
+
component.dropdown.show();
|
|
30745
32365
|
},
|
|
30746
32366
|
};
|
|
30747
32367
|
|
|
@@ -30815,6 +32435,15 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
30815
32435
|
this.required = false;
|
|
30816
32436
|
this.onDark = false;
|
|
30817
32437
|
this.range = false;
|
|
32438
|
+
this.rangeLabelStart = 'range start';
|
|
32439
|
+
this.rangeLabelEnd = 'range end';
|
|
32440
|
+
this.rangeLabelBeforeRange = 'before range';
|
|
32441
|
+
this.rangeLabelInRange = 'in range';
|
|
32442
|
+
this.rangeLabelAfterRange = 'after range';
|
|
32443
|
+
this.blackoutDates = [];
|
|
32444
|
+
this.blackoutLabel = 'unavailable';
|
|
32445
|
+
this.navLabelPrevMonth = 'Previous month';
|
|
32446
|
+
this.navLabelNextMonth = 'Next month';
|
|
30818
32447
|
this.stacked = false;
|
|
30819
32448
|
this.noValidate = false;
|
|
30820
32449
|
this.validity = undefined;
|
|
@@ -31193,6 +32822,78 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31193
32822
|
reflect: true
|
|
31194
32823
|
},
|
|
31195
32824
|
|
|
32825
|
+
/**
|
|
32826
|
+
* Label announced for the range start date cell.
|
|
32827
|
+
*/
|
|
32828
|
+
rangeLabelStart: {
|
|
32829
|
+
type: String,
|
|
32830
|
+
reflect: true
|
|
32831
|
+
},
|
|
32832
|
+
|
|
32833
|
+
/**
|
|
32834
|
+
* Label announced for the range end date cell.
|
|
32835
|
+
*/
|
|
32836
|
+
rangeLabelEnd: {
|
|
32837
|
+
type: String,
|
|
32838
|
+
reflect: true
|
|
32839
|
+
},
|
|
32840
|
+
|
|
32841
|
+
/**
|
|
32842
|
+
* Label announced for cells before the range start.
|
|
32843
|
+
*/
|
|
32844
|
+
rangeLabelBeforeRange: {
|
|
32845
|
+
type: String,
|
|
32846
|
+
reflect: true
|
|
32847
|
+
},
|
|
32848
|
+
|
|
32849
|
+
/**
|
|
32850
|
+
* Label announced for cells within the selected range.
|
|
32851
|
+
*/
|
|
32852
|
+
rangeLabelInRange: {
|
|
32853
|
+
type: String,
|
|
32854
|
+
reflect: true
|
|
32855
|
+
},
|
|
32856
|
+
|
|
32857
|
+
/**
|
|
32858
|
+
* Label announced for cells after the range (or after start when no end is selected).
|
|
32859
|
+
*/
|
|
32860
|
+
rangeLabelAfterRange: {
|
|
32861
|
+
type: String,
|
|
32862
|
+
reflect: true
|
|
32863
|
+
},
|
|
32864
|
+
|
|
32865
|
+
/**
|
|
32866
|
+
* Array of dates that cannot be selected. Dates should be in ISO format (YYYY-MM-DD).
|
|
32867
|
+
*/
|
|
32868
|
+
blackoutDates: {
|
|
32869
|
+
type: Array,
|
|
32870
|
+
reflect: true
|
|
32871
|
+
},
|
|
32872
|
+
|
|
32873
|
+
/**
|
|
32874
|
+
* Label announced for blackout (disabled but in-range) date cells.
|
|
32875
|
+
*/
|
|
32876
|
+
blackoutLabel: {
|
|
32877
|
+
type: String,
|
|
32878
|
+
reflect: true
|
|
32879
|
+
},
|
|
32880
|
+
|
|
32881
|
+
/**
|
|
32882
|
+
* Accessible label for the previous month navigation button.
|
|
32883
|
+
*/
|
|
32884
|
+
navLabelPrevMonth: {
|
|
32885
|
+
type: String,
|
|
32886
|
+
reflect: true
|
|
32887
|
+
},
|
|
32888
|
+
|
|
32889
|
+
/**
|
|
32890
|
+
* Accessible label for the next month navigation button.
|
|
32891
|
+
*/
|
|
32892
|
+
navLabelNextMonth: {
|
|
32893
|
+
type: String,
|
|
32894
|
+
reflect: true
|
|
32895
|
+
},
|
|
32896
|
+
|
|
31196
32897
|
/**
|
|
31197
32898
|
* Dates that the user should have for reference as part of their decision making when selecting a date.
|
|
31198
32899
|
* This should be a JSON string array of dates in the format of `MM/DD/YYYY`.
|
|
@@ -31219,6 +32920,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31219
32920
|
|
|
31220
32921
|
/**
|
|
31221
32922
|
* Custom help text message to display when validity = `customError`.
|
|
32923
|
+
* Also used as the validation message when a blackout date is typed into the input.
|
|
31222
32924
|
*/
|
|
31223
32925
|
setCustomValidityCustomError: {
|
|
31224
32926
|
type: String
|
|
@@ -31540,6 +33242,61 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31540
33242
|
}));
|
|
31541
33243
|
}
|
|
31542
33244
|
|
|
33245
|
+
/**
|
|
33246
|
+
* Attempts to focus the active calendar cell using a rAF retry loop.
|
|
33247
|
+
* Shared by both fullscreen and desktop open paths.
|
|
33248
|
+
* @private
|
|
33249
|
+
* @returns {void}
|
|
33250
|
+
*/
|
|
33251
|
+
focusActiveCellWhenReady() {
|
|
33252
|
+
const MAX_ATTEMPTS = 20;
|
|
33253
|
+
let attempts = 0;
|
|
33254
|
+
|
|
33255
|
+
const tryFocus = () => {
|
|
33256
|
+
attempts += 1;
|
|
33257
|
+
const allCells = this.calendar.getAllFocusableCells();
|
|
33258
|
+
|
|
33259
|
+
if (!allCells.length && attempts < MAX_ATTEMPTS) {
|
|
33260
|
+
requestAnimationFrame(tryFocus);
|
|
33261
|
+
return;
|
|
33262
|
+
}
|
|
33263
|
+
|
|
33264
|
+
// Compute and mark the active cell
|
|
33265
|
+
if (this.calendar.activeCellDate == null) {
|
|
33266
|
+
this.calendar.activeCellDate = this.calendar.computeActiveDate();
|
|
33267
|
+
}
|
|
33268
|
+
if (this.calendar.activeCellDate !== undefined) {
|
|
33269
|
+
this.calendar.setActiveCell(this.calendar.activeCellDate);
|
|
33270
|
+
}
|
|
33271
|
+
|
|
33272
|
+
// If no cell matched (e.g. centralDate month differs from the rendered
|
|
33273
|
+
// range on mobile), fall back to the first rendered enabled cell.
|
|
33274
|
+
let activeCell = allCells.find(cell => cell.active);
|
|
33275
|
+
if (!activeCell && allCells.length) {
|
|
33276
|
+
const fallback = allCells[0];
|
|
33277
|
+
if (fallback.day) {
|
|
33278
|
+
this.calendar.activeCellDate = fallback.day.date;
|
|
33279
|
+
this.calendar.setActiveCell(this.calendar.activeCellDate);
|
|
33280
|
+
activeCell = allCells.find(cell => cell.active);
|
|
33281
|
+
}
|
|
33282
|
+
}
|
|
33283
|
+
|
|
33284
|
+
// Focus the calendar grid wrapper (aria-activedescendant handles
|
|
33285
|
+
// the SR announcement for the active cell).
|
|
33286
|
+
if (activeCell) {
|
|
33287
|
+
// Announce the initial active cell via the live region
|
|
33288
|
+
const announcement = this.calendar.buildFocusAnnouncement(activeCell.day.date);
|
|
33289
|
+
this.calendar.announceSelection(announcement);
|
|
33290
|
+
|
|
33291
|
+
this.calendar.focusActiveCell();
|
|
33292
|
+
} else if (attempts < MAX_ATTEMPTS) {
|
|
33293
|
+
requestAnimationFrame(tryFocus);
|
|
33294
|
+
}
|
|
33295
|
+
};
|
|
33296
|
+
|
|
33297
|
+
requestAnimationFrame(tryFocus);
|
|
33298
|
+
}
|
|
33299
|
+
|
|
31543
33300
|
/**
|
|
31544
33301
|
* Binds all behavior needed to the dropdown after rendering.
|
|
31545
33302
|
* @private
|
|
@@ -31548,6 +33305,12 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31548
33305
|
configureDropdown() {
|
|
31549
33306
|
this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
|
|
31550
33307
|
|
|
33308
|
+
// The datepicker manages its own open/close lifecycle (Space/Escape/date-select/done).
|
|
33309
|
+
// Prevent the floater's document-level focusin handler from closing the bib
|
|
33310
|
+
// when focus moves from the trigger into the calendar cells (which live inside
|
|
33311
|
+
// a top-layer popover where :focus-within on the dropdown host returns false).
|
|
33312
|
+
this.dropdown.noHideOnThisFocusLoss = true;
|
|
33313
|
+
|
|
31551
33314
|
// Pass label text to the dropdown bib for accessible dialog naming.
|
|
31552
33315
|
// Without this, the fullscreen <dialog> has no accessible name and
|
|
31553
33316
|
// screen readers announce it as just "dialog" with no context.
|
|
@@ -31565,6 +33328,23 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31565
33328
|
this.dropdown.addEventListener('auroDropdown-toggled', () => {
|
|
31566
33329
|
this.notifyDatepickerToggled();
|
|
31567
33330
|
|
|
33331
|
+
if (this.dropdown.isPopoverVisible) {
|
|
33332
|
+
// Reset calendar focus state so it recomputes from the current selection.
|
|
33333
|
+
// Without this, reopening after navigating to a month without a selected
|
|
33334
|
+
// date leaves activeCellDate pointing at a cell in a different month than
|
|
33335
|
+
// what centralDate renders, causing all cells to have tabindex="-1".
|
|
33336
|
+
this.calendar.activeCellDate = null;
|
|
33337
|
+
|
|
33338
|
+
// Show the month containing the selected date (or today) instead of
|
|
33339
|
+
// whichever month the user last navigated to.
|
|
33340
|
+
// Respect consumer-provided centralDate/calendarStartDate if no value is set.
|
|
33341
|
+
if (this.value && this.util.validDateStr(this.value, this.format)) {
|
|
33342
|
+
this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
|
|
33343
|
+
} else if (!this.centralDate && !this.calendarStartDate && !this.minDate) {
|
|
33344
|
+
this.calendarRenderUtil.updateCentralDate(this, new Date());
|
|
33345
|
+
}
|
|
33346
|
+
}
|
|
33347
|
+
|
|
31568
33348
|
// This forces the calendar to render when the dropdown is opened.
|
|
31569
33349
|
// It is not rendered by default
|
|
31570
33350
|
this.calendar.visible = this.dropdown.isPopoverVisible;
|
|
@@ -31597,12 +33377,23 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31597
33377
|
bibEl.open(true);
|
|
31598
33378
|
|
|
31599
33379
|
doubleRaf$3(() => {
|
|
31600
|
-
this.
|
|
33380
|
+
this.focusActiveCellWhenReady();
|
|
31601
33381
|
});
|
|
31602
33382
|
}
|
|
31603
33383
|
});
|
|
31604
33384
|
|
|
31605
33385
|
guardTouchPassthrough$2(this.shadowRoot.querySelector('.calendarWrapper'));
|
|
33386
|
+
} else {
|
|
33387
|
+
// Desktop (non-fullscreen) modal: make the trigger inert so users
|
|
33388
|
+
// cannot interact with the input while the modal bib is open.
|
|
33389
|
+
if (this.dropdown.desktopModal) {
|
|
33390
|
+
this.dropdown.trigger.inert = true;
|
|
33391
|
+
}
|
|
33392
|
+
|
|
33393
|
+
// Desktop (non-fullscreen): focus the active calendar cell.
|
|
33394
|
+
this.dropdown.updateComplete.then(() => {
|
|
33395
|
+
this.focusActiveCellWhenReady();
|
|
33396
|
+
});
|
|
31606
33397
|
}
|
|
31607
33398
|
} else {
|
|
31608
33399
|
// Always clear the inert flag. Only restore focus to the input when the datepicker
|
|
@@ -31648,7 +33439,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31648
33439
|
bibEl.close();
|
|
31649
33440
|
bibEl.open(true);
|
|
31650
33441
|
doubleRaf$3(() => {
|
|
31651
|
-
this.
|
|
33442
|
+
this.focusActiveCellWhenReady();
|
|
31652
33443
|
});
|
|
31653
33444
|
}
|
|
31654
33445
|
});
|
|
@@ -31843,14 +33634,8 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31843
33634
|
|
|
31844
33635
|
if (onEndValue) {
|
|
31845
33636
|
this.valueEnd = newDate;
|
|
31846
|
-
if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
|
|
31847
|
-
this.focus('startDate');
|
|
31848
|
-
}
|
|
31849
33637
|
} else {
|
|
31850
33638
|
this.value = newDate;
|
|
31851
|
-
if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
|
|
31852
|
-
this.focus('endDate');
|
|
31853
|
-
}
|
|
31854
33639
|
}
|
|
31855
33640
|
}
|
|
31856
33641
|
}
|
|
@@ -31890,6 +33675,27 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31890
33675
|
this.resetInputs();
|
|
31891
33676
|
}
|
|
31892
33677
|
|
|
33678
|
+
/**
|
|
33679
|
+
* Checks whether a formatted date string matches a blackout date.
|
|
33680
|
+
* @private
|
|
33681
|
+
* @param {string} dateStr - A date string in the component's configured format.
|
|
33682
|
+
* @returns {boolean} True if the date is in the blackoutDates list.
|
|
33683
|
+
*/
|
|
33684
|
+
isBlackoutDate(dateStr) {
|
|
33685
|
+
if (!Array.isArray(this.blackoutDates) || this.blackoutDates.length === 0 || !dateStr) {
|
|
33686
|
+
return false;
|
|
33687
|
+
}
|
|
33688
|
+
|
|
33689
|
+
const formatted = this.util.toNorthAmericanFormat(dateStr, this.format);
|
|
33690
|
+
if (!this.util.validDateStr(dateStr, this.format)) return false;
|
|
33691
|
+
|
|
33692
|
+
const d = new Date(formatted);
|
|
33693
|
+
const yyyy = d.getFullYear();
|
|
33694
|
+
const mm = String(d.getMonth() + 1).padStart(2, '0');
|
|
33695
|
+
const dd = String(d.getDate()).padStart(2, '0');
|
|
33696
|
+
return this.blackoutDates.includes(`${yyyy}-${mm}-${dd}`);
|
|
33697
|
+
}
|
|
33698
|
+
|
|
31893
33699
|
/**
|
|
31894
33700
|
* Validates value.
|
|
31895
33701
|
* @param {boolean} [force=false] - Whether to force validation.
|
|
@@ -31901,6 +33707,24 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31901
33707
|
}
|
|
31902
33708
|
|
|
31903
33709
|
this.validation.validate(this, force);
|
|
33710
|
+
|
|
33711
|
+
// After standard validation, check blackout dates for typed input
|
|
33712
|
+
if (this.validity !== 'customError') {
|
|
33713
|
+
if (this.isBlackoutDate(this.value) || (this.range && this.isBlackoutDate(this.valueEnd))) {
|
|
33714
|
+
const msg = this.setCustomValidityCustomError || 'Selected date is unavailable';
|
|
33715
|
+
this.validity = 'customError';
|
|
33716
|
+
this.errorMessage = msg;
|
|
33717
|
+
|
|
33718
|
+
this.dispatchEvent(new CustomEvent('auroFormElement-validated', {
|
|
33719
|
+
bubbles: true,
|
|
33720
|
+
composed: true,
|
|
33721
|
+
detail: {
|
|
33722
|
+
validity: this.validity,
|
|
33723
|
+
message: this.errorMessage
|
|
33724
|
+
}
|
|
33725
|
+
}));
|
|
33726
|
+
}
|
|
33727
|
+
}
|
|
31904
33728
|
}
|
|
31905
33729
|
|
|
31906
33730
|
/**
|
|
@@ -31981,6 +33805,9 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
31981
33805
|
|
|
31982
33806
|
if (this.cellClickActive) {
|
|
31983
33807
|
this.cellClickActive = false;
|
|
33808
|
+
this.wasCellClick = true;
|
|
33809
|
+
} else {
|
|
33810
|
+
this.wasCellClick = false;
|
|
31984
33811
|
}
|
|
31985
33812
|
|
|
31986
33813
|
if (this.value && this.util.validDateStr(this.value, this.format)) {
|
|
@@ -32011,16 +33838,44 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32011
33838
|
}
|
|
32012
33839
|
|
|
32013
33840
|
if (this.value && this.value.length === this.inputList[0].lengthForType) {
|
|
32014
|
-
|
|
33841
|
+
// Skip centralDate update when user clicked a cell in range mode
|
|
33842
|
+
// to prevent the displayed months from shifting
|
|
33843
|
+
if (!(this.wasCellClick && this.range)) {
|
|
33844
|
+
this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
|
|
33845
|
+
}
|
|
32015
33846
|
}
|
|
32016
33847
|
|
|
32017
33848
|
this.setHasValue();
|
|
32018
33849
|
}
|
|
32019
33850
|
|
|
33851
|
+
if (changedProperties.has('blackoutDates')) {
|
|
33852
|
+
// Force calendar cells to re-render with updated blackout state.
|
|
33853
|
+
// requestUpdate on the calendar alone is insufficient because cells
|
|
33854
|
+
// don't receive blackoutDates as a bound property. Dispatching the
|
|
33855
|
+
// slot content event triggers handleSlotContent → requestUpdate on each cell.
|
|
33856
|
+
if (this.calendar) {
|
|
33857
|
+
this.calendar.requestUpdate();
|
|
33858
|
+
this.dispatchEvent(new CustomEvent('auroDatePicker-newSlotContent'));
|
|
33859
|
+
}
|
|
33860
|
+
|
|
33861
|
+
// Re-run validation so that a previously valid value that now falls on
|
|
33862
|
+
// a blackout date is flagged, and vice versa.
|
|
33863
|
+
if (this.value || this.valueEnd) {
|
|
33864
|
+
this.validate();
|
|
33865
|
+
}
|
|
33866
|
+
}
|
|
33867
|
+
|
|
32020
33868
|
if (changedProperties.has('valueEnd') && this.inputList[1]) {
|
|
32021
33869
|
|
|
32022
33870
|
this.formattedValueEnd = this.util.toNorthAmericanFormat(this.valueEnd, this.format);
|
|
32023
33871
|
|
|
33872
|
+
if (this.cellClickActive) {
|
|
33873
|
+
this.cellClickActive = false;
|
|
33874
|
+
this.wasCellClick = true;
|
|
33875
|
+
} else {
|
|
33876
|
+
this.wasCellClick = false;
|
|
33877
|
+
}
|
|
33878
|
+
|
|
32024
33879
|
// update the calendar
|
|
32025
33880
|
if (this.valueEnd && this.util.validDateStr(this.valueEnd, this.format)) {
|
|
32026
33881
|
this.calendar.dateTo = this.convertToWcValidTime(this.formattedValueEnd);
|
|
@@ -32048,7 +33903,11 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32048
33903
|
}
|
|
32049
33904
|
|
|
32050
33905
|
if (this.valueEnd && this.valueEnd.length === this.inputList[1].lengthForType) {
|
|
32051
|
-
|
|
33906
|
+
// Skip centralDate update when user clicked a cell in range mode
|
|
33907
|
+
// to prevent the displayed months from shifting
|
|
33908
|
+
if (!this.wasCellClick) {
|
|
33909
|
+
this.calendarRenderUtil.updateCentralDate(this, this.formattedValueEnd);
|
|
33910
|
+
}
|
|
32052
33911
|
}
|
|
32053
33912
|
|
|
32054
33913
|
this.validate();
|
|
@@ -32205,6 +34064,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32205
34064
|
}
|
|
32206
34065
|
|
|
32207
34066
|
firstUpdated() {
|
|
34067
|
+
|
|
32208
34068
|
// Add the tag name as an attribute if it is different than the component name
|
|
32209
34069
|
this.runtimeUtils.handleComponentTagRename(this, 'auro-datepicker');
|
|
32210
34070
|
|
|
@@ -32634,7 +34494,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32634
34494
|
// Base HTML render() handles dropdown and calendar bib
|
|
32635
34495
|
return u$c`
|
|
32636
34496
|
<!-- Hidden slot for clear button aria-label -->
|
|
32637
|
-
<slot name="ariaLabel.input.clear" hidden @slotchange=${this.requestUpdate}></slot>
|
|
34497
|
+
<slot name="ariaLabel.input.clear" hidden @slotchange=${() => this.requestUpdate()}></slot>
|
|
32638
34498
|
|
|
32639
34499
|
<${this.dropdownTag}
|
|
32640
34500
|
appearance="${this.onDark ? 'inverse' : this.appearance}"
|
|
@@ -32651,6 +34511,7 @@ class AuroDatePicker extends AuroElement$6 {
|
|
|
32651
34511
|
.shape="${this.shape}"
|
|
32652
34512
|
.size="${this.size}"
|
|
32653
34513
|
class="${e$3(dropdownElementClassMap)}"
|
|
34514
|
+
desktopModal
|
|
32654
34515
|
disableEventShow
|
|
32655
34516
|
for="dropdownMenu"
|
|
32656
34517
|
part="dropdown"
|
|
@@ -35907,7 +37768,7 @@ function applyKeyboardStrategy$4(component, strategy, options = {}) {
|
|
|
35907
37768
|
});
|
|
35908
37769
|
}
|
|
35909
37770
|
|
|
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}`;
|
|
37771
|
+
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
37772
|
|
|
35912
37773
|
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
37774
|
|
|
@@ -36538,7 +38399,7 @@ let AuroHelpText$7 = class AuroHelpText extends i$4 {
|
|
|
36538
38399
|
}
|
|
36539
38400
|
};
|
|
36540
38401
|
|
|
36541
|
-
var formkitVersion$7 = '
|
|
38402
|
+
var formkitVersion$7 = '202605210248';
|
|
36542
38403
|
|
|
36543
38404
|
let AuroElement$5 = class AuroElement extends i$4 {
|
|
36544
38405
|
static get properties() {
|
|
@@ -36718,6 +38579,7 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
36718
38579
|
_intializeDefaults() {
|
|
36719
38580
|
this.appearance = 'default';
|
|
36720
38581
|
this.chevron = false;
|
|
38582
|
+
this.desktopModal = false;
|
|
36721
38583
|
this.disabled = false;
|
|
36722
38584
|
this.disableKeyboardHandling = false;
|
|
36723
38585
|
this.error = false;
|
|
@@ -36898,6 +38760,14 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
36898
38760
|
reflect: true
|
|
36899
38761
|
},
|
|
36900
38762
|
|
|
38763
|
+
/**
|
|
38764
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
38765
|
+
*/
|
|
38766
|
+
desktopModal: {
|
|
38767
|
+
type: Boolean,
|
|
38768
|
+
reflect: true
|
|
38769
|
+
},
|
|
38770
|
+
|
|
36901
38771
|
/**
|
|
36902
38772
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
36903
38773
|
*/
|
|
@@ -37185,6 +39055,15 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37185
39055
|
|
|
37186
39056
|
disconnectedCallback() {
|
|
37187
39057
|
super.disconnectedCallback();
|
|
39058
|
+
this._clearPageInert();
|
|
39059
|
+
if (this._bibTabHandler) {
|
|
39060
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
39061
|
+
this._bibTabHandler = undefined;
|
|
39062
|
+
}
|
|
39063
|
+
if (this.focusTrap) {
|
|
39064
|
+
this.focusTrap.disconnect();
|
|
39065
|
+
this.focusTrap = undefined;
|
|
39066
|
+
}
|
|
37188
39067
|
if (this.floater) {
|
|
37189
39068
|
this.floater.hideBib('disconnect');
|
|
37190
39069
|
this.floater.disconnect();
|
|
@@ -37212,19 +39091,45 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37212
39091
|
if (this.isPopoverVisible) {
|
|
37213
39092
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
37214
39093
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
37215
|
-
|
|
37216
|
-
this.
|
|
39094
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
39095
|
+
this.updateFocusTrap();
|
|
39096
|
+
|
|
39097
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
39098
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
39099
|
+
this._setPageInert();
|
|
39100
|
+
}
|
|
37217
39101
|
} else {
|
|
37218
39102
|
this.bibElement.value.close();
|
|
39103
|
+
this._clearPageInert();
|
|
37219
39104
|
}
|
|
37220
39105
|
}
|
|
37221
39106
|
|
|
37222
39107
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
37223
39108
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
37224
39109
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
37225
|
-
const useModal = this.isBibFullscreen;
|
|
37226
39110
|
this.bibElement.value.close();
|
|
37227
|
-
this.bibElement.value.open(
|
|
39111
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
39112
|
+
|
|
39113
|
+
// Re-initialize focus management for the new strategy
|
|
39114
|
+
this.updateFocusTrap();
|
|
39115
|
+
|
|
39116
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
39117
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
39118
|
+
this._setPageInert();
|
|
39119
|
+
} else {
|
|
39120
|
+
this._clearPageInert();
|
|
39121
|
+
}
|
|
39122
|
+
}
|
|
39123
|
+
|
|
39124
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
39125
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
39126
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
39127
|
+
this.updateFocusTrap();
|
|
39128
|
+
if (this.desktopModal) {
|
|
39129
|
+
this._setPageInert();
|
|
39130
|
+
} else {
|
|
39131
|
+
this._clearPageInert();
|
|
39132
|
+
}
|
|
37228
39133
|
}
|
|
37229
39134
|
}
|
|
37230
39135
|
|
|
@@ -37234,8 +39139,14 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37234
39139
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
37235
39140
|
*/
|
|
37236
39141
|
handleDropdownToggle(event) {
|
|
37237
|
-
this.updateFocusTrap();
|
|
37238
39142
|
this.isPopoverVisible = event.detail.expanded;
|
|
39143
|
+
|
|
39144
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
39145
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
39146
|
+
if (!this.isPopoverVisible) {
|
|
39147
|
+
this.updateFocusTrap();
|
|
39148
|
+
}
|
|
39149
|
+
|
|
37239
39150
|
const eventType = event.detail.eventType || "unknown";
|
|
37240
39151
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
37241
39152
|
this.trigger.focus();
|
|
@@ -37334,19 +39245,178 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37334
39245
|
* @private
|
|
37335
39246
|
*/
|
|
37336
39247
|
updateFocusTrap() {
|
|
39248
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
39249
|
+
// to prevent duplicate listeners on repeated calls.
|
|
39250
|
+
if (this._bibTabHandler) {
|
|
39251
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
39252
|
+
this._bibTabHandler = undefined;
|
|
39253
|
+
}
|
|
39254
|
+
|
|
39255
|
+
if (this.focusTrap) {
|
|
39256
|
+
this.focusTrap.disconnect();
|
|
39257
|
+
this.focusTrap = undefined;
|
|
39258
|
+
}
|
|
39259
|
+
|
|
37337
39260
|
if (this.isPopoverVisible) {
|
|
37338
39261
|
if (!this.isBibFullscreen) {
|
|
37339
|
-
|
|
37340
|
-
|
|
37341
|
-
|
|
39262
|
+
if (this.desktopModal) {
|
|
39263
|
+
// Desktop modal: trap focus only within the bib content.
|
|
39264
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
39265
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
39266
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
39267
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
39268
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
39269
|
+
// within the bib's focusable elements.
|
|
39270
|
+
this._bibTabHandler = (event) => {
|
|
39271
|
+
if (event.key !== 'Tab') {
|
|
39272
|
+
return;
|
|
39273
|
+
}
|
|
39274
|
+
|
|
39275
|
+
// Collect focusable elements from the bib content.
|
|
39276
|
+
const focusables = getFocusableElements$2(this.bibContent);
|
|
39277
|
+
|
|
39278
|
+
// Fallback: try from slotted content directly
|
|
39279
|
+
if (!focusables.length) {
|
|
39280
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
39281
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
39282
|
+
|
|
39283
|
+
for (const node of assignedNodes) {
|
|
39284
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
39285
|
+
focusables.push(...getFocusableElements$2(node));
|
|
39286
|
+
}
|
|
39287
|
+
}
|
|
39288
|
+
}
|
|
39289
|
+
|
|
39290
|
+
if (!focusables.length) {
|
|
39291
|
+
return;
|
|
39292
|
+
}
|
|
39293
|
+
|
|
39294
|
+
event.preventDefault();
|
|
39295
|
+
|
|
39296
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
39297
|
+
|
|
39298
|
+
// Walk the active element chain through shadow roots
|
|
39299
|
+
const actives = this._getActiveElements();
|
|
39300
|
+
|
|
39301
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
39302
|
+
|
|
39303
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
39304
|
+
// Focus is not on a known element — move to first/last
|
|
39305
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
39306
|
+
}
|
|
39307
|
+
|
|
39308
|
+
// Try each element in order, skipping any that can't receive focus
|
|
39309
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
39310
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
39311
|
+
let nextIdx = idx + direction;
|
|
39312
|
+
|
|
39313
|
+
// Wrap around
|
|
39314
|
+
if (nextIdx < 0) {
|
|
39315
|
+
nextIdx = focusables.length - 1;
|
|
39316
|
+
} else if (nextIdx >= focusables.length) {
|
|
39317
|
+
nextIdx = 0;
|
|
39318
|
+
}
|
|
39319
|
+
|
|
39320
|
+
focusables[nextIdx].focus();
|
|
39321
|
+
|
|
39322
|
+
// Verify focus actually moved to the target
|
|
39323
|
+
const newActives = this._getActiveElements();
|
|
39324
|
+
|
|
39325
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
39326
|
+
return;
|
|
39327
|
+
}
|
|
39328
|
+
|
|
39329
|
+
// Focus didn't stick — skip this element and try the next
|
|
39330
|
+
idx = nextIdx;
|
|
39331
|
+
}
|
|
39332
|
+
};
|
|
39333
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
39334
|
+
|
|
39335
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
39336
|
+
requestAnimationFrame(() => {
|
|
39337
|
+
const focusables = getFocusableElements$2(this.bibContent);
|
|
39338
|
+
if (focusables.length) {
|
|
39339
|
+
focusables[0].focus();
|
|
39340
|
+
}
|
|
39341
|
+
});
|
|
39342
|
+
} else {
|
|
39343
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
39344
|
+
this.focusTrap = new FocusTrap$2(this.bibContent);
|
|
39345
|
+
this.focusTrap.focusFirstElement();
|
|
39346
|
+
}
|
|
37342
39347
|
}
|
|
37343
39348
|
// Fullscreen: showModal() provides native focus trapping
|
|
39349
|
+
}
|
|
39350
|
+
}
|
|
39351
|
+
|
|
39352
|
+
/**
|
|
39353
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
39354
|
+
* @private
|
|
39355
|
+
* @returns {Array<HTMLElement>}
|
|
39356
|
+
*/
|
|
39357
|
+
_getActiveElements() {
|
|
39358
|
+
let { activeElement } = document;
|
|
39359
|
+
const actives = [activeElement];
|
|
39360
|
+
|
|
39361
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
39362
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
39363
|
+
actives.push(activeElement);
|
|
39364
|
+
}
|
|
39365
|
+
|
|
39366
|
+
return actives;
|
|
39367
|
+
}
|
|
39368
|
+
|
|
39369
|
+
/**
|
|
39370
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
39371
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
39372
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
39373
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
39374
|
+
* to ensure all page content outside the host subtree is inert.
|
|
39375
|
+
* @private
|
|
39376
|
+
*/
|
|
39377
|
+
_setPageInert() {
|
|
39378
|
+
if (this._inertSiblings) {
|
|
37344
39379
|
return;
|
|
37345
39380
|
}
|
|
37346
39381
|
|
|
37347
|
-
|
|
37348
|
-
|
|
37349
|
-
|
|
39382
|
+
this._inertSiblings = [];
|
|
39383
|
+
|
|
39384
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
39385
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
39386
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
39387
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
39388
|
+
let host = this;
|
|
39389
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
39390
|
+
host = host.getRootNode().host;
|
|
39391
|
+
}
|
|
39392
|
+
|
|
39393
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
39394
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
39395
|
+
let current = host;
|
|
39396
|
+
while (current.parentElement) {
|
|
39397
|
+
const parent = current.parentElement;
|
|
39398
|
+
for (const sibling of parent.children) {
|
|
39399
|
+
if (sibling !== current) {
|
|
39400
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
39401
|
+
sibling.inert = true;
|
|
39402
|
+
}
|
|
39403
|
+
}
|
|
39404
|
+
current = parent;
|
|
39405
|
+
}
|
|
39406
|
+
}
|
|
39407
|
+
|
|
39408
|
+
/**
|
|
39409
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
39410
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
39411
|
+
* not inadvertently re-enabled.
|
|
39412
|
+
* @private
|
|
39413
|
+
*/
|
|
39414
|
+
_clearPageInert() {
|
|
39415
|
+
if (this._inertSiblings) {
|
|
39416
|
+
for (const entry of this._inertSiblings) {
|
|
39417
|
+
entry.element.inert = entry.wasInert;
|
|
39418
|
+
}
|
|
39419
|
+
this._inertSiblings = undefined;
|
|
37350
39420
|
}
|
|
37351
39421
|
}
|
|
37352
39422
|
|
|
@@ -37585,6 +39655,7 @@ let AuroDropdown$2 = class AuroDropdown extends AuroElement$5 {
|
|
|
37585
39655
|
shape="${this.shape}"
|
|
37586
39656
|
?data-show="${this.isPopoverVisible}"
|
|
37587
39657
|
?isfullscreen="${this.isBibFullscreen}"
|
|
39658
|
+
?desktopmodal="${this.desktopModal}"
|
|
37588
39659
|
.dialogLabel="${this.bibDialogLabel}"
|
|
37589
39660
|
${n$6(this.bibElement)}
|
|
37590
39661
|
>
|
|
@@ -39139,7 +41210,7 @@ let AuroHelpText$6 = class AuroHelpText extends i$4 {
|
|
|
39139
41210
|
}
|
|
39140
41211
|
};
|
|
39141
41212
|
|
|
39142
|
-
var formkitVersion$6 = '
|
|
41213
|
+
var formkitVersion$6 = '202605210248';
|
|
39143
41214
|
|
|
39144
41215
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
39145
41216
|
// See LICENSE in the project root for license information.
|
|
@@ -39877,6 +41948,14 @@ let AuroBibtemplate$2 = class AuroBibtemplate extends i$4 {
|
|
|
39877
41948
|
large: {
|
|
39878
41949
|
type: Boolean,
|
|
39879
41950
|
reflect: true
|
|
41951
|
+
},
|
|
41952
|
+
|
|
41953
|
+
/**
|
|
41954
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
41955
|
+
*/
|
|
41956
|
+
showFooter: {
|
|
41957
|
+
type: Boolean,
|
|
41958
|
+
reflect: true
|
|
39880
41959
|
}
|
|
39881
41960
|
};
|
|
39882
41961
|
}
|
|
@@ -39979,7 +42058,7 @@ let AuroBibtemplate$2 = class AuroBibtemplate extends i$4 {
|
|
|
39979
42058
|
<slot></slot>
|
|
39980
42059
|
</div>
|
|
39981
42060
|
|
|
39982
|
-
${this.isFullscreen ? u$c`
|
|
42061
|
+
${this.isFullscreen || this.showFooter ? u$c`
|
|
39983
42062
|
<div id="footerContainer">
|
|
39984
42063
|
<slot name="footer"></slot>
|
|
39985
42064
|
</div>` : null}
|
|
@@ -42557,7 +44636,7 @@ let AuroHelpText$5 = class AuroHelpText extends i$4 {
|
|
|
42557
44636
|
}
|
|
42558
44637
|
};
|
|
42559
44638
|
|
|
42560
|
-
var formkitVersion$5 = '
|
|
44639
|
+
var formkitVersion$5 = '202605210248';
|
|
42561
44640
|
|
|
42562
44641
|
// Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
|
|
42563
44642
|
// See LICENSE in the project root for license information.
|
|
@@ -44729,7 +46808,7 @@ let AuroHelpText$4 = class AuroHelpText extends i$4 {
|
|
|
44729
46808
|
}
|
|
44730
46809
|
};
|
|
44731
46810
|
|
|
44732
|
-
var formkitVersion$4 = '
|
|
46811
|
+
var formkitVersion$4 = '202605210248';
|
|
44733
46812
|
|
|
44734
46813
|
// Copyright (c) 2026 Alaska Airlines. All rights reserved. Licensed under the Apache-2.0 license
|
|
44735
46814
|
// See LICENSE in the project root for license information.
|
|
@@ -46370,7 +48449,7 @@ const comboboxKeyboardStrategy = {
|
|
|
46370
48449
|
|
|
46371
48450
|
// navigate if bib is open otherwise open it
|
|
46372
48451
|
if (component.dropdown.isPopoverVisible) {
|
|
46373
|
-
if (evt.altKey || evt.
|
|
48452
|
+
if (evt.altKey || evt.metaKey) {
|
|
46374
48453
|
component.activateLastEnabledAvailableOption();
|
|
46375
48454
|
} else {
|
|
46376
48455
|
navigateArrow$1(component, 'down');
|
|
@@ -46393,7 +48472,7 @@ const comboboxKeyboardStrategy = {
|
|
|
46393
48472
|
|
|
46394
48473
|
// navigate if bib is open otherwise open it
|
|
46395
48474
|
if (component.dropdown.isPopoverVisible) {
|
|
46396
|
-
if (evt.altKey || evt.
|
|
48475
|
+
if (evt.altKey || evt.metaKey) {
|
|
46397
48476
|
component.activateFirstEnabledAvailableOption();
|
|
46398
48477
|
} else {
|
|
46399
48478
|
navigateArrow$1(component, 'up');
|
|
@@ -49718,7 +51797,7 @@ function applyKeyboardStrategy$2(component, strategy, options = {}) {
|
|
|
49718
51797
|
});
|
|
49719
51798
|
}
|
|
49720
51799
|
|
|
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}`;
|
|
51800
|
+
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
51801
|
|
|
49723
51802
|
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
51803
|
|
|
@@ -50349,7 +52428,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$4 {
|
|
|
50349
52428
|
}
|
|
50350
52429
|
};
|
|
50351
52430
|
|
|
50352
|
-
var formkitVersion$2 = '
|
|
52431
|
+
var formkitVersion$2 = '202605210248';
|
|
50353
52432
|
|
|
50354
52433
|
let AuroElement$2$1 = class AuroElement extends i$4 {
|
|
50355
52434
|
static get properties() {
|
|
@@ -50529,6 +52608,7 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
50529
52608
|
_intializeDefaults() {
|
|
50530
52609
|
this.appearance = 'default';
|
|
50531
52610
|
this.chevron = false;
|
|
52611
|
+
this.desktopModal = false;
|
|
50532
52612
|
this.disabled = false;
|
|
50533
52613
|
this.disableKeyboardHandling = false;
|
|
50534
52614
|
this.error = false;
|
|
@@ -50709,6 +52789,14 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
50709
52789
|
reflect: true
|
|
50710
52790
|
},
|
|
50711
52791
|
|
|
52792
|
+
/**
|
|
52793
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
52794
|
+
*/
|
|
52795
|
+
desktopModal: {
|
|
52796
|
+
type: Boolean,
|
|
52797
|
+
reflect: true
|
|
52798
|
+
},
|
|
52799
|
+
|
|
50712
52800
|
/**
|
|
50713
52801
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
50714
52802
|
*/
|
|
@@ -50996,6 +53084,15 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
50996
53084
|
|
|
50997
53085
|
disconnectedCallback() {
|
|
50998
53086
|
super.disconnectedCallback();
|
|
53087
|
+
this._clearPageInert();
|
|
53088
|
+
if (this._bibTabHandler) {
|
|
53089
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
53090
|
+
this._bibTabHandler = undefined;
|
|
53091
|
+
}
|
|
53092
|
+
if (this.focusTrap) {
|
|
53093
|
+
this.focusTrap.disconnect();
|
|
53094
|
+
this.focusTrap = undefined;
|
|
53095
|
+
}
|
|
50999
53096
|
if (this.floater) {
|
|
51000
53097
|
this.floater.hideBib('disconnect');
|
|
51001
53098
|
this.floater.disconnect();
|
|
@@ -51023,19 +53120,45 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
51023
53120
|
if (this.isPopoverVisible) {
|
|
51024
53121
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
51025
53122
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
51026
|
-
|
|
51027
|
-
this.
|
|
53123
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
53124
|
+
this.updateFocusTrap();
|
|
53125
|
+
|
|
53126
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
53127
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
53128
|
+
this._setPageInert();
|
|
53129
|
+
}
|
|
51028
53130
|
} else {
|
|
51029
53131
|
this.bibElement.value.close();
|
|
53132
|
+
this._clearPageInert();
|
|
51030
53133
|
}
|
|
51031
53134
|
}
|
|
51032
53135
|
|
|
51033
53136
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
51034
53137
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
51035
53138
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
51036
|
-
const useModal = this.isBibFullscreen;
|
|
51037
53139
|
this.bibElement.value.close();
|
|
51038
|
-
this.bibElement.value.open(
|
|
53140
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
53141
|
+
|
|
53142
|
+
// Re-initialize focus management for the new strategy
|
|
53143
|
+
this.updateFocusTrap();
|
|
53144
|
+
|
|
53145
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
53146
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
53147
|
+
this._setPageInert();
|
|
53148
|
+
} else {
|
|
53149
|
+
this._clearPageInert();
|
|
53150
|
+
}
|
|
53151
|
+
}
|
|
53152
|
+
|
|
53153
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
53154
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
53155
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
53156
|
+
this.updateFocusTrap();
|
|
53157
|
+
if (this.desktopModal) {
|
|
53158
|
+
this._setPageInert();
|
|
53159
|
+
} else {
|
|
53160
|
+
this._clearPageInert();
|
|
53161
|
+
}
|
|
51039
53162
|
}
|
|
51040
53163
|
}
|
|
51041
53164
|
|
|
@@ -51045,8 +53168,14 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
51045
53168
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
51046
53169
|
*/
|
|
51047
53170
|
handleDropdownToggle(event) {
|
|
51048
|
-
this.updateFocusTrap();
|
|
51049
53171
|
this.isPopoverVisible = event.detail.expanded;
|
|
53172
|
+
|
|
53173
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
53174
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
53175
|
+
if (!this.isPopoverVisible) {
|
|
53176
|
+
this.updateFocusTrap();
|
|
53177
|
+
}
|
|
53178
|
+
|
|
51050
53179
|
const eventType = event.detail.eventType || "unknown";
|
|
51051
53180
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
51052
53181
|
this.trigger.focus();
|
|
@@ -51145,19 +53274,178 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
51145
53274
|
* @private
|
|
51146
53275
|
*/
|
|
51147
53276
|
updateFocusTrap() {
|
|
53277
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
53278
|
+
// to prevent duplicate listeners on repeated calls.
|
|
53279
|
+
if (this._bibTabHandler) {
|
|
53280
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
53281
|
+
this._bibTabHandler = undefined;
|
|
53282
|
+
}
|
|
53283
|
+
|
|
53284
|
+
if (this.focusTrap) {
|
|
53285
|
+
this.focusTrap.disconnect();
|
|
53286
|
+
this.focusTrap = undefined;
|
|
53287
|
+
}
|
|
53288
|
+
|
|
51148
53289
|
if (this.isPopoverVisible) {
|
|
51149
53290
|
if (!this.isBibFullscreen) {
|
|
51150
|
-
|
|
51151
|
-
|
|
51152
|
-
|
|
53291
|
+
if (this.desktopModal) {
|
|
53292
|
+
// Desktop modal: trap focus only within the bib content.
|
|
53293
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
53294
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
53295
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
53296
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
53297
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
53298
|
+
// within the bib's focusable elements.
|
|
53299
|
+
this._bibTabHandler = (event) => {
|
|
53300
|
+
if (event.key !== 'Tab') {
|
|
53301
|
+
return;
|
|
53302
|
+
}
|
|
53303
|
+
|
|
53304
|
+
// Collect focusable elements from the bib content.
|
|
53305
|
+
const focusables = getFocusableElements$1(this.bibContent);
|
|
53306
|
+
|
|
53307
|
+
// Fallback: try from slotted content directly
|
|
53308
|
+
if (!focusables.length) {
|
|
53309
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
53310
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
53311
|
+
|
|
53312
|
+
for (const node of assignedNodes) {
|
|
53313
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
53314
|
+
focusables.push(...getFocusableElements$1(node));
|
|
53315
|
+
}
|
|
53316
|
+
}
|
|
53317
|
+
}
|
|
53318
|
+
|
|
53319
|
+
if (!focusables.length) {
|
|
53320
|
+
return;
|
|
53321
|
+
}
|
|
53322
|
+
|
|
53323
|
+
event.preventDefault();
|
|
53324
|
+
|
|
53325
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
53326
|
+
|
|
53327
|
+
// Walk the active element chain through shadow roots
|
|
53328
|
+
const actives = this._getActiveElements();
|
|
53329
|
+
|
|
53330
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
53331
|
+
|
|
53332
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
53333
|
+
// Focus is not on a known element — move to first/last
|
|
53334
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
53335
|
+
}
|
|
53336
|
+
|
|
53337
|
+
// Try each element in order, skipping any that can't receive focus
|
|
53338
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
53339
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
53340
|
+
let nextIdx = idx + direction;
|
|
53341
|
+
|
|
53342
|
+
// Wrap around
|
|
53343
|
+
if (nextIdx < 0) {
|
|
53344
|
+
nextIdx = focusables.length - 1;
|
|
53345
|
+
} else if (nextIdx >= focusables.length) {
|
|
53346
|
+
nextIdx = 0;
|
|
53347
|
+
}
|
|
53348
|
+
|
|
53349
|
+
focusables[nextIdx].focus();
|
|
53350
|
+
|
|
53351
|
+
// Verify focus actually moved to the target
|
|
53352
|
+
const newActives = this._getActiveElements();
|
|
53353
|
+
|
|
53354
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
53355
|
+
return;
|
|
53356
|
+
}
|
|
53357
|
+
|
|
53358
|
+
// Focus didn't stick — skip this element and try the next
|
|
53359
|
+
idx = nextIdx;
|
|
53360
|
+
}
|
|
53361
|
+
};
|
|
53362
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
53363
|
+
|
|
53364
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
53365
|
+
requestAnimationFrame(() => {
|
|
53366
|
+
const focusables = getFocusableElements$1(this.bibContent);
|
|
53367
|
+
if (focusables.length) {
|
|
53368
|
+
focusables[0].focus();
|
|
53369
|
+
}
|
|
53370
|
+
});
|
|
53371
|
+
} else {
|
|
53372
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
53373
|
+
this.focusTrap = new FocusTrap$1(this.bibContent);
|
|
53374
|
+
this.focusTrap.focusFirstElement();
|
|
53375
|
+
}
|
|
51153
53376
|
}
|
|
51154
53377
|
// Fullscreen: showModal() provides native focus trapping
|
|
53378
|
+
}
|
|
53379
|
+
}
|
|
53380
|
+
|
|
53381
|
+
/**
|
|
53382
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
53383
|
+
* @private
|
|
53384
|
+
* @returns {Array<HTMLElement>}
|
|
53385
|
+
*/
|
|
53386
|
+
_getActiveElements() {
|
|
53387
|
+
let { activeElement } = document;
|
|
53388
|
+
const actives = [activeElement];
|
|
53389
|
+
|
|
53390
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
53391
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
53392
|
+
actives.push(activeElement);
|
|
53393
|
+
}
|
|
53394
|
+
|
|
53395
|
+
return actives;
|
|
53396
|
+
}
|
|
53397
|
+
|
|
53398
|
+
/**
|
|
53399
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
53400
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
53401
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
53402
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
53403
|
+
* to ensure all page content outside the host subtree is inert.
|
|
53404
|
+
* @private
|
|
53405
|
+
*/
|
|
53406
|
+
_setPageInert() {
|
|
53407
|
+
if (this._inertSiblings) {
|
|
51155
53408
|
return;
|
|
51156
53409
|
}
|
|
51157
53410
|
|
|
51158
|
-
|
|
51159
|
-
|
|
51160
|
-
|
|
53411
|
+
this._inertSiblings = [];
|
|
53412
|
+
|
|
53413
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
53414
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
53415
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
53416
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
53417
|
+
let host = this;
|
|
53418
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
53419
|
+
host = host.getRootNode().host;
|
|
53420
|
+
}
|
|
53421
|
+
|
|
53422
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
53423
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
53424
|
+
let current = host;
|
|
53425
|
+
while (current.parentElement) {
|
|
53426
|
+
const parent = current.parentElement;
|
|
53427
|
+
for (const sibling of parent.children) {
|
|
53428
|
+
if (sibling !== current) {
|
|
53429
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
53430
|
+
sibling.inert = true;
|
|
53431
|
+
}
|
|
53432
|
+
}
|
|
53433
|
+
current = parent;
|
|
53434
|
+
}
|
|
53435
|
+
}
|
|
53436
|
+
|
|
53437
|
+
/**
|
|
53438
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
53439
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
53440
|
+
* not inadvertently re-enabled.
|
|
53441
|
+
* @private
|
|
53442
|
+
*/
|
|
53443
|
+
_clearPageInert() {
|
|
53444
|
+
if (this._inertSiblings) {
|
|
53445
|
+
for (const entry of this._inertSiblings) {
|
|
53446
|
+
entry.element.inert = entry.wasInert;
|
|
53447
|
+
}
|
|
53448
|
+
this._inertSiblings = undefined;
|
|
51161
53449
|
}
|
|
51162
53450
|
}
|
|
51163
53451
|
|
|
@@ -51396,6 +53684,7 @@ let AuroDropdown$1 = class AuroDropdown extends AuroElement$2$1 {
|
|
|
51396
53684
|
shape="${this.shape}"
|
|
51397
53685
|
?data-show="${this.isPopoverVisible}"
|
|
51398
53686
|
?isfullscreen="${this.isBibFullscreen}"
|
|
53687
|
+
?desktopmodal="${this.desktopModal}"
|
|
51399
53688
|
.dialogLabel="${this.bibDialogLabel}"
|
|
51400
53689
|
${n$6(this.bibElement)}
|
|
51401
53690
|
>
|
|
@@ -58094,7 +60383,7 @@ let AuroHelpText$1$1 = class AuroHelpText extends i$4 {
|
|
|
58094
60383
|
}
|
|
58095
60384
|
};
|
|
58096
60385
|
|
|
58097
|
-
var formkitVersion$1$1 = '
|
|
60386
|
+
var formkitVersion$1$1 = '202605210248';
|
|
58098
60387
|
|
|
58099
60388
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
58100
60389
|
// See LICENSE in the project root for license information.
|
|
@@ -59048,6 +61337,14 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$4 {
|
|
|
59048
61337
|
large: {
|
|
59049
61338
|
type: Boolean,
|
|
59050
61339
|
reflect: true
|
|
61340
|
+
},
|
|
61341
|
+
|
|
61342
|
+
/**
|
|
61343
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
61344
|
+
*/
|
|
61345
|
+
showFooter: {
|
|
61346
|
+
type: Boolean,
|
|
61347
|
+
reflect: true
|
|
59051
61348
|
}
|
|
59052
61349
|
};
|
|
59053
61350
|
}
|
|
@@ -59150,7 +61447,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$4 {
|
|
|
59150
61447
|
<slot></slot>
|
|
59151
61448
|
</div>
|
|
59152
61449
|
|
|
59153
|
-
${this.isFullscreen ? u$c`
|
|
61450
|
+
${this.isFullscreen || this.showFooter ? u$c`
|
|
59154
61451
|
<div id="footerContainer">
|
|
59155
61452
|
<slot name="footer"></slot>
|
|
59156
61453
|
</div>` : null}
|
|
@@ -59159,7 +61456,7 @@ let AuroBibtemplate$1 = class AuroBibtemplate extends i$4 {
|
|
|
59159
61456
|
}
|
|
59160
61457
|
};
|
|
59161
61458
|
|
|
59162
|
-
var formkitVersion$3 = '
|
|
61459
|
+
var formkitVersion$3 = '202605210248';
|
|
59163
61460
|
|
|
59164
61461
|
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
61462
|
|
|
@@ -64645,30 +66942,28 @@ function navigateArrow(component, direction, options = {}) {
|
|
|
64645
66942
|
const selectKeyboardStrategy = {
|
|
64646
66943
|
ArrowDown(component, evt, ctx) {
|
|
64647
66944
|
evt.preventDefault();
|
|
64648
|
-
if (
|
|
64649
|
-
|
|
64650
|
-
|
|
64651
|
-
|
|
64652
|
-
} else {
|
|
64653
|
-
navigateArrow(component, 'down', { ctx });
|
|
64654
|
-
}
|
|
64655
|
-
} else {
|
|
64656
|
-
component.dropdown.show();
|
|
66945
|
+
if (evt.altKey || evt.metaKey) {
|
|
66946
|
+
// navigate to last enabled option
|
|
66947
|
+
selectKeyboardStrategy.End(component, evt, ctx);
|
|
66948
|
+
return;
|
|
64657
66949
|
}
|
|
66950
|
+
navigateArrow(component, 'down', {
|
|
66951
|
+
ctx,
|
|
66952
|
+
showFn: () => component.dropdown.show(),
|
|
66953
|
+
});
|
|
64658
66954
|
},
|
|
64659
66955
|
|
|
64660
66956
|
ArrowUp(component, evt, ctx) {
|
|
64661
66957
|
evt.preventDefault();
|
|
64662
|
-
if (
|
|
64663
|
-
|
|
64664
|
-
|
|
64665
|
-
|
|
64666
|
-
} else {
|
|
64667
|
-
navigateArrow(component, 'up', { ctx });
|
|
64668
|
-
}
|
|
64669
|
-
} else {
|
|
64670
|
-
component.dropdown.show();
|
|
66958
|
+
if (evt.altKey || evt.metaKey) {
|
|
66959
|
+
// navigate to first enabled option
|
|
66960
|
+
selectKeyboardStrategy.Home(component, evt, ctx);
|
|
66961
|
+
return;
|
|
64671
66962
|
}
|
|
66963
|
+
navigateArrow(component, 'up', {
|
|
66964
|
+
ctx,
|
|
66965
|
+
showFn: () => component.dropdown.show(),
|
|
66966
|
+
});
|
|
64672
66967
|
},
|
|
64673
66968
|
|
|
64674
66969
|
Escape(component, evt, ctx) {
|
|
@@ -68020,7 +70315,7 @@ function applyKeyboardStrategy(component, strategy, options = {}) {
|
|
|
68020
70315
|
});
|
|
68021
70316
|
}
|
|
68022
70317
|
|
|
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}`;
|
|
70318
|
+
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
70319
|
|
|
68025
70320
|
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
70321
|
|
|
@@ -68651,7 +70946,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$4 {
|
|
|
68651
70946
|
}
|
|
68652
70947
|
};
|
|
68653
70948
|
|
|
68654
|
-
var formkitVersion$1 = '
|
|
70949
|
+
var formkitVersion$1 = '202605210248';
|
|
68655
70950
|
|
|
68656
70951
|
class AuroElement extends i$4 {
|
|
68657
70952
|
static get properties() {
|
|
@@ -68831,6 +71126,7 @@ class AuroDropdown extends AuroElement {
|
|
|
68831
71126
|
_intializeDefaults() {
|
|
68832
71127
|
this.appearance = 'default';
|
|
68833
71128
|
this.chevron = false;
|
|
71129
|
+
this.desktopModal = false;
|
|
68834
71130
|
this.disabled = false;
|
|
68835
71131
|
this.disableKeyboardHandling = false;
|
|
68836
71132
|
this.error = false;
|
|
@@ -69011,6 +71307,14 @@ class AuroDropdown extends AuroElement {
|
|
|
69011
71307
|
reflect: true
|
|
69012
71308
|
},
|
|
69013
71309
|
|
|
71310
|
+
/**
|
|
71311
|
+
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
71312
|
+
*/
|
|
71313
|
+
desktopModal: {
|
|
71314
|
+
type: Boolean,
|
|
71315
|
+
reflect: true
|
|
71316
|
+
},
|
|
71317
|
+
|
|
69014
71318
|
/**
|
|
69015
71319
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
69016
71320
|
*/
|
|
@@ -69298,6 +71602,15 @@ class AuroDropdown extends AuroElement {
|
|
|
69298
71602
|
|
|
69299
71603
|
disconnectedCallback() {
|
|
69300
71604
|
super.disconnectedCallback();
|
|
71605
|
+
this._clearPageInert();
|
|
71606
|
+
if (this._bibTabHandler) {
|
|
71607
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
71608
|
+
this._bibTabHandler = undefined;
|
|
71609
|
+
}
|
|
71610
|
+
if (this.focusTrap) {
|
|
71611
|
+
this.focusTrap.disconnect();
|
|
71612
|
+
this.focusTrap = undefined;
|
|
71613
|
+
}
|
|
69301
71614
|
if (this.floater) {
|
|
69302
71615
|
this.floater.hideBib('disconnect');
|
|
69303
71616
|
this.floater.disconnect();
|
|
@@ -69325,19 +71638,45 @@ class AuroDropdown extends AuroElement {
|
|
|
69325
71638
|
if (this.isPopoverVisible) {
|
|
69326
71639
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
69327
71640
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
69328
|
-
|
|
69329
|
-
this.
|
|
71641
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
71642
|
+
this.updateFocusTrap();
|
|
71643
|
+
|
|
71644
|
+
// Desktop modal: make siblings inert so content outside is not interactive
|
|
71645
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
71646
|
+
this._setPageInert();
|
|
71647
|
+
}
|
|
69330
71648
|
} else {
|
|
69331
71649
|
this.bibElement.value.close();
|
|
71650
|
+
this._clearPageInert();
|
|
69332
71651
|
}
|
|
69333
71652
|
}
|
|
69334
71653
|
|
|
69335
71654
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
69336
71655
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
69337
71656
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
69338
|
-
const useModal = this.isBibFullscreen;
|
|
69339
71657
|
this.bibElement.value.close();
|
|
69340
|
-
this.bibElement.value.open(
|
|
71658
|
+
this.bibElement.value.open(this.isBibFullscreen);
|
|
71659
|
+
|
|
71660
|
+
// Re-initialize focus management for the new strategy
|
|
71661
|
+
this.updateFocusTrap();
|
|
71662
|
+
|
|
71663
|
+
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
71664
|
+
if (this.desktopModal && !this.isBibFullscreen) {
|
|
71665
|
+
this._setPageInert();
|
|
71666
|
+
} else {
|
|
71667
|
+
this._clearPageInert();
|
|
71668
|
+
}
|
|
71669
|
+
}
|
|
71670
|
+
|
|
71671
|
+
// Handle desktopModal toggled while the dropdown is already open.
|
|
71672
|
+
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
71673
|
+
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
71674
|
+
this.updateFocusTrap();
|
|
71675
|
+
if (this.desktopModal) {
|
|
71676
|
+
this._setPageInert();
|
|
71677
|
+
} else {
|
|
71678
|
+
this._clearPageInert();
|
|
71679
|
+
}
|
|
69341
71680
|
}
|
|
69342
71681
|
}
|
|
69343
71682
|
|
|
@@ -69347,8 +71686,14 @@ class AuroDropdown extends AuroElement {
|
|
|
69347
71686
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
69348
71687
|
*/
|
|
69349
71688
|
handleDropdownToggle(event) {
|
|
69350
|
-
this.updateFocusTrap();
|
|
69351
71689
|
this.isPopoverVisible = event.detail.expanded;
|
|
71690
|
+
|
|
71691
|
+
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
71692
|
+
// after the dialog is open so getFocusableElements can find content.
|
|
71693
|
+
if (!this.isPopoverVisible) {
|
|
71694
|
+
this.updateFocusTrap();
|
|
71695
|
+
}
|
|
71696
|
+
|
|
69352
71697
|
const eventType = event.detail.eventType || "unknown";
|
|
69353
71698
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
69354
71699
|
this.trigger.focus();
|
|
@@ -69447,19 +71792,178 @@ class AuroDropdown extends AuroElement {
|
|
|
69447
71792
|
* @private
|
|
69448
71793
|
*/
|
|
69449
71794
|
updateFocusTrap() {
|
|
71795
|
+
// Always clean up existing handlers/traps before setting up new ones
|
|
71796
|
+
// to prevent duplicate listeners on repeated calls.
|
|
71797
|
+
if (this._bibTabHandler) {
|
|
71798
|
+
this.removeEventListener('keydown', this._bibTabHandler);
|
|
71799
|
+
this._bibTabHandler = undefined;
|
|
71800
|
+
}
|
|
71801
|
+
|
|
71802
|
+
if (this.focusTrap) {
|
|
71803
|
+
this.focusTrap.disconnect();
|
|
71804
|
+
this.focusTrap = undefined;
|
|
71805
|
+
}
|
|
71806
|
+
|
|
69450
71807
|
if (this.isPopoverVisible) {
|
|
69451
71808
|
if (!this.isBibFullscreen) {
|
|
69452
|
-
|
|
69453
|
-
|
|
69454
|
-
|
|
71809
|
+
if (this.desktopModal) {
|
|
71810
|
+
// Desktop modal: trap focus only within the bib content.
|
|
71811
|
+
// Can't use FocusTrap on the bib element because keydown events
|
|
71812
|
+
// from slotted content bubble through the dropdown host (light DOM),
|
|
71813
|
+
// not through the bib (shadow projection target). Using FocusTrap
|
|
71814
|
+
// on the dropdown would include the trigger in the tab cycle.
|
|
71815
|
+
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
71816
|
+
// within the bib's focusable elements.
|
|
71817
|
+
this._bibTabHandler = (event) => {
|
|
71818
|
+
if (event.key !== 'Tab') {
|
|
71819
|
+
return;
|
|
71820
|
+
}
|
|
71821
|
+
|
|
71822
|
+
// Collect focusable elements from the bib content.
|
|
71823
|
+
const focusables = getFocusableElements(this.bibContent);
|
|
71824
|
+
|
|
71825
|
+
// Fallback: try from slotted content directly
|
|
71826
|
+
if (!focusables.length) {
|
|
71827
|
+
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
71828
|
+
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
71829
|
+
|
|
71830
|
+
for (const node of assignedNodes) {
|
|
71831
|
+
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
71832
|
+
focusables.push(...getFocusableElements(node));
|
|
71833
|
+
}
|
|
71834
|
+
}
|
|
71835
|
+
}
|
|
71836
|
+
|
|
71837
|
+
if (!focusables.length) {
|
|
71838
|
+
return;
|
|
71839
|
+
}
|
|
71840
|
+
|
|
71841
|
+
event.preventDefault();
|
|
71842
|
+
|
|
71843
|
+
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
71844
|
+
|
|
71845
|
+
// Walk the active element chain through shadow roots
|
|
71846
|
+
const actives = this._getActiveElements();
|
|
71847
|
+
|
|
71848
|
+
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
71849
|
+
|
|
71850
|
+
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
71851
|
+
// Focus is not on a known element — move to first/last
|
|
71852
|
+
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
71853
|
+
}
|
|
71854
|
+
|
|
71855
|
+
// Try each element in order, skipping any that can't receive focus
|
|
71856
|
+
// (e.g. hidden elements, elements in collapsed sections)
|
|
71857
|
+
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
71858
|
+
let nextIdx = idx + direction;
|
|
71859
|
+
|
|
71860
|
+
// Wrap around
|
|
71861
|
+
if (nextIdx < 0) {
|
|
71862
|
+
nextIdx = focusables.length - 1;
|
|
71863
|
+
} else if (nextIdx >= focusables.length) {
|
|
71864
|
+
nextIdx = 0;
|
|
71865
|
+
}
|
|
71866
|
+
|
|
71867
|
+
focusables[nextIdx].focus();
|
|
71868
|
+
|
|
71869
|
+
// Verify focus actually moved to the target
|
|
71870
|
+
const newActives = this._getActiveElements();
|
|
71871
|
+
|
|
71872
|
+
if (newActives.includes(focusables[nextIdx])) {
|
|
71873
|
+
return;
|
|
71874
|
+
}
|
|
71875
|
+
|
|
71876
|
+
// Focus didn't stick — skip this element and try the next
|
|
71877
|
+
idx = nextIdx;
|
|
71878
|
+
}
|
|
71879
|
+
};
|
|
71880
|
+
this.addEventListener('keydown', this._bibTabHandler);
|
|
71881
|
+
|
|
71882
|
+
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
71883
|
+
requestAnimationFrame(() => {
|
|
71884
|
+
const focusables = getFocusableElements(this.bibContent);
|
|
71885
|
+
if (focusables.length) {
|
|
71886
|
+
focusables[0].focus();
|
|
71887
|
+
}
|
|
71888
|
+
});
|
|
71889
|
+
} else {
|
|
71890
|
+
// Normal desktop: use FocusTrap on the bib element
|
|
71891
|
+
this.focusTrap = new FocusTrap(this.bibContent);
|
|
71892
|
+
this.focusTrap.focusFirstElement();
|
|
71893
|
+
}
|
|
69455
71894
|
}
|
|
69456
71895
|
// Fullscreen: showModal() provides native focus trapping
|
|
71896
|
+
}
|
|
71897
|
+
}
|
|
71898
|
+
|
|
71899
|
+
/**
|
|
71900
|
+
* Returns the chain of active (focused) elements through shadow roots.
|
|
71901
|
+
* @private
|
|
71902
|
+
* @returns {Array<HTMLElement>}
|
|
71903
|
+
*/
|
|
71904
|
+
_getActiveElements() {
|
|
71905
|
+
let { activeElement } = document;
|
|
71906
|
+
const actives = [activeElement];
|
|
71907
|
+
|
|
71908
|
+
while (activeElement?.shadowRoot?.activeElement) {
|
|
71909
|
+
activeElement = activeElement.shadowRoot.activeElement;
|
|
71910
|
+
actives.push(activeElement);
|
|
71911
|
+
}
|
|
71912
|
+
|
|
71913
|
+
return actives;
|
|
71914
|
+
}
|
|
71915
|
+
|
|
71916
|
+
/**
|
|
71917
|
+
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
71918
|
+
* so that content outside the dropdown is not interactive while the modal is open.
|
|
71919
|
+
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
71920
|
+
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
71921
|
+
* to ensure all page content outside the host subtree is inert.
|
|
71922
|
+
* @private
|
|
71923
|
+
*/
|
|
71924
|
+
_setPageInert() {
|
|
71925
|
+
if (this._inertSiblings) {
|
|
69457
71926
|
return;
|
|
69458
71927
|
}
|
|
69459
71928
|
|
|
69460
|
-
|
|
69461
|
-
|
|
69462
|
-
|
|
71929
|
+
this._inertSiblings = [];
|
|
71930
|
+
|
|
71931
|
+
// Walk up through shadow DOM boundaries to find the topmost host
|
|
71932
|
+
// element in the light DOM. For example, if this dropdown is inside
|
|
71933
|
+
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
71934
|
+
// so we set inert on its siblings — not on the datepicker itself.
|
|
71935
|
+
let host = this;
|
|
71936
|
+
while (host.getRootNode() instanceof ShadowRoot) {
|
|
71937
|
+
host = host.getRootNode().host;
|
|
71938
|
+
}
|
|
71939
|
+
|
|
71940
|
+
// Walk up the ancestor chain, inerting siblings at each level
|
|
71941
|
+
// to ensure the entire page outside the host subtree is inert.
|
|
71942
|
+
let current = host;
|
|
71943
|
+
while (current.parentElement) {
|
|
71944
|
+
const parent = current.parentElement;
|
|
71945
|
+
for (const sibling of parent.children) {
|
|
71946
|
+
if (sibling !== current) {
|
|
71947
|
+
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
71948
|
+
sibling.inert = true;
|
|
71949
|
+
}
|
|
71950
|
+
}
|
|
71951
|
+
current = parent;
|
|
71952
|
+
}
|
|
71953
|
+
}
|
|
71954
|
+
|
|
71955
|
+
/**
|
|
71956
|
+
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
71957
|
+
* Preserves the previous inert state so externally-inerted elements are
|
|
71958
|
+
* not inadvertently re-enabled.
|
|
71959
|
+
* @private
|
|
71960
|
+
*/
|
|
71961
|
+
_clearPageInert() {
|
|
71962
|
+
if (this._inertSiblings) {
|
|
71963
|
+
for (const entry of this._inertSiblings) {
|
|
71964
|
+
entry.element.inert = entry.wasInert;
|
|
71965
|
+
}
|
|
71966
|
+
this._inertSiblings = undefined;
|
|
69463
71967
|
}
|
|
69464
71968
|
}
|
|
69465
71969
|
|
|
@@ -69698,6 +72202,7 @@ class AuroDropdown extends AuroElement {
|
|
|
69698
72202
|
shape="${this.shape}"
|
|
69699
72203
|
?data-show="${this.isPopoverVisible}"
|
|
69700
72204
|
?isfullscreen="${this.isBibFullscreen}"
|
|
72205
|
+
?desktopmodal="${this.desktopModal}"
|
|
69701
72206
|
.dialogLabel="${this.bibDialogLabel}"
|
|
69702
72207
|
${n$6(this.bibElement)}
|
|
69703
72208
|
>
|
|
@@ -70065,6 +72570,14 @@ class AuroBibtemplate extends i$4 {
|
|
|
70065
72570
|
large: {
|
|
70066
72571
|
type: Boolean,
|
|
70067
72572
|
reflect: true
|
|
72573
|
+
},
|
|
72574
|
+
|
|
72575
|
+
/**
|
|
72576
|
+
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
72577
|
+
*/
|
|
72578
|
+
showFooter: {
|
|
72579
|
+
type: Boolean,
|
|
72580
|
+
reflect: true
|
|
70068
72581
|
}
|
|
70069
72582
|
};
|
|
70070
72583
|
}
|
|
@@ -70167,7 +72680,7 @@ class AuroBibtemplate extends i$4 {
|
|
|
70167
72680
|
<slot></slot>
|
|
70168
72681
|
</div>
|
|
70169
72682
|
|
|
70170
|
-
${this.isFullscreen ? u$c`
|
|
72683
|
+
${this.isFullscreen || this.showFooter ? u$c`
|
|
70171
72684
|
<div id="footerContainer">
|
|
70172
72685
|
<slot name="footer"></slot>
|
|
70173
72686
|
</div>` : null}
|
|
@@ -70404,7 +72917,7 @@ class AuroHelpText extends i$4 {
|
|
|
70404
72917
|
}
|
|
70405
72918
|
}
|
|
70406
72919
|
|
|
70407
|
-
var formkitVersion = '
|
|
72920
|
+
var formkitVersion = '202605210248';
|
|
70408
72921
|
|
|
70409
72922
|
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
72923
|
|