@aurodesignsystem-dev/auro-formkit 0.0.0-pr1480.9 → 0.0.0-pr1482.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 +0 -7
- package/components/bibtemplate/dist/index.js +1 -9
- package/components/bibtemplate/dist/registered.js +1 -9
- 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/dist/index.js +1 -1
- package/components/checkbox/dist/registered.js +1 -1
- package/components/combobox/demo/customize.md +7 -3
- package/components/combobox/demo/customize.min.js +1257 -1816
- package/components/combobox/demo/getting-started.min.js +1257 -1816
- package/components/combobox/demo/index.min.js +1257 -1816
- package/components/combobox/demo/keyboard-behavior.md +68 -8
- package/components/combobox/demo/pages.json +1 -1
- package/components/combobox/dist/auro-combobox.d.ts +5 -0
- package/components/combobox/dist/index.js +335 -319
- package/components/combobox/dist/registered.js +335 -319
- package/components/counter/demo/customize.min.js +15 -233
- package/components/counter/demo/index.min.js +15 -233
- package/components/counter/demo/keyboard-behavior.md +0 -1
- package/components/counter/demo/pages.json +1 -1
- package/components/counter/dist/index.js +5204 -208
- package/components/counter/dist/registered.js +5204 -208
- package/components/datepicker/demo/accessibility.md +3 -54
- package/components/datepicker/demo/api.md +2 -11
- package/components/datepicker/demo/customize.html +0 -2
- package/components/datepicker/demo/customize.md +8 -72
- package/components/datepicker/demo/design.md +1 -3
- package/components/datepicker/demo/index.js +1 -5
- package/components/datepicker/demo/index.md +2 -85
- package/components/datepicker/demo/index.min.js +183 -2288
- package/components/datepicker/demo/keyboard-behavior.md +2 -201
- package/components/datepicker/demo/pages.json +1 -1
- package/components/datepicker/demo/voiceover.md +12 -21
- package/components/datepicker/dist/index.js +156 -2174
- package/components/datepicker/dist/registered.js +156 -2174
- package/components/datepicker/dist/src/auro-calendar-cell.d.ts +11 -111
- package/components/datepicker/dist/src/auro-calendar-month.d.ts +0 -37
- package/components/datepicker/dist/src/auro-calendar.d.ts +0 -246
- package/components/datepicker/dist/src/auro-datepicker.d.ts +0 -88
- package/components/datepicker/dist/src/datepickerKeyboardStrategy.d.ts +3 -5
- package/components/dropdown/demo/accessibility.md +0 -11
- package/components/dropdown/demo/api.md +0 -1
- package/components/dropdown/demo/customize.md +0 -3
- package/components/dropdown/demo/customize.min.js +13 -223
- package/components/dropdown/demo/getting-started.min.js +13 -223
- package/components/dropdown/demo/index.min.js +13 -223
- package/components/dropdown/demo/keyboard-behavior.md +0 -1
- package/components/dropdown/demo/pages.json +1 -1
- package/components/dropdown/dist/auro-dropdown.d.ts +1 -33
- package/components/dropdown/dist/index.js +13 -223
- package/components/dropdown/dist/registered.js +13 -223
- package/components/form/demo/customize.min.js +7765 -10745
- package/components/form/demo/getting-started.min.js +7765 -10745
- package/components/form/demo/index.min.js +7765 -10745
- package/components/form/demo/pages.json +1 -1
- package/components/form/demo/registerDemoDeps.min.js +7764 -10744
- 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/dist/index.js +1 -1
- package/components/input/dist/registered.js +1 -1
- package/components/menu/demo/api.md +41 -45
- package/components/menu/demo/customize.md +0 -28
- package/components/menu/demo/index.min.js +779 -1354
- package/components/menu/demo/pages.json +1 -1
- package/components/menu/dist/auro-menu.d.ts +95 -110
- package/components/menu/dist/auro-menuoption.d.ts +32 -138
- package/components/menu/dist/index.js +753 -1308
- package/components/menu/dist/registered.js +765 -1308
- package/components/radio/demo/getting-started.js +1 -1
- package/components/radio/demo/getting-started.md +1 -1
- package/components/radio/demo/index.min.js +1 -1
- package/components/radio/demo/pages.json +1 -1
- package/components/radio/dist/index.js +1 -1
- package/components/radio/dist/registered.js +1 -1
- package/components/select/demo/customize.md +7 -3
- package/components/select/demo/customize.min.js +999 -1759
- package/components/select/demo/getting-started.min.js +999 -1759
- package/components/select/demo/index.min.js +999 -1759
- package/components/select/demo/keyboard-behavior.md +54 -9
- package/components/select/demo/pages.json +1 -1
- package/components/select/dist/index.js +76 -261
- package/components/select/dist/registered.js +76 -261
- package/components/select/dist/selectUtils.d.ts +12 -0
- package/custom-elements.json +2406 -4134
- package/package.json +4 -4
- package/components/checkbox/demo/why-checkbox.html +0 -57
- package/components/checkbox/demo/why-checkbox.md +0 -86
- package/components/combobox/demo/why-combobox.html +0 -57
- package/components/combobox/demo/why-combobox.md +0 -113
- package/components/counter/demo/why-counter.html +0 -57
- package/components/counter/demo/why-counter.md +0 -108
- package/components/datepicker/demo/customize.js +0 -19
- package/components/datepicker/demo/customize.min.js +0 -26655
- package/components/datepicker/demo/why-datepicker.html +0 -57
- package/components/datepicker/demo/why-datepicker.md +0 -133
- package/components/dropdown/demo/why-dropdown.html +0 -57
- package/components/dropdown/demo/why-dropdown.md +0 -97
- package/components/form/demo/why-form.html +0 -57
- package/components/form/demo/why-form.md +0 -101
- package/components/input/demo/why-input.html +0 -57
- package/components/input/demo/why-input.md +0 -121
- package/components/menu/demo/why-menu.html +0 -57
- package/components/menu/demo/why-menu.md +0 -104
- package/components/menu/dist/auro-menu.context.d.ts +0 -238
- package/components/radio/demo/customize.min.js +0 -2186
- package/components/radio/demo/demo-support.min.js +0 -55807
- package/components/radio/demo/getting-started.min.js +0 -2205
- package/components/radio/demo/why-radio.html +0 -57
- package/components/radio/demo/why-radio.md +0 -92
- package/components/select/demo/why-select.html +0 -57
- package/components/select/demo/why-select.md +0 -128
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { unsafeStatic, literal, html as html$1 } from 'lit/static-html.js';
|
|
2
2
|
import { classMap } from 'lit/directives/class-map.js';
|
|
3
|
-
import { html, css, LitElement
|
|
3
|
+
import { html, css, LitElement } from 'lit';
|
|
4
4
|
import { property } from 'lit/decorators.js';
|
|
5
5
|
import { ifDefined } from 'lit/directives/if-defined.js';
|
|
6
6
|
import { createRef, ref } from 'lit/directives/ref.js';
|
|
@@ -1343,6 +1343,7 @@ class UtilitiesCalendarRender {
|
|
|
1343
1343
|
.max="${elem.max}"
|
|
1344
1344
|
?noRange="${elem.noRange}"
|
|
1345
1345
|
.monthFirst="${elem.monthFirst}"
|
|
1346
|
+
.hoveredDate="${elem.hoveredDate}"
|
|
1346
1347
|
.dateTo="${elem.dateTo}"
|
|
1347
1348
|
.dateFrom="${elem.dateFrom}"
|
|
1348
1349
|
.locale="${elem.locale}"
|
|
@@ -1374,6 +1375,43 @@ var snowflakeStyle = css`:host([layout*=snowflake]) [auro-input]{flex:1;text-ali
|
|
|
1374
1375
|
|
|
1375
1376
|
var snowflakeColors = css`:host([layout=snowflake]) [auro-dropdown]:not(:is([error],.hasFocus)){--ds-auro-dropdown-trigger-border-color: transparent}`;
|
|
1376
1377
|
|
|
1378
|
+
var styleCss$7 = css`.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:""}`;
|
|
1379
|
+
|
|
1380
|
+
var colorCss$7 = css`.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)}}`;
|
|
1381
|
+
|
|
1382
|
+
var styleCss$6 = css`: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%}`;
|
|
1383
|
+
|
|
1384
|
+
var colorCss$6 = css`: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)}`;
|
|
1385
|
+
|
|
1386
|
+
/******************************************************************************
|
|
1387
|
+
Copyright (c) Microsoft Corporation.
|
|
1388
|
+
|
|
1389
|
+
Permission to use, copy, modify, and/or distribute this software for any
|
|
1390
|
+
purpose with or without fee is hereby granted.
|
|
1391
|
+
|
|
1392
|
+
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
1393
|
+
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
1394
|
+
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
1395
|
+
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
1396
|
+
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
1397
|
+
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
1398
|
+
PERFORMANCE OF THIS SOFTWARE.
|
|
1399
|
+
***************************************************************************** */
|
|
1400
|
+
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */
|
|
1401
|
+
|
|
1402
|
+
|
|
1403
|
+
function __decorate(decorators, target, key, desc) {
|
|
1404
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1405
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1406
|
+
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;
|
|
1407
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1408
|
+
}
|
|
1409
|
+
|
|
1410
|
+
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
1411
|
+
var e = new Error(message);
|
|
1412
|
+
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
1413
|
+
};
|
|
1414
|
+
|
|
1377
1415
|
/**
|
|
1378
1416
|
* @module constants
|
|
1379
1417
|
* @summary Useful constants
|
|
@@ -7128,43 +7166,6 @@ function subYears(date, amount, options) {
|
|
|
7128
7166
|
return addYears(date, -1, options);
|
|
7129
7167
|
}
|
|
7130
7168
|
|
|
7131
|
-
var styleCss$7 = css`.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}`;
|
|
7132
|
-
|
|
7133
|
-
var colorCss$7 = css`.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)}}`;
|
|
7134
|
-
|
|
7135
|
-
var styleCss$6 = css`: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) var(--ds-size-200, 1rem) 0}}@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:336px}}.td{flex:1;margin:0;padding:0}.tr{display:flex;flex-direction:row;width:100%}`;
|
|
7136
|
-
|
|
7137
|
-
var colorCss$6 = css`: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)}`;
|
|
7138
|
-
|
|
7139
|
-
/******************************************************************************
|
|
7140
|
-
Copyright (c) Microsoft Corporation.
|
|
7141
|
-
|
|
7142
|
-
Permission to use, copy, modify, and/or distribute this software for any
|
|
7143
|
-
purpose with or without fee is hereby granted.
|
|
7144
|
-
|
|
7145
|
-
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
|
7146
|
-
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
|
7147
|
-
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
|
7148
|
-
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
|
7149
|
-
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
7150
|
-
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
7151
|
-
PERFORMANCE OF THIS SOFTWARE.
|
|
7152
|
-
***************************************************************************** */
|
|
7153
|
-
/* global Reflect, Promise, SuppressedError, Symbol, Iterator */
|
|
7154
|
-
|
|
7155
|
-
|
|
7156
|
-
function __decorate(decorators, target, key, desc) {
|
|
7157
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
7158
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
7159
|
-
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;
|
|
7160
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7161
|
-
}
|
|
7162
|
-
|
|
7163
|
-
typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
|
|
7164
|
-
var e = new Error(message);
|
|
7165
|
-
return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
|
|
7166
|
-
};
|
|
7167
|
-
|
|
7168
7169
|
class RangeDatepickerCell extends LitElement {
|
|
7169
7170
|
constructor() {
|
|
7170
7171
|
super(...arguments);
|
|
@@ -7887,25 +7888,20 @@ __decorate([property({ type: Array })], RangeDatepickerCalendar.prototype, "dayN
|
|
|
7887
7888
|
__decorate([property({ type: Array })], RangeDatepickerCalendar.prototype, "daysOfMonth", void 0);
|
|
7888
7889
|
AuroLibraryRuntimeUtils$5.prototype.registerComponent('wc-range-datepicker-calendar', RangeDatepickerCalendar);
|
|
7889
7890
|
|
|
7890
|
-
var styleCss$5 = css`.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:48px;height:56px;padding:0;border-width:2px;border-style:solid;border-radius:10px;cursor:pointer;user-select:none}.day:focus-visible{outline:none;background-color:unset}.day.activeCell{outline-width:2px;outline-style:solid;outline-offset:-4px}.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)}}.buttonWrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.dateSlot{display:block}.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_]){width:100%;white-space:nowrap}::slotted(auro-icon){max-height:24px;max-width:24px}:host([renderForDateSlot]) .buttonWrapper{position:relative;width:100%;height:100%}:host([renderForDateSlot]) .currentDayMarker{position:relative}`;
|
|
7891
|
+
var styleCss$5 = css`.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}}`;
|
|
7891
7892
|
|
|
7892
|
-
var colorCss$5 = css`: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.
|
|
7893
|
+
var colorCss$5 = css`: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}`;
|
|
7893
7894
|
|
|
7894
|
-
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="top",o="bottom",n$1="right",a="left",l$3="auto",c$3=[r$1,o,n$1,a],p$6="start",d$3="end",f$6="viewport",h$3="popper",u$6=c$3.reduce(function(e,t){return e.concat([t+"-"+p$6,t+"-"+d$3])},[]),m$6=[].concat(c$3,[l$3]).reduce(function(e,t){return e.concat([t,t+"-"+p$6,t+"-"+d$3])},[]),g$6=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v$3(e){return e?(e.nodeName||"").toLowerCase():null}function y$6(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(e){return e instanceof y$6(e).Element||e instanceof Element}function b$3(e){return e instanceof y$6(e).HTMLElement||e instanceof HTMLElement}function x$3(e){return "undefined"!=typeof ShadowRoot&&(e instanceof y$6(e).ShadowRoot||e instanceof ShadowRoot)}var S$3={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(r)&&v$3(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(s)&&v$3(s)&&(Object.assign(s.style,o),Object.keys(r).forEach(function(e){s.removeAttribute(e);}));});}},requires:["computeStyles"]};function _$4(e){return e.split("-")[0]}var A$3=Math.max,O=Math.min,k$6=Math.round;function T$3(){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(){return !/^((?!chrome|android).)*safari/i.test(T$3())}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(e)&&(r=e.offsetWidth>0&&k$6(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&k$6(s.height)/e.offsetHeight||1);var n=(w$6(e)?y$6(e):window).visualViewport,a=!z$6()&&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(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(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return true;if(i&&x$3(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(e).getComputedStyle(e)}function R$3(e){return ["table","td","th"].indexOf(v$3(e))>=0}function H$3(e){return ((w$6(e)?e.ownerDocument:e.document)||window.document).documentElement}function C$3(e){return "html"===v$3(e)?e:e.assignedSlot||e.parentNode||(x$3(e)?e.host:null)||H$3(e)}function D(e){return b$3(e)&&"fixed"!==L(e).position?e.offsetParent:null}function N$3(e){for(var t=y$6(e),i=D(e);i&&R$3(i)&&"static"===L(i).position;)i=D(i);return i&&("html"===v$3(i)||"body"===v$3(i)&&"static"===L(i).position)?t:i||function(e){var t=/firefox/i.test(T$3());if(/Trident/i.test(T$3())&&b$3(e)&&"fixed"===L(e).position)return null;var i=C$3(e);for(x$3(i)&&(i=i.host);b$3(i)&&["html","body"].indexOf(v$3(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(e,O(t,i))}function I(e){return Object.assign({},{top:0,right:0,bottom:0,left:0},e)}function q$3(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(i.placement),h=P(f),u=[a,n$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(e,c$3))}(l.padding,i),g=M$6(p),v="y"===h?r$1:a,y="y"===h?o:n$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(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(t.elements.popper,s)&&(t.elements.arrow=s);},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function U$3(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,z=window;if(u){var E=N$3(i),M="clientHeight",B="clientWidth";if(E===y$6(i)&&"static"!==L(E=H$3(i)).position&&"absolute"===f&&(M="scrollHeight",B="scrollWidth"),l===r$1||(l===a||l===n$1)&&c===d$3)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||l===o)&&c===d$3)O=n$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(i*r)/r||0,y:k$6(s*r)/r||0}}({x:w,y:x},y$6(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(e);return {scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Q(e){return E(H$3(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(e))>=0?e.ownerDocument.body:b$3(e)&&Z(e)?e:ee(C$3(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(s),n=r?[o].concat(o.visualViewport||[],Z(s)?s:[]):s,a=t.concat(n);return r?a:a.concat(te(C$3(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?ie(function(e,t){var i=y$6(e),s=H$3(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();(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(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(e),s=J(e),r=null==(t=e.ownerDocument)?void 0:t.body,o=A$3(i.scrollWidth,i.clientWidth,r?r.scrollWidth:0,r?r.clientWidth:0),n=A$3(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(i.clientWidth,r?r.clientWidth:0)-o),{width:o,height:n,x:a,y:l}}(H$3(e)))}function re(e,t,i,s){var r="clippingParents"===t?function(e){var t=te(C$3(e)),i=["absolute","fixed"].indexOf(L(e).position)>=0&&b$3(e)?N$3(e):e;return w$6(i)?t.filter(function(e){return w$6(e)&&B$3(e,i)&&"body"!==v$3(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(r.top,t.top),t.right=O(r.right,t.right),t.bottom=O(r.bottom,t.bottom),t.left=A$3(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(l):null,f=l?U$3(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:t={x:h,y:i.y-s.height};break;case o:t={x:h,y:i.y+i.height};break;case n$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:t[m]=t[m]-(i[g]/2-s[g]/2);break;case d$3: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:m,v=i.elementContext,y=void 0===v?h$3:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,A=I("number"!=typeof _?_:q$3(_,c$3)),O=y===h$3?"reference":h$3,k=e.rects.popper,T=e.elements[x?O:y],z=re(w$6(T)?T:T.contextElement||H$3(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?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&&D){var N=D[a];Object.keys(C).forEach(function(e){var t=[n$1,o].indexOf(e)>=0?1:-1,i=[r$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:l,d=U$3(s),f=d?a?u$6:u$6.filter(function(e){return U$3(e)===d}):c$3,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(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(S),O=u||(A===S||!b?[G(S)]:function(e){if(_$4(e)===l$3)return [];var t=G(e);return [Y(e),t,Y(t)]}(S)),k=[S].concat(O).reduce(function(e,i){return e.concat(_$4(i)===l$3?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(R),C=U$3(R)===p$6,D=[r$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:a:C?o:r$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,n$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.reduce(function(e,i){return e[i]=function(e,t,i){var s=_$4(e),o=[a,r$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].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(t.placement),k=U$3(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:a,V="y"===z?o:n$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?L[W]:R[W],J=k===p$6?-R[W]:-L[W],Q=t.elements.arrow,Z=y&&Q?M$6(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(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(G,pe):G);B[z]=de,I[z]=de-X;}if(f){var fe,he="x"===z?r$1:a,ue="x"===z?o:n$1,me=B[E],ge="y"===E?"height":"width",ve=me+x[he],ye=me-x[ue],we=-1!==[r$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(t),n=b$3(t)&&function(e){var t=e.getBoundingClientRect(),i=k$6(t.width)/e.offsetWidth||1,s=k$6(t.height)/e.offsetHeight||1;return 1!==i||1!==s}(t),a=H$3(t),l=E(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return (o||!o&&!i)&&(("body"!==v$3(t)||Z(a))&&(c=(s=t)!==y$6(s)&&b$3(s)?{scrollLeft:(r=s).scrollLeft,scrollTop:r.scrollTop}:J(s)),b$3(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(e)?te(e):e.contextElement?te(e.contextElement):[],popper:te(t)};var n,c,f=function(e){var t=ue(e);return g$6.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(i),"fixed"===a.options.strategy),popper:M$6(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(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(t.placement),variation:U$3(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,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=css`::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)}
|
|
7895
|
+
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="top",o="bottom",n$1="right",a="left",l$3="auto",c$3=[r$1,o,n$1,a],p$6="start",d$3="end",f$6="viewport",h$3="popper",m$6=c$3.reduce(function(e,t){return e.concat([t+"-"+p$6,t+"-"+d$3])},[]),u$6=[].concat(c$3,[l$3]).reduce(function(e,t){return e.concat([t,t+"-"+p$6,t+"-"+d$3])},[]),g$6=["beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite"];function v$3(e){return e?(e.nodeName||"").toLowerCase():null}function y$6(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(e){return e instanceof y$6(e).Element||e instanceof Element}function b$3(e){return e instanceof y$6(e).HTMLElement||e instanceof HTMLElement}function x$3(e){return "undefined"!=typeof ShadowRoot&&(e instanceof y$6(e).ShadowRoot||e instanceof ShadowRoot)}var S$3={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(r)&&v$3(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(s)&&v$3(s)&&(Object.assign(s.style,o),Object.keys(r).forEach(function(e){s.removeAttribute(e);}));});}},requires:["computeStyles"]};function _$4(e){return e.split("-")[0]}var O=Math.max,k$6=Math.min,A$3=Math.round;function z$6(){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())}function M$6(e,t,i){ void 0===t&&(t=false),void 0===i&&(i=false);var s=e.getBoundingClientRect(),r=1,o=1;t&&b$3(e)&&(r=e.offsetWidth>0&&A$3(s.width)/e.offsetWidth||1,o=e.offsetHeight>0&&A$3(s.height)/e.offsetHeight||1);var n=(w$6(e)?y$6(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(e){var t=M$6(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(e,t){var i=t.getRootNode&&t.getRootNode();if(e.contains(t))return true;if(i&&x$3(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(e).getComputedStyle(e)}function H$3(e){return ["table","td","th"].indexOf(v$3(e))>=0}function C$3(e){return ((w$6(e)?e.ownerDocument:e.document)||window.document).documentElement}function R$3(e){return "html"===v$3(e)?e:e.assignedSlot||e.parentNode||(x$3(e)?e.host:null)||C$3(e)}function j(e){return b$3(e)&&"fixed"!==L(e).position?e.offsetParent:null}function N$3(e){for(var t=y$6(e),i=j(e);i&&H$3(i)&&"static"===L(i).position;)i=j(i);return i&&("html"===v$3(i)||"body"===v$3(i)&&"static"===L(i).position)?t:i||function(e){var t=/firefox/i.test(z$6());if(/Trident/i.test(z$6())&&b$3(e)&&"fixed"===L(e).position)return null;var i=R$3(e);for(x$3(i)&&(i=i.host);b$3(i)&&["html","body"].indexOf(v$3(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(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={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(i.placement),h=P(f),m=[a,n$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))}(l.padding,i),g=T$3(p),v="y"===h?r$1:a,y="y"===h?o:n$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(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(t.elements.popper,s)&&(t.elements.arrow=s);},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function q$3(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,E=window;if(m){var M=N$3(i),T="clientHeight",B="clientWidth";if(M===y$6(i)&&"static"!==L(M=C$3(i)).position&&"absolute"===f&&(T="scrollHeight",B="scrollWidth"),l===r$1||(l===a||l===n$1)&&c===d$3)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||l===o)&&c===d$3)k=n$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(i*r)/r||0,y:A$3(s*r)/r||0}}({x:w,y:x},y$6(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(e);return {scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}function Q(e){return M$6(C$3(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(e))>=0?e.ownerDocument.body:b$3(e)&&Z(e)?e:ee(R$3(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(s),n=r?[o].concat(o.visualViewport||[],Z(s)?s:[]):s,a=t.concat(n);return r?a:a.concat(te(R$3(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?ie(function(e,t){var i=y$6(e),s=C$3(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(t)?function(e,t){var i=M$6(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(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(e)))}function re(e,t,i,s){var r="clippingParents"===t?function(e){var t=te(R$3(e)),i=["absolute","fixed"].indexOf(L(e).position)>=0&&b$3(e)?N$3(e):e;return w$6(i)?t.filter(function(e){return w$6(e)&&B$3(e,i)&&"body"!==v$3(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(r.right,t.right),t.bottom=k$6(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(l):null,f=l?q$3(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:t={x:h,y:i.y-s.height};break;case o:t={x:h,y:i.y+i.height};break;case n$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:t[u]=t[u]-(i[g]/2-s[g]/2);break;case d$3: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:u,v=i.elementContext,y=void 0===v?h$3:v,b=i.altBoundary,x=void 0!==b&&b,S=i.padding,_=void 0===S?0:S,O=I("number"!=typeof _?_:F(_,c$3)),k=y===h$3?"reference":h$3,A=e.rects.popper,z=e.elements[x?k:y],E=re(w$6(z)?z:z.contextElement||C$3(e.elements.popper),m,g,p),T=M$6(e.elements.reference),B=oe({reference:T,element:A,placement:a}),L=ie(Object.assign({},A,B)),H=y===h$3?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&&j){var N=j[a];Object.keys(R).forEach(function(e){var t=[n$1,o].indexOf(e)>=0?1:-1,i=[r$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:l,d=q$3(s),f=d?a?m$6:m$6.filter(function(e){return q$3(e)===d}):c$3,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(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(S),k=m||(O===S||!b?[$(S)]:function(e){if(_$4(e)===l$3)return [];var t=$(e);return [Y(e),t,Y(t)]}(S)),A=[S].concat(k).reduce(function(e,i){return e.concat(_$4(i)===l$3?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(H),R=q$3(H)===p$6,j=[r$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:a:R?o:r$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,n$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.reduce(function(e,i){return e[i]=function(e,t,i){var s=_$4(e),o=[a,r$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].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(t.placement),A=q$3(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:a,W="y"===E?o:n$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?L[X]:H[X],J=A===p$6?-H[X]:-L[X],Q=t.elements.arrow,Z=y&&Q?T$3(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(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(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:a,me="x"===E?o:n$1,ue=B[M],ge="y"===M?"height":"width",ve=ue+x[he],ye=ue-x[me],we=-1!==[r$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(t),n=b$3(t)&&function(e){var t=e.getBoundingClientRect(),i=A$3(t.width)/e.offsetWidth||1,s=A$3(t.height)/e.offsetHeight||1;return 1!==i||1!==s}(t),a=C$3(t),l=M$6(e,n,i),c={scrollLeft:0,scrollTop:0},p={x:0,y:0};return (o||!o&&!i)&&(("body"!==v$3(t)||Z(a))&&(c=(s=t)!==y$6(s)&&b$3(s)?{scrollLeft:(r=s).scrollLeft,scrollTop:r.scrollTop}:J(s)),b$3(t)?((p=M$6(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(e)?te(e):e.contextElement?te(e.contextElement):[],popper:te(t)};var n,c,f=function(e){var t=me(e);return g$6.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(i),"fixed"===a.options.strategy),popper:T$3(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(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(t.placement),variation:q$3(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,de,le,fe,U$3,{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=css`::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)}
|
|
7895
7896
|
`,xe=css`.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:""}
|
|
7896
7897
|
`,Se=css`: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)}
|
|
7897
|
-
`;class _e extends LitElement{constructor(){super(),this.placement="top",this.
|
|
7898
|
-
<div
|
|
7899
|
-
id="popover"
|
|
7900
|
-
class="popover util_insetLg body-default"
|
|
7901
|
-
part="popover"
|
|
7902
|
-
role="tooltip"
|
|
7903
|
-
aria-hidden="${this.isPopoverVisible?"false":"true"}">
|
|
7898
|
+
`;class _e extends LitElement{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.isPopoverVisible=false,this.runtimeUtils=new s;}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}}}static get styles(){return [css`${xe}`,css`${be}`,css`${Se}`]}static register(e="auro-popover"){s.prototype.registerComponent(e,_e);}connectedCallback(){super.connectedCallback(),this._initializeDefaults(),this._onTouchStart||(this._onTouchStart=()=>{this.toggle();}),this.addEventListener("touchstart",this._onTouchStart);}disconnectedCallback(){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("focus",this._onTriggerFocus),this._onTriggerBlur&&this.trigger.removeEventListener("blur",this._onTriggerBlur),this._onTriggerKeydown&&this.trigger.removeEventListener("keydown",this._onTriggerKeydown),this._onSlotChange&&this.shadowRoot?.querySelector("slot:not([name])")?.removeEventListener("slotchange",this._onSlotChange),this.trigger.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(){if(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)return;const e=this.trigger.tabIndex>=0,t=!!this.trigger.shadowRoot&&Boolean(this.trigger.shadowRoot.querySelector('button:not([disabled]), a[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])'));e||t||this.trigger.hasAttribute("tabindex")||(this.trigger.setAttribute("tabindex","0"),this._addedTabIndex=true);const i=this.shadowRoot.querySelector("slot:not([name])"),s=()=>i.assignedNodes({flatten:true}).map(e=>e.textContent??"").join(" ").replace(/\s+/g," ").trim();this.trigger.setAttribute("aria-description",s()),this._onSlotChange=()=>{this.trigger?.setAttribute("aria-description",s());},i.addEventListener("slotchange",this._onSlotChange),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=()=>{this.toggleHide();},this._onTriggerKeydown=e=>{const t=e.key.toLowerCase();this.isPopoverVisible&&("tab"!==t&&"escape"!==t||this.toggleHide())," "!==t&&"enter"!==t||(" "===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("focus",this._onTriggerFocus),this.trigger.addEventListener("blur",this._onTriggerBlur),this.addEventListener("hidePopover",this._onHidePopover);}toggle(){this.popper&&(this.isPopoverVisible?this.toggleHide():this.toggleShow());}toggleHide(){this.isPopoverVisible=false,this.removeAttribute("data-show"),this._onBodyMouseover&&document.body.removeEventListener("mouseover",this._onBodyMouseover),this.popper&&this.popper.hide();}toggleShow(){this.popper&&(this.popper.show(),this.isPopoverVisible=true,this.setAttribute("data-show","true"),document.body.addEventListener("mouseover",this._onBodyMouseover));}handleMouseoverEvent(e){this.isPopoverVisible&&!e.composedPath().includes(this)&&this.toggleHide();}updated(e){e.has("boundary")&&this.popper&&(this.popper.boundaryElement=this.popper.setBoundary(this.boundary));}render(){return html`
|
|
7899
|
+
<div id="popover" class="popover util_insetLg body-default" part="popover">
|
|
7904
7900
|
<div id="arrow" class="arrow" data-popper-arrow></div>
|
|
7905
|
-
<slot></slot>
|
|
7901
|
+
<span role="tooltip"><slot></slot></span>
|
|
7906
7902
|
</div>
|
|
7907
7903
|
|
|
7908
|
-
<span
|
|
7904
|
+
<span>
|
|
7909
7905
|
<slot name="trigger" data-trigger-placement="${this.placement}"></slot>
|
|
7910
7906
|
</span>
|
|
7911
7907
|
`}}
|
|
@@ -7920,6 +7916,7 @@ class AuroCalendarCell extends LitElement {
|
|
|
7920
7916
|
|
|
7921
7917
|
this.day = null;
|
|
7922
7918
|
this.selected = false;
|
|
7919
|
+
this.hovered = false;
|
|
7923
7920
|
this.dateTo = null;
|
|
7924
7921
|
this.dateFrom = null;
|
|
7925
7922
|
this.month = null;
|
|
@@ -7927,12 +7924,11 @@ class AuroCalendarCell extends LitElement {
|
|
|
7927
7924
|
this.max = null;
|
|
7928
7925
|
this.disabled = false;
|
|
7929
7926
|
this.disabledDays = [];
|
|
7927
|
+
this.hoveredDate = null;
|
|
7930
7928
|
this.isCurrentDate = false;
|
|
7931
7929
|
this._locale = null;
|
|
7932
7930
|
this.dateStr = null;
|
|
7933
7931
|
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.
|
|
7934
|
-
this.active = false;
|
|
7935
|
-
this.hasPopoverContent = false;
|
|
7936
7932
|
|
|
7937
7933
|
this.runtimeUtils = new AuroLibraryRuntimeUtils$5();
|
|
7938
7934
|
|
|
@@ -7951,6 +7947,7 @@ class AuroCalendarCell extends LitElement {
|
|
|
7951
7947
|
// ...super.properties,
|
|
7952
7948
|
day: { type: Object },
|
|
7953
7949
|
selected: { type: Boolean },
|
|
7950
|
+
hovered: { type: Boolean },
|
|
7954
7951
|
dateTo: { type: String },
|
|
7955
7952
|
dateFrom: { type: String },
|
|
7956
7953
|
month: { type: String },
|
|
@@ -7961,11 +7958,11 @@ class AuroCalendarCell extends LitElement {
|
|
|
7961
7958
|
reflect: true
|
|
7962
7959
|
},
|
|
7963
7960
|
disabledDays: { type: Array },
|
|
7961
|
+
hoveredDate: { type: String },
|
|
7964
7962
|
isCurrentDate: { type: Boolean },
|
|
7965
7963
|
locale: { type: Object },
|
|
7966
7964
|
dateStr: { type: String },
|
|
7967
|
-
renderForDateSlot: { type: Boolean }
|
|
7968
|
-
hasPopoverContent: { type: Boolean }
|
|
7965
|
+
renderForDateSlot: { type: Boolean }
|
|
7969
7966
|
};
|
|
7970
7967
|
}
|
|
7971
7968
|
|
|
@@ -7989,17 +7986,17 @@ class AuroCalendarCell extends LitElement {
|
|
|
7989
7986
|
}
|
|
7990
7987
|
|
|
7991
7988
|
/**
|
|
7992
|
-
* Handles selected
|
|
7993
|
-
* Also clears any imperative range preview classes so classMap is the
|
|
7994
|
-
* sole source of truth after a selection update.
|
|
7989
|
+
* Handles selected and hovered states of the calendar cell when the date changes.
|
|
7995
7990
|
* @private
|
|
7996
7991
|
* @param {Number} dateFrom - Depart date.
|
|
7997
7992
|
* @param {Number} dateTo - Return date.
|
|
7993
|
+
* @param {Number} hoveredDate - Hovered date.
|
|
7998
7994
|
* @param {Object} day - An object containing the dateFrom and day of month values.
|
|
7999
7995
|
* @returns {void}
|
|
8000
7996
|
*/
|
|
8001
|
-
dateChanged(dateFrom, dateTo, day) {
|
|
7997
|
+
dateChanged(dateFrom, dateTo, hoveredDate, day) {
|
|
8002
7998
|
this.selected = false;
|
|
7999
|
+
this.hovered = false;
|
|
8003
8000
|
|
|
8004
8001
|
const parsedDateFrom = parseInt(dateFrom, 10);
|
|
8005
8002
|
const parsedDateTo = parseInt(dateTo, 10);
|
|
@@ -8011,6 +8008,10 @@ class AuroCalendarCell extends LitElement {
|
|
|
8011
8008
|
if (day.date === departTimestamp || day.date === returnTimestamp) {
|
|
8012
8009
|
this.selected = true;
|
|
8013
8010
|
}
|
|
8011
|
+
|
|
8012
|
+
if (((hoveredDate === day.date || day.date < hoveredDate) && day.date > parsedDateFrom && !parsedDateTo && !Number.isNaN(parsedDateFrom) && parsedDateFrom !== undefined && !this.selected) || (day.date > parsedDateFrom && day.date < parsedDateTo)) {
|
|
8013
|
+
this.hovered = true;
|
|
8014
|
+
}
|
|
8014
8015
|
}
|
|
8015
8016
|
}
|
|
8016
8017
|
|
|
@@ -8020,105 +8021,27 @@ class AuroCalendarCell extends LitElement {
|
|
|
8020
8021
|
* @returns {void}
|
|
8021
8022
|
*/
|
|
8022
8023
|
handleTap() {
|
|
8023
|
-
if (!this.disabled
|
|
8024
|
+
if (!this.disabled) {
|
|
8024
8025
|
this.datepicker.handleCellClick(this.day.date);
|
|
8025
8026
|
}
|
|
8026
|
-
|
|
8027
|
-
// Set this cell as the active cell regardless of blackout status
|
|
8028
|
-
if (this.day) {
|
|
8029
|
-
this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
|
|
8030
|
-
bubbles: true,
|
|
8031
|
-
composed: true,
|
|
8032
|
-
detail: { date: this.day.date }
|
|
8033
|
-
}));
|
|
8034
|
-
}
|
|
8035
8027
|
}
|
|
8036
8028
|
|
|
8037
8029
|
/**
|
|
8038
8030
|
* Handles user hover events and dispatches a custom event.
|
|
8039
|
-
* Does NOT set any reactive properties — the range preview is handled
|
|
8040
|
-
* imperatively by the calendar component to avoid O(N) re-renders.
|
|
8041
8031
|
* @private
|
|
8042
8032
|
* @returns {void}
|
|
8043
8033
|
*/
|
|
8044
8034
|
handleHover() {
|
|
8045
|
-
this.
|
|
8046
|
-
detail: { date: this.day?.date },
|
|
8047
|
-
}));
|
|
8048
|
-
}
|
|
8035
|
+
this.hovered = true;
|
|
8049
8036
|
|
|
8050
|
-
|
|
8051
|
-
|
|
8052
|
-
|
|
8053
|
-
* announcements and range preview updates without triggering
|
|
8054
|
-
* any Lit lifecycle updates.
|
|
8055
|
-
* @private
|
|
8056
|
-
* @returns {void}
|
|
8057
|
-
*/
|
|
8058
|
-
handleFocus() {
|
|
8059
|
-
this.dispatchEvent(new CustomEvent('calendar-cell-focused', {
|
|
8060
|
-
bubbles: true,
|
|
8061
|
-
composed: true,
|
|
8062
|
-
detail: { date: this.day?.date },
|
|
8037
|
+
let _a;
|
|
8038
|
+
this.dispatchEvent(new CustomEvent('date-is-hovered', {
|
|
8039
|
+
detail: { date: (_a = this.day) === null || _a === void 0 ? void 0 : _a.date },
|
|
8063
8040
|
}));
|
|
8064
8041
|
}
|
|
8065
8042
|
|
|
8066
8043
|
/**
|
|
8067
|
-
* Checks if the current date is
|
|
8068
|
-
* Out-of-range cells are not focusable and are hidden from screen readers.
|
|
8069
|
-
* @private
|
|
8070
|
-
* @param {Object} day - An object containing the dateFrom and day of month values.
|
|
8071
|
-
* @param {Number} min - The minimum date value.
|
|
8072
|
-
* @param {Number} max - The maximum date value.
|
|
8073
|
-
* @returns {Boolean} - True if the date is out of range.
|
|
8074
|
-
*/
|
|
8075
|
-
isOutOfRange(day, min, max) {
|
|
8076
|
-
if (day && day.date != null) {
|
|
8077
|
-
return day.date < min || day.date > max;
|
|
8078
|
-
}
|
|
8079
|
-
return false;
|
|
8080
|
-
}
|
|
8081
|
-
|
|
8082
|
-
/**
|
|
8083
|
-
* Checks if the current date is a blackout date (in disabledDays but within range).
|
|
8084
|
-
* Blackout cells are focusable but not selectable.
|
|
8085
|
-
* @private
|
|
8086
|
-
* @returns {Boolean} - True if the date is a blackout date.
|
|
8087
|
-
*/
|
|
8088
|
-
isBlackout() {
|
|
8089
|
-
if (!this.day || this.day.date == null || this.isOutOfRange(this.day, this.min, this.max)) {
|
|
8090
|
-
return false;
|
|
8091
|
-
}
|
|
8092
|
-
|
|
8093
|
-
// Check against disabledDays timestamps (legacy path)
|
|
8094
|
-
if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
|
|
8095
|
-
if (this.disabledDays.findIndex(d => parseInt(d, 10) === this.day.date) !== -1) {
|
|
8096
|
-
return true;
|
|
8097
|
-
}
|
|
8098
|
-
}
|
|
8099
|
-
|
|
8100
|
-
// Check against blackoutDates (ISO format YYYY-MM-DD) on the datepicker
|
|
8101
|
-
const blackoutDates = this.datepicker?.blackoutDates;
|
|
8102
|
-
|
|
8103
|
-
if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
|
|
8104
|
-
const date = new Date(this.day.date * 1000);
|
|
8105
|
-
const yyyy = date.getFullYear();
|
|
8106
|
-
const mm = String(date.getMonth() + 1).padStart(2, '0');
|
|
8107
|
-
const dd = String(date.getDate()).padStart(2, '0');
|
|
8108
|
-
const cellDate = `${yyyy}-${mm}-${dd}`;
|
|
8109
|
-
if (blackoutDates.includes(cellDate)) {
|
|
8110
|
-
return true;
|
|
8111
|
-
}
|
|
8112
|
-
}
|
|
8113
|
-
|
|
8114
|
-
return false;
|
|
8115
|
-
}
|
|
8116
|
-
|
|
8117
|
-
/**
|
|
8118
|
-
* Checks if the current date is disabled based on min/max range or the
|
|
8119
|
-
* legacy disabledDays timestamp list. Sets the `disabled` attribute on the
|
|
8120
|
-
* host when the date falls outside the allowed range or appears in
|
|
8121
|
-
* disabledDays. Note: blackout dates are handled separately by `isBlackout()`.
|
|
8044
|
+
* Checks if the current date is a valid date depending on the min and max values.
|
|
8122
8045
|
* @private
|
|
8123
8046
|
* @param {Object} day - An object containing the dateFrom and day of month values.
|
|
8124
8047
|
* @param {Number} min - The minimum date value.
|
|
@@ -8138,105 +8061,6 @@ class AuroCalendarCell extends LitElement {
|
|
|
8138
8061
|
return false;
|
|
8139
8062
|
}
|
|
8140
8063
|
|
|
8141
|
-
/**
|
|
8142
|
-
* Generates a unique cell ID in the format cell-YYYY-MM-DD.
|
|
8143
|
-
* @private
|
|
8144
|
-
* @returns {String} The unique cell ID.
|
|
8145
|
-
*/
|
|
8146
|
-
getCellId() {
|
|
8147
|
-
if (!this.day || !this.day.date) return '';
|
|
8148
|
-
const date = new Date(this.day.date * 1000);
|
|
8149
|
-
const year = date.getFullYear();
|
|
8150
|
-
const month = String(date.getMonth() + 1).padStart(2, '0');
|
|
8151
|
-
const day = String(date.getDate()).padStart(2, '0');
|
|
8152
|
-
return `cell-${year}-${month}-${day}`;
|
|
8153
|
-
}
|
|
8154
|
-
|
|
8155
|
-
/**
|
|
8156
|
-
* Generates a localized aria-label for the cell button using Intl.DateTimeFormat.
|
|
8157
|
-
* Includes range position and blackout status.
|
|
8158
|
-
* @private
|
|
8159
|
-
* @returns {String} The aria-label string.
|
|
8160
|
-
*/
|
|
8161
|
-
getAriaLabel() {
|
|
8162
|
-
if (!this.day || this.day.date === undefined) return '';
|
|
8163
|
-
|
|
8164
|
-
const date = new Date(this.day.date * 1000);
|
|
8165
|
-
|
|
8166
|
-
// Generate localized full date string using the configured locale
|
|
8167
|
-
const localeCode = this.locale?.code || undefined;
|
|
8168
|
-
const dateFormatter = new Intl.DateTimeFormat(localeCode, {
|
|
8169
|
-
weekday: 'long',
|
|
8170
|
-
year: 'numeric',
|
|
8171
|
-
month: 'long',
|
|
8172
|
-
day: 'numeric'
|
|
8173
|
-
});
|
|
8174
|
-
|
|
8175
|
-
let label = dateFormatter.format(date);
|
|
8176
|
-
|
|
8177
|
-
// Append date slot content (e.g. prices) so it is announced with the date.
|
|
8178
|
-
if (this.renderForDateSlot) {
|
|
8179
|
-
const dateSlotEl = this.querySelector(`[slot="date_${this.dateStr}"]`);
|
|
8180
|
-
if (dateSlotEl) {
|
|
8181
|
-
const text = dateSlotEl.innerText?.trim();
|
|
8182
|
-
if (text) {
|
|
8183
|
-
label += `, ${text}`;
|
|
8184
|
-
}
|
|
8185
|
-
}
|
|
8186
|
-
}
|
|
8187
|
-
|
|
8188
|
-
// appending popover content here so that it gets read in a logical order with the other date content.
|
|
8189
|
-
if (this.hasPopoverContent) {
|
|
8190
|
-
const popoverEl = this.querySelector(`[slot="popover_${this.dateStr}"]`);
|
|
8191
|
-
if (popoverEl) {
|
|
8192
|
-
label += `, ${popoverEl.innerText.trim()}`;
|
|
8193
|
-
}
|
|
8194
|
-
}
|
|
8195
|
-
|
|
8196
|
-
// Append range position label for range datepickers
|
|
8197
|
-
const rangePosition = this.getRangePosition();
|
|
8198
|
-
if (rangePosition) {
|
|
8199
|
-
label += `, ${rangePosition}`;
|
|
8200
|
-
}
|
|
8201
|
-
|
|
8202
|
-
// Append blackout label for blackout cells
|
|
8203
|
-
if (this.isBlackout()) {
|
|
8204
|
-
label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
|
|
8205
|
-
}
|
|
8206
|
-
|
|
8207
|
-
return label;
|
|
8208
|
-
}
|
|
8209
|
-
|
|
8210
|
-
/**
|
|
8211
|
-
* Determines the range position of this cell relative to the current selection.
|
|
8212
|
-
* @private
|
|
8213
|
-
* @returns {String|null} Range position label or null if not in range mode.
|
|
8214
|
-
*/
|
|
8215
|
-
getRangePosition() {
|
|
8216
|
-
if (!this.datepicker || !this.datepicker.hasAttribute('range')) return null;
|
|
8217
|
-
|
|
8218
|
-
const parsedDateFrom = Number.parseInt(this.dateFrom, 10);
|
|
8219
|
-
if (!Number.isFinite(parsedDateFrom)) return null;
|
|
8220
|
-
|
|
8221
|
-
const departTimestamp = startOfDay(parsedDateFrom * 1000) / 1000;
|
|
8222
|
-
const dayDate = this.day.date;
|
|
8223
|
-
|
|
8224
|
-
const parsedDateTo = Number.parseInt(this.dateTo, 10);
|
|
8225
|
-
const hasDateTo = Number.isFinite(parsedDateTo);
|
|
8226
|
-
const returnTimestamp = hasDateTo ? startOfDay(parsedDateTo * 1000) / 1000 : null;
|
|
8227
|
-
|
|
8228
|
-
if (dayDate === departTimestamp) return this.datepicker.rangeLabelStart || 'range start';
|
|
8229
|
-
|
|
8230
|
-
if (hasDateTo && dayDate === returnTimestamp) return this.datepicker.rangeLabelEnd || 'range end';
|
|
8231
|
-
|
|
8232
|
-
if (dayDate < departTimestamp) return this.datepicker.rangeLabelBeforeRange || 'before range';
|
|
8233
|
-
|
|
8234
|
-
if (hasDateTo && dayDate > departTimestamp && dayDate < returnTimestamp) return this.datepicker.rangeLabelInRange || 'in range';
|
|
8235
|
-
|
|
8236
|
-
// After start date, no end date yet, or after end date
|
|
8237
|
-
return this.datepicker.rangeLabelAfterRange || 'after range';
|
|
8238
|
-
}
|
|
8239
|
-
|
|
8240
8064
|
/**
|
|
8241
8065
|
* Checks if the current date is the depart date.
|
|
8242
8066
|
* @private
|
|
@@ -8398,9 +8222,9 @@ class AuroCalendarCell extends LitElement {
|
|
|
8398
8222
|
|
|
8399
8223
|
if (popoverSlotContent) {
|
|
8400
8224
|
this.appendChild(popoverSlotContent.cloneNode(true));
|
|
8401
|
-
this.
|
|
8225
|
+
this.auroPopover.removeAttribute('disabled');
|
|
8402
8226
|
} else {
|
|
8403
|
-
this.
|
|
8227
|
+
this.auroPopover.setAttribute('disabled', true);
|
|
8404
8228
|
}
|
|
8405
8229
|
} catch (err) { // eslint-disable-line no-unused-vars
|
|
8406
8230
|
// Error handling goes here
|
|
@@ -8416,244 +8240,63 @@ class AuroCalendarCell extends LitElement {
|
|
|
8416
8240
|
return;
|
|
8417
8241
|
}
|
|
8418
8242
|
this.datepicker = calendar.datepicker;
|
|
8419
|
-
this.
|
|
8243
|
+
this.datepicker.addEventListener('auroDatePicker-newSlotContent', () => {
|
|
8420
8244
|
this.handleSlotContent();
|
|
8421
|
-
// Force re-render so isBlackout()/aria-disabled reflect updated blackoutDates.
|
|
8422
|
-
this.requestUpdate();
|
|
8423
|
-
};
|
|
8424
|
-
this.datepicker.addEventListener('auroDatePicker-newSlotContent', this._slotContentHandler);
|
|
8425
|
-
|
|
8426
|
-
// Cache button reference for imperative class manipulation.
|
|
8427
|
-
this.updateComplete.then(() => {
|
|
8428
|
-
this._cachedButton = this.shadowRoot.querySelector('button.day');
|
|
8429
8245
|
});
|
|
8430
8246
|
|
|
8431
|
-
// Trigger an initial update now that `this.datepicker` is assigned so
|
|
8432
|
-
// cells reflect blackout/slot state that was configured before first render.
|
|
8433
|
-
this.requestUpdate();
|
|
8434
|
-
|
|
8435
|
-
this.calendarMonth = calendarMonth;
|
|
8436
|
-
this.configurePopover();
|
|
8437
|
-
}
|
|
8438
|
-
|
|
8439
|
-
disconnectedCallback() {
|
|
8440
|
-
super.disconnectedCallback();
|
|
8441
|
-
if (this.datepicker && this._slotContentHandler) {
|
|
8442
|
-
this.datepicker.removeEventListener('auroDatePicker-newSlotContent', this._slotContentHandler);
|
|
8443
|
-
}
|
|
8444
|
-
}
|
|
8445
|
-
|
|
8446
|
-
/**
|
|
8447
|
-
* Configures the popover instance with the calendar month boundary.
|
|
8448
|
-
* Called from firstUpdated and updated because the popover element is only
|
|
8449
|
-
* rendered after hasPopoverContent becomes true (set by handleSlotContent).
|
|
8450
|
-
* @private
|
|
8451
|
-
* @returns {void}
|
|
8452
|
-
*/
|
|
8453
|
-
configurePopover() {
|
|
8454
8247
|
this.auroPopover = this.shadowRoot.querySelector(this.popoverTag._$litStatic$);
|
|
8455
8248
|
|
|
8456
|
-
|
|
8457
|
-
this.auroPopover.boundary = this.calendarMonth;
|
|
8458
|
-
}
|
|
8249
|
+
this.auroPopover.boundary = calendarMonth;
|
|
8459
8250
|
}
|
|
8460
8251
|
|
|
8461
8252
|
updated(properties) {
|
|
8462
|
-
if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('day')) {
|
|
8463
|
-
this.dateChanged(this.dateFrom, this.dateTo, this.day);
|
|
8464
|
-
}
|
|
8465
|
-
|
|
8466
|
-
if (properties.has('day') && this.day) {
|
|
8467
|
-
this.setDateSlotName();
|
|
8468
|
-
this.handleSlotContent();
|
|
8469
|
-
|
|
8470
|
-
// Re-cache button reference when the day changes (cell may have re-rendered).
|
|
8471
|
-
this.updateComplete.then(() => {
|
|
8472
|
-
this._cachedButton = this.shadowRoot.querySelector('button.day');
|
|
8473
|
-
});
|
|
8474
|
-
|
|
8475
|
-
// Update host-level aria attributes for ariaActiveDescendantElement.
|
|
8476
|
-
this.updateHostAria();
|
|
8477
|
-
}
|
|
8478
|
-
|
|
8479
|
-
// Update host aria when selection changes (aria-selected, range labels)
|
|
8480
|
-
if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('selected')) {
|
|
8481
|
-
this.updateHostAria();
|
|
8482
|
-
}
|
|
8483
|
-
|
|
8484
|
-
// Configure popover when it first becomes rendered
|
|
8485
|
-
if (properties.has('hasPopoverContent') && this.hasPopoverContent) {
|
|
8486
|
-
this.updateComplete.then(() => this.configurePopover());
|
|
8487
|
-
}
|
|
8488
|
-
}
|
|
8489
|
-
|
|
8490
|
-
/**
|
|
8491
|
-
* Updates ARIA attributes on the host element so that
|
|
8492
|
-
* ariaActiveDescendantElement can expose cell info to the SR.
|
|
8493
|
-
* @private
|
|
8494
|
-
* @returns {void}
|
|
8495
|
-
*/
|
|
8496
|
-
updateHostAria() {
|
|
8497
|
-
if (!this.day || this.day.date === undefined) return;
|
|
8498
|
-
|
|
8499
|
-
const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
|
|
8500
|
-
if (outOfRange) {
|
|
8501
|
-
this.removeAttribute('role');
|
|
8502
|
-
this.removeAttribute('aria-label');
|
|
8503
|
-
return;
|
|
8504
|
-
}
|
|
8505
|
-
|
|
8506
|
-
// The host acts as the gridcell for ariaActiveDescendantElement.
|
|
8507
|
-
this.setAttribute('role', 'gridcell');
|
|
8508
|
-
this.setAttribute('aria-label', this.getAriaLabel());
|
|
8509
|
-
this.setAttribute('aria-selected', this.selected ? 'true' : 'false');
|
|
8510
|
-
|
|
8511
|
-
if (this.isBlackout()) {
|
|
8512
|
-
this.setAttribute('aria-disabled', 'true');
|
|
8513
|
-
} else {
|
|
8514
|
-
this.removeAttribute('aria-disabled');
|
|
8515
|
-
}
|
|
8516
|
-
}
|
|
8517
|
-
|
|
8518
|
-
/**
|
|
8519
|
-
* Programmatically focuses the cell's interactive button element.
|
|
8520
|
-
* Uses focusVisible: true so the :focus-visible ring appears even when
|
|
8521
|
-
* the bib was opened via mouse click (which sets mouse input modality).
|
|
8522
|
-
* @returns {void}
|
|
8523
|
-
*/
|
|
8524
|
-
focusButton() {
|
|
8525
|
-
const button = this._cachedButton || this.shadowRoot.querySelector('button:not([aria-hidden])');
|
|
8526
|
-
if (button) {
|
|
8527
|
-
button.focus({ focusVisible: true });
|
|
8528
|
-
}
|
|
8529
|
-
}
|
|
8530
|
-
|
|
8531
|
-
/**
|
|
8532
|
-
* Imperatively marks this cell as active without triggering a Lit re-render.
|
|
8533
|
-
* Note: buttons stay tabindex="-1" because the grid uses aria-activedescendant.
|
|
8534
|
-
* @returns {void}
|
|
8535
|
-
*/
|
|
8536
|
-
setActive() {
|
|
8537
|
-
this.active = true;
|
|
8538
|
-
|
|
8539
|
-
// Show the popover when this cell becomes active via keyboard navigation.
|
|
8540
|
-
if (this.auroPopover) {
|
|
8541
|
-
this.auroPopover.toggleShow();
|
|
8542
|
-
}
|
|
8543
|
-
}
|
|
8544
|
-
|
|
8545
|
-
/**
|
|
8546
|
-
* Imperatively marks this cell as inactive without triggering a Lit re-render.
|
|
8547
|
-
* @returns {void}
|
|
8548
|
-
*/
|
|
8549
|
-
clearActive() {
|
|
8550
|
-
this.active = false;
|
|
8551
|
-
const btn = this._cachedButton || this.shadowRoot.querySelector('button.day');
|
|
8552
|
-
if (btn) {
|
|
8553
|
-
btn.classList.remove('activeCell');
|
|
8554
|
-
}
|
|
8555
|
-
|
|
8556
|
-
// Hide the popover when this cell loses active state.
|
|
8557
|
-
if (this.auroPopover) {
|
|
8558
|
-
this.auroPopover.toggleHide();
|
|
8253
|
+
if (properties.has('dateFrom') || properties.has('dateTo') || properties.has('hoveredDate') || properties.has('day')) {
|
|
8254
|
+
this.dateChanged(this.dateFrom, this.dateTo, this.hoveredDate, this.day);
|
|
8559
8255
|
}
|
|
8560
|
-
}
|
|
8561
|
-
|
|
8562
|
-
/**
|
|
8563
|
-
* Updates range preview classes imperatively (no Lit re-render).
|
|
8564
|
-
* Called by the calendar component when the hovered date changes
|
|
8565
|
-
* during range selection (dateFrom set, dateTo not yet set).
|
|
8566
|
-
* @param {Number} hoveredDate - Unix timestamp of the currently hovered/focused date.
|
|
8567
|
-
* @param {Number} dateFrom - Unix timestamp of the selected departure date.
|
|
8568
|
-
* @returns {void}
|
|
8569
|
-
*/
|
|
8570
|
-
updateRangePreviewClasses(hoveredDate, dateFrom) {
|
|
8571
|
-
const btn = this._cachedButton;
|
|
8572
|
-
if (!btn || !this.day) return;
|
|
8573
|
-
|
|
8574
|
-
const dayDate = this.day.date;
|
|
8575
|
-
const departTimestamp = startOfDay(dateFrom * 1000) / 1000;
|
|
8576
|
-
const isInRange = dayDate > departTimestamp && dayDate < hoveredDate;
|
|
8577
|
-
const isLastHovered = dayDate === hoveredDate && hoveredDate > departTimestamp;
|
|
8578
|
-
const isDepartWithPreview = dayDate === departTimestamp && hoveredDate > departTimestamp;
|
|
8579
|
-
|
|
8580
|
-
btn.classList.toggle('inRange', isInRange);
|
|
8581
|
-
btn.classList.toggle('lastHoveredDate', isLastHovered);
|
|
8582
|
-
btn.classList.toggle('rangeDepartDate', isDepartWithPreview);
|
|
8583
|
-
}
|
|
8584
|
-
|
|
8585
|
-
/**
|
|
8586
|
-
* Clears all imperative range preview classes from the cell button.
|
|
8587
|
-
* Called when a selection occurs so classMap becomes the sole source of truth.
|
|
8588
|
-
* @returns {void}
|
|
8589
|
-
*/
|
|
8590
|
-
clearRangePreviewClasses() {
|
|
8591
|
-
const btn = this._cachedButton;
|
|
8592
|
-
if (!btn) return;
|
|
8593
8256
|
|
|
8594
|
-
|
|
8257
|
+
this.setDateSlotName();
|
|
8258
|
+
this.handleSlotContent();
|
|
8595
8259
|
}
|
|
8596
8260
|
|
|
8597
|
-
|
|
8598
|
-
const outOfRange = this.isOutOfRange(this.day, this.min, this.max);
|
|
8599
|
-
const blackout = this.isBlackout();
|
|
8600
|
-
|
|
8601
|
-
// Static and selection-driven classes only. Hover-driven classes
|
|
8602
|
-
// (inRange, lastHoveredDate, rangeDepartDate during preview) are
|
|
8603
|
-
// managed imperatively via updateRangePreviewClasses() to avoid
|
|
8604
|
-
// O(N) Lit re-renders on every focus/hover event.
|
|
8261
|
+
render() {
|
|
8605
8262
|
const buttonClasses = {
|
|
8606
8263
|
'day': true,
|
|
8607
|
-
'body-
|
|
8608
|
-
'currentDate': this.
|
|
8264
|
+
'body-lg': true,
|
|
8265
|
+
'currentDate': this.currentDate,
|
|
8609
8266
|
'selected': this.selected,
|
|
8610
|
-
'inRange': this.
|
|
8611
|
-
'
|
|
8612
|
-
'
|
|
8613
|
-
'rangeDepartDate': this.
|
|
8614
|
-
'rangeReturnDate': this.
|
|
8267
|
+
'inRange': this.hovered && this.isInRange(this.day, this.dateFrom, this.dateTo),
|
|
8268
|
+
'lastHoveredDate': this.isLastHoveredDate(this.day, this.dateFrom, this.dateTo, this.hoveredDate) && this.datepicker && this.datepicker.hasAttribute('range'),
|
|
8269
|
+
'disabled': this.isEnabled(this.day, this.min, this.max, this.disabledDays),
|
|
8270
|
+
'rangeDepartDate': this.isDepartDate(this.day, this.dateFrom) && (this.hoveredDate > this.dateFrom || this.dateTo),
|
|
8271
|
+
'rangeReturnDate': this.isReturnDate(this.day, this.dateFrom, this.dateTo),
|
|
8615
8272
|
'reference': this.isReferenceDate(this.dateStr),
|
|
8616
|
-
'sameDateTrip': this.
|
|
8273
|
+
'sameDateTrip': this.dateFrom === this.dateTo
|
|
8617
8274
|
};
|
|
8618
8275
|
|
|
8276
|
+
let _a, _b;
|
|
8619
8277
|
return html$1`
|
|
8620
|
-
|
|
8621
|
-
slot="
|
|
8622
|
-
|
|
8623
|
-
|
|
8624
|
-
|
|
8625
|
-
|
|
8626
|
-
|
|
8627
|
-
|
|
8628
|
-
|
|
8629
|
-
|
|
8630
|
-
|
|
8631
|
-
<div class="
|
|
8632
|
-
|
|
8633
|
-
<
|
|
8278
|
+
<${this.popoverTag}>
|
|
8279
|
+
<slot name="popover_${this.dateStr}"></slot>
|
|
8280
|
+
<button
|
|
8281
|
+
slot="trigger"
|
|
8282
|
+
@click="${this.handleTap}"
|
|
8283
|
+
@mouseover="${this.handleHover}"
|
|
8284
|
+
@focus="${this.handleHover}"
|
|
8285
|
+
class="${classMap(buttonClasses)}"
|
|
8286
|
+
?disabled="${this.disabled}"
|
|
8287
|
+
title="${this.getTitle((_a = this.day) === null || _a === void 0 ? void 0 : _a.date)}"
|
|
8288
|
+
tabindex="-1">
|
|
8289
|
+
<div class="buttonWrapper">
|
|
8290
|
+
<div class="currentDayMarker">${(_b = this.day) === null || _b === void 0 ? void 0 : _b.title}</div>
|
|
8291
|
+
<div class="dateSlot body-2xs" part="dateSlot">
|
|
8292
|
+
<slot name="date_${this.dateStr}"></slot>
|
|
8293
|
+
</div>
|
|
8634
8294
|
</div>
|
|
8635
|
-
</
|
|
8636
|
-
|
|
8295
|
+
</button>
|
|
8296
|
+
</${this.popoverTag}>
|
|
8637
8297
|
`;
|
|
8638
8298
|
}
|
|
8639
|
-
|
|
8640
|
-
render() {
|
|
8641
|
-
const hasPopoverContent = this.hasPopoverContent;
|
|
8642
|
-
|
|
8643
|
-
if (hasPopoverContent) {
|
|
8644
|
-
return html$1`
|
|
8645
|
-
<${this.popoverTag}>
|
|
8646
|
-
<span aria-hidden="true"><slot name="popover_${this.dateStr}"></slot></span>
|
|
8647
|
-
${this.renderCellButton()}
|
|
8648
|
-
</${this.popoverTag}>
|
|
8649
|
-
`;
|
|
8650
|
-
}
|
|
8651
|
-
|
|
8652
|
-
return html$1`
|
|
8653
|
-
${this.renderCellButton()}
|
|
8654
|
-
`;
|
|
8655
|
-
}
|
|
8656
|
-
}
|
|
8299
|
+
}
|
|
8657
8300
|
|
|
8658
8301
|
if (!customElements.get('auro-formkit-calendar-cell')) {
|
|
8659
8302
|
customElements.define('auro-formkit-calendar-cell', AuroCalendarCell);
|
|
@@ -8718,28 +8361,16 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
8718
8361
|
return this.monthNames[month - 1];
|
|
8719
8362
|
}
|
|
8720
8363
|
|
|
8721
|
-
/**
|
|
8722
|
-
* Returns the unique heading ID for this month, used by aria-labelledby.
|
|
8723
|
-
* @private
|
|
8724
|
-
* @returns {String} The heading ID.
|
|
8725
|
-
*/
|
|
8726
|
-
getHeadingId() {
|
|
8727
|
-
return `month-heading-${this.month}-${this.year}`;
|
|
8728
|
-
}
|
|
8729
|
-
|
|
8730
8364
|
/**
|
|
8731
8365
|
* Determines the current month name based on locale.
|
|
8732
|
-
* Also builds parallel arrays of full day names for abbr attributes.
|
|
8733
8366
|
* This is a rewrite of the function used in the class RangeDatepickerCalendar and should not be removed from here.
|
|
8734
8367
|
* @private
|
|
8735
8368
|
* @returns {void}
|
|
8736
8369
|
*/
|
|
8737
8370
|
localeChanged() {
|
|
8738
8371
|
const dayNamesOfTheWeek = [];
|
|
8739
|
-
const dayFullNames = [];
|
|
8740
8372
|
for (let int = 0; int < 7; int += 1) {
|
|
8741
8373
|
dayNamesOfTheWeek.push(this.locale.localize.day(int, { width: 'narrow' }));
|
|
8742
|
-
dayFullNames.push(this.locale.localize.day(int, { width: 'long' }));
|
|
8743
8374
|
}
|
|
8744
8375
|
const firstDayOfWeek = this.locale.options.weekStartsOn
|
|
8745
8376
|
? this.locale.options.weekStartsOn
|
|
@@ -8750,139 +8381,6 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
8750
8381
|
.splice(firstDayOfWeek, dayNamesOfTheWeek.length)
|
|
8751
8382
|
.concat(tmp);
|
|
8752
8383
|
this.dayNamesOfTheWeek = newDayNamesOfTheWeek;
|
|
8753
|
-
|
|
8754
|
-
const tmpFull = dayFullNames.slice().splice(0, firstDayOfWeek);
|
|
8755
|
-
const newDayFullNames = dayFullNames
|
|
8756
|
-
.slice()
|
|
8757
|
-
.splice(firstDayOfWeek, dayFullNames.length)
|
|
8758
|
-
.concat(tmpFull);
|
|
8759
|
-
this.dayFullNames = newDayFullNames;
|
|
8760
|
-
}
|
|
8761
|
-
|
|
8762
|
-
/**
|
|
8763
|
-
* Renders a day-of-week header with abbr attribute for the full day name.
|
|
8764
|
-
* @private
|
|
8765
|
-
* @param {String} dayOfWeek - The short day name.
|
|
8766
|
-
* @param {Number} index - The index in the dayNamesOfTheWeek array.
|
|
8767
|
-
* @returns {Object} The header HTML.
|
|
8768
|
-
*/
|
|
8769
|
-
renderDayOfWeek(dayOfWeek, index) {
|
|
8770
|
-
const fullName = this.dayFullNames ? this.dayFullNames[index] : dayOfWeek;
|
|
8771
|
-
return html`<div class="th body-default"><abbr title="${fullName}">${dayOfWeek}</abbr></div>`;
|
|
8772
|
-
}
|
|
8773
|
-
|
|
8774
|
-
/**
|
|
8775
|
-
* Returns all focusable cell elements (enabled + blackout, not out-of-range) in this month.
|
|
8776
|
-
* @returns {Array} Array of auro-formkit-calendar-cell elements.
|
|
8777
|
-
*/
|
|
8778
|
-
getFocusableCells() {
|
|
8779
|
-
const cells = Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-cell'));
|
|
8780
|
-
return cells.filter(cell => {
|
|
8781
|
-
if (!cell.day) return false;
|
|
8782
|
-
return !cell.isOutOfRange(cell.day, cell.min, cell.max);
|
|
8783
|
-
});
|
|
8784
|
-
}
|
|
8785
|
-
|
|
8786
|
-
/**
|
|
8787
|
-
* Overrides the base class handler to prevent setting `this.hoveredDate`
|
|
8788
|
-
* as a reactive property. Instead, just dispatches the event upward so
|
|
8789
|
-
* the calendar can handle range preview imperatively.
|
|
8790
|
-
* @private
|
|
8791
|
-
* @param {CustomEvent} event - The date-is-hovered event from a cell.
|
|
8792
|
-
* @returns {void}
|
|
8793
|
-
*/
|
|
8794
|
-
handleDateHovered(event) {
|
|
8795
|
-
this.dispatchEvent(new CustomEvent('hovered-date-changed', {
|
|
8796
|
-
detail: { value: event.detail.date },
|
|
8797
|
-
}));
|
|
8798
|
-
}
|
|
8799
|
-
|
|
8800
|
-
/**
|
|
8801
|
-
* Handles arrow key navigation within the month grid.
|
|
8802
|
-
* Dispatches a cross-month navigation event when the boundary is reached.
|
|
8803
|
-
* @private
|
|
8804
|
-
* @param {KeyboardEvent} event - The keyboard event.
|
|
8805
|
-
* @returns {void}
|
|
8806
|
-
*/
|
|
8807
|
-
handleGridKeyDown(event) {
|
|
8808
|
-
const { key } = event;
|
|
8809
|
-
const arrowKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp'];
|
|
8810
|
-
|
|
8811
|
-
if (!arrowKeys.includes(key)) return;
|
|
8812
|
-
|
|
8813
|
-
event.preventDefault();
|
|
8814
|
-
|
|
8815
|
-
const focusableCells = this.getFocusableCells();
|
|
8816
|
-
if (focusableCells.length === 0) return;
|
|
8817
|
-
|
|
8818
|
-
// Find the currently active cell within this month
|
|
8819
|
-
const activeCell = focusableCells.find(cell => cell.active);
|
|
8820
|
-
if (!activeCell) return;
|
|
8821
|
-
|
|
8822
|
-
const activeIndex = focusableCells.indexOf(activeCell);
|
|
8823
|
-
let targetCell = null;
|
|
8824
|
-
|
|
8825
|
-
if (key === 'ArrowRight') {
|
|
8826
|
-
if (activeIndex < focusableCells.length - 1) {
|
|
8827
|
-
targetCell = focusableCells[activeIndex + 1];
|
|
8828
|
-
} else {
|
|
8829
|
-
// At end of month, request cross-month navigation
|
|
8830
|
-
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
8831
|
-
bubbles: true,
|
|
8832
|
-
composed: true,
|
|
8833
|
-
detail: { direction: 'next', fromDate: activeCell.day.date, key }
|
|
8834
|
-
}));
|
|
8835
|
-
return;
|
|
8836
|
-
}
|
|
8837
|
-
} else if (key === 'ArrowLeft') {
|
|
8838
|
-
if (activeIndex > 0) {
|
|
8839
|
-
targetCell = focusableCells[activeIndex - 1];
|
|
8840
|
-
} else {
|
|
8841
|
-
// At start of month, request cross-month navigation
|
|
8842
|
-
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
8843
|
-
bubbles: true,
|
|
8844
|
-
composed: true,
|
|
8845
|
-
detail: { direction: 'prev', fromDate: activeCell.day.date, key }
|
|
8846
|
-
}));
|
|
8847
|
-
return;
|
|
8848
|
-
}
|
|
8849
|
-
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
8850
|
-
// Find the target day (same day-of-week, +/- 7 days)
|
|
8851
|
-
// Use Date arithmetic instead of fixed seconds to handle DST correctly
|
|
8852
|
-
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
8853
|
-
const currentDate = new Date(activeCell.day.date * 1000);
|
|
8854
|
-
currentDate.setDate(currentDate.getDate() + increment);
|
|
8855
|
-
currentDate.setHours(0, 0, 0, 0);
|
|
8856
|
-
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
8857
|
-
|
|
8858
|
-
// Look for the target date in this month's focusable cells
|
|
8859
|
-
targetCell = focusableCells.find(cell => cell.day.date === targetDate);
|
|
8860
|
-
|
|
8861
|
-
if (!targetCell) {
|
|
8862
|
-
// Target is in another month or all cells in that direction are disabled
|
|
8863
|
-
const direction = key === 'ArrowDown' ? 'next' : 'prev';
|
|
8864
|
-
this.dispatchEvent(new CustomEvent('calendar-month-boundary', {
|
|
8865
|
-
bubbles: true,
|
|
8866
|
-
composed: true,
|
|
8867
|
-
detail: { direction, fromDate: activeCell.day.date, key }
|
|
8868
|
-
}));
|
|
8869
|
-
return;
|
|
8870
|
-
}
|
|
8871
|
-
}
|
|
8872
|
-
|
|
8873
|
-
if (targetCell) {
|
|
8874
|
-
this.dispatchEvent(new CustomEvent('calendar-cell-activate', {
|
|
8875
|
-
bubbles: true,
|
|
8876
|
-
composed: true,
|
|
8877
|
-
detail: { date: targetCell.day.date }
|
|
8878
|
-
}));
|
|
8879
|
-
}
|
|
8880
|
-
}
|
|
8881
|
-
|
|
8882
|
-
renderWeek(week) {
|
|
8883
|
-
return html`
|
|
8884
|
-
<div class="tr" role="row">${week.map((day) => this.renderDay(day))}</div>
|
|
8885
|
-
`;
|
|
8886
8384
|
}
|
|
8887
8385
|
|
|
8888
8386
|
renderDay(day) {
|
|
@@ -8895,6 +8393,7 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
8895
8393
|
.min="${this.min}"
|
|
8896
8394
|
.max="${this.max}"
|
|
8897
8395
|
.month="${this.month}"
|
|
8396
|
+
.hoveredDate="${this.hoveredDate}"
|
|
8898
8397
|
.dateTo="${this.dateTo}"
|
|
8899
8398
|
.dateFrom="${this.dateFrom}"
|
|
8900
8399
|
.locale="${this.locale}"
|
|
@@ -8905,7 +8404,7 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
8905
8404
|
>
|
|
8906
8405
|
</auro-formkit-calendar-cell>
|
|
8907
8406
|
`
|
|
8908
|
-
:
|
|
8407
|
+
: null}
|
|
8909
8408
|
</div>
|
|
8910
8409
|
`;
|
|
8911
8410
|
}
|
|
@@ -8916,10 +8415,10 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
8916
8415
|
var _a, _b;
|
|
8917
8416
|
|
|
8918
8417
|
return html `
|
|
8919
|
-
<div
|
|
8418
|
+
<div>
|
|
8920
8419
|
<div class="header">
|
|
8921
8420
|
${this.renderPrevButton()}
|
|
8922
|
-
<div class="headerTitle heading-xs"
|
|
8421
|
+
<div class="headerTitle heading-xs">
|
|
8923
8422
|
${this.monthFirst ? html`
|
|
8924
8423
|
<div>${this.computeCurrentMonthName(this.month)}</div>
|
|
8925
8424
|
<div>${this.renderYear()}</div>
|
|
@@ -8931,13 +8430,13 @@ class AuroCalendarMonth extends RangeDatepickerCalendar {
|
|
|
8931
8430
|
${this.renderNextButton()}
|
|
8932
8431
|
</div>
|
|
8933
8432
|
|
|
8934
|
-
<div class="table"
|
|
8935
|
-
<div class="thead"
|
|
8433
|
+
<div class="table">
|
|
8434
|
+
<div class="thead">
|
|
8936
8435
|
<div class="tr">
|
|
8937
|
-
${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map(
|
|
8436
|
+
${(_a = this.dayNamesOfTheWeek) === null || _a === void 0 ? void 0 : _a.map(dayNameOfWeek => this.renderDayOfWeek(dayNameOfWeek))}
|
|
8938
8437
|
</div>
|
|
8939
8438
|
</div>
|
|
8940
|
-
<div class="tbody"
|
|
8439
|
+
<div class="tbody">
|
|
8941
8440
|
${(_b = this.daysOfMonth) === null || _b === void 0 ? void 0 : _b.map(week => this.renderWeek(week))}
|
|
8942
8441
|
</div>
|
|
8943
8442
|
</div>
|
|
@@ -9630,14 +9129,6 @@ class AuroBibtemplate extends LitElement {
|
|
|
9630
9129
|
large: {
|
|
9631
9130
|
type: Boolean,
|
|
9632
9131
|
reflect: true
|
|
9633
|
-
},
|
|
9634
|
-
|
|
9635
|
-
/**
|
|
9636
|
-
* If declared, the footer slot will be rendered even when not in fullscreen mode.
|
|
9637
|
-
*/
|
|
9638
|
-
showFooter: {
|
|
9639
|
-
type: Boolean,
|
|
9640
|
-
reflect: true
|
|
9641
9132
|
}
|
|
9642
9133
|
};
|
|
9643
9134
|
}
|
|
@@ -9740,7 +9231,7 @@ class AuroBibtemplate extends LitElement {
|
|
|
9740
9231
|
<slot></slot>
|
|
9741
9232
|
</div>
|
|
9742
9233
|
|
|
9743
|
-
${this.isFullscreen
|
|
9234
|
+
${this.isFullscreen ? html$1`
|
|
9744
9235
|
<div id="footerContainer">
|
|
9745
9236
|
<slot name="footer"></slot>
|
|
9746
9237
|
</div>` : null}
|
|
@@ -9749,7 +9240,7 @@ class AuroBibtemplate extends LitElement {
|
|
|
9749
9240
|
}
|
|
9750
9241
|
}
|
|
9751
9242
|
|
|
9752
|
-
var formkitVersion$2 = '
|
|
9243
|
+
var formkitVersion$2 = '202606082059';
|
|
9753
9244
|
|
|
9754
9245
|
let l$1 = 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=literal`${unsafeStatic(r)}`;return customElements.get(r)||customElements.define(r,class extends a{}),i}};let d$1 = 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 = 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=css`: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}
|
|
9755
9246
|
`,u$4=css`.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}}
|
|
@@ -9847,20 +9338,6 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
9847
9338
|
this.largeFullscreenHeadline = false;
|
|
9848
9339
|
this.isFullscreen = false;
|
|
9849
9340
|
|
|
9850
|
-
/**
|
|
9851
|
-
* The date of the currently active cell (Unix timestamp).
|
|
9852
|
-
* Only one cell across the entire calendar has tabindex="0" at a time.
|
|
9853
|
-
* @private
|
|
9854
|
-
*/
|
|
9855
|
-
this.activeCellDate = null;
|
|
9856
|
-
|
|
9857
|
-
/**
|
|
9858
|
-
* Whether the #calendarGrid wrapper currently has focus.
|
|
9859
|
-
* Used to determine whether the visualFocus ring should be shown.
|
|
9860
|
-
* @private
|
|
9861
|
-
*/
|
|
9862
|
-
this._gridHasFocus = false;
|
|
9863
|
-
|
|
9864
9341
|
/**
|
|
9865
9342
|
* @private
|
|
9866
9343
|
*/
|
|
@@ -10022,76 +9499,19 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
10022
9499
|
/**
|
|
10023
9500
|
* Updates the month and year when the user navigates to the previous calendar month.
|
|
10024
9501
|
* @private
|
|
10025
|
-
* @param {Object} [options] - Optional settings.
|
|
10026
|
-
* @param {boolean} [options.skipActiveUpdate=false] - When true, skip the active cell
|
|
10027
|
-
* recomputation. Used by arrow key handlers that manage the active cell themselves.
|
|
10028
9502
|
* @returns {void}
|
|
10029
9503
|
*/
|
|
10030
|
-
handlePrevMonth(
|
|
10031
|
-
const opts = options instanceof Event ? {} : (options || {});
|
|
9504
|
+
handlePrevMonth() {
|
|
10032
9505
|
this.utilCal.handleMonthChange(this, 'prev');
|
|
10033
|
-
if (!opts.skipActiveUpdate) {
|
|
10034
|
-
this.updateActiveCellForVisibleMonth();
|
|
10035
|
-
}
|
|
10036
|
-
this.announceMonthChange();
|
|
10037
9506
|
}
|
|
10038
9507
|
|
|
10039
9508
|
/**
|
|
10040
9509
|
* Updates the month and year when the user navigates to the next calendar month.
|
|
10041
9510
|
* @private
|
|
10042
|
-
* @param {Object} [options] - Optional settings.
|
|
10043
|
-
* @param {boolean} [options.skipActiveUpdate=false] - When true, skip the active cell
|
|
10044
|
-
* recomputation. Used by arrow key handlers that manage the active cell themselves.
|
|
10045
9511
|
* @returns {void}
|
|
10046
9512
|
*/
|
|
10047
|
-
handleNextMonth(
|
|
10048
|
-
const opts = options instanceof Event ? {} : (options || {});
|
|
9513
|
+
handleNextMonth() {
|
|
10049
9514
|
this.utilCal.handleMonthChange(this, 'next');
|
|
10050
|
-
if (!opts.skipActiveUpdate) {
|
|
10051
|
-
this.updateActiveCellForVisibleMonth();
|
|
10052
|
-
}
|
|
10053
|
-
this.announceMonthChange();
|
|
10054
|
-
}
|
|
10055
|
-
|
|
10056
|
-
/**
|
|
10057
|
-
* Announces the current month and year via the live region after navigation.
|
|
10058
|
-
* @private
|
|
10059
|
-
* @returns {void}
|
|
10060
|
-
*/
|
|
10061
|
-
announceMonthChange() {
|
|
10062
|
-
// Cancel any pending debounced cell announcement so it does not
|
|
10063
|
-
// overwrite this month navigation announcement.
|
|
10064
|
-
if (this._focusAnnounceTimer) {
|
|
10065
|
-
clearTimeout(this._focusAnnounceTimer);
|
|
10066
|
-
this._focusAnnounceTimer = null;
|
|
10067
|
-
}
|
|
10068
|
-
|
|
10069
|
-
const date = new Date(this.centralDate);
|
|
10070
|
-
const localeCode = this.locale?.code || undefined;
|
|
10071
|
-
const formatter = new Intl.DateTimeFormat(localeCode, { month: 'long', year: 'numeric' });
|
|
10072
|
-
this.announceSelection(formatter.format(date));
|
|
10073
|
-
}
|
|
10074
|
-
|
|
10075
|
-
/**
|
|
10076
|
-
* Updates the active cell after month navigation (prev/next buttons).
|
|
10077
|
-
* Always moves the active cell to the first enabled date in the newly
|
|
10078
|
-
* visible months so that tabbing back to the grid lands on an enabled cell.
|
|
10079
|
-
* @private
|
|
10080
|
-
* @returns {void}
|
|
10081
|
-
*/
|
|
10082
|
-
updateActiveCellForVisibleMonth() {
|
|
10083
|
-
// Use double-rAF to ensure child month/cell components have fully
|
|
10084
|
-
// rendered and cached their button references before we set tabindex.
|
|
10085
|
-
requestAnimationFrame(() => {
|
|
10086
|
-
requestAnimationFrame(() => {
|
|
10087
|
-
const newDate = this.computeActiveDate({ skipDateFrom: true });
|
|
10088
|
-
|
|
10089
|
-
if (newDate != null) {
|
|
10090
|
-
this.activeCellDate = newDate;
|
|
10091
|
-
this.setActiveCell(this.activeCellDate);
|
|
10092
|
-
}
|
|
10093
|
-
});
|
|
10094
|
-
});
|
|
10095
9515
|
}
|
|
10096
9516
|
|
|
10097
9517
|
/**
|
|
@@ -10199,904 +9619,6 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
10199
9619
|
this.utilCal.scrollMonthIntoView(this, date, this.format);
|
|
10200
9620
|
}
|
|
10201
9621
|
|
|
10202
|
-
/**
|
|
10203
|
-
* Gets all rendered month components.
|
|
10204
|
-
* @private
|
|
10205
|
-
* @returns {Array} Array of auro-formkit-calendar-month elements.
|
|
10206
|
-
*/
|
|
10207
|
-
getMonthComponents() {
|
|
10208
|
-
return Array.from(this.shadowRoot.querySelectorAll('auro-formkit-calendar-month'));
|
|
10209
|
-
}
|
|
10210
|
-
|
|
10211
|
-
/**
|
|
10212
|
-
* Gets all focusable cells across all rendered months.
|
|
10213
|
-
* @private
|
|
10214
|
-
* @returns {Array} Array of auro-formkit-calendar-cell elements.
|
|
10215
|
-
*/
|
|
10216
|
-
getAllFocusableCells() {
|
|
10217
|
-
const months = this.getMonthComponents();
|
|
10218
|
-
let cells = [];
|
|
10219
|
-
months.forEach(month => {
|
|
10220
|
-
cells = cells.concat(month.getFocusableCells());
|
|
10221
|
-
});
|
|
10222
|
-
return cells;
|
|
10223
|
-
}
|
|
10224
|
-
|
|
10225
|
-
/**
|
|
10226
|
-
* Sets the active cell across all months. Only one cell has tabindex="0" at a time.
|
|
10227
|
-
* Uses imperative DOM manipulation — no Lit re-render triggered.
|
|
10228
|
-
* Also updates ariaActiveDescendantElement on the grid wrapper so
|
|
10229
|
-
* screen readers announce the active cell without moving DOM focus.
|
|
10230
|
-
* @param {Number} date - Unix timestamp of the cell to activate.
|
|
10231
|
-
* @returns {void}
|
|
10232
|
-
*/
|
|
10233
|
-
setActiveCell(date) {
|
|
10234
|
-
const allCells = this.getAllFocusableCells();
|
|
10235
|
-
|
|
10236
|
-
let newActiveCell = null;
|
|
10237
|
-
allCells.forEach(cell => {
|
|
10238
|
-
if (cell.day && cell.day.date === date) {
|
|
10239
|
-
cell.setActive();
|
|
10240
|
-
newActiveCell = cell;
|
|
10241
|
-
} else if (cell.active) {
|
|
10242
|
-
cell.clearActive();
|
|
10243
|
-
}
|
|
10244
|
-
});
|
|
10245
|
-
|
|
10246
|
-
this.activeCellDate = date;
|
|
10247
|
-
|
|
10248
|
-
// Apply activeCell ring only when the grid currently has focus.
|
|
10249
|
-
if (newActiveCell && this._gridHasFocus) {
|
|
10250
|
-
const btn = newActiveCell._cachedButton || newActiveCell.shadowRoot.querySelector('button.day');
|
|
10251
|
-
if (btn) btn.classList.add('activeCell');
|
|
10252
|
-
}
|
|
10253
|
-
}
|
|
10254
|
-
|
|
10255
|
-
/**
|
|
10256
|
-
* Focuses the calendar grid wrapper and sets the active cell.
|
|
10257
|
-
* DOM focus stays on the grid wrapper; the aria-live region
|
|
10258
|
-
* tells the screen reader which cell is "active".
|
|
10259
|
-
* @returns {void}
|
|
10260
|
-
*/
|
|
10261
|
-
focusActiveCell() {
|
|
10262
|
-
if (this.activeCellDate != null) {
|
|
10263
|
-
this.setActiveCell(this.activeCellDate);
|
|
10264
|
-
}
|
|
10265
|
-
|
|
10266
|
-
const gridWrapper = this.shadowRoot.querySelector('#calendarGrid');
|
|
10267
|
-
if (gridWrapper) {
|
|
10268
|
-
gridWrapper.focus({ preventScroll: true, focusVisible: true });
|
|
10269
|
-
}
|
|
10270
|
-
}
|
|
10271
|
-
|
|
10272
|
-
/**
|
|
10273
|
-
* Shows the activeCell ring when the grid gains focus.
|
|
10274
|
-
* @private
|
|
10275
|
-
* @returns {void}
|
|
10276
|
-
*/
|
|
10277
|
-
handleGridFocusIn() {
|
|
10278
|
-
this._gridHasFocus = true;
|
|
10279
|
-
const activeCell = this.getAllFocusableCells().find((c) => c.active);
|
|
10280
|
-
if (activeCell) {
|
|
10281
|
-
const btn = activeCell._cachedButton || activeCell.shadowRoot.querySelector('button.day');
|
|
10282
|
-
if (btn) btn.classList.add('activeCell');
|
|
10283
|
-
}
|
|
10284
|
-
}
|
|
10285
|
-
|
|
10286
|
-
/**
|
|
10287
|
-
* Hides the activeCell ring when the grid loses focus.
|
|
10288
|
-
* @private
|
|
10289
|
-
* @returns {void}
|
|
10290
|
-
*/
|
|
10291
|
-
handleGridFocusOut() {
|
|
10292
|
-
this._gridHasFocus = false;
|
|
10293
|
-
// Remove activeCell from ALL cells to prevent stale rings.
|
|
10294
|
-
const allCells = this.getAllFocusableCells();
|
|
10295
|
-
for (const cell of allCells) {
|
|
10296
|
-
const btn = cell._cachedButton || cell.shadowRoot.querySelector('button.day');
|
|
10297
|
-
if (btn) btn.classList.remove('activeCell');
|
|
10298
|
-
}
|
|
10299
|
-
}
|
|
10300
|
-
|
|
10301
|
-
/**
|
|
10302
|
-
* Computes the initial active date from data properties alone — no DOM required.
|
|
10303
|
-
* Priority:
|
|
10304
|
-
* 1. Selected date (dateFrom) if within range
|
|
10305
|
-
* 2. Today's date if not disabled (in-range and not blackout)
|
|
10306
|
-
* 3. First future non-disabled date (scans day-by-day from today up to 1 year)
|
|
10307
|
-
* 4. First previous non-disabled date (scans day-by-day from today up to 1 year)
|
|
10308
|
-
* 5. First enabled date in finite [min, max] range
|
|
10309
|
-
* 5b. First enabled date scanning forward from finite min (unbounded max)
|
|
10310
|
-
* 5c. First enabled date scanning backward from finite max (unbounded min)
|
|
10311
|
-
* 6. First in-range date (even if blackout) so focus can land somewhere
|
|
10312
|
-
* 7. undefined — no valid target
|
|
10313
|
-
*
|
|
10314
|
-
* @private
|
|
10315
|
-
* @param {Object} [options] - Optional settings.
|
|
10316
|
-
* @param {boolean} [options.skipDateFrom=false] - When true, skip the selected-date
|
|
10317
|
-
* shortcut (step 1). Used after month navigation so the active cell lands in the
|
|
10318
|
-
* newly visible month instead of jumping back to the selected date's month.
|
|
10319
|
-
* @returns {Number|undefined} Unix timestamp (seconds) of the date to activate, or undefined.
|
|
10320
|
-
*/
|
|
10321
|
-
computeActiveDate(options = {}) {
|
|
10322
|
-
const MAX_SCAN_DAYS = 366; // scan at most ~1 year in each direction
|
|
10323
|
-
|
|
10324
|
-
/**
|
|
10325
|
-
* Adds days to a timestamp using Date arithmetic to handle DST correctly.
|
|
10326
|
-
* Returns a local-midnight-aligned timestamp in seconds.
|
|
10327
|
-
*/
|
|
10328
|
-
const addDays = (ts, days) => {
|
|
10329
|
-
const d = new Date(ts * 1000);
|
|
10330
|
-
d.setDate(d.getDate() + days);
|
|
10331
|
-
d.setHours(0, 0, 0, 0);
|
|
10332
|
-
return Math.floor(d.getTime() / 1000);
|
|
10333
|
-
};
|
|
10334
|
-
|
|
10335
|
-
const rawMin = Number(this.min);
|
|
10336
|
-
const rawMax = Number(this.max);
|
|
10337
|
-
|
|
10338
|
-
// When min/max are NaN (no minDate/maxDate configured), treat as unbounded.
|
|
10339
|
-
const minTs = Number.isFinite(rawMin) ? rawMin : -Infinity;
|
|
10340
|
-
const maxTs = Number.isFinite(rawMax) ? rawMax : Infinity;
|
|
10341
|
-
|
|
10342
|
-
// Build a Set of blackout timestamps for O(1) lookup.
|
|
10343
|
-
const blackoutSet = new Set(
|
|
10344
|
-
(this.disabledDays || []).map(d => parseInt(d, 10))
|
|
10345
|
-
);
|
|
10346
|
-
|
|
10347
|
-
// Also include ISO-format blackoutDates from the datepicker if available.
|
|
10348
|
-
// Parse YYYY-MM-DD as local date to avoid UTC shift issues.
|
|
10349
|
-
const isoBlackouts = this.datepicker?.blackoutDates;
|
|
10350
|
-
if (Array.isArray(isoBlackouts)) {
|
|
10351
|
-
for (const isoStr of isoBlackouts) {
|
|
10352
|
-
const parts = isoStr.split('-');
|
|
10353
|
-
const ts = Math.floor(new Date(parseInt(parts[0], 10), parseInt(parts[1], 10) - 1, parseInt(parts[2], 10)).getTime() / 1000);
|
|
10354
|
-
if (Number.isFinite(ts)) blackoutSet.add(ts);
|
|
10355
|
-
}
|
|
10356
|
-
}
|
|
10357
|
-
|
|
10358
|
-
/**
|
|
10359
|
-
* A date (unix timestamp in seconds, midnight-aligned) is "enabled" when
|
|
10360
|
-
* it is within [min, max] AND not a blackout day.
|
|
10361
|
-
*/
|
|
10362
|
-
const isEnabled = (ts) => ts >= minTs && ts <= maxTs && !blackoutSet.has(ts);
|
|
10363
|
-
|
|
10364
|
-
/**
|
|
10365
|
-
* A date is "in range" (focusable in the grid) when it is within [min, max].
|
|
10366
|
-
* Blackout dates are focusable but not selectable.
|
|
10367
|
-
*/
|
|
10368
|
-
const isInRange = (ts) => ts >= minTs && ts <= maxTs;
|
|
10369
|
-
|
|
10370
|
-
// 1. Selected date — always valid target if within range (user chose it).
|
|
10371
|
-
// Skipped when called from month navigation so the active cell lands in
|
|
10372
|
-
// the newly visible month rather than the (possibly off-screen) selection.
|
|
10373
|
-
if (!options.skipDateFrom && this.dateFrom) {
|
|
10374
|
-
const parsedFrom = parseInt(this.dateFrom, 10);
|
|
10375
|
-
if (Number.isFinite(parsedFrom) && isInRange(parsedFrom)) return parsedFrom;
|
|
10376
|
-
}
|
|
10377
|
-
|
|
10378
|
-
// 2. Today's date (midnight-aligned) if enabled.
|
|
10379
|
-
const now = Math.floor(new Date().setHours(0, 0, 0, 0) / 1000);
|
|
10380
|
-
|
|
10381
|
-
// When centralDate is configured, prefer a date within the month(s) that
|
|
10382
|
-
// will actually be rendered. If today falls outside the visible range, an
|
|
10383
|
-
// active cell set to today would have no matching DOM element and keyboard
|
|
10384
|
-
// focus could not enter the calendar.
|
|
10385
|
-
const centralDateValue = this.centralDate ? new Date(this.centralDate) : null;
|
|
10386
|
-
|
|
10387
|
-
if (centralDateValue && !isNaN(centralDateValue.getTime())) {
|
|
10388
|
-
const centralMonth = centralDateValue.getMonth();
|
|
10389
|
-
const centralYear = centralDateValue.getFullYear();
|
|
10390
|
-
const todayDate = new Date(now * 1000);
|
|
10391
|
-
const todayMonth = todayDate.getMonth();
|
|
10392
|
-
const todayYear = todayDate.getFullYear();
|
|
10393
|
-
|
|
10394
|
-
// Today is outside the centralDate's month — scan for an enabled date
|
|
10395
|
-
// within the visible month instead.
|
|
10396
|
-
if (todayMonth !== centralMonth || todayYear !== centralYear) {
|
|
10397
|
-
const visibleStart = new Date(centralYear, centralMonth, 1);
|
|
10398
|
-
visibleStart.setHours(0, 0, 0, 0);
|
|
10399
|
-
const visibleEnd = new Date(centralYear, centralMonth + 1, 0); // last day of month
|
|
10400
|
-
visibleEnd.setHours(0, 0, 0, 0);
|
|
10401
|
-
const startTs = Math.floor(visibleStart.getTime() / 1000);
|
|
10402
|
-
const endTs = Math.floor(visibleEnd.getTime() / 1000);
|
|
10403
|
-
const daysInMonth = visibleEnd.getDate();
|
|
10404
|
-
|
|
10405
|
-
for (let idx = 0; idx < daysInMonth; idx++) {
|
|
10406
|
-
const ts = addDays(startTs, idx);
|
|
10407
|
-
if (ts > endTs) break;
|
|
10408
|
-
if (isEnabled(ts)) return ts;
|
|
10409
|
-
}
|
|
10410
|
-
|
|
10411
|
-
// No enabled date in the visible month — fall back to first in-range
|
|
10412
|
-
// date in the month so focus still lands on a focusable cell.
|
|
10413
|
-
for (let idx = 0; idx < daysInMonth; idx++) {
|
|
10414
|
-
const ts = addDays(startTs, idx);
|
|
10415
|
-
if (ts > endTs) break;
|
|
10416
|
-
if (isInRange(ts)) return ts;
|
|
10417
|
-
}
|
|
10418
|
-
}
|
|
10419
|
-
}
|
|
10420
|
-
|
|
10421
|
-
if (isEnabled(now)) return now;
|
|
10422
|
-
|
|
10423
|
-
// When a centralDate is configured (or inferred), constrain the scan to the
|
|
10424
|
-
// rendered month(s) first so a single-month calendar does not pick a date
|
|
10425
|
-
// that has no DOM cell. Determine the visible range based on centralDate and
|
|
10426
|
-
// the number of rendered months.
|
|
10427
|
-
const renderedMonths = this.numCalendars || 1;
|
|
10428
|
-
const visibleAnchor = centralDateValue && !isNaN(centralDateValue.getTime())
|
|
10429
|
-
? centralDateValue
|
|
10430
|
-
: new Date(now * 1000);
|
|
10431
|
-
const visMonthStart = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth(), 1);
|
|
10432
|
-
visMonthStart.setHours(0, 0, 0, 0);
|
|
10433
|
-
const visMonthEnd = new Date(visibleAnchor.getFullYear(), visibleAnchor.getMonth() + renderedMonths, 0);
|
|
10434
|
-
visMonthEnd.setHours(0, 0, 0, 0);
|
|
10435
|
-
const visStartTs = Math.floor(visMonthStart.getTime() / 1000);
|
|
10436
|
-
const visEndTs = Math.floor(visMonthEnd.getTime() / 1000);
|
|
10437
|
-
const visDays = Math.round((visEndTs - visStartTs) / 86400) + 1;
|
|
10438
|
-
|
|
10439
|
-
// Scan visible months for an enabled date.
|
|
10440
|
-
for (let idx = 0; idx < visDays; idx++) {
|
|
10441
|
-
const ts = addDays(visStartTs, idx);
|
|
10442
|
-
if (ts > visEndTs) break;
|
|
10443
|
-
if (isEnabled(ts)) return ts;
|
|
10444
|
-
}
|
|
10445
|
-
|
|
10446
|
-
// No enabled date in visible months — try an in-range (focusable) date so
|
|
10447
|
-
// keyboard focus still has a tabindex="0" target.
|
|
10448
|
-
for (let idx = 0; idx < visDays; idx++) {
|
|
10449
|
-
const ts = addDays(visStartTs, idx);
|
|
10450
|
-
if (ts > visEndTs) break;
|
|
10451
|
-
if (isInRange(ts)) return ts;
|
|
10452
|
-
}
|
|
10453
|
-
|
|
10454
|
-
// 3. First future enabled date (scan forward from tomorrow, capped by max and MAX_SCAN_DAYS).
|
|
10455
|
-
for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
|
|
10456
|
-
const ts = addDays(now, idx);
|
|
10457
|
-
if (Number.isFinite(maxTs) && ts > maxTs) break;
|
|
10458
|
-
if (isEnabled(ts)) return ts;
|
|
10459
|
-
}
|
|
10460
|
-
|
|
10461
|
-
// 4. First previous enabled date (scan backward from yesterday, capped by min and MAX_SCAN_DAYS).
|
|
10462
|
-
for (let idx = 1; idx <= MAX_SCAN_DAYS; idx++) {
|
|
10463
|
-
const ts = addDays(now, -idx);
|
|
10464
|
-
if (Number.isFinite(minTs) && ts < minTs) break;
|
|
10465
|
-
if (isEnabled(ts)) return ts;
|
|
10466
|
-
}
|
|
10467
|
-
|
|
10468
|
-
// 5. If scans missed (e.g. min/max range is far from today), fall back to
|
|
10469
|
-
// the first enabled date in the [min, max] range.
|
|
10470
|
-
if (Number.isFinite(minTs) && Number.isFinite(maxTs)) {
|
|
10471
|
-
let ts = minTs;
|
|
10472
|
-
for (let idx = 0; ts <= maxTs; idx++) {
|
|
10473
|
-
if (isEnabled(ts)) return ts;
|
|
10474
|
-
ts = addDays(minTs, idx + 1);
|
|
10475
|
-
}
|
|
10476
|
-
}
|
|
10477
|
-
|
|
10478
|
-
// 5b. Finite min with unbounded max (e.g. minDate far in the future):
|
|
10479
|
-
// scan forward from min for up to MAX_SCAN_DAYS.
|
|
10480
|
-
if (Number.isFinite(minTs) && !Number.isFinite(maxTs)) {
|
|
10481
|
-
for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
|
|
10482
|
-
const ts = addDays(minTs, idx);
|
|
10483
|
-
if (isEnabled(ts)) return ts;
|
|
10484
|
-
}
|
|
10485
|
-
}
|
|
10486
|
-
|
|
10487
|
-
// 5c. Unbounded min with a finite max far in the past (e.g. birth-date picker):
|
|
10488
|
-
// scan backward from max for up to MAX_SCAN_DAYS.
|
|
10489
|
-
if (!Number.isFinite(minTs) && Number.isFinite(maxTs)) {
|
|
10490
|
-
for (let idx = 0; idx <= MAX_SCAN_DAYS; idx++) {
|
|
10491
|
-
const ts = addDays(maxTs, -idx);
|
|
10492
|
-
if (isEnabled(ts)) return ts;
|
|
10493
|
-
}
|
|
10494
|
-
}
|
|
10495
|
-
|
|
10496
|
-
// 6. All dates are blackout — fall back to the first in-range date so focus
|
|
10497
|
-
// still lands on a focusable (but not selectable) cell.
|
|
10498
|
-
if (Number.isFinite(minTs) && isInRange(minTs)) return minTs;
|
|
10499
|
-
if (isInRange(now)) return now;
|
|
10500
|
-
|
|
10501
|
-
return undefined;
|
|
10502
|
-
}
|
|
10503
|
-
|
|
10504
|
-
/**
|
|
10505
|
-
* Checks if a target date (unix seconds) is within the configured [min, max] range.
|
|
10506
|
-
* Returns false if the date falls outside the range, preventing navigation
|
|
10507
|
-
* to months where all dates are disabled.
|
|
10508
|
-
* @private
|
|
10509
|
-
* @param {Number} targetTs - Unix timestamp in seconds.
|
|
10510
|
-
* @returns {Boolean} True if the date is within range.
|
|
10511
|
-
*/
|
|
10512
|
-
isDateInRange(targetTs) {
|
|
10513
|
-
const rawMin = Number(this.min);
|
|
10514
|
-
const rawMax = Number(this.max);
|
|
10515
|
-
if (Number.isFinite(rawMin) && targetTs < rawMin) return false;
|
|
10516
|
-
if (Number.isFinite(rawMax) && targetTs > rawMax) return false;
|
|
10517
|
-
return true;
|
|
10518
|
-
}
|
|
10519
|
-
|
|
10520
|
-
/**
|
|
10521
|
-
* Handles arrow key navigation on the calendar grid wrapper.
|
|
10522
|
-
* Focus stays on the grid wrapper; only ariaActiveDescendantElement
|
|
10523
|
-
* and the visual active-cell indicator change.
|
|
10524
|
-
* @private
|
|
10525
|
-
* @param {KeyboardEvent} event - The keyboard event.
|
|
10526
|
-
* @returns {void}
|
|
10527
|
-
*/
|
|
10528
|
-
handleGridKeyDown(event) {
|
|
10529
|
-
const { key } = event;
|
|
10530
|
-
const actionKeys = ['ArrowRight', 'ArrowLeft', 'ArrowDown', 'ArrowUp', 'Enter', ' '];
|
|
10531
|
-
|
|
10532
|
-
if (!actionKeys.includes(key)) return;
|
|
10533
|
-
|
|
10534
|
-
event.preventDefault();
|
|
10535
|
-
|
|
10536
|
-
const allCells = this.getAllFocusableCells();
|
|
10537
|
-
if (allCells.length === 0) return;
|
|
10538
|
-
|
|
10539
|
-
const activeCell = allCells.find(cell => cell.active);
|
|
10540
|
-
if (!activeCell) return;
|
|
10541
|
-
|
|
10542
|
-
// Handle Enter/Space to select the active cell
|
|
10543
|
-
if (key === 'Enter' || key === ' ') {
|
|
10544
|
-
activeCell.handleTap();
|
|
10545
|
-
return;
|
|
10546
|
-
}
|
|
10547
|
-
|
|
10548
|
-
const activeIndex = allCells.indexOf(activeCell);
|
|
10549
|
-
|
|
10550
|
-
if (key === 'ArrowRight' || key === 'ArrowLeft') {
|
|
10551
|
-
const direction = key === 'ArrowRight' ? 1 : -1;
|
|
10552
|
-
const targetIndex = activeIndex + direction;
|
|
10553
|
-
|
|
10554
|
-
if (targetIndex >= 0 && targetIndex < allCells.length) {
|
|
10555
|
-
// Target cell exists in rendered months
|
|
10556
|
-
this.setActiveCell(allCells[targetIndex].day.date);
|
|
10557
|
-
this.scrollToActiveCell();
|
|
10558
|
-
// Dispatch focus event for the cell so live region + range preview update
|
|
10559
|
-
this.handleCellFocused({ detail: { date: allCells[targetIndex].day.date } });
|
|
10560
|
-
} else {
|
|
10561
|
-
// At boundary — need to navigate to next/prev month
|
|
10562
|
-
const navDir = direction === 1 ? 'next' : 'prev';
|
|
10563
|
-
const targetDate = new Date(activeCell.day.date * 1000);
|
|
10564
|
-
targetDate.setDate(targetDate.getDate() + direction);
|
|
10565
|
-
targetDate.setHours(0, 0, 0, 0);
|
|
10566
|
-
const targetTs = Math.floor(targetDate.getTime() / 1000);
|
|
10567
|
-
|
|
10568
|
-
if (this.isDateInRange(targetTs) && ((navDir === 'next' && this.showNextMonthBtn) || (navDir === 'prev' && this.showPrevMonthBtn))) {
|
|
10569
|
-
|
|
10570
|
-
if (navDir === 'next') {
|
|
10571
|
-
this.handleNextMonth({ skipActiveUpdate: true });
|
|
10572
|
-
} else {
|
|
10573
|
-
this.handlePrevMonth({ skipActiveUpdate: true });
|
|
10574
|
-
}
|
|
10575
|
-
requestAnimationFrame(() => {
|
|
10576
|
-
requestAnimationFrame(() => {
|
|
10577
|
-
const cells = this.getAllFocusableCells();
|
|
10578
|
-
const target = cells.find(cell => cell.day && cell.day.date === targetTs);
|
|
10579
|
-
if (target) {
|
|
10580
|
-
this.setActiveCell(target.day.date);
|
|
10581
|
-
this.handleCellFocused({ detail: { date: target.day.date } });
|
|
10582
|
-
} else if (cells.length > 0) {
|
|
10583
|
-
const fallback = navDir === 'next' ? cells[cells.length - 1] : cells[0];
|
|
10584
|
-
this.setActiveCell(fallback.day.date);
|
|
10585
|
-
this.handleCellFocused({ detail: { date: fallback.day.date } });
|
|
10586
|
-
}
|
|
10587
|
-
// Re-focus grid wrapper after month change re-render
|
|
10588
|
-
this.focusActiveCell();
|
|
10589
|
-
});
|
|
10590
|
-
});
|
|
10591
|
-
}
|
|
10592
|
-
}
|
|
10593
|
-
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
10594
|
-
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
10595
|
-
const currentDate = new Date(activeCell.day.date * 1000);
|
|
10596
|
-
currentDate.setDate(currentDate.getDate() + increment);
|
|
10597
|
-
currentDate.setHours(0, 0, 0, 0);
|
|
10598
|
-
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
10599
|
-
|
|
10600
|
-
const targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
|
|
10601
|
-
|
|
10602
|
-
if (targetCell) {
|
|
10603
|
-
this.setActiveCell(targetCell.day.date);
|
|
10604
|
-
this.scrollToActiveCell();
|
|
10605
|
-
this.handleCellFocused({ detail: { date: targetCell.day.date } });
|
|
10606
|
-
} else if (this.isDateInRange(targetDate)) {
|
|
10607
|
-
// Target might be in an unrendered month
|
|
10608
|
-
const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
|
|
10609
|
-
if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
|
|
10610
|
-
if (navDirection === 'next') {
|
|
10611
|
-
this.handleNextMonth({ skipActiveUpdate: true });
|
|
10612
|
-
} else {
|
|
10613
|
-
this.handlePrevMonth({ skipActiveUpdate: true });
|
|
10614
|
-
}
|
|
10615
|
-
requestAnimationFrame(() => {
|
|
10616
|
-
requestAnimationFrame(() => {
|
|
10617
|
-
const cells = this.getAllFocusableCells();
|
|
10618
|
-
const target = cells.find(cell => cell.day && cell.day.date === targetDate);
|
|
10619
|
-
if (target) {
|
|
10620
|
-
this.setActiveCell(target.day.date);
|
|
10621
|
-
this.handleCellFocused({ detail: { date: target.day.date } });
|
|
10622
|
-
} else if (cells.length > 0) {
|
|
10623
|
-
const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
|
|
10624
|
-
this.setActiveCell(nearest.day.date);
|
|
10625
|
-
this.handleCellFocused({ detail: { date: nearest.day.date } });
|
|
10626
|
-
}
|
|
10627
|
-
this.focusActiveCell();
|
|
10628
|
-
});
|
|
10629
|
-
});
|
|
10630
|
-
}
|
|
10631
|
-
}
|
|
10632
|
-
}
|
|
10633
|
-
}
|
|
10634
|
-
|
|
10635
|
-
/**
|
|
10636
|
-
* Handles cross-month boundary navigation events from month components.
|
|
10637
|
-
* @private
|
|
10638
|
-
* @param {CustomEvent} event - The boundary event with direction and source date info.
|
|
10639
|
-
* @returns {void}
|
|
10640
|
-
*/
|
|
10641
|
-
handleMonthBoundary(event) {
|
|
10642
|
-
const { direction, fromDate, key } = event.detail;
|
|
10643
|
-
|
|
10644
|
-
if (key === 'ArrowRight' || key === 'ArrowLeft') {
|
|
10645
|
-
// Linear navigation: find adjacent focusable cell across months
|
|
10646
|
-
const allCells = this.getAllFocusableCells();
|
|
10647
|
-
const currentIndex = allCells.findIndex(cell => cell.day && cell.day.date === fromDate);
|
|
10648
|
-
|
|
10649
|
-
if (currentIndex === -1) return;
|
|
10650
|
-
|
|
10651
|
-
let targetIndex;
|
|
10652
|
-
if (direction === 'next') {
|
|
10653
|
-
targetIndex = currentIndex + 1;
|
|
10654
|
-
} else {
|
|
10655
|
-
targetIndex = currentIndex - 1;
|
|
10656
|
-
}
|
|
10657
|
-
|
|
10658
|
-
if (targetIndex >= 0 && targetIndex < allCells.length) {
|
|
10659
|
-
const targetCell = allCells[targetIndex];
|
|
10660
|
-
this.setActiveCell(targetCell.day.date);
|
|
10661
|
-
this.scrollToActiveCell();
|
|
10662
|
-
this.focusActiveCell();
|
|
10663
|
-
} else if (direction === 'next' && this.showNextMonthBtn) {
|
|
10664
|
-
// Navigate to next month and focus the computed next date.
|
|
10665
|
-
// Using the target date (fromDate + 1 day) instead of cells[0]
|
|
10666
|
-
// avoids jumping backward in range datepickers where cells[0]
|
|
10667
|
-
// belongs to the previous (still-rendered) month.
|
|
10668
|
-
const nextDate = new Date(fromDate * 1000);
|
|
10669
|
-
nextDate.setDate(nextDate.getDate() + 1);
|
|
10670
|
-
nextDate.setHours(0, 0, 0, 0);
|
|
10671
|
-
const nextTs = Math.floor(nextDate.getTime() / 1000);
|
|
10672
|
-
|
|
10673
|
-
if (!this.isDateInRange(nextTs)) return;
|
|
10674
|
-
|
|
10675
|
-
this.handleNextMonth({ skipActiveUpdate: true });
|
|
10676
|
-
requestAnimationFrame(() => {
|
|
10677
|
-
requestAnimationFrame(() => {
|
|
10678
|
-
const cells = this.getAllFocusableCells();
|
|
10679
|
-
const target = cells.find(cell => cell.day && cell.day.date === nextTs);
|
|
10680
|
-
if (target) {
|
|
10681
|
-
this.setActiveCell(target.day.date);
|
|
10682
|
-
this.focusActiveCell();
|
|
10683
|
-
} else if (cells.length > 0) {
|
|
10684
|
-
// Fallback: first cell of the last rendered month
|
|
10685
|
-
this.setActiveCell(cells[cells.length - 1].day.date);
|
|
10686
|
-
this.focusActiveCell();
|
|
10687
|
-
}
|
|
10688
|
-
});
|
|
10689
|
-
});
|
|
10690
|
-
} else if (direction === 'prev' && this.showPrevMonthBtn) {
|
|
10691
|
-
// Navigate to previous month and focus the computed previous date.
|
|
10692
|
-
const prevDate = new Date(fromDate * 1000);
|
|
10693
|
-
prevDate.setDate(prevDate.getDate() - 1);
|
|
10694
|
-
prevDate.setHours(0, 0, 0, 0);
|
|
10695
|
-
const prevTs = Math.floor(prevDate.getTime() / 1000);
|
|
10696
|
-
|
|
10697
|
-
if (!this.isDateInRange(prevTs)) return;
|
|
10698
|
-
|
|
10699
|
-
this.handlePrevMonth({ skipActiveUpdate: true });
|
|
10700
|
-
requestAnimationFrame(() => {
|
|
10701
|
-
requestAnimationFrame(() => {
|
|
10702
|
-
const cells = this.getAllFocusableCells();
|
|
10703
|
-
const target = cells.find(cell => cell.day && cell.day.date === prevTs);
|
|
10704
|
-
if (target) {
|
|
10705
|
-
this.setActiveCell(target.day.date);
|
|
10706
|
-
this.focusActiveCell();
|
|
10707
|
-
} else if (cells.length > 0) {
|
|
10708
|
-
// Fallback: last cell of the first rendered month
|
|
10709
|
-
this.setActiveCell(cells[0].day.date);
|
|
10710
|
-
this.focusActiveCell();
|
|
10711
|
-
}
|
|
10712
|
-
});
|
|
10713
|
-
});
|
|
10714
|
-
}
|
|
10715
|
-
} else if (key === 'ArrowDown' || key === 'ArrowUp') {
|
|
10716
|
-
// Vertical navigation: find same day-of-week +/- 7 days
|
|
10717
|
-
// Use Date arithmetic instead of fixed seconds to handle DST correctly
|
|
10718
|
-
const increment = key === 'ArrowDown' ? 7 : -7;
|
|
10719
|
-
const currentDate = new Date(fromDate * 1000);
|
|
10720
|
-
currentDate.setDate(currentDate.getDate() + increment);
|
|
10721
|
-
currentDate.setHours(0, 0, 0, 0);
|
|
10722
|
-
const targetDate = Math.floor(currentDate.getTime() / 1000);
|
|
10723
|
-
|
|
10724
|
-
const allCells = this.getAllFocusableCells();
|
|
10725
|
-
let targetCell = allCells.find(cell => cell.day && cell.day.date === targetDate);
|
|
10726
|
-
|
|
10727
|
-
if (targetCell) {
|
|
10728
|
-
this.setActiveCell(targetCell.day.date);
|
|
10729
|
-
this.scrollToActiveCell();
|
|
10730
|
-
this.focusActiveCell();
|
|
10731
|
-
} else if (this.isDateInRange(targetDate)) {
|
|
10732
|
-
// Target might be in an unrendered month, navigate there
|
|
10733
|
-
const navDirection = key === 'ArrowDown' ? 'next' : 'prev';
|
|
10734
|
-
if ((navDirection === 'next' && this.showNextMonthBtn) || (navDirection === 'prev' && this.showPrevMonthBtn)) {
|
|
10735
|
-
if (navDirection === 'next') {
|
|
10736
|
-
this.handleNextMonth({ skipActiveUpdate: true });
|
|
10737
|
-
} else {
|
|
10738
|
-
this.handlePrevMonth({ skipActiveUpdate: true });
|
|
10739
|
-
}
|
|
10740
|
-
requestAnimationFrame(() => {
|
|
10741
|
-
requestAnimationFrame(() => {
|
|
10742
|
-
const cells = this.getAllFocusableCells();
|
|
10743
|
-
const target = cells.find(cell => cell.day && cell.day.date === targetDate);
|
|
10744
|
-
if (target) {
|
|
10745
|
-
this.setActiveCell(target.day.date);
|
|
10746
|
-
this.focusActiveCell();
|
|
10747
|
-
} else if (cells.length > 0) {
|
|
10748
|
-
// Clamp to nearest focusable cell
|
|
10749
|
-
const nearest = navDirection === 'next' ? cells[0] : cells[cells.length - 1];
|
|
10750
|
-
this.setActiveCell(nearest.day.date);
|
|
10751
|
-
this.focusActiveCell();
|
|
10752
|
-
}
|
|
10753
|
-
});
|
|
10754
|
-
});
|
|
10755
|
-
}
|
|
10756
|
-
}
|
|
10757
|
-
}
|
|
10758
|
-
}
|
|
10759
|
-
|
|
10760
|
-
/**
|
|
10761
|
-
* Handles cell activation events from month components.
|
|
10762
|
-
* @private
|
|
10763
|
-
* @param {CustomEvent} event - The activation event with target date.
|
|
10764
|
-
* @returns {void}
|
|
10765
|
-
*/
|
|
10766
|
-
handleCellActivate(event) {
|
|
10767
|
-
const { date } = event.detail;
|
|
10768
|
-
this.setActiveCell(date);
|
|
10769
|
-
|
|
10770
|
-
// Don't call focusActiveCell() here. The tap/click already placed
|
|
10771
|
-
// focus on the cell button, and moving it to #calendarGrid would
|
|
10772
|
-
// trigger focusout on the button, closing any open popover on the
|
|
10773
|
-
// cell. Keyboard events are composed and still bubble through
|
|
10774
|
-
// shadow DOM boundaries to the grid's @keydown handler, so
|
|
10775
|
-
// subsequent keyboard navigation continues to work.
|
|
10776
|
-
}
|
|
10777
|
-
|
|
10778
|
-
/**
|
|
10779
|
-
* Handles focus events from calendar cells.
|
|
10780
|
-
* Updates the live region with an SR announcement and triggers
|
|
10781
|
-
* the imperative range preview if applicable.
|
|
10782
|
-
* @private
|
|
10783
|
-
* @param {CustomEvent} event - The calendar-cell-focused event.
|
|
10784
|
-
* @returns {void}
|
|
10785
|
-
*/
|
|
10786
|
-
handleCellFocused(event) {
|
|
10787
|
-
const { date } = event.detail;
|
|
10788
|
-
if (date == null) return;
|
|
10789
|
-
|
|
10790
|
-
// With aria-activedescendant, the button no longer receives native focus,
|
|
10791
|
-
// so we use the debounced live region for the full context announcement.
|
|
10792
|
-
const announcement = this.buildFocusAnnouncement(date);
|
|
10793
|
-
this.announceFocusDebounced(announcement);
|
|
10794
|
-
|
|
10795
|
-
// Update the range preview imperatively if in range-preview mode.
|
|
10796
|
-
this.updateRangePreview(date);
|
|
10797
|
-
}
|
|
10798
|
-
|
|
10799
|
-
/**
|
|
10800
|
-
* Builds a full SR announcement string for a focused cell date.
|
|
10801
|
-
* Includes the localized date, range position, popover content,
|
|
10802
|
-
* and blackout status.
|
|
10803
|
-
* @private
|
|
10804
|
-
* @param {Number} date - Unix timestamp (seconds) of the focused cell.
|
|
10805
|
-
* @returns {String} The announcement string.
|
|
10806
|
-
*/
|
|
10807
|
-
buildFocusAnnouncement(date) {
|
|
10808
|
-
let label = this.formatAnnouncementDate(date);
|
|
10809
|
-
|
|
10810
|
-
// Append date slot content (e.g. prices) if present.
|
|
10811
|
-
const dateObj = new Date(date * 1000);
|
|
10812
|
-
const mm = String(dateObj.getMonth() + 1).padStart(2, '0');
|
|
10813
|
-
const dd = String(dateObj.getDate()).padStart(2, '0');
|
|
10814
|
-
const yyyy = dateObj.getFullYear();
|
|
10815
|
-
const dateStr = `${mm}_${dd}_${yyyy}`;
|
|
10816
|
-
const dateSlotEl = this.datepicker?.querySelector(`[slot="date_${dateStr}"]`);
|
|
10817
|
-
if (dateSlotEl) {
|
|
10818
|
-
const text = dateSlotEl.innerText?.trim();
|
|
10819
|
-
if (text) {
|
|
10820
|
-
label += `, ${text}`;
|
|
10821
|
-
}
|
|
10822
|
-
}
|
|
10823
|
-
|
|
10824
|
-
// Append popover content if present.
|
|
10825
|
-
const popoverEl = this.datepicker?.querySelector(`[slot="popover_${dateStr}"]`);
|
|
10826
|
-
if (popoverEl) {
|
|
10827
|
-
const text = popoverEl.innerText?.trim();
|
|
10828
|
-
if (text) {
|
|
10829
|
-
label += `, ${text}`;
|
|
10830
|
-
}
|
|
10831
|
-
}
|
|
10832
|
-
|
|
10833
|
-
// Append range position context.
|
|
10834
|
-
if (this.datepicker?.hasAttribute('range')) {
|
|
10835
|
-
const rangeLabel = this.getRangePositionLabel(date);
|
|
10836
|
-
if (rangeLabel) {
|
|
10837
|
-
label += `, ${rangeLabel}`;
|
|
10838
|
-
}
|
|
10839
|
-
}
|
|
10840
|
-
|
|
10841
|
-
// Append blackout label.
|
|
10842
|
-
if (this.isDateBlackout(date)) {
|
|
10843
|
-
label += `, ${this.datepicker?.blackoutLabel || 'unavailable'}`;
|
|
10844
|
-
}
|
|
10845
|
-
|
|
10846
|
-
return label;
|
|
10847
|
-
}
|
|
10848
|
-
|
|
10849
|
-
/**
|
|
10850
|
-
* Determines the range position label for a given date.
|
|
10851
|
-
* @private
|
|
10852
|
-
* @param {Number} date - Unix timestamp (seconds).
|
|
10853
|
-
* @returns {String|null} The range position label, or null.
|
|
10854
|
-
*/
|
|
10855
|
-
getRangePositionLabel(date) {
|
|
10856
|
-
const parsedFrom = Number.parseInt(this.dateFrom, 10);
|
|
10857
|
-
if (!Number.isFinite(parsedFrom)) return null;
|
|
10858
|
-
|
|
10859
|
-
const departTs = startOfDay(parsedFrom * 1000) / 1000;
|
|
10860
|
-
const parsedTo = Number.parseInt(this.dateTo, 10);
|
|
10861
|
-
const hasTo = Number.isFinite(parsedTo);
|
|
10862
|
-
const returnTs = hasTo ? startOfDay(parsedTo * 1000) / 1000 : null;
|
|
10863
|
-
|
|
10864
|
-
if (date === departTs) return this.datepicker.rangeLabelStart || 'range start';
|
|
10865
|
-
if (hasTo && date === returnTs) return this.datepicker.rangeLabelEnd || 'range end';
|
|
10866
|
-
if (date < departTs) return this.datepicker.rangeLabelBeforeRange || 'before range';
|
|
10867
|
-
if (hasTo && date > departTs && date < returnTs) return this.datepicker.rangeLabelInRange || 'in range';
|
|
10868
|
-
return this.datepicker.rangeLabelAfterRange || 'after range';
|
|
10869
|
-
}
|
|
10870
|
-
|
|
10871
|
-
/**
|
|
10872
|
-
* Checks whether a given date is a blackout date.
|
|
10873
|
-
* @private
|
|
10874
|
-
* @param {Number} dateTs - Unix timestamp (seconds).
|
|
10875
|
-
* @returns {Boolean} True if the date is blacked out.
|
|
10876
|
-
*/
|
|
10877
|
-
isDateBlackout(dateTs) {
|
|
10878
|
-
// Check legacy disabledDays.
|
|
10879
|
-
if (Array.isArray(this.disabledDays) && this.disabledDays.length > 0) {
|
|
10880
|
-
if (this.disabledDays.findIndex(d => parseInt(d, 10) === dateTs) !== -1) {
|
|
10881
|
-
return true;
|
|
10882
|
-
}
|
|
10883
|
-
}
|
|
10884
|
-
|
|
10885
|
-
// Check ISO blackoutDates.
|
|
10886
|
-
const blackoutDates = this.datepicker?.blackoutDates;
|
|
10887
|
-
if (Array.isArray(blackoutDates) && blackoutDates.length > 0) {
|
|
10888
|
-
const date = new Date(dateTs * 1000);
|
|
10889
|
-
const yyyy = date.getFullYear();
|
|
10890
|
-
const mm = String(date.getMonth() + 1).padStart(2, '0');
|
|
10891
|
-
const dd = String(date.getDate()).padStart(2, '0');
|
|
10892
|
-
if (blackoutDates.includes(`${yyyy}-${mm}-${dd}`)) {
|
|
10893
|
-
return true;
|
|
10894
|
-
}
|
|
10895
|
-
}
|
|
10896
|
-
|
|
10897
|
-
return false;
|
|
10898
|
-
}
|
|
10899
|
-
|
|
10900
|
-
/**
|
|
10901
|
-
* Updates the range preview classes imperatively across all cells.
|
|
10902
|
-
* Only active when in range mode with dateFrom set and dateTo not yet set.
|
|
10903
|
-
* @private
|
|
10904
|
-
* @param {Number} hoveredDate - Unix timestamp of the hovered/focused date.
|
|
10905
|
-
* @returns {void}
|
|
10906
|
-
*/
|
|
10907
|
-
updateRangePreview(hoveredDate) {
|
|
10908
|
-
if (this.noRange || !this.dateFrom || this.dateTo) {
|
|
10909
|
-
return;
|
|
10910
|
-
}
|
|
10911
|
-
|
|
10912
|
-
const parsedDateFrom = parseInt(this.dateFrom, 10);
|
|
10913
|
-
const allCells = this.getAllFocusableCells();
|
|
10914
|
-
|
|
10915
|
-
allCells.forEach(cell => {
|
|
10916
|
-
cell.updateRangePreviewClasses(hoveredDate, parsedDateFrom);
|
|
10917
|
-
});
|
|
10918
|
-
}
|
|
10919
|
-
|
|
10920
|
-
/**
|
|
10921
|
-
* Clears range preview classes from all cells.
|
|
10922
|
-
* @private
|
|
10923
|
-
* @returns {void}
|
|
10924
|
-
*/
|
|
10925
|
-
clearRangePreview() {
|
|
10926
|
-
const allCells = this.getAllFocusableCells();
|
|
10927
|
-
allCells.forEach(cell => {
|
|
10928
|
-
cell.clearRangePreviewClasses();
|
|
10929
|
-
});
|
|
10930
|
-
}
|
|
10931
|
-
|
|
10932
|
-
/**
|
|
10933
|
-
* Overrides the base class handler to prevent setting `this.hoveredDate`
|
|
10934
|
-
* as a reactive property. Instead, handles the range preview imperatively.
|
|
10935
|
-
* @private
|
|
10936
|
-
* @param {CustomEvent} event - The hovered-date-changed event from a month.
|
|
10937
|
-
* @returns {void}
|
|
10938
|
-
*/
|
|
10939
|
-
hoveredDateChanged(event) {
|
|
10940
|
-
const hoveredDate = event.detail.value;
|
|
10941
|
-
this.updateRangePreview(hoveredDate);
|
|
10942
|
-
}
|
|
10943
|
-
|
|
10944
|
-
/**
|
|
10945
|
-
* Scrolls the calendar to ensure the month containing the active cell is visible.
|
|
10946
|
-
* @private
|
|
10947
|
-
* @returns {void}
|
|
10948
|
-
*/
|
|
10949
|
-
scrollToActiveCell() {
|
|
10950
|
-
if (this.activeCellDate == null) return;
|
|
10951
|
-
|
|
10952
|
-
const date = new Date(this.activeCellDate * 1000);
|
|
10953
|
-
const month = date.getMonth() + 1;
|
|
10954
|
-
const year = date.getFullYear();
|
|
10955
|
-
const selector = `#month-${month}-${year}`;
|
|
10956
|
-
const monthElem = this.shadowRoot.querySelector(selector);
|
|
10957
|
-
|
|
10958
|
-
if (monthElem) {
|
|
10959
|
-
const prefersReducedMotion = window.matchMedia('(prefers-reduced-motion: reduce)').matches;
|
|
10960
|
-
monthElem.scrollIntoView({ block: 'nearest', behavior: prefersReducedMotion ? 'instant' : 'smooth' });
|
|
10961
|
-
}
|
|
10962
|
-
}
|
|
10963
|
-
|
|
10964
|
-
/**
|
|
10965
|
-
* Generates a unique ID for the live region scoped to this datepicker.
|
|
10966
|
-
* Uses the datepicker host's id attribute if present, otherwise falls
|
|
10967
|
-
* back to a random hash.
|
|
10968
|
-
* @private
|
|
10969
|
-
* @returns {string} The unique live region element ID.
|
|
10970
|
-
*/
|
|
10971
|
-
_getLiveRegionId() {
|
|
10972
|
-
if (!this._liveRegionId) {
|
|
10973
|
-
const datepicker = this.getRootNode()?.host;
|
|
10974
|
-
const suffix = datepicker?.id || Math.random().toString(36).substring(2, 10);
|
|
10975
|
-
this._liveRegionId = `auro-calendar-live-region-${suffix}`;
|
|
10976
|
-
}
|
|
10977
|
-
return this._liveRegionId;
|
|
10978
|
-
}
|
|
10979
|
-
|
|
10980
|
-
/**
|
|
10981
|
-
* Returns (and lazily creates) a document-level aria-live region.
|
|
10982
|
-
* Chrome does not reliably observe aria-live regions inside shadow DOM
|
|
10983
|
-
* (even one level up in a parent component's shadow root), so this
|
|
10984
|
-
* element must be appended to document.body. Each datepicker instance
|
|
10985
|
-
* gets its own uniquely-identified live region.
|
|
10986
|
-
* @private
|
|
10987
|
-
* @returns {HTMLElement} The live region element.
|
|
10988
|
-
*/
|
|
10989
|
-
getOrCreateLiveRegion() {
|
|
10990
|
-
if (this._liveRegion && this._liveRegion.isConnected) {
|
|
10991
|
-
return this._liveRegion;
|
|
10992
|
-
}
|
|
10993
|
-
|
|
10994
|
-
const regionId = this._getLiveRegionId();
|
|
10995
|
-
|
|
10996
|
-
// Reuse an existing region if it was already created for this instance.
|
|
10997
|
-
const existing = document.getElementById(regionId);
|
|
10998
|
-
if (existing) {
|
|
10999
|
-
this._liveRegion = existing;
|
|
11000
|
-
return existing;
|
|
11001
|
-
}
|
|
11002
|
-
|
|
11003
|
-
const el = document.createElement('div');
|
|
11004
|
-
el.id = regionId;
|
|
11005
|
-
el.setAttribute('aria-live', 'assertive');
|
|
11006
|
-
el.setAttribute('aria-atomic', 'true');
|
|
11007
|
-
// Visually hidden but available to screen readers
|
|
11008
|
-
el.style.cssText = 'position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;';
|
|
11009
|
-
document.body.appendChild(el);
|
|
11010
|
-
|
|
11011
|
-
this._liveRegion = el;
|
|
11012
|
-
return el;
|
|
11013
|
-
}
|
|
11014
|
-
|
|
11015
|
-
/**
|
|
11016
|
-
* Removes the live region when this calendar is disconnected.
|
|
11017
|
-
* @private
|
|
11018
|
-
* @returns {void}
|
|
11019
|
-
*/
|
|
11020
|
-
disconnectedCallback() {
|
|
11021
|
-
super.disconnectedCallback();
|
|
11022
|
-
|
|
11023
|
-
// Cancel any pending announcements so they don't fire after teardown
|
|
11024
|
-
// and recreate an orphaned live region.
|
|
11025
|
-
if (this._announceRafId) {
|
|
11026
|
-
cancelAnimationFrame(this._announceRafId);
|
|
11027
|
-
this._announceRafId = null;
|
|
11028
|
-
}
|
|
11029
|
-
if (this._focusAnnounceTimer) {
|
|
11030
|
-
clearTimeout(this._focusAnnounceTimer);
|
|
11031
|
-
this._focusAnnounceTimer = null;
|
|
11032
|
-
}
|
|
11033
|
-
|
|
11034
|
-
if (this._liveRegion && this._liveRegion.isConnected) {
|
|
11035
|
-
this._liveRegion.remove();
|
|
11036
|
-
}
|
|
11037
|
-
this._liveRegion = null;
|
|
11038
|
-
this._liveRegionId = null;
|
|
11039
|
-
}
|
|
11040
|
-
|
|
11041
|
-
/**
|
|
11042
|
-
* Announces a date selection or focus change via the live region.
|
|
11043
|
-
* Uses requestAnimationFrame to ensure the clear and set happen in
|
|
11044
|
-
* separate rendering frames — Chrome may coalesce synchronous or
|
|
11045
|
-
* microtask-deferred mutations into a single accessibility tree update.
|
|
11046
|
-
* @private
|
|
11047
|
-
* @param {String} dateStr - The localized date string to announce.
|
|
11048
|
-
* @returns {void}
|
|
11049
|
-
*/
|
|
11050
|
-
announceSelection(dateStr) {
|
|
11051
|
-
// Cancel any previously queued rAF announcement so a rapid
|
|
11052
|
-
// sequence of calls (e.g. bib open → month nav) only announces
|
|
11053
|
-
// the last one.
|
|
11054
|
-
if (this._announceRafId) {
|
|
11055
|
-
cancelAnimationFrame(this._announceRafId);
|
|
11056
|
-
}
|
|
11057
|
-
|
|
11058
|
-
const liveRegion = this.getOrCreateLiveRegion();
|
|
11059
|
-
liveRegion.textContent = '';
|
|
11060
|
-
this._announceRafId = requestAnimationFrame(() => {
|
|
11061
|
-
liveRegion.textContent = dateStr;
|
|
11062
|
-
this._announceRafId = null;
|
|
11063
|
-
});
|
|
11064
|
-
}
|
|
11065
|
-
|
|
11066
|
-
/**
|
|
11067
|
-
* Debounced version of announceSelection for focus navigation.
|
|
11068
|
-
* Only announces the last focused date after rapid navigation pauses,
|
|
11069
|
-
* preventing the screen reader from queueing up stale announcements
|
|
11070
|
-
* that can't keep pace with arrow-key traversal.
|
|
11071
|
-
* @private
|
|
11072
|
-
* @param {String} dateStr - The localized date string to announce.
|
|
11073
|
-
* @returns {void}
|
|
11074
|
-
*/
|
|
11075
|
-
announceFocusDebounced(dateStr) {
|
|
11076
|
-
if (this._focusAnnounceTimer) {
|
|
11077
|
-
clearTimeout(this._focusAnnounceTimer);
|
|
11078
|
-
}
|
|
11079
|
-
this._focusAnnounceTimer = setTimeout(() => {
|
|
11080
|
-
this.announceSelection(dateStr);
|
|
11081
|
-
this._focusAnnounceTimer = null;
|
|
11082
|
-
}, 150);
|
|
11083
|
-
}
|
|
11084
|
-
|
|
11085
|
-
/**
|
|
11086
|
-
* Formats a Unix timestamp (seconds) as a localized date string for SR announcements.
|
|
11087
|
-
* @private
|
|
11088
|
-
* @param {String|Number} timestamp - Unix timestamp in seconds.
|
|
11089
|
-
* @returns {String} Localized date string.
|
|
11090
|
-
*/
|
|
11091
|
-
formatAnnouncementDate(timestamp) {
|
|
11092
|
-
const date = new Date(parseInt(timestamp, 10) * 1000);
|
|
11093
|
-
const localeCode = this.locale?.code || undefined;
|
|
11094
|
-
const formatter = new Intl.DateTimeFormat(localeCode, {
|
|
11095
|
-
weekday: 'long', year: 'numeric', month: 'long', day: 'numeric'
|
|
11096
|
-
});
|
|
11097
|
-
return formatter.format(date);
|
|
11098
|
-
}
|
|
11099
|
-
|
|
11100
9622
|
firstUpdated() {
|
|
11101
9623
|
this.addEventListener('date-from-changed', () => {
|
|
11102
9624
|
this.dispatchEvent(new CustomEvent('auroCalendar-dateSelected', {
|
|
@@ -11113,23 +9635,8 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
11113
9635
|
this.dispatchEvent(new CustomEvent('auroCalendar-dateSelected', {
|
|
11114
9636
|
bubbles: true,
|
|
11115
9637
|
cancelable: false,
|
|
11116
|
-
composed: true,
|
|
11117
|
-
}));
|
|
11118
|
-
});
|
|
11119
|
-
|
|
11120
|
-
// Listen for cross-month boundary navigation events
|
|
11121
|
-
this.addEventListener('calendar-month-boundary', (event) => {
|
|
11122
|
-
this.handleMonthBoundary(event);
|
|
11123
|
-
});
|
|
11124
|
-
|
|
11125
|
-
// Listen for cell activation events
|
|
11126
|
-
this.addEventListener('calendar-cell-activate', (event) => {
|
|
11127
|
-
this.handleCellActivate(event);
|
|
11128
|
-
});
|
|
11129
|
-
|
|
11130
|
-
// Listen for cell focus events (SR announcements + range preview)
|
|
11131
|
-
this.addEventListener('calendar-cell-focused', (event) => {
|
|
11132
|
-
this.handleCellFocused(event);
|
|
9638
|
+
composed: true,
|
|
9639
|
+
}));
|
|
11133
9640
|
});
|
|
11134
9641
|
}
|
|
11135
9642
|
|
|
@@ -11155,37 +9662,7 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
11155
9662
|
}
|
|
11156
9663
|
|
|
11157
9664
|
if (changedProperties.has('visible')) {
|
|
11158
|
-
|
|
11159
|
-
// Compute the active date eagerly from data — no DOM needed.
|
|
11160
|
-
if (this.activeCellDate == null) {
|
|
11161
|
-
this.activeCellDate = this.computeActiveDate();
|
|
11162
|
-
}
|
|
11163
|
-
|
|
11164
|
-
this.requestUpdate();
|
|
11165
|
-
} else {
|
|
11166
|
-
this.requestUpdate();
|
|
11167
|
-
}
|
|
11168
|
-
}
|
|
11169
|
-
|
|
11170
|
-
// Announce date selection to screen readers when user clicks/selects a cell
|
|
11171
|
-
const isCellClick = this.datepicker?.wasCellClick || this.datepicker?.cellClickActive;
|
|
11172
|
-
|
|
11173
|
-
if (changedProperties.has('dateFrom') && this.dateFrom && isCellClick) {
|
|
11174
|
-
const dateStr = this.formatAnnouncementDate(this.dateFrom);
|
|
11175
|
-
const isRange = !this.noRange;
|
|
11176
|
-
|
|
11177
|
-
if (isRange) {
|
|
11178
|
-
const rangeLabel = this.datepicker.rangeLabelStart || 'range start';
|
|
11179
|
-
this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
|
|
11180
|
-
} else {
|
|
11181
|
-
this.announceSelection(`${dateStr}, selected`);
|
|
11182
|
-
}
|
|
11183
|
-
}
|
|
11184
|
-
|
|
11185
|
-
if (changedProperties.has('dateTo') && this.dateTo && isCellClick) {
|
|
11186
|
-
const dateStr = this.formatAnnouncementDate(this.dateTo);
|
|
11187
|
-
const rangeLabel = this.datepicker.rangeLabelEnd || 'range end';
|
|
11188
|
-
this.announceSelection(`${dateStr}, selected as ${rangeLabel}`);
|
|
9665
|
+
setTimeout(() => this.requestUpdate());
|
|
11189
9666
|
}
|
|
11190
9667
|
}
|
|
11191
9668
|
|
|
@@ -11194,7 +9671,6 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
11194
9671
|
<${this.bibtemplateTag}
|
|
11195
9672
|
?large="${this.largeFullscreenHeadline}"
|
|
11196
9673
|
?isFullscreen="${this.isFullscreen}"
|
|
11197
|
-
?showFooter="${!this.isFullscreen && this.dropdown?.desktopModal}"
|
|
11198
9674
|
@close-click="${this.utilCal.requestDismiss}">
|
|
11199
9675
|
<span slot="ariaLabel.close">${this.slots["ariaLabel.bib.close"]}</span>
|
|
11200
9676
|
|
|
@@ -11212,22 +9688,22 @@ class AuroCalendar extends RangeDatepicker {
|
|
|
11212
9688
|
</div>
|
|
11213
9689
|
</div>
|
|
11214
9690
|
|
|
11215
|
-
<div class="calendarWrapper
|
|
9691
|
+
<div class="calendarWrapper">
|
|
9692
|
+
<div class="calendars">
|
|
9693
|
+
${this.renderAllCalendars()}
|
|
9694
|
+
</div>
|
|
11216
9695
|
<div class="calendarNavButtons">
|
|
11217
9696
|
${this.showPrevMonthBtn ? html$1`
|
|
11218
|
-
<button tabIndex="
|
|
9697
|
+
<button tabIndex="-1" class="calendarNavBtn prevMonth" @click="${this.handlePrevMonth}">
|
|
11219
9698
|
${this.util.generateIconHtml(chevronLeft)}
|
|
11220
9699
|
</button>
|
|
11221
9700
|
` : undefined}
|
|
11222
9701
|
${this.showNextMonthBtn ? html$1`
|
|
11223
|
-
<button tabIndex="
|
|
9702
|
+
<button tabIndex="-1" class="calendarNavBtn nextMonth" @click="${this.handleNextMonth}">
|
|
11224
9703
|
${this.util.generateIconHtml(chevronRight)}
|
|
11225
9704
|
</button>
|
|
11226
9705
|
` : undefined}
|
|
11227
9706
|
</div>
|
|
11228
|
-
<div id="calendarGrid" class="calendars" role="group" tabindex="0" @keydown="${this.handleGridKeyDown}" @focusin="${this.handleGridFocusIn}" @focusout="${this.handleGridFocusOut}">
|
|
11229
|
-
${this.renderAllCalendars()}
|
|
11230
|
-
</div>
|
|
11231
9707
|
</div>
|
|
11232
9708
|
|
|
11233
9709
|
<${this.buttonTag} slot="footer" fluid @click="${this.utilCal.requestDismiss}">Done</${this.buttonTag}>
|
|
@@ -14477,7 +12953,7 @@ function applyKeyboardStrategy$1(component, strategy, options = {}) {
|
|
|
14477
12953
|
});
|
|
14478
12954
|
}
|
|
14479
12955
|
|
|
14480
|
-
var styleCss$2$1 = css`: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(
|
|
12956
|
+
var styleCss$2$1 = css`: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}`;
|
|
14481
12957
|
|
|
14482
12958
|
var colorCss$2 = css`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
|
|
14483
12959
|
|
|
@@ -15108,7 +13584,7 @@ let AuroHelpText$2 = class AuroHelpText extends LitElement {
|
|
|
15108
13584
|
}
|
|
15109
13585
|
};
|
|
15110
13586
|
|
|
15111
|
-
var formkitVersion$1 = '
|
|
13587
|
+
var formkitVersion$1 = '202606082059';
|
|
15112
13588
|
|
|
15113
13589
|
let AuroElement$2 = class AuroElement extends LitElement {
|
|
15114
13590
|
static get properties() {
|
|
@@ -15288,7 +13764,6 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
15288
13764
|
_intializeDefaults() {
|
|
15289
13765
|
this.appearance = 'default';
|
|
15290
13766
|
this.chevron = false;
|
|
15291
|
-
this.desktopModal = false;
|
|
15292
13767
|
this.disabled = false;
|
|
15293
13768
|
this.disableKeyboardHandling = false;
|
|
15294
13769
|
this.error = false;
|
|
@@ -15469,14 +13944,6 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
15469
13944
|
reflect: true
|
|
15470
13945
|
},
|
|
15471
13946
|
|
|
15472
|
-
/**
|
|
15473
|
-
* If declared, the dropdown will behave as a modal dialog when in a desktop viewport size.
|
|
15474
|
-
*/
|
|
15475
|
-
desktopModal: {
|
|
15476
|
-
type: Boolean,
|
|
15477
|
-
reflect: true
|
|
15478
|
-
},
|
|
15479
|
-
|
|
15480
13947
|
/**
|
|
15481
13948
|
* If declared, the dropdown will only show by calling the API .show() public method.
|
|
15482
13949
|
*/
|
|
@@ -15764,15 +14231,6 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
15764
14231
|
|
|
15765
14232
|
disconnectedCallback() {
|
|
15766
14233
|
super.disconnectedCallback();
|
|
15767
|
-
this._clearPageInert();
|
|
15768
|
-
if (this._bibTabHandler) {
|
|
15769
|
-
this.removeEventListener('keydown', this._bibTabHandler);
|
|
15770
|
-
this._bibTabHandler = undefined;
|
|
15771
|
-
}
|
|
15772
|
-
if (this.focusTrap) {
|
|
15773
|
-
this.focusTrap.disconnect();
|
|
15774
|
-
this.focusTrap = undefined;
|
|
15775
|
-
}
|
|
15776
14234
|
if (this.floater) {
|
|
15777
14235
|
this.floater.hideBib('disconnect');
|
|
15778
14236
|
this.floater.disconnect();
|
|
@@ -15800,45 +14258,19 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
15800
14258
|
if (this.isPopoverVisible) {
|
|
15801
14259
|
// Fullscreen: use showModal() for native accessibility (inert outside, focus trap)
|
|
15802
14260
|
// Desktop: use show() for Floating UI positioning + FocusTrap for focus management
|
|
15803
|
-
this.
|
|
15804
|
-
this.
|
|
15805
|
-
|
|
15806
|
-
// Desktop modal: make siblings inert so content outside is not interactive
|
|
15807
|
-
if (this.desktopModal && !this.isBibFullscreen) {
|
|
15808
|
-
this._setPageInert();
|
|
15809
|
-
}
|
|
14261
|
+
const useModal = this.isBibFullscreen;
|
|
14262
|
+
this.bibElement.value.open(useModal);
|
|
15810
14263
|
} else {
|
|
15811
14264
|
this.bibElement.value.close();
|
|
15812
|
-
this._clearPageInert();
|
|
15813
14265
|
}
|
|
15814
14266
|
}
|
|
15815
14267
|
|
|
15816
14268
|
// When fullscreen strategy changes while open, re-open dialog with correct mode
|
|
15817
14269
|
// (e.g. resizing from desktop → mobile while dropdown is open)
|
|
15818
14270
|
if (changedProperties.has('isBibFullscreen') && this.isPopoverVisible && this.bibElement.value) {
|
|
14271
|
+
const useModal = this.isBibFullscreen;
|
|
15819
14272
|
this.bibElement.value.close();
|
|
15820
|
-
this.bibElement.value.open(
|
|
15821
|
-
|
|
15822
|
-
// Re-initialize focus management for the new strategy
|
|
15823
|
-
this.updateFocusTrap();
|
|
15824
|
-
|
|
15825
|
-
// Toggle inert: desktop modal needs it, fullscreen showModal() handles it natively
|
|
15826
|
-
if (this.desktopModal && !this.isBibFullscreen) {
|
|
15827
|
-
this._setPageInert();
|
|
15828
|
-
} else {
|
|
15829
|
-
this._clearPageInert();
|
|
15830
|
-
}
|
|
15831
|
-
}
|
|
15832
|
-
|
|
15833
|
-
// Handle desktopModal toggled while the dropdown is already open.
|
|
15834
|
-
// Re-initialize focus trapping and page inert state to match the new mode.
|
|
15835
|
-
if (changedProperties.has('desktopModal') && this.isPopoverVisible && !this.isBibFullscreen) {
|
|
15836
|
-
this.updateFocusTrap();
|
|
15837
|
-
if (this.desktopModal) {
|
|
15838
|
-
this._setPageInert();
|
|
15839
|
-
} else {
|
|
15840
|
-
this._clearPageInert();
|
|
15841
|
-
}
|
|
14273
|
+
this.bibElement.value.open(useModal);
|
|
15842
14274
|
}
|
|
15843
14275
|
}
|
|
15844
14276
|
|
|
@@ -15848,14 +14280,8 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
15848
14280
|
* @param {CustomEvent} event - The custom event that contains the dropdown toggle information.
|
|
15849
14281
|
*/
|
|
15850
14282
|
handleDropdownToggle(event) {
|
|
14283
|
+
this.updateFocusTrap();
|
|
15851
14284
|
this.isPopoverVisible = event.detail.expanded;
|
|
15852
|
-
|
|
15853
|
-
// Tear down FocusTrap when closing. Creation happens in updated()
|
|
15854
|
-
// after the dialog is open so getFocusableElements can find content.
|
|
15855
|
-
if (!this.isPopoverVisible) {
|
|
15856
|
-
this.updateFocusTrap();
|
|
15857
|
-
}
|
|
15858
|
-
|
|
15859
14285
|
const eventType = event.detail.eventType || "unknown";
|
|
15860
14286
|
if (!this.isPopoverVisible && this.hasFocus && eventType === "keydown") {
|
|
15861
14287
|
this.trigger.focus();
|
|
@@ -15954,178 +14380,19 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
15954
14380
|
* @private
|
|
15955
14381
|
*/
|
|
15956
14382
|
updateFocusTrap() {
|
|
15957
|
-
// Always clean up existing handlers/traps before setting up new ones
|
|
15958
|
-
// to prevent duplicate listeners on repeated calls.
|
|
15959
|
-
if (this._bibTabHandler) {
|
|
15960
|
-
this.removeEventListener('keydown', this._bibTabHandler);
|
|
15961
|
-
this._bibTabHandler = undefined;
|
|
15962
|
-
}
|
|
15963
|
-
|
|
15964
|
-
if (this.focusTrap) {
|
|
15965
|
-
this.focusTrap.disconnect();
|
|
15966
|
-
this.focusTrap = undefined;
|
|
15967
|
-
}
|
|
15968
|
-
|
|
15969
14383
|
if (this.isPopoverVisible) {
|
|
15970
14384
|
if (!this.isBibFullscreen) {
|
|
15971
|
-
|
|
15972
|
-
|
|
15973
|
-
|
|
15974
|
-
// from slotted content bubble through the dropdown host (light DOM),
|
|
15975
|
-
// not through the bib (shadow projection target). Using FocusTrap
|
|
15976
|
-
// on the dropdown would include the trigger in the tab cycle.
|
|
15977
|
-
// Instead, listen for Tab on the dropdown and manually wrap focus
|
|
15978
|
-
// within the bib's focusable elements.
|
|
15979
|
-
this._bibTabHandler = (event) => {
|
|
15980
|
-
if (event.key !== 'Tab') {
|
|
15981
|
-
return;
|
|
15982
|
-
}
|
|
15983
|
-
|
|
15984
|
-
// Collect focusable elements from the bib content.
|
|
15985
|
-
const focusables = getFocusableElements(this.bibContent);
|
|
15986
|
-
|
|
15987
|
-
// Fallback: try from slotted content directly
|
|
15988
|
-
if (!focusables.length) {
|
|
15989
|
-
const slot = this.shadowRoot.querySelector('.slotContent slot');
|
|
15990
|
-
const assignedNodes = slot ? slot.assignedNodes({ flatten: true }) : [];
|
|
15991
|
-
|
|
15992
|
-
for (const node of assignedNodes) {
|
|
15993
|
-
if (node.nodeType === Node.ELEMENT_NODE) {
|
|
15994
|
-
focusables.push(...getFocusableElements(node));
|
|
15995
|
-
}
|
|
15996
|
-
}
|
|
15997
|
-
}
|
|
15998
|
-
|
|
15999
|
-
if (!focusables.length) {
|
|
16000
|
-
return;
|
|
16001
|
-
}
|
|
16002
|
-
|
|
16003
|
-
event.preventDefault();
|
|
16004
|
-
|
|
16005
|
-
const direction = event.shiftKey ? -1 : 1; // eslint-disable-line no-magic-numbers
|
|
16006
|
-
|
|
16007
|
-
// Walk the active element chain through shadow roots
|
|
16008
|
-
const actives = this._getActiveElements();
|
|
16009
|
-
|
|
16010
|
-
let idx = focusables.findIndex((el) => actives.includes(el));
|
|
16011
|
-
|
|
16012
|
-
if (idx === -1) { // eslint-disable-line no-magic-numbers
|
|
16013
|
-
// Focus is not on a known element — move to first/last
|
|
16014
|
-
idx = direction === 1 ? -1 : focusables.length; // eslint-disable-line no-magic-numbers
|
|
16015
|
-
}
|
|
16016
|
-
|
|
16017
|
-
// Try each element in order, skipping any that can't receive focus
|
|
16018
|
-
// (e.g. hidden elements, elements in collapsed sections)
|
|
16019
|
-
for (let index = 0; index < focusables.length; index++) { // eslint-disable-line no-plusplus
|
|
16020
|
-
let nextIdx = idx + direction;
|
|
16021
|
-
|
|
16022
|
-
// Wrap around
|
|
16023
|
-
if (nextIdx < 0) {
|
|
16024
|
-
nextIdx = focusables.length - 1;
|
|
16025
|
-
} else if (nextIdx >= focusables.length) {
|
|
16026
|
-
nextIdx = 0;
|
|
16027
|
-
}
|
|
16028
|
-
|
|
16029
|
-
focusables[nextIdx].focus();
|
|
16030
|
-
|
|
16031
|
-
// Verify focus actually moved to the target
|
|
16032
|
-
const newActives = this._getActiveElements();
|
|
16033
|
-
|
|
16034
|
-
if (newActives.includes(focusables[nextIdx])) {
|
|
16035
|
-
return;
|
|
16036
|
-
}
|
|
16037
|
-
|
|
16038
|
-
// Focus didn't stick — skip this element and try the next
|
|
16039
|
-
idx = nextIdx;
|
|
16040
|
-
}
|
|
16041
|
-
};
|
|
16042
|
-
this.addEventListener('keydown', this._bibTabHandler);
|
|
16043
|
-
|
|
16044
|
-
// Move initial focus into the bib content, matching FocusTrap behavior
|
|
16045
|
-
requestAnimationFrame(() => {
|
|
16046
|
-
const focusables = getFocusableElements(this.bibContent);
|
|
16047
|
-
if (focusables.length) {
|
|
16048
|
-
focusables[0].focus();
|
|
16049
|
-
}
|
|
16050
|
-
});
|
|
16051
|
-
} else {
|
|
16052
|
-
// Normal desktop: use FocusTrap on the bib element
|
|
16053
|
-
this.focusTrap = new FocusTrap(this.bibContent);
|
|
16054
|
-
this.focusTrap.focusFirstElement();
|
|
16055
|
-
}
|
|
14385
|
+
// Desktop: show() doesn't trap focus, so use FocusTrap
|
|
14386
|
+
this.focusTrap = new FocusTrap(this.bibContent);
|
|
14387
|
+
this.focusTrap.focusFirstElement();
|
|
16056
14388
|
}
|
|
16057
14389
|
// Fullscreen: showModal() provides native focus trapping
|
|
16058
|
-
}
|
|
16059
|
-
}
|
|
16060
|
-
|
|
16061
|
-
/**
|
|
16062
|
-
* Returns the chain of active (focused) elements through shadow roots.
|
|
16063
|
-
* @private
|
|
16064
|
-
* @returns {Array<HTMLElement>}
|
|
16065
|
-
*/
|
|
16066
|
-
_getActiveElements() {
|
|
16067
|
-
let { activeElement } = document;
|
|
16068
|
-
const actives = [activeElement];
|
|
16069
|
-
|
|
16070
|
-
while (activeElement?.shadowRoot?.activeElement) {
|
|
16071
|
-
activeElement = activeElement.shadowRoot.activeElement;
|
|
16072
|
-
actives.push(activeElement);
|
|
16073
|
-
}
|
|
16074
|
-
|
|
16075
|
-
return actives;
|
|
16076
|
-
}
|
|
16077
|
-
|
|
16078
|
-
/**
|
|
16079
|
-
* Sets `inert` on sibling elements of the dropdown's top-level host
|
|
16080
|
-
* so that content outside the dropdown is not interactive while the modal is open.
|
|
16081
|
-
* Walks up through shadow DOM boundaries to find the outermost host element
|
|
16082
|
-
* in the light DOM, then sets `inert` on siblings at each ancestor level
|
|
16083
|
-
* to ensure all page content outside the host subtree is inert.
|
|
16084
|
-
* @private
|
|
16085
|
-
*/
|
|
16086
|
-
_setPageInert() {
|
|
16087
|
-
if (this._inertSiblings) {
|
|
16088
14390
|
return;
|
|
16089
14391
|
}
|
|
16090
14392
|
|
|
16091
|
-
this.
|
|
16092
|
-
|
|
16093
|
-
|
|
16094
|
-
// element in the light DOM. For example, if this dropdown is inside
|
|
16095
|
-
// auro-datepicker's shadow DOM, we walk up to the datepicker element
|
|
16096
|
-
// so we set inert on its siblings — not on the datepicker itself.
|
|
16097
|
-
let host = this;
|
|
16098
|
-
while (host.getRootNode() instanceof ShadowRoot) {
|
|
16099
|
-
host = host.getRootNode().host;
|
|
16100
|
-
}
|
|
16101
|
-
|
|
16102
|
-
// Walk up the ancestor chain, inerting siblings at each level
|
|
16103
|
-
// to ensure the entire page outside the host subtree is inert.
|
|
16104
|
-
let current = host;
|
|
16105
|
-
while (current.parentElement) {
|
|
16106
|
-
const parent = current.parentElement;
|
|
16107
|
-
for (const sibling of parent.children) {
|
|
16108
|
-
if (sibling !== current) {
|
|
16109
|
-
this._inertSiblings.push({ element: sibling, wasInert: sibling.inert });
|
|
16110
|
-
sibling.inert = true;
|
|
16111
|
-
}
|
|
16112
|
-
}
|
|
16113
|
-
current = parent;
|
|
16114
|
-
}
|
|
16115
|
-
}
|
|
16116
|
-
|
|
16117
|
-
/**
|
|
16118
|
-
* Restores `inert` state on siblings that were tracked by `_setPageInert`.
|
|
16119
|
-
* Preserves the previous inert state so externally-inerted elements are
|
|
16120
|
-
* not inadvertently re-enabled.
|
|
16121
|
-
* @private
|
|
16122
|
-
*/
|
|
16123
|
-
_clearPageInert() {
|
|
16124
|
-
if (this._inertSiblings) {
|
|
16125
|
-
for (const entry of this._inertSiblings) {
|
|
16126
|
-
entry.element.inert = entry.wasInert;
|
|
16127
|
-
}
|
|
16128
|
-
this._inertSiblings = undefined;
|
|
14393
|
+
if (this.focusTrap) {
|
|
14394
|
+
this.focusTrap.disconnect();
|
|
14395
|
+
this.focusTrap = undefined;
|
|
16129
14396
|
}
|
|
16130
14397
|
}
|
|
16131
14398
|
|
|
@@ -16364,7 +14631,6 @@ class AuroDropdown extends AuroElement$2 {
|
|
|
16364
14631
|
shape="${this.shape}"
|
|
16365
14632
|
?data-show="${this.isPopoverVisible}"
|
|
16366
14633
|
?isfullscreen="${this.isBibFullscreen}"
|
|
16367
|
-
?desktopmodal="${this.desktopModal}"
|
|
16368
14634
|
.dialogLabel="${this.bibDialogLabel}"
|
|
16369
14635
|
${ref(this.bibElement)}
|
|
16370
14636
|
>
|
|
@@ -23063,7 +21329,7 @@ let AuroHelpText$1 = class AuroHelpText extends LitElement {
|
|
|
23063
21329
|
}
|
|
23064
21330
|
};
|
|
23065
21331
|
|
|
23066
|
-
var formkitVersion = '
|
|
21332
|
+
var formkitVersion = '202606082059';
|
|
23067
21333
|
|
|
23068
21334
|
// Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
|
|
23069
21335
|
// See LICENSE in the project root for license information.
|
|
@@ -24318,62 +22584,26 @@ function applyKeyboardStrategy(component, strategy, options = {}) {
|
|
|
24318
22584
|
// components/datepicker/docs/partials/keyboardBehavior.md
|
|
24319
22585
|
//
|
|
24320
22586
|
// Current behavior (transitional — full bib keyboard navigation is planned for a future iteration):
|
|
22587
|
+
// - The bib opens and closes via pointer/touch interaction only.
|
|
24321
22588
|
// - Escape closes the bib and prevents the event from reaching parent containers.
|
|
24322
|
-
// - Enter opens the bib when it is closed (trigger input only, not clear button).
|
|
24323
|
-
// - Space opens the bib when it is closed (trigger input only, not clear button).
|
|
24324
22589
|
// - Tab uses the browser's default tabindex sequence across trigger controls.
|
|
22590
|
+
// - Enter and Space do not open or close the bib.
|
|
24325
22591
|
//
|
|
24326
22592
|
// This file is an intentional placeholder for most keys. When datepicker bib keyboard navigation is
|
|
24327
22593
|
// added, handlers should go here following the same strategy pattern used by
|
|
24328
22594
|
// auro-select (selectKeyboardStrategy.js) and auro-combobox (comboboxKeyboardStrategy.js).
|
|
24329
22595
|
const datepickerKeyboardStrategy = {
|
|
24330
|
-
Escape(component, evt
|
|
24331
|
-
if (!
|
|
22596
|
+
Escape(component, evt) {
|
|
22597
|
+
if (!component.dropdown || !component.dropdown.isPopoverVisible) {
|
|
24332
22598
|
return;
|
|
24333
22599
|
}
|
|
24334
22600
|
|
|
24335
|
-
//
|
|
24336
|
-
//
|
|
22601
|
+
// Prevent the Escape key from bubbling up and closing any parent dialogs / drawers / popups.
|
|
22602
|
+
// Because stopPropagation prevents the document-level floatingUI keydown handler from
|
|
22603
|
+
// seeing this event, we must also close the dropdown explicitly.
|
|
24337
22604
|
evt.stopPropagation();
|
|
24338
|
-
evt.preventDefault();
|
|
24339
|
-
|
|
24340
|
-
component.hideBib();
|
|
24341
|
-
},
|
|
24342
|
-
|
|
24343
|
-
Enter(component, evt, ctx) {
|
|
24344
|
-
if (ctx.isExpanded) {
|
|
24345
|
-
return;
|
|
24346
|
-
}
|
|
24347
|
-
|
|
24348
|
-
// Only open from the trigger input, not the clear button or other internal elements.
|
|
24349
|
-
// evt.target is retargeted to the host in shadow DOM, so use composedPath()
|
|
24350
|
-
// to find the real origin. The clear button is rendered with class "clearBtn".
|
|
24351
|
-
const path = evt.composedPath();
|
|
24352
|
-
if (path.some(el => el.classList?.contains('clearBtn'))) {
|
|
24353
|
-
return;
|
|
24354
|
-
}
|
|
24355
|
-
|
|
24356
|
-
evt.preventDefault();
|
|
24357
|
-
|
|
24358
|
-
component.dropdown.show();
|
|
24359
|
-
},
|
|
24360
|
-
|
|
24361
|
-
' '(component, evt, ctx) {
|
|
24362
|
-
if (ctx.isExpanded) {
|
|
24363
|
-
return;
|
|
24364
|
-
}
|
|
24365
|
-
|
|
24366
|
-
// Only open from the trigger input, not the clear button or other internal elements.
|
|
24367
|
-
// evt.target is retargeted to the host in shadow DOM, so use composedPath()
|
|
24368
|
-
// to find the real origin. The clear button is rendered with class "clearBtn".
|
|
24369
|
-
const path = evt.composedPath();
|
|
24370
|
-
if (path.some(el => el.classList?.contains('clearBtn'))) {
|
|
24371
|
-
return;
|
|
24372
|
-
}
|
|
24373
|
-
|
|
24374
|
-
evt.preventDefault();
|
|
24375
22605
|
|
|
24376
|
-
component.dropdown.
|
|
22606
|
+
component.dropdown.hide();
|
|
24377
22607
|
},
|
|
24378
22608
|
};
|
|
24379
22609
|
|
|
@@ -24447,15 +22677,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
24447
22677
|
this.required = false;
|
|
24448
22678
|
this.onDark = false;
|
|
24449
22679
|
this.range = false;
|
|
24450
|
-
this.rangeLabelStart = 'range start';
|
|
24451
|
-
this.rangeLabelEnd = 'range end';
|
|
24452
|
-
this.rangeLabelBeforeRange = 'before range';
|
|
24453
|
-
this.rangeLabelInRange = 'in range';
|
|
24454
|
-
this.rangeLabelAfterRange = 'after range';
|
|
24455
|
-
this.blackoutDates = [];
|
|
24456
|
-
this.blackoutLabel = 'unavailable';
|
|
24457
|
-
this.navLabelPrevMonth = 'Previous month';
|
|
24458
|
-
this.navLabelNextMonth = 'Next month';
|
|
24459
22680
|
this.stacked = false;
|
|
24460
22681
|
this.noValidate = false;
|
|
24461
22682
|
this.validity = undefined;
|
|
@@ -24834,78 +23055,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
24834
23055
|
reflect: true
|
|
24835
23056
|
},
|
|
24836
23057
|
|
|
24837
|
-
/**
|
|
24838
|
-
* Label announced for the range start date cell.
|
|
24839
|
-
*/
|
|
24840
|
-
rangeLabelStart: {
|
|
24841
|
-
type: String,
|
|
24842
|
-
reflect: true
|
|
24843
|
-
},
|
|
24844
|
-
|
|
24845
|
-
/**
|
|
24846
|
-
* Label announced for the range end date cell.
|
|
24847
|
-
*/
|
|
24848
|
-
rangeLabelEnd: {
|
|
24849
|
-
type: String,
|
|
24850
|
-
reflect: true
|
|
24851
|
-
},
|
|
24852
|
-
|
|
24853
|
-
/**
|
|
24854
|
-
* Label announced for cells before the range start.
|
|
24855
|
-
*/
|
|
24856
|
-
rangeLabelBeforeRange: {
|
|
24857
|
-
type: String,
|
|
24858
|
-
reflect: true
|
|
24859
|
-
},
|
|
24860
|
-
|
|
24861
|
-
/**
|
|
24862
|
-
* Label announced for cells within the selected range.
|
|
24863
|
-
*/
|
|
24864
|
-
rangeLabelInRange: {
|
|
24865
|
-
type: String,
|
|
24866
|
-
reflect: true
|
|
24867
|
-
},
|
|
24868
|
-
|
|
24869
|
-
/**
|
|
24870
|
-
* Label announced for cells after the range (or after start when no end is selected).
|
|
24871
|
-
*/
|
|
24872
|
-
rangeLabelAfterRange: {
|
|
24873
|
-
type: String,
|
|
24874
|
-
reflect: true
|
|
24875
|
-
},
|
|
24876
|
-
|
|
24877
|
-
/**
|
|
24878
|
-
* Array of dates that cannot be selected. Dates should be in ISO format (YYYY-MM-DD).
|
|
24879
|
-
*/
|
|
24880
|
-
blackoutDates: {
|
|
24881
|
-
type: Array,
|
|
24882
|
-
reflect: true
|
|
24883
|
-
},
|
|
24884
|
-
|
|
24885
|
-
/**
|
|
24886
|
-
* Label announced for blackout (disabled but in-range) date cells.
|
|
24887
|
-
*/
|
|
24888
|
-
blackoutLabel: {
|
|
24889
|
-
type: String,
|
|
24890
|
-
reflect: true
|
|
24891
|
-
},
|
|
24892
|
-
|
|
24893
|
-
/**
|
|
24894
|
-
* Accessible label for the previous month navigation button.
|
|
24895
|
-
*/
|
|
24896
|
-
navLabelPrevMonth: {
|
|
24897
|
-
type: String,
|
|
24898
|
-
reflect: true
|
|
24899
|
-
},
|
|
24900
|
-
|
|
24901
|
-
/**
|
|
24902
|
-
* Accessible label for the next month navigation button.
|
|
24903
|
-
*/
|
|
24904
|
-
navLabelNextMonth: {
|
|
24905
|
-
type: String,
|
|
24906
|
-
reflect: true
|
|
24907
|
-
},
|
|
24908
|
-
|
|
24909
23058
|
/**
|
|
24910
23059
|
* Dates that the user should have for reference as part of their decision making when selecting a date.
|
|
24911
23060
|
* This should be a JSON string array of dates in the format of `MM/DD/YYYY`.
|
|
@@ -24932,7 +23081,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
24932
23081
|
|
|
24933
23082
|
/**
|
|
24934
23083
|
* Custom help text message to display when validity = `customError`.
|
|
24935
|
-
* Also used as the validation message when a blackout date is typed into the input.
|
|
24936
23084
|
*/
|
|
24937
23085
|
setCustomValidityCustomError: {
|
|
24938
23086
|
type: String
|
|
@@ -25254,68 +23402,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
25254
23402
|
}));
|
|
25255
23403
|
}
|
|
25256
23404
|
|
|
25257
|
-
/**
|
|
25258
|
-
* Attempts to focus the active calendar cell using a rAF retry loop.
|
|
25259
|
-
* Shared by both fullscreen and desktop open paths.
|
|
25260
|
-
* @private
|
|
25261
|
-
* @returns {void}
|
|
25262
|
-
*/
|
|
25263
|
-
focusActiveCellWhenReady() {
|
|
25264
|
-
const MAX_ATTEMPTS = 20;
|
|
25265
|
-
let attempts = 0;
|
|
25266
|
-
|
|
25267
|
-
const tryFocus = () => {
|
|
25268
|
-
attempts += 1;
|
|
25269
|
-
const allCells = this.calendar.getAllFocusableCells();
|
|
25270
|
-
|
|
25271
|
-
if (!allCells.length && attempts < MAX_ATTEMPTS) {
|
|
25272
|
-
requestAnimationFrame(tryFocus);
|
|
25273
|
-
return;
|
|
25274
|
-
}
|
|
25275
|
-
|
|
25276
|
-
// Compute and mark the active cell
|
|
25277
|
-
if (this.calendar.activeCellDate == null) {
|
|
25278
|
-
this.calendar.activeCellDate = this.calendar.computeActiveDate();
|
|
25279
|
-
}
|
|
25280
|
-
if (this.calendar.activeCellDate !== undefined) {
|
|
25281
|
-
this.calendar.setActiveCell(this.calendar.activeCellDate);
|
|
25282
|
-
}
|
|
25283
|
-
|
|
25284
|
-
// If no cell matched (e.g. centralDate month differs from the rendered
|
|
25285
|
-
// range on mobile), fall back to the first rendered enabled cell.
|
|
25286
|
-
let activeCell = allCells.find(cell => cell.active);
|
|
25287
|
-
if (!activeCell && allCells.length) {
|
|
25288
|
-
const fallback = allCells[0];
|
|
25289
|
-
if (fallback.day) {
|
|
25290
|
-
this.calendar.activeCellDate = fallback.day.date;
|
|
25291
|
-
this.calendar.setActiveCell(this.calendar.activeCellDate);
|
|
25292
|
-
activeCell = allCells.find(cell => cell.active);
|
|
25293
|
-
}
|
|
25294
|
-
}
|
|
25295
|
-
|
|
25296
|
-
// Focus the calendar grid wrapper (aria-activedescendant handles
|
|
25297
|
-
// the SR announcement for the active cell).
|
|
25298
|
-
if (activeCell) {
|
|
25299
|
-
// Announce the initial active cell via the live region
|
|
25300
|
-
const announcement = this.calendar.buildFocusAnnouncement(activeCell.day.date);
|
|
25301
|
-
this.calendar.announceSelection(announcement);
|
|
25302
|
-
|
|
25303
|
-
this.calendar.focusActiveCell();
|
|
25304
|
-
|
|
25305
|
-
// On mobile fullscreen, scroll the month list so the active cell's
|
|
25306
|
-
// month is visible. Without this, the list stays scrolled to the
|
|
25307
|
-
// calendarStartDate month which may be far from the active cell.
|
|
25308
|
-
if (this.dropdown.isBibFullscreen) {
|
|
25309
|
-
this.calendar.scrollToActiveCell();
|
|
25310
|
-
}
|
|
25311
|
-
} else if (attempts < MAX_ATTEMPTS) {
|
|
25312
|
-
requestAnimationFrame(tryFocus);
|
|
25313
|
-
}
|
|
25314
|
-
};
|
|
25315
|
-
|
|
25316
|
-
requestAnimationFrame(tryFocus);
|
|
25317
|
-
}
|
|
25318
|
-
|
|
25319
23405
|
/**
|
|
25320
23406
|
* Binds all behavior needed to the dropdown after rendering.
|
|
25321
23407
|
* @private
|
|
@@ -25324,12 +23410,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
25324
23410
|
configureDropdown() {
|
|
25325
23411
|
this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
|
|
25326
23412
|
|
|
25327
|
-
// The datepicker manages its own open/close lifecycle (Space/Escape/date-select/done).
|
|
25328
|
-
// Prevent the floater's document-level focusin handler from closing the bib
|
|
25329
|
-
// when focus moves from the trigger into the calendar cells (which live inside
|
|
25330
|
-
// a top-layer popover where :focus-within on the dropdown host returns false).
|
|
25331
|
-
this.dropdown.noHideOnThisFocusLoss = true;
|
|
25332
|
-
|
|
25333
23413
|
// Pass label text to the dropdown bib for accessible dialog naming.
|
|
25334
23414
|
// Without this, the fullscreen <dialog> has no accessible name and
|
|
25335
23415
|
// screen readers announce it as just "dialog" with no context.
|
|
@@ -25347,23 +23427,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
25347
23427
|
this.dropdown.addEventListener('auroDropdown-toggled', () => {
|
|
25348
23428
|
this.notifyDatepickerToggled();
|
|
25349
23429
|
|
|
25350
|
-
if (this.dropdown.isPopoverVisible) {
|
|
25351
|
-
// Reset calendar focus state so it recomputes from the current selection.
|
|
25352
|
-
// Without this, reopening after navigating to a month without a selected
|
|
25353
|
-
// date leaves activeCellDate pointing at a cell in a different month than
|
|
25354
|
-
// what centralDate renders, causing all cells to have tabindex="-1".
|
|
25355
|
-
this.calendar.activeCellDate = null;
|
|
25356
|
-
|
|
25357
|
-
// Show the month containing the selected date (or today) instead of
|
|
25358
|
-
// whichever month the user last navigated to.
|
|
25359
|
-
// Respect consumer-provided centralDate/calendarStartDate if no value is set.
|
|
25360
|
-
if (this.value && this.util.validDateStr(this.value, this.format)) {
|
|
25361
|
-
this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
|
|
25362
|
-
} else if (!this.centralDate && !this.calendarStartDate && !this.minDate) {
|
|
25363
|
-
this.calendarRenderUtil.updateCentralDate(this, new Date());
|
|
25364
|
-
}
|
|
25365
|
-
}
|
|
25366
|
-
|
|
25367
23430
|
// This forces the calendar to render when the dropdown is opened.
|
|
25368
23431
|
// It is not rendered by default
|
|
25369
23432
|
this.calendar.visible = this.dropdown.isPopoverVisible;
|
|
@@ -25396,23 +23459,12 @@ class AuroDatePicker extends AuroElement {
|
|
|
25396
23459
|
bibEl.open(true);
|
|
25397
23460
|
|
|
25398
23461
|
doubleRaf(() => {
|
|
25399
|
-
this.
|
|
23462
|
+
this.calendar.focusCloseButton();
|
|
25400
23463
|
});
|
|
25401
23464
|
}
|
|
25402
23465
|
});
|
|
25403
23466
|
|
|
25404
23467
|
guardTouchPassthrough(this.shadowRoot.querySelector('.calendarWrapper'));
|
|
25405
|
-
} else {
|
|
25406
|
-
// Desktop (non-fullscreen) modal: make the trigger inert so users
|
|
25407
|
-
// cannot interact with the input while the modal bib is open.
|
|
25408
|
-
if (this.dropdown.desktopModal) {
|
|
25409
|
-
this.dropdown.trigger.inert = true;
|
|
25410
|
-
}
|
|
25411
|
-
|
|
25412
|
-
// Desktop (non-fullscreen): focus the active calendar cell.
|
|
25413
|
-
this.dropdown.updateComplete.then(() => {
|
|
25414
|
-
this.focusActiveCellWhenReady();
|
|
25415
|
-
});
|
|
25416
23468
|
}
|
|
25417
23469
|
} else {
|
|
25418
23470
|
// Always clear the inert flag. Only restore focus to the input when the datepicker
|
|
@@ -25458,7 +23510,7 @@ class AuroDatePicker extends AuroElement {
|
|
|
25458
23510
|
bibEl.close();
|
|
25459
23511
|
bibEl.open(true);
|
|
25460
23512
|
doubleRaf(() => {
|
|
25461
|
-
this.
|
|
23513
|
+
this.calendar.focusCloseButton();
|
|
25462
23514
|
});
|
|
25463
23515
|
}
|
|
25464
23516
|
});
|
|
@@ -25653,8 +23705,14 @@ class AuroDatePicker extends AuroElement {
|
|
|
25653
23705
|
|
|
25654
23706
|
if (onEndValue) {
|
|
25655
23707
|
this.valueEnd = newDate;
|
|
23708
|
+
if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
|
|
23709
|
+
this.focus('startDate');
|
|
23710
|
+
}
|
|
25656
23711
|
} else {
|
|
25657
23712
|
this.value = newDate;
|
|
23713
|
+
if (this.dropdown.isPopoverVisible && !this.dropdown.isBibFullscreen) {
|
|
23714
|
+
this.focus('endDate');
|
|
23715
|
+
}
|
|
25658
23716
|
}
|
|
25659
23717
|
}
|
|
25660
23718
|
}
|
|
@@ -25694,27 +23752,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
25694
23752
|
this.resetInputs();
|
|
25695
23753
|
}
|
|
25696
23754
|
|
|
25697
|
-
/**
|
|
25698
|
-
* Checks whether a formatted date string matches a blackout date.
|
|
25699
|
-
* @private
|
|
25700
|
-
* @param {string} dateStr - A date string in the component's configured format.
|
|
25701
|
-
* @returns {boolean} True if the date is in the blackoutDates list.
|
|
25702
|
-
*/
|
|
25703
|
-
isBlackoutDate(dateStr) {
|
|
25704
|
-
if (!Array.isArray(this.blackoutDates) || this.blackoutDates.length === 0 || !dateStr) {
|
|
25705
|
-
return false;
|
|
25706
|
-
}
|
|
25707
|
-
|
|
25708
|
-
const formatted = this.util.toNorthAmericanFormat(dateStr, this.format);
|
|
25709
|
-
if (!this.util.validDateStr(dateStr, this.format)) return false;
|
|
25710
|
-
|
|
25711
|
-
const d = new Date(formatted);
|
|
25712
|
-
const yyyy = d.getFullYear();
|
|
25713
|
-
const mm = String(d.getMonth() + 1).padStart(2, '0');
|
|
25714
|
-
const dd = String(d.getDate()).padStart(2, '0');
|
|
25715
|
-
return this.blackoutDates.includes(`${yyyy}-${mm}-${dd}`);
|
|
25716
|
-
}
|
|
25717
|
-
|
|
25718
23755
|
/**
|
|
25719
23756
|
* Validates value.
|
|
25720
23757
|
* @param {boolean} [force=false] - Whether to force validation.
|
|
@@ -25726,24 +23763,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
25726
23763
|
}
|
|
25727
23764
|
|
|
25728
23765
|
this.validation.validate(this, force);
|
|
25729
|
-
|
|
25730
|
-
// After standard validation, check blackout dates for typed input
|
|
25731
|
-
if (this.validity !== 'customError') {
|
|
25732
|
-
if (this.isBlackoutDate(this.value) || (this.range && this.isBlackoutDate(this.valueEnd))) {
|
|
25733
|
-
const msg = this.setCustomValidityCustomError || 'Selected date is unavailable';
|
|
25734
|
-
this.validity = 'customError';
|
|
25735
|
-
this.errorMessage = msg;
|
|
25736
|
-
|
|
25737
|
-
this.dispatchEvent(new CustomEvent('auroFormElement-validated', {
|
|
25738
|
-
bubbles: true,
|
|
25739
|
-
composed: true,
|
|
25740
|
-
detail: {
|
|
25741
|
-
validity: this.validity,
|
|
25742
|
-
message: this.errorMessage
|
|
25743
|
-
}
|
|
25744
|
-
}));
|
|
25745
|
-
}
|
|
25746
|
-
}
|
|
25747
23766
|
}
|
|
25748
23767
|
|
|
25749
23768
|
/**
|
|
@@ -25824,9 +23843,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
25824
23843
|
|
|
25825
23844
|
if (this.cellClickActive) {
|
|
25826
23845
|
this.cellClickActive = false;
|
|
25827
|
-
this.wasCellClick = true;
|
|
25828
|
-
} else {
|
|
25829
|
-
this.wasCellClick = false;
|
|
25830
23846
|
}
|
|
25831
23847
|
|
|
25832
23848
|
if (this.value && this.util.validDateStr(this.value, this.format)) {
|
|
@@ -25857,44 +23873,16 @@ class AuroDatePicker extends AuroElement {
|
|
|
25857
23873
|
}
|
|
25858
23874
|
|
|
25859
23875
|
if (this.value && this.value.length === this.inputList[0].lengthForType) {
|
|
25860
|
-
|
|
25861
|
-
// to prevent the displayed months from shifting
|
|
25862
|
-
if (!(this.wasCellClick && this.range)) {
|
|
25863
|
-
this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
|
|
25864
|
-
}
|
|
23876
|
+
this.calendarRenderUtil.updateCentralDate(this, this.formattedValue);
|
|
25865
23877
|
}
|
|
25866
23878
|
|
|
25867
23879
|
this.setHasValue();
|
|
25868
23880
|
}
|
|
25869
23881
|
|
|
25870
|
-
if (changedProperties.has('blackoutDates')) {
|
|
25871
|
-
// Force calendar cells to re-render with updated blackout state.
|
|
25872
|
-
// requestUpdate on the calendar alone is insufficient because cells
|
|
25873
|
-
// don't receive blackoutDates as a bound property. Dispatching the
|
|
25874
|
-
// slot content event triggers handleSlotContent → requestUpdate on each cell.
|
|
25875
|
-
if (this.calendar) {
|
|
25876
|
-
this.calendar.requestUpdate();
|
|
25877
|
-
this.dispatchEvent(new CustomEvent('auroDatePicker-newSlotContent'));
|
|
25878
|
-
}
|
|
25879
|
-
|
|
25880
|
-
// Re-run validation so that a previously valid value that now falls on
|
|
25881
|
-
// a blackout date is flagged, and vice versa.
|
|
25882
|
-
if (this.value || this.valueEnd) {
|
|
25883
|
-
this.validate();
|
|
25884
|
-
}
|
|
25885
|
-
}
|
|
25886
|
-
|
|
25887
23882
|
if (changedProperties.has('valueEnd') && this.inputList[1]) {
|
|
25888
23883
|
|
|
25889
23884
|
this.formattedValueEnd = this.util.toNorthAmericanFormat(this.valueEnd, this.format);
|
|
25890
23885
|
|
|
25891
|
-
if (this.cellClickActive) {
|
|
25892
|
-
this.cellClickActive = false;
|
|
25893
|
-
this.wasCellClick = true;
|
|
25894
|
-
} else {
|
|
25895
|
-
this.wasCellClick = false;
|
|
25896
|
-
}
|
|
25897
|
-
|
|
25898
23886
|
// update the calendar
|
|
25899
23887
|
if (this.valueEnd && this.util.validDateStr(this.valueEnd, this.format)) {
|
|
25900
23888
|
this.calendar.dateTo = this.convertToWcValidTime(this.formattedValueEnd);
|
|
@@ -25922,11 +23910,7 @@ class AuroDatePicker extends AuroElement {
|
|
|
25922
23910
|
}
|
|
25923
23911
|
|
|
25924
23912
|
if (this.valueEnd && this.valueEnd.length === this.inputList[1].lengthForType) {
|
|
25925
|
-
|
|
25926
|
-
// to prevent the displayed months from shifting
|
|
25927
|
-
if (!this.wasCellClick) {
|
|
25928
|
-
this.calendarRenderUtil.updateCentralDate(this, this.formattedValueEnd);
|
|
25929
|
-
}
|
|
23913
|
+
this.calendarRenderUtil.updateCentralDate(this, this.formattedValueEnd);
|
|
25930
23914
|
}
|
|
25931
23915
|
|
|
25932
23916
|
this.validate();
|
|
@@ -26083,7 +24067,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
26083
24067
|
}
|
|
26084
24068
|
|
|
26085
24069
|
firstUpdated() {
|
|
26086
|
-
|
|
26087
24070
|
// Add the tag name as an attribute if it is different than the component name
|
|
26088
24071
|
this.runtimeUtils.handleComponentTagRename(this, 'auro-datepicker');
|
|
26089
24072
|
|
|
@@ -26513,7 +24496,7 @@ class AuroDatePicker extends AuroElement {
|
|
|
26513
24496
|
// Base HTML render() handles dropdown and calendar bib
|
|
26514
24497
|
return html$1`
|
|
26515
24498
|
<!-- Hidden slot for clear button aria-label -->
|
|
26516
|
-
<slot name="ariaLabel.input.clear" hidden @slotchange=${
|
|
24499
|
+
<slot name="ariaLabel.input.clear" hidden @slotchange=${this.requestUpdate}></slot>
|
|
26517
24500
|
|
|
26518
24501
|
<${this.dropdownTag}
|
|
26519
24502
|
appearance="${this.onDark ? 'inverse' : this.appearance}"
|
|
@@ -26530,7 +24513,6 @@ class AuroDatePicker extends AuroElement {
|
|
|
26530
24513
|
.shape="${this.shape}"
|
|
26531
24514
|
.size="${this.size}"
|
|
26532
24515
|
class="${classMap(dropdownElementClassMap)}"
|
|
26533
|
-
desktopModal
|
|
26534
24516
|
disableEventShow
|
|
26535
24517
|
for="dropdownMenu"
|
|
26536
24518
|
part="dropdown"
|