@entur/datepicker 11.2.1-beta.0 → 11.2.1-beta.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"datepicker.cjs.js","sources":["../../../node_modules/@react-stately/datepicker/dist/ar-AE.mjs","../../../node_modules/@react-stately/datepicker/dist/bg-BG.mjs","../../../node_modules/@react-stately/datepicker/dist/cs-CZ.mjs","../../../node_modules/@react-stately/datepicker/dist/da-DK.mjs","../../../node_modules/@react-stately/datepicker/dist/de-DE.mjs","../../../node_modules/@react-stately/datepicker/dist/el-GR.mjs","../../../node_modules/@react-stately/datepicker/dist/en-US.mjs","../../../node_modules/@react-stately/datepicker/dist/es-ES.mjs","../../../node_modules/@react-stately/datepicker/dist/et-EE.mjs","../../../node_modules/@react-stately/datepicker/dist/fi-FI.mjs","../../../node_modules/@react-stately/datepicker/dist/fr-FR.mjs","../../../node_modules/@react-stately/datepicker/dist/he-IL.mjs","../../../node_modules/@react-stately/datepicker/dist/hr-HR.mjs","../../../node_modules/@react-stately/datepicker/dist/hu-HU.mjs","../../../node_modules/@react-stately/datepicker/dist/it-IT.mjs","../../../node_modules/@react-stately/datepicker/dist/ja-JP.mjs","../../../node_modules/@react-stately/datepicker/dist/ko-KR.mjs","../../../node_modules/@react-stately/datepicker/dist/lt-LT.mjs","../../../node_modules/@react-stately/datepicker/dist/lv-LV.mjs","../../../node_modules/@react-stately/datepicker/dist/nb-NO.mjs","../../../node_modules/@react-stately/datepicker/dist/nl-NL.mjs","../../../node_modules/@react-stately/datepicker/dist/pl-PL.mjs","../../../node_modules/@react-stately/datepicker/dist/pt-BR.mjs","../../../node_modules/@react-stately/datepicker/dist/pt-PT.mjs","../../../node_modules/@react-stately/datepicker/dist/ro-RO.mjs","../../../node_modules/@react-stately/datepicker/dist/ru-RU.mjs","../../../node_modules/@react-stately/datepicker/dist/sk-SK.mjs","../../../node_modules/@react-stately/datepicker/dist/sl-SI.mjs","../../../node_modules/@react-stately/datepicker/dist/sr-SP.mjs","../../../node_modules/@react-stately/datepicker/dist/sv-SE.mjs","../../../node_modules/@react-stately/datepicker/dist/tr-TR.mjs","../../../node_modules/@react-stately/datepicker/dist/uk-UA.mjs","../../../node_modules/@react-stately/datepicker/dist/zh-CN.mjs","../../../node_modules/@react-stately/datepicker/dist/zh-TW.mjs","../../../node_modules/@react-stately/datepicker/dist/intlStrings.mjs","../../../node_modules/@internationalized/date/dist/utils.mjs","../../../node_modules/@internationalized/date/dist/GregorianCalendar.mjs","../../../node_modules/@internationalized/date/dist/weekStartData.mjs","../../../node_modules/@internationalized/date/dist/queries.mjs","../../../node_modules/@internationalized/date/dist/conversion.mjs","../../../node_modules/@internationalized/date/dist/manipulation.mjs","../../../node_modules/@internationalized/date/dist/string.mjs","../../../node_modules/@swc/helpers/esm/_check_private_redeclaration.js","../../../node_modules/@swc/helpers/esm/_class_private_field_init.js","../../../node_modules/@internationalized/date/dist/CalendarDate.mjs","../../../node_modules/@internationalized/date/dist/DateFormatter.mjs","../../../node_modules/@internationalized/string/dist/LocalizedStringDictionary.mjs","../../../node_modules/@internationalized/string/dist/LocalizedStringFormatter.mjs","../../../node_modules/@react-stately/form/dist/useFormValidationState.mjs","../../../node_modules/@react-stately/datepicker/dist/utils.mjs","../../../node_modules/@react-stately/utils/dist/useControlledState.mjs","../../../node_modules/@react-stately/overlays/dist/useOverlayTriggerState.mjs","../../../node_modules/@react-stately/datepicker/dist/useDatePickerState.mjs","../../../node_modules/@react-stately/datepicker/dist/placeholders.mjs","../../../node_modules/@react-stately/datepicker/dist/useDateFieldState.mjs","../../../node_modules/@react-stately/datepicker/dist/useTimeFieldState.mjs","../../../node_modules/@react-aria/datepicker/dist/ar-AE.mjs","../../../node_modules/@react-aria/datepicker/dist/bg-BG.mjs","../../../node_modules/@react-aria/datepicker/dist/cs-CZ.mjs","../../../node_modules/@react-aria/datepicker/dist/da-DK.mjs","../../../node_modules/@react-aria/datepicker/dist/de-DE.mjs","../../../node_modules/@react-aria/datepicker/dist/el-GR.mjs","../../../node_modules/@react-aria/datepicker/dist/en-US.mjs","../../../node_modules/@react-aria/datepicker/dist/es-ES.mjs","../../../node_modules/@react-aria/datepicker/dist/et-EE.mjs","../../../node_modules/@react-aria/datepicker/dist/fi-FI.mjs","../../../node_modules/@react-aria/datepicker/dist/fr-FR.mjs","../../../node_modules/@react-aria/datepicker/dist/he-IL.mjs","../../../node_modules/@react-aria/datepicker/dist/hr-HR.mjs","../../../node_modules/@react-aria/datepicker/dist/hu-HU.mjs","../../../node_modules/@react-aria/datepicker/dist/it-IT.mjs","../../../node_modules/@react-aria/datepicker/dist/ja-JP.mjs","../../../node_modules/@react-aria/datepicker/dist/ko-KR.mjs","../../../node_modules/@react-aria/datepicker/dist/lt-LT.mjs","../../../node_modules/@react-aria/datepicker/dist/lv-LV.mjs","../../../node_modules/@react-aria/datepicker/dist/nb-NO.mjs","../../../node_modules/@react-aria/datepicker/dist/nl-NL.mjs","../../../node_modules/@react-aria/datepicker/dist/pl-PL.mjs","../../../node_modules/@react-aria/datepicker/dist/pt-BR.mjs","../../../node_modules/@react-aria/datepicker/dist/pt-PT.mjs","../../../node_modules/@react-aria/datepicker/dist/ro-RO.mjs","../../../node_modules/@react-aria/datepicker/dist/ru-RU.mjs","../../../node_modules/@react-aria/datepicker/dist/sk-SK.mjs","../../../node_modules/@react-aria/datepicker/dist/sl-SI.mjs","../../../node_modules/@react-aria/datepicker/dist/sr-SP.mjs","../../../node_modules/@react-aria/datepicker/dist/sv-SE.mjs","../../../node_modules/@react-aria/datepicker/dist/tr-TR.mjs","../../../node_modules/@react-aria/datepicker/dist/uk-UA.mjs","../../../node_modules/@react-aria/datepicker/dist/zh-CN.mjs","../../../node_modules/@react-aria/datepicker/dist/zh-TW.mjs","../../../node_modules/@react-aria/datepicker/dist/intlStrings.mjs","../../../node_modules/@react-aria/utils/dist/useLayoutEffect.mjs","../../../node_modules/@react-aria/utils/dist/useEffectEvent.mjs","../../../node_modules/@react-aria/utils/dist/useValueEffect.mjs","../../../node_modules/@react-aria/ssr/dist/SSRProvider.mjs","../../../node_modules/@react-aria/utils/dist/useId.mjs","../../../node_modules/@react-aria/utils/dist/chain.mjs","../../../node_modules/@react-aria/utils/dist/domHelpers.mjs","../../../node_modules/@react-stately/flags/dist/import.mjs","../../../node_modules/@react-aria/utils/dist/DOMFunctions.mjs","../../../node_modules/@react-aria/utils/dist/ShadowTreeWalker.mjs","../../../node_modules/clsx/dist/clsx.mjs","../../../node_modules/@react-aria/utils/dist/mergeProps.mjs","../../../node_modules/@react-aria/utils/dist/filterDOMProps.mjs","../../../node_modules/@react-aria/utils/dist/focusWithoutScrolling.mjs","../../../node_modules/@react-aria/utils/dist/platform.mjs","../../../node_modules/@react-aria/utils/dist/openLink.mjs","../../../node_modules/@react-aria/utils/dist/runAfterTransition.mjs","../../../node_modules/@react-aria/utils/dist/useGlobalListeners.mjs","../../../node_modules/@react-aria/utils/dist/useLabels.mjs","../../../node_modules/@react-aria/utils/dist/useUpdateEffect.mjs","../../../node_modules/@react-aria/utils/dist/useSyncRef.mjs","../../../node_modules/@react-aria/utils/dist/isScrollable.mjs","../../../node_modules/@react-aria/utils/dist/getScrollParent.mjs","../../../node_modules/@react-aria/utils/dist/getScrollParents.mjs","../../../node_modules/@react-aria/utils/dist/useDescription.mjs","../../../node_modules/@react-aria/utils/dist/useEvent.mjs","../../../node_modules/@react-aria/utils/dist/scrollIntoView.mjs","../../../node_modules/@react-aria/utils/dist/isVirtualEvent.mjs","../../../node_modules/@react-aria/utils/dist/useDeepMemo.mjs","../../../node_modules/@react-aria/utils/dist/useFormReset.mjs","../../../node_modules/@react-aria/utils/dist/isElementVisible.mjs","../../../node_modules/@react-aria/utils/dist/isFocusable.mjs","../../../node_modules/@react-aria/interactions/dist/utils.mjs","../../../node_modules/@react-aria/interactions/dist/textSelection.mjs","../../../node_modules/@react-aria/interactions/dist/context.mjs","../../../node_modules/@swc/helpers/esm/_class_apply_descriptor_get.js","../../../node_modules/@swc/helpers/esm/_class_extract_field_descriptor.js","../../../node_modules/@swc/helpers/esm/_class_private_field_get.js","../../../node_modules/@swc/helpers/esm/_class_apply_descriptor_set.js","../../../node_modules/@swc/helpers/esm/_class_private_field_set.js","../../../node_modules/@react-aria/interactions/dist/usePress.mjs","../../../node_modules/@react-aria/interactions/dist/useFocusVisible.mjs","../../../node_modules/@react-aria/interactions/dist/focusSafely.mjs","../../../node_modules/@react-aria/interactions/dist/useFocus.mjs","../../../node_modules/@react-aria/interactions/dist/createEventHandler.mjs","../../../node_modules/@react-aria/interactions/dist/useKeyboard.mjs","../../../node_modules/@react-aria/interactions/dist/useFocusable.mjs","../../../node_modules/@react-aria/interactions/dist/useFocusWithin.mjs","../../../node_modules/@react-aria/focus/dist/FocusScope.mjs","../../../node_modules/@react-aria/i18n/dist/utils.mjs","../../../node_modules/@react-aria/i18n/dist/useDefaultLocale.mjs","../../../node_modules/@react-aria/i18n/dist/context.mjs","../../../node_modules/tslib/tslib.es6.mjs","../../../node_modules/@react-aria/i18n/dist/useLocalizedStringFormatter.mjs","../../../node_modules/@react-aria/i18n/dist/useDateFormatter.mjs","../../../node_modules/@internationalized/number/dist/NumberFormatter.mjs","../../../node_modules/@internationalized/number/dist/NumberParser.mjs","../../../node_modules/@react-aria/i18n/dist/useCollator.mjs","../../../node_modules/@react-aria/i18n/dist/useFilter.mjs","../../../node_modules/@react-aria/datepicker/dist/useDatePickerGroup.mjs","../../../node_modules/@react-aria/label/dist/useLabel.mjs","../../../node_modules/@react-aria/label/dist/useField.mjs","../../../node_modules/@react-aria/form/dist/useFormValidation.mjs","../../../node_modules/@react-aria/datepicker/dist/useDateField.mjs","../../../node_modules/@react-aria/datepicker/dist/useDatePicker.mjs","../../../node_modules/@react-aria/datepicker/dist/useDisplayNames.mjs","../../../node_modules/@react-aria/spinbutton/dist/ar-AE.mjs","../../../node_modules/@react-aria/spinbutton/dist/bg-BG.mjs","../../../node_modules/@react-aria/spinbutton/dist/cs-CZ.mjs","../../../node_modules/@react-aria/spinbutton/dist/da-DK.mjs","../../../node_modules/@react-aria/spinbutton/dist/de-DE.mjs","../../../node_modules/@react-aria/spinbutton/dist/el-GR.mjs","../../../node_modules/@react-aria/spinbutton/dist/en-US.mjs","../../../node_modules/@react-aria/spinbutton/dist/es-ES.mjs","../../../node_modules/@react-aria/spinbutton/dist/et-EE.mjs","../../../node_modules/@react-aria/spinbutton/dist/fi-FI.mjs","../../../node_modules/@react-aria/spinbutton/dist/fr-FR.mjs","../../../node_modules/@react-aria/spinbutton/dist/he-IL.mjs","../../../node_modules/@react-aria/spinbutton/dist/hr-HR.mjs","../../../node_modules/@react-aria/spinbutton/dist/hu-HU.mjs","../../../node_modules/@react-aria/spinbutton/dist/it-IT.mjs","../../../node_modules/@react-aria/spinbutton/dist/ja-JP.mjs","../../../node_modules/@react-aria/spinbutton/dist/ko-KR.mjs","../../../node_modules/@react-aria/spinbutton/dist/lt-LT.mjs","../../../node_modules/@react-aria/spinbutton/dist/lv-LV.mjs","../../../node_modules/@react-aria/spinbutton/dist/nb-NO.mjs","../../../node_modules/@react-aria/spinbutton/dist/nl-NL.mjs","../../../node_modules/@react-aria/spinbutton/dist/pl-PL.mjs","../../../node_modules/@react-aria/spinbutton/dist/pt-BR.mjs","../../../node_modules/@react-aria/spinbutton/dist/pt-PT.mjs","../../../node_modules/@react-aria/spinbutton/dist/ro-RO.mjs","../../../node_modules/@react-aria/spinbutton/dist/ru-RU.mjs","../../../node_modules/@react-aria/spinbutton/dist/sk-SK.mjs","../../../node_modules/@react-aria/spinbutton/dist/sl-SI.mjs","../../../node_modules/@react-aria/spinbutton/dist/sr-SP.mjs","../../../node_modules/@react-aria/spinbutton/dist/sv-SE.mjs","../../../node_modules/@react-aria/spinbutton/dist/tr-TR.mjs","../../../node_modules/@react-aria/spinbutton/dist/uk-UA.mjs","../../../node_modules/@react-aria/spinbutton/dist/zh-CN.mjs","../../../node_modules/@react-aria/spinbutton/dist/zh-TW.mjs","../../../node_modules/@react-aria/spinbutton/dist/intlStrings.mjs","../../../node_modules/@react-aria/live-announcer/dist/LiveAnnouncer.mjs","../../../node_modules/@react-aria/spinbutton/dist/useSpinButton.mjs","../../../node_modules/@react-aria/datepicker/dist/useDateSegment.mjs","../../../node_modules/classnames/index.js","../src/shared/FieldSegment.tsx","../src/shared/utils.ts","../src/DatePicker/DateField.tsx","../../../node_modules/@react-aria/calendar/dist/ar-AE.mjs","../../../node_modules/@react-aria/calendar/dist/bg-BG.mjs","../../../node_modules/@react-aria/calendar/dist/cs-CZ.mjs","../../../node_modules/@react-aria/calendar/dist/da-DK.mjs","../../../node_modules/@react-aria/calendar/dist/de-DE.mjs","../../../node_modules/@react-aria/calendar/dist/el-GR.mjs","../../../node_modules/@react-aria/calendar/dist/en-US.mjs","../../../node_modules/@react-aria/calendar/dist/es-ES.mjs","../../../node_modules/@react-aria/calendar/dist/et-EE.mjs","../../../node_modules/@react-aria/calendar/dist/fi-FI.mjs","../../../node_modules/@react-aria/calendar/dist/fr-FR.mjs","../../../node_modules/@react-aria/calendar/dist/he-IL.mjs","../../../node_modules/@react-aria/calendar/dist/hr-HR.mjs","../../../node_modules/@react-aria/calendar/dist/hu-HU.mjs","../../../node_modules/@react-aria/calendar/dist/it-IT.mjs","../../../node_modules/@react-aria/calendar/dist/ja-JP.mjs","../../../node_modules/@react-aria/calendar/dist/ko-KR.mjs","../../../node_modules/@react-aria/calendar/dist/lt-LT.mjs","../../../node_modules/@react-aria/calendar/dist/lv-LV.mjs","../../../node_modules/@react-aria/calendar/dist/nb-NO.mjs","../../../node_modules/@react-aria/calendar/dist/nl-NL.mjs","../../../node_modules/@react-aria/calendar/dist/pl-PL.mjs","../../../node_modules/@react-aria/calendar/dist/pt-BR.mjs","../../../node_modules/@react-aria/calendar/dist/pt-PT.mjs","../../../node_modules/@react-aria/calendar/dist/ro-RO.mjs","../../../node_modules/@react-aria/calendar/dist/ru-RU.mjs","../../../node_modules/@react-aria/calendar/dist/sk-SK.mjs","../../../node_modules/@react-aria/calendar/dist/sl-SI.mjs","../../../node_modules/@react-aria/calendar/dist/sr-SP.mjs","../../../node_modules/@react-aria/calendar/dist/sv-SE.mjs","../../../node_modules/@react-aria/calendar/dist/tr-TR.mjs","../../../node_modules/@react-aria/calendar/dist/uk-UA.mjs","../../../node_modules/@react-aria/calendar/dist/zh-CN.mjs","../../../node_modules/@react-aria/calendar/dist/zh-TW.mjs","../../../node_modules/@react-aria/calendar/dist/intlStrings.mjs","../../../node_modules/@react-aria/calendar/dist/utils.mjs","../../../node_modules/@react-aria/calendar/dist/useCalendarBase.mjs","../../../node_modules/@react-aria/calendar/dist/useCalendar.mjs","../../../node_modules/@react-aria/calendar/dist/useCalendarGrid.mjs","../../../node_modules/@react-aria/calendar/dist/useCalendarCell.mjs","../../../node_modules/@react-stately/calendar/dist/utils.mjs","../../../node_modules/@react-stately/calendar/dist/useCalendarState.mjs","../../../node_modules/@react-aria/button/dist/useButton.mjs","../src/shared/CalendarButton.tsx","../src/DatePicker/CalendarCell.tsx","../src/DatePicker/CalendarGrid.tsx","../src/DatePicker/Calendar.tsx","../../../node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs","../../../node_modules/@floating-ui/core/dist/floating-ui.core.mjs","../../../node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs","../../../node_modules/@floating-ui/react-dom/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs","../../../node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs","../../../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../../node_modules/@babel/runtime/helpers/esm/extends.js","../../../node_modules/prop-types/node_modules/react-is/cjs/react-is.production.min.js","../../../node_modules/prop-types/node_modules/react-is/cjs/react-is.development.js","../../../node_modules/prop-types/node_modules/react-is/index.js","../../../node_modules/object-assign/index.js","../../../node_modules/prop-types/lib/ReactPropTypesSecret.js","../../../node_modules/prop-types/lib/has.js","../../../node_modules/prop-types/checkPropTypes.js","../../../node_modules/prop-types/factoryWithTypeCheckers.js","../../../node_modules/prop-types/factoryWithThrowingShims.js","../../../node_modules/prop-types/index.js","../../../node_modules/focus-lock/dist/es2015/constants.js","../../../node_modules/use-callback-ref/dist/es2015/assignRef.js","../../../node_modules/use-callback-ref/dist/es2015/useRef.js","../../../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../../../node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../../../node_modules/use-sidecar/dist/es2015/medium.js","../../../node_modules/react-focus-lock/dist/es2015/medium.js","../../../node_modules/react-focus-lock/dist/es2015/scope.js","../../../node_modules/react-focus-lock/dist/es2015/Lock.js","../../../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../../node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","../../../node_modules/@babel/runtime/helpers/esm/typeof.js","../../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../../node_modules/react-clientside-effect/lib/index.es.js","../../../node_modules/focus-lock/dist/es2015/utils/array.js","../../../node_modules/focus-lock/dist/es2015/utils/is.js","../../../node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../../../node_modules/focus-lock/dist/es2015/utils/tabbables.js","../../../node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../../../node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../../../node_modules/focus-lock/dist/es2015/utils/all-affected.js","../../../node_modules/focus-lock/dist/es2015/utils/safe.js","../../../node_modules/focus-lock/dist/es2015/utils/getActiveElement.js","../../../node_modules/focus-lock/dist/es2015/focusInside.js","../../../node_modules/focus-lock/dist/es2015/focusIsHidden.js","../../../node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../../../node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../../../node_modules/focus-lock/dist/es2015/solver.js","../../../node_modules/focus-lock/dist/es2015/utils/auto-focus.js","../../../node_modules/focus-lock/dist/es2015/utils/parenting.js","../../../node_modules/focus-lock/dist/es2015/focusSolver.js","../../../node_modules/focus-lock/dist/es2015/focusables.js","../../../node_modules/focus-lock/dist/es2015/commands.js","../../../node_modules/focus-lock/dist/es2015/moveFocusInside.js","../../../node_modules/focus-lock/dist/es2015/return-focus.js","../../../node_modules/focus-lock/dist/es2015/sibling.js","../../../node_modules/react-focus-lock/dist/es2015/util.js","../../../node_modules/react-focus-lock/dist/es2015/Trap.js","../../../node_modules/react-focus-lock/dist/es2015/Combination.js","../src/DatePicker/DatePicker.tsx","../src/DatePicker/NativeDatePicker.tsx","../src/TimePicker/TimePickerArrowButton.tsx","../src/TimePicker/TimePicker.tsx","../src/TimePicker/NativeTimePicker.tsx","../src/TimePicker/SimpleTimePicker.tsx","../src/index.tsx"],"sourcesContent":["var $b3427c06585c22a0$exports = {};\n$b3427c06585c22a0$exports = {\n \"rangeOverflow\": (args)=>`\\u{64A}\\u{62C}\\u{628} \\u{623}\\u{646} \\u{62A}\\u{643}\\u{648}\\u{646} \\u{627}\\u{644}\\u{642}\\u{64A}\\u{645}\\u{629} ${args.maxValue} \\u{623}\\u{648} \\u{642}\\u{628}\\u{644} \\u{630}\\u{644}\\u{643}.`,\n \"rangeReversed\": `\\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E} \\u{627}\\u{644}\\u{628}\\u{62F}\\u{621} \\u{64A}\\u{62C}\\u{628} \\u{623}\\u{646} \\u{64A}\\u{643}\\u{648}\\u{646} \\u{642}\\u{628}\\u{644} \\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E} \\u{627}\\u{644}\\u{627}\\u{646}\\u{62A}\\u{647}\\u{627}\\u{621}.`,\n \"rangeUnderflow\": (args)=>`\\u{64A}\\u{62C}\\u{628} \\u{623}\\u{646} \\u{62A}\\u{643}\\u{648}\\u{646} \\u{627}\\u{644}\\u{642}\\u{64A}\\u{645}\\u{629} ${args.minValue} \\u{623}\\u{648} \\u{628}\\u{639}\\u{62F} \\u{630}\\u{644}\\u{643}.`,\n \"unavailableDate\": `\\u{627}\\u{644}\\u{628}\\u{64A}\\u{627}\\u{646}\\u{627}\\u{62A} \\u{627}\\u{644}\\u{645}\\u{62D}\\u{62F}\\u{62F}\\u{629} \\u{63A}\\u{64A}\\u{631} \\u{645}\\u{62A}\\u{627}\\u{62D}\\u{629}.`\n};\n\n\nexport {$b3427c06585c22a0$exports as default};\n//# sourceMappingURL=ar-AE.module.js.map\n","var $d282528f459122b9$exports = {};\n$d282528f459122b9$exports = {\n \"rangeOverflow\": (args)=>`\\u{421}\\u{442}\\u{43E}\\u{439}\\u{43D}\\u{43E}\\u{441}\\u{442}\\u{442}\\u{430} \\u{442}\\u{440}\\u{44F}\\u{431}\\u{432}\\u{430} \\u{434}\\u{430} \\u{435} ${args.maxValue} \\u{438}\\u{43B}\\u{438} \\u{43F}\\u{43E}-\\u{440}\\u{430}\\u{43D}\\u{43D}\\u{430}.`,\n \"rangeReversed\": `\\u{41D}\\u{430}\\u{447}\\u{430}\\u{43B}\\u{43D}\\u{430}\\u{442}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430} \\u{442}\\u{440}\\u{44F}\\u{431}\\u{432}\\u{430} \\u{434}\\u{430} \\u{435} \\u{43F}\\u{440}\\u{435}\\u{434}\\u{438} \\u{43A}\\u{440}\\u{430}\\u{439}\\u{43D}\\u{430}\\u{442}\\u{430}.`,\n \"rangeUnderflow\": (args)=>`\\u{421}\\u{442}\\u{43E}\\u{439}\\u{43D}\\u{43E}\\u{441}\\u{442}\\u{442}\\u{430} \\u{442}\\u{440}\\u{44F}\\u{431}\\u{432}\\u{430} \\u{434}\\u{430} \\u{435} ${args.minValue} \\u{438}\\u{43B}\\u{438} \\u{43F}\\u{43E}-\\u{43A}\\u{44A}\\u{441}\\u{43D}\\u{43E}.`,\n \"unavailableDate\": `\\u{418}\\u{437}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{430}\\u{442}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430} \\u{43D}\\u{435} \\u{435} \\u{43D}\\u{430}\\u{43B}\\u{438}\\u{447}\\u{43D}\\u{430}.`\n};\n\n\nexport {$d282528f459122b9$exports as default};\n//# sourceMappingURL=bg-BG.module.js.map\n","var $2d5eecd634a9ca45$exports = {};\n$2d5eecd634a9ca45$exports = {\n \"rangeOverflow\": (args)=>`Hodnota mus\\xed b\\xfdt ${args.maxValue} nebo d\\u{159}\\xedv\\u{11B}j\\u{161}\\xed.`,\n \"rangeReversed\": `Datum zah\\xe1jen\\xed mus\\xed p\\u{159}edch\\xe1zet datu ukon\\u{10D}en\\xed.`,\n \"rangeUnderflow\": (args)=>`Hodnota mus\\xed b\\xfdt ${args.minValue} nebo pozd\\u{11B}j\\u{161}\\xed.`,\n \"unavailableDate\": `Vybran\\xe9 datum nen\\xed k dispozici.`\n};\n\n\nexport {$2d5eecd634a9ca45$exports as default};\n//# sourceMappingURL=cs-CZ.module.js.map\n","var $c8e2288226c24a67$exports = {};\n$c8e2288226c24a67$exports = {\n \"rangeOverflow\": (args)=>`V\\xe6rdien skal v\\xe6re ${args.maxValue} eller tidligere.`,\n \"rangeReversed\": `Startdatoen skal v\\xe6re f\\xf8r slutdatoen.`,\n \"rangeUnderflow\": (args)=>`V\\xe6rdien skal v\\xe6re ${args.minValue} eller nyere.`,\n \"unavailableDate\": `Den valgte dato er ikke tilg\\xe6ngelig.`\n};\n\n\nexport {$c8e2288226c24a67$exports as default};\n//# sourceMappingURL=da-DK.module.js.map\n","var $6f5745e389c346d7$exports = {};\n$6f5745e389c346d7$exports = {\n \"rangeOverflow\": (args)=>`Der Wert muss ${args.maxValue} oder fr\\xfcher sein.`,\n \"rangeReversed\": `Das Startdatum muss vor dem Enddatum liegen.`,\n \"rangeUnderflow\": (args)=>`Der Wert muss ${args.minValue} oder sp\\xe4ter sein.`,\n \"unavailableDate\": `Das ausgew\\xe4hlte Datum ist nicht verf\\xfcgbar.`\n};\n\n\nexport {$6f5745e389c346d7$exports as default};\n//# sourceMappingURL=de-DE.module.js.map\n","var $8c882ccf4300d1da$exports = {};\n$8c882ccf4300d1da$exports = {\n \"rangeOverflow\": (args)=>`\\u{397} \\u{3C4}\\u{3B9}\\u{3BC}\\u{3AE} \\u{3C0}\\u{3C1}\\u{3AD}\\u{3C0}\\u{3B5}\\u{3B9} \\u{3BD}\\u{3B1} \\u{3B5}\\u{3AF}\\u{3BD}\\u{3B1}\\u{3B9} ${args.maxValue} \\u{3AE} \\u{3C0}\\u{3B1}\\u{3BB}\\u{3B1}\\u{3B9}\\u{3CC}\\u{3C4}\\u{3B5}\\u{3C1}\\u{3B7}.`,\n \"rangeReversed\": `\\u{397} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1} \\u{3AD}\\u{3BD}\\u{3B1}\\u{3C1}\\u{3BE}\\u{3B7}\\u{3C2} \\u{3C0}\\u{3C1}\\u{3AD}\\u{3C0}\\u{3B5}\\u{3B9} \\u{3BD}\\u{3B1} \\u{3B5}\\u{3AF}\\u{3BD}\\u{3B1}\\u{3B9} \\u{3C0}\\u{3C1}\\u{3B9}\\u{3BD} \\u{3B1}\\u{3C0}\\u{3CC} \\u{3C4}\\u{3B7}\\u{3BD} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1} \\u{3BB}\\u{3AE}\\u{3BE}\\u{3B7}\\u{3C2}.`,\n \"rangeUnderflow\": (args)=>`\\u{397} \\u{3C4}\\u{3B9}\\u{3BC}\\u{3AE} \\u{3C0}\\u{3C1}\\u{3AD}\\u{3C0}\\u{3B5}\\u{3B9} \\u{3BD}\\u{3B1} \\u{3B5}\\u{3AF}\\u{3BD}\\u{3B1}\\u{3B9} ${args.minValue} \\u{3AE} \\u{3BC}\\u{3B5}\\u{3C4}\\u{3B1}\\u{3B3}\\u{3B5}\\u{3BD}\\u{3AD}\\u{3C3}\\u{3C4}\\u{3B5}\\u{3C1}\\u{3B7}.`,\n \"unavailableDate\": `\\u{397} \\u{3B5}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3B5}\\u{3B3}\\u{3BC}\\u{3AD}\\u{3BD}\\u{3B7} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1} \\u{3B4}\\u{3B5}\\u{3BD} \\u{3B5}\\u{3AF}\\u{3BD}\\u{3B1}\\u{3B9} \\u{3B4}\\u{3B9}\\u{3B1}\\u{3B8}\\u{3AD}\\u{3C3}\\u{3B9}\\u{3BC}\\u{3B7}.`\n};\n\n\nexport {$8c882ccf4300d1da$exports as default};\n//# sourceMappingURL=el-GR.module.js.map\n","var $22195056771860be$exports = {};\n$22195056771860be$exports = {\n \"rangeUnderflow\": (args)=>`Value must be ${args.minValue} or later.`,\n \"rangeOverflow\": (args)=>`Value must be ${args.maxValue} or earlier.`,\n \"rangeReversed\": `Start date must be before end date.`,\n \"unavailableDate\": `Selected date unavailable.`\n};\n\n\nexport {$22195056771860be$exports as default};\n//# sourceMappingURL=en-US.module.js.map\n","var $cedfa43b4e2a5906$exports = {};\n$cedfa43b4e2a5906$exports = {\n \"rangeOverflow\": (args)=>`El valor debe ser ${args.maxValue} o anterior.`,\n \"rangeReversed\": `La fecha de inicio debe ser anterior a la fecha de finalizaci\\xf3n.`,\n \"rangeUnderflow\": (args)=>`El valor debe ser ${args.minValue} o posterior.`,\n \"unavailableDate\": `Fecha seleccionada no disponible.`\n};\n\n\nexport {$cedfa43b4e2a5906$exports as default};\n//# sourceMappingURL=es-ES.module.js.map\n","var $eeeaa8daee3601c7$exports = {};\n$eeeaa8daee3601c7$exports = {\n \"rangeOverflow\": (args)=>`V\\xe4\\xe4rtus peab olema ${args.maxValue} v\\xf5i varasem.`,\n \"rangeReversed\": `Alguskuup\\xe4ev peab olema enne l\\xf5ppkuup\\xe4eva.`,\n \"rangeUnderflow\": (args)=>`V\\xe4\\xe4rtus peab olema ${args.minValue} v\\xf5i hilisem.`,\n \"unavailableDate\": `Valitud kuup\\xe4ev pole saadaval.`\n};\n\n\nexport {$eeeaa8daee3601c7$exports as default};\n//# sourceMappingURL=et-EE.module.js.map\n","var $35e0614a49b3bb40$exports = {};\n$35e0614a49b3bb40$exports = {\n \"rangeOverflow\": (args)=>`Arvon on oltava ${args.maxValue} tai sit\\xe4 aikaisempi.`,\n \"rangeReversed\": `Aloitusp\\xe4iv\\xe4n on oltava ennen lopetusp\\xe4iv\\xe4\\xe4.`,\n \"rangeUnderflow\": (args)=>`Arvon on oltava ${args.minValue} tai sit\\xe4 my\\xf6h\\xe4isempi.`,\n \"unavailableDate\": `Valittu p\\xe4iv\\xe4m\\xe4\\xe4r\\xe4 ei ole k\\xe4ytett\\xe4viss\\xe4.`\n};\n\n\nexport {$35e0614a49b3bb40$exports as default};\n//# sourceMappingURL=fi-FI.module.js.map\n","var $929bc63f7705a78f$exports = {};\n$929bc63f7705a78f$exports = {\n \"rangeOverflow\": (args)=>`La valeur doit \\xeatre ${args.maxValue} ou ant\\xe9rieure.`,\n \"rangeReversed\": `La date de d\\xe9but doit \\xeatre ant\\xe9rieure \\xe0 la date de fin.`,\n \"rangeUnderflow\": (args)=>`La valeur doit \\xeatre ${args.minValue} ou ult\\xe9rieure.`,\n \"unavailableDate\": `La date s\\xe9lectionn\\xe9e n\\u{2019}est pas disponible.`\n};\n\n\nexport {$929bc63f7705a78f$exports as default};\n//# sourceMappingURL=fr-FR.module.js.map\n","var $9a28d073b034d183$exports = {};\n$9a28d073b034d183$exports = {\n \"rangeOverflow\": (args)=>`\\u{5D4}\\u{5E2}\\u{5E8}\\u{5DA} \\u{5D7}\\u{5D9}\\u{5D9}\\u{5D1} \\u{5DC}\\u{5D4}\\u{5D9}\\u{5D5}\\u{5EA} ${args.maxValue} \\u{5D0}\\u{5D5} \\u{5DE}\\u{5D5}\\u{5E7}\\u{5D3}\\u{5DD} \\u{5D9}\\u{5D5}\\u{5EA}\\u{5E8}.`,\n \"rangeReversed\": `\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5D4}\\u{5D4}\\u{5EA}\\u{5D7}\\u{5DC}\\u{5D4} \\u{5D7}\\u{5D9}\\u{5D9}\\u{5D1} \\u{5DC}\\u{5D4}\\u{5D9}\\u{5D5}\\u{5EA} \\u{5DC}\\u{5E4}\\u{5E0}\\u{5D9} \\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5D4}\\u{5E1}\\u{5D9}\\u{5D5}\\u{5DD}.`,\n \"rangeUnderflow\": (args)=>`\\u{5D4}\\u{5E2}\\u{5E8}\\u{5DA} \\u{5D7}\\u{5D9}\\u{5D9}\\u{5D1} \\u{5DC}\\u{5D4}\\u{5D9}\\u{5D5}\\u{5EA} ${args.minValue} \\u{5D0}\\u{5D5} \\u{5DE}\\u{5D0}\\u{5D5}\\u{5D7}\\u{5E8} \\u{5D9}\\u{5D5}\\u{5EA}\\u{5E8}.`,\n \"unavailableDate\": `\\u{5D4}\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5D4}\\u{5E0}\\u{5D1}\\u{5D7}\\u{5E8} \\u{5D0}\\u{5D9}\\u{5E0}\\u{5D5} \\u{5D6}\\u{5DE}\\u{5D9}\\u{5DF}.`\n};\n\n\nexport {$9a28d073b034d183$exports as default};\n//# sourceMappingURL=he-IL.module.js.map\n","var $7743e79780ebcca3$exports = {};\n$7743e79780ebcca3$exports = {\n \"rangeOverflow\": (args)=>`Vrijednost mora biti ${args.maxValue} ili ranije.`,\n \"rangeReversed\": `Datum po\\u{10D}etka mora biti prije datuma zavr\\u{161}etka.`,\n \"rangeUnderflow\": (args)=>`Vrijednost mora biti ${args.minValue} ili kasnije.`,\n \"unavailableDate\": `Odabrani datum nije dostupan.`\n};\n\n\nexport {$7743e79780ebcca3$exports as default};\n//# sourceMappingURL=hr-HR.module.js.map\n","var $3351817a04898858$exports = {};\n$3351817a04898858$exports = {\n \"rangeOverflow\": (args)=>`Az \\xe9rt\\xe9knek ${args.maxValue} vagy kor\\xe1bbinak kell lennie.`,\n \"rangeReversed\": `A kezd\\u{151} d\\xe1tumnak a befejez\\u{151} d\\xe1tumn\\xe1l kor\\xe1bbinak kell lennie.`,\n \"rangeUnderflow\": (args)=>`Az \\xe9rt\\xe9knek ${args.minValue} vagy k\\xe9s\\u{151}bbinek kell lennie.`,\n \"unavailableDate\": `A kiv\\xe1lasztott d\\xe1tum nem \\xe9rhet\\u{151} el.`\n};\n\n\nexport {$3351817a04898858$exports as default};\n//# sourceMappingURL=hu-HU.module.js.map\n","var $4120bdb1d03484db$exports = {};\n$4120bdb1d03484db$exports = {\n \"rangeOverflow\": (args)=>`Il valore deve essere ${args.maxValue} o precedente.`,\n \"rangeReversed\": `La data di inizio deve essere antecedente alla data di fine.`,\n \"rangeUnderflow\": (args)=>`Il valore deve essere ${args.minValue} o successivo.`,\n \"unavailableDate\": `Data selezionata non disponibile.`\n};\n\n\nexport {$4120bdb1d03484db$exports as default};\n//# sourceMappingURL=it-IT.module.js.map\n","var $65e5e1569f34ea4f$exports = {};\n$65e5e1569f34ea4f$exports = {\n \"rangeOverflow\": (args)=>`\\u{5024}\\u{306F} ${args.maxValue} \\u{4EE5}\\u{4E0B}\\u{306B}\\u{3059}\\u{308B}\\u{5FC5}\\u{8981}\\u{304C}\\u{3042}\\u{308A}\\u{307E}\\u{3059}\\u{3002}`,\n \"rangeReversed\": `\\u{958B}\\u{59CB}\\u{65E5}\\u{306F}\\u{7D42}\\u{4E86}\\u{65E5}\\u{3088}\\u{308A}\\u{524D}\\u{306B}\\u{3059}\\u{308B}\\u{5FC5}\\u{8981}\\u{304C}\\u{3042}\\u{308A}\\u{307E}\\u{3059}\\u{3002}`,\n \"rangeUnderflow\": (args)=>`\\u{5024}\\u{306F} ${args.minValue} \\u{4EE5}\\u{4E0A}\\u{306B}\\u{3059}\\u{308B}\\u{5FC5}\\u{8981}\\u{304C}\\u{3042}\\u{308A}\\u{307E}\\u{3059}\\u{3002}`,\n \"unavailableDate\": `\\u{9078}\\u{629E}\\u{3057}\\u{305F}\\u{65E5}\\u{4ED8}\\u{306F}\\u{4F7F}\\u{7528}\\u{3067}\\u{304D}\\u{307E}\\u{305B}\\u{3093}\\u{3002}`\n};\n\n\nexport {$65e5e1569f34ea4f$exports as default};\n//# sourceMappingURL=ja-JP.module.js.map\n","var $d34552a7550967e7$exports = {};\n$d34552a7550967e7$exports = {\n \"rangeOverflow\": (args)=>`\\u{AC12}\\u{C740} ${args.maxValue} \\u{C774}\\u{C804}\\u{C774}\\u{C5B4}\\u{C57C} \\u{D569}\\u{B2C8}\\u{B2E4}.`,\n \"rangeReversed\": `\\u{C2DC}\\u{C791}\\u{C77C}\\u{C740} \\u{C885}\\u{B8CC}\\u{C77C} \\u{C774}\\u{C804}\\u{C774}\\u{C5B4}\\u{C57C} \\u{D569}\\u{B2C8}\\u{B2E4}.`,\n \"rangeUnderflow\": (args)=>`\\u{AC12}\\u{C740} ${args.minValue} \\u{C774}\\u{C0C1}\\u{C774}\\u{C5B4}\\u{C57C} \\u{D569}\\u{B2C8}\\u{B2E4}.`,\n \"unavailableDate\": `\\u{C120}\\u{D0DD}\\u{D55C} \\u{B0A0}\\u{C9DC}\\u{B97C} \\u{C0AC}\\u{C6A9}\\u{D560} \\u{C218} \\u{C5C6}\\u{C2B5}\\u{B2C8}\\u{B2E4}.`\n};\n\n\nexport {$d34552a7550967e7$exports as default};\n//# sourceMappingURL=ko-KR.module.js.map\n","var $8f855bffe63f6eca$exports = {};\n$8f855bffe63f6eca$exports = {\n \"rangeOverflow\": (args)=>`Reik\\u{161}m\\u{117} turi b\\u{16B}ti ${args.maxValue} arba ankstesn\\u{117}.`,\n \"rangeReversed\": `Prad\\u{17E}ios data turi b\\u{16B}ti ankstesn\\u{117} nei pabaigos data.`,\n \"rangeUnderflow\": (args)=>`Reik\\u{161}m\\u{117} turi b\\u{16B}ti ${args.minValue} arba naujesn\\u{117}.`,\n \"unavailableDate\": `Pasirinkta data nepasiekiama.`\n};\n\n\nexport {$8f855bffe63f6eca$exports as default};\n//# sourceMappingURL=lt-LT.module.js.map\n","var $ce40f46d09034645$exports = {};\n$ce40f46d09034645$exports = {\n \"rangeOverflow\": (args)=>`V\\u{113}rt\\u{12B}bai ir j\\u{101}b\\u{16B}t ${args.maxValue} vai agr\\u{101}kai.`,\n \"rangeReversed\": `S\\u{101}kuma datumam ir j\\u{101}b\\u{16B}t pirms beigu datuma.`,\n \"rangeUnderflow\": (args)=>`V\\u{113}rt\\u{12B}bai ir j\\u{101}b\\u{16B}t ${args.minValue} vai v\\u{113}l\\u{101}kai.`,\n \"unavailableDate\": `Atlas\\u{12B}tais datums nav pieejams.`\n};\n\n\nexport {$ce40f46d09034645$exports as default};\n//# sourceMappingURL=lv-LV.module.js.map\n","var $dd1a9a73340c793e$exports = {};\n$dd1a9a73340c793e$exports = {\n \"rangeOverflow\": (args)=>`Verdien m\\xe5 v\\xe6re ${args.maxValue} eller tidligere.`,\n \"rangeReversed\": `Startdatoen m\\xe5 v\\xe6re f\\xf8r sluttdatoen.`,\n \"rangeUnderflow\": (args)=>`Verdien m\\xe5 v\\xe6re ${args.minValue} eller senere.`,\n \"unavailableDate\": `Valgt dato utilgjengelig.`\n};\n\n\nexport {$dd1a9a73340c793e$exports as default};\n//# sourceMappingURL=nb-NO.module.js.map\n","var $4ee1fb3f0cbe6f59$exports = {};\n$4ee1fb3f0cbe6f59$exports = {\n \"rangeOverflow\": (args)=>`Waarde moet ${args.maxValue} of eerder zijn.`,\n \"rangeReversed\": `De startdatum moet voor de einddatum liggen.`,\n \"rangeUnderflow\": (args)=>`Waarde moet ${args.minValue} of later zijn.`,\n \"unavailableDate\": `Geselecteerde datum niet beschikbaar.`\n};\n\n\nexport {$4ee1fb3f0cbe6f59$exports as default};\n//# sourceMappingURL=nl-NL.module.js.map\n","var $c85829aebb0bc94b$exports = {};\n$c85829aebb0bc94b$exports = {\n \"rangeOverflow\": (args)=>`Warto\\u{15B}\\u{107} musi mie\\u{107} warto\\u{15B}\\u{107} ${args.maxValue} lub wcze\\u{15B}niejsz\\u{105}.`,\n \"rangeReversed\": `Data rozpocz\\u{119}cia musi by\\u{107} wcze\\u{15B}niejsza ni\\u{17C} data zako\\u{144}czenia.`,\n \"rangeUnderflow\": (args)=>`Warto\\u{15B}\\u{107} musi mie\\u{107} warto\\u{15B}\\u{107} ${args.minValue} lub p\\xf3\\u{17A}niejsz\\u{105}.`,\n \"unavailableDate\": `Wybrana data jest niedost\\u{119}pna.`\n};\n\n\nexport {$c85829aebb0bc94b$exports as default};\n//# sourceMappingURL=pl-PL.module.js.map\n","var $27f5cd2291ca8a02$exports = {};\n$27f5cd2291ca8a02$exports = {\n \"rangeOverflow\": (args)=>`O valor deve ser ${args.maxValue} ou anterior.`,\n \"rangeReversed\": `A data inicial deve ser anterior \\xe0 data final.`,\n \"rangeUnderflow\": (args)=>`O valor deve ser ${args.minValue} ou posterior.`,\n \"unavailableDate\": `Data selecionada indispon\\xedvel.`\n};\n\n\nexport {$27f5cd2291ca8a02$exports as default};\n//# sourceMappingURL=pt-BR.module.js.map\n","var $e046fdccd69bea8e$exports = {};\n$e046fdccd69bea8e$exports = {\n \"rangeOverflow\": (args)=>`O valor tem de ser ${args.maxValue} ou anterior.`,\n \"rangeReversed\": `A data de in\\xedcio deve ser anterior \\xe0 data de fim.`,\n \"rangeUnderflow\": (args)=>`O valor tem de ser ${args.minValue} ou posterior.`,\n \"unavailableDate\": `Data selecionada indispon\\xedvel.`\n};\n\n\nexport {$e046fdccd69bea8e$exports as default};\n//# sourceMappingURL=pt-PT.module.js.map\n","var $fa5f88e804986547$exports = {};\n$fa5f88e804986547$exports = {\n \"rangeOverflow\": (args)=>`Valoarea trebuie s\\u{103} fie ${args.maxValue} sau anterioar\\u{103}.`,\n \"rangeReversed\": `Data de \\xeenceput trebuie s\\u{103} fie anterioar\\u{103} datei de sf\\xe2r\\u{219}it.`,\n \"rangeUnderflow\": (args)=>`Valoarea trebuie s\\u{103} fie ${args.minValue} sau ulterioar\\u{103}.`,\n \"unavailableDate\": `Data selectat\\u{103} nu este disponibil\\u{103}.`\n};\n\n\nexport {$fa5f88e804986547$exports as default};\n//# sourceMappingURL=ro-RO.module.js.map\n","var $28e4714602d1b568$exports = {};\n$28e4714602d1b568$exports = {\n \"rangeOverflow\": (args)=>`\\u{417}\\u{43D}\\u{430}\\u{447}\\u{435}\\u{43D}\\u{438}\\u{435} \\u{434}\\u{43E}\\u{43B}\\u{436}\\u{43D}\\u{43E} \\u{431}\\u{44B}\\u{442}\\u{44C} \\u{43D}\\u{435} \\u{43F}\\u{43E}\\u{437}\\u{436}\\u{435} ${args.maxValue}.`,\n \"rangeReversed\": `\\u{414}\\u{430}\\u{442}\\u{430} \\u{43D}\\u{430}\\u{447}\\u{430}\\u{43B}\\u{430} \\u{434}\\u{43E}\\u{43B}\\u{436}\\u{43D}\\u{430} \\u{43F}\\u{440}\\u{435}\\u{434}\\u{448}\\u{435}\\u{441}\\u{442}\\u{432}\\u{43E}\\u{432}\\u{430}\\u{442}\\u{44C} \\u{434}\\u{430}\\u{442}\\u{435} \\u{43E}\\u{43A}\\u{43E}\\u{43D}\\u{447}\\u{430}\\u{43D}\\u{438}\\u{44F}.`,\n \"rangeUnderflow\": (args)=>`\\u{417}\\u{43D}\\u{430}\\u{447}\\u{435}\\u{43D}\\u{438}\\u{435} \\u{434}\\u{43E}\\u{43B}\\u{436}\\u{43D}\\u{43E} \\u{431}\\u{44B}\\u{442}\\u{44C} \\u{43D}\\u{435} \\u{440}\\u{430}\\u{43D}\\u{44C}\\u{448}\\u{435} ${args.minValue}.`,\n \"unavailableDate\": `\\u{412}\\u{44B}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43D}\\u{430}\\u{44F} \\u{434}\\u{430}\\u{442}\\u{430} \\u{43D}\\u{435}\\u{434}\\u{43E}\\u{441}\\u{442}\\u{443}\\u{43F}\\u{43D}\\u{430}.`\n};\n\n\nexport {$28e4714602d1b568$exports as default};\n//# sourceMappingURL=ru-RU.module.js.map\n","var $4e3bc8cf783ad569$exports = {};\n$4e3bc8cf783ad569$exports = {\n \"rangeOverflow\": (args)=>`Hodnota mus\\xed by\\u{165} ${args.maxValue} alebo skor\\u{161}ia.`,\n \"rangeReversed\": `D\\xe1tum za\\u{10D}iatku mus\\xed by\\u{165} skor\\u{161}\\xed ako d\\xe1tum konca.`,\n \"rangeUnderflow\": (args)=>`Hodnota mus\\xed by\\u{165} ${args.minValue} alebo neskor\\u{161}ia.`,\n \"unavailableDate\": `Vybrat\\xfd d\\xe1tum je nedostupn\\xfd.`\n};\n\n\nexport {$4e3bc8cf783ad569$exports as default};\n//# sourceMappingURL=sk-SK.module.js.map\n","var $bee07513333bdc15$exports = {};\n$bee07513333bdc15$exports = {\n \"rangeOverflow\": (args)=>`Vrednost mora biti ${args.maxValue} ali starej\\u{161}a.`,\n \"rangeReversed\": `Za\\u{10D}etni datum mora biti pred kon\\u{10D}nim datumom.`,\n \"rangeUnderflow\": (args)=>`Vrednost mora biti ${args.minValue} ali novej\\u{161}a.`,\n \"unavailableDate\": `Izbrani datum ni na voljo.`\n};\n\n\nexport {$bee07513333bdc15$exports as default};\n//# sourceMappingURL=sl-SI.module.js.map\n","var $7ed9c6fad16a15ec$exports = {};\n$7ed9c6fad16a15ec$exports = {\n \"rangeOverflow\": (args)=>`Vrednost mora da bude ${args.maxValue} ili starija.`,\n \"rangeReversed\": `Datum po\\u{10D}etka mora biti pre datuma zavr\\u{161}etka.`,\n \"rangeUnderflow\": (args)=>`Vrednost mora da bude ${args.minValue} ili novija.`,\n \"unavailableDate\": `Izabrani datum nije dostupan.`\n};\n\n\nexport {$7ed9c6fad16a15ec$exports as default};\n//# sourceMappingURL=sr-SP.module.js.map\n","var $8bef6d5a236de86c$exports = {};\n$8bef6d5a236de86c$exports = {\n \"rangeOverflow\": (args)=>`V\\xe4rdet m\\xe5ste vara ${args.maxValue} eller tidigare.`,\n \"rangeReversed\": `Startdatumet m\\xe5ste vara f\\xf6re slutdatumet.`,\n \"rangeUnderflow\": (args)=>`V\\xe4rdet m\\xe5ste vara ${args.minValue} eller senare.`,\n \"unavailableDate\": `Det valda datumet \\xe4r inte tillg\\xe4ngligt.`\n};\n\n\nexport {$8bef6d5a236de86c$exports as default};\n//# sourceMappingURL=sv-SE.module.js.map\n","var $098b9a2d2340cfc5$exports = {};\n$098b9a2d2340cfc5$exports = {\n \"rangeOverflow\": (args)=>`De\\u{11F}er, ${args.maxValue} veya \\xf6ncesi olmal\\u{131}d\\u{131}r.`,\n \"rangeReversed\": `Ba\\u{15F}lang\\u{131}\\xe7 tarihi biti\\u{15F} tarihinden \\xf6nce olmal\\u{131}d\\u{131}r.`,\n \"rangeUnderflow\": (args)=>`De\\u{11F}er, ${args.minValue} veya sonras\\u{131} olmal\\u{131}d\\u{131}r.`,\n \"unavailableDate\": `Se\\xe7ilen tarih kullan\\u{131}lam\\u{131}yor.`\n};\n\n\nexport {$098b9a2d2340cfc5$exports as default};\n//# sourceMappingURL=tr-TR.module.js.map\n","var $54a862ea7fad7419$exports = {};\n$54a862ea7fad7419$exports = {\n \"rangeOverflow\": (args)=>`\\u{417}\\u{43D}\\u{430}\\u{447}\\u{435}\\u{43D}\\u{43D}\\u{44F} \\u{43C}\\u{430}\\u{454} \\u{431}\\u{443}\\u{442}\\u{438} \\u{43D}\\u{435} \\u{43F}\\u{456}\\u{437}\\u{43D}\\u{456}\\u{448}\\u{435} ${args.maxValue}.`,\n \"rangeReversed\": `\\u{414}\\u{430}\\u{442}\\u{430} \\u{43F}\\u{43E}\\u{447}\\u{430}\\u{442}\\u{43A}\\u{443} \\u{43C}\\u{430}\\u{454} \\u{43F}\\u{435}\\u{440}\\u{435}\\u{434}\\u{443}\\u{432}\\u{430}\\u{442}\\u{438} \\u{434}\\u{430}\\u{442}\\u{456} \\u{437}\\u{430}\\u{432}\\u{435}\\u{440}\\u{448}\\u{435}\\u{43D}\\u{43D}\\u{44F}.`,\n \"rangeUnderflow\": (args)=>`\\u{417}\\u{43D}\\u{430}\\u{447}\\u{435}\\u{43D}\\u{43D}\\u{44F} \\u{43C}\\u{430}\\u{454} \\u{431}\\u{443}\\u{442}\\u{438} \\u{43D}\\u{435} \\u{440}\\u{430}\\u{43D}\\u{456}\\u{448}\\u{435} ${args.minValue}.`,\n \"unavailableDate\": `\\u{412}\\u{438}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430} \\u{43D}\\u{435}\\u{434}\\u{43E}\\u{441}\\u{442}\\u{443}\\u{43F}\\u{43D}\\u{430}.`\n};\n\n\nexport {$54a862ea7fad7419$exports as default};\n//# sourceMappingURL=uk-UA.module.js.map\n","var $e6cc491d590dfda5$exports = {};\n$e6cc491d590dfda5$exports = {\n \"rangeOverflow\": (args)=>`\\u{503C}\\u{5FC5}\\u{987B}\\u{662F} ${args.maxValue} \\u{6216}\\u{66F4}\\u{65E9}\\u{65E5}\\u{671F}\\u{3002}`,\n \"rangeReversed\": `\\u{5F00}\\u{59CB}\\u{65E5}\\u{671F}\\u{5FC5}\\u{987B}\\u{65E9}\\u{4E8E}\\u{7ED3}\\u{675F}\\u{65E5}\\u{671F}\\u{3002}`,\n \"rangeUnderflow\": (args)=>`\\u{503C}\\u{5FC5}\\u{987B}\\u{662F} ${args.minValue} \\u{6216}\\u{66F4}\\u{665A}\\u{65E5}\\u{671F}\\u{3002}`,\n \"unavailableDate\": `\\u{6240}\\u{9009}\\u{65E5}\\u{671F}\\u{4E0D}\\u{53EF}\\u{7528}\\u{3002}`\n};\n\n\nexport {$e6cc491d590dfda5$exports as default};\n//# sourceMappingURL=zh-CN.module.js.map\n","var $9aebf53181a474bd$exports = {};\n$9aebf53181a474bd$exports = {\n \"rangeOverflow\": (args)=>`\\u{503C}\\u{5FC5}\\u{9808}\\u{662F} ${args.maxValue} \\u{6216}\\u{66F4}\\u{65E9}\\u{3002}`,\n \"rangeReversed\": `\\u{958B}\\u{59CB}\\u{65E5}\\u{671F}\\u{5FC5}\\u{9808}\\u{5728}\\u{7D50}\\u{675F}\\u{65E5}\\u{671F}\\u{4E4B}\\u{524D}\\u{3002}`,\n \"rangeUnderflow\": (args)=>`\\u{503C}\\u{5FC5}\\u{9808}\\u{662F} ${args.minValue} \\u{6216}\\u{66F4}\\u{665A}\\u{3002}`,\n \"unavailableDate\": `\\u{6240}\\u{9078}\\u{65E5}\\u{671F}\\u{7121}\\u{6CD5}\\u{4F7F}\\u{7528}\\u{3002}`\n};\n\n\nexport {$9aebf53181a474bd$exports as default};\n//# sourceMappingURL=zh-TW.module.js.map\n","import $umoiH$arAEmodulejs from \"./ar-AE.mjs\";\nimport $umoiH$bgBGmodulejs from \"./bg-BG.mjs\";\nimport $umoiH$csCZmodulejs from \"./cs-CZ.mjs\";\nimport $umoiH$daDKmodulejs from \"./da-DK.mjs\";\nimport $umoiH$deDEmodulejs from \"./de-DE.mjs\";\nimport $umoiH$elGRmodulejs from \"./el-GR.mjs\";\nimport $umoiH$enUSmodulejs from \"./en-US.mjs\";\nimport $umoiH$esESmodulejs from \"./es-ES.mjs\";\nimport $umoiH$etEEmodulejs from \"./et-EE.mjs\";\nimport $umoiH$fiFImodulejs from \"./fi-FI.mjs\";\nimport $umoiH$frFRmodulejs from \"./fr-FR.mjs\";\nimport $umoiH$heILmodulejs from \"./he-IL.mjs\";\nimport $umoiH$hrHRmodulejs from \"./hr-HR.mjs\";\nimport $umoiH$huHUmodulejs from \"./hu-HU.mjs\";\nimport $umoiH$itITmodulejs from \"./it-IT.mjs\";\nimport $umoiH$jaJPmodulejs from \"./ja-JP.mjs\";\nimport $umoiH$koKRmodulejs from \"./ko-KR.mjs\";\nimport $umoiH$ltLTmodulejs from \"./lt-LT.mjs\";\nimport $umoiH$lvLVmodulejs from \"./lv-LV.mjs\";\nimport $umoiH$nbNOmodulejs from \"./nb-NO.mjs\";\nimport $umoiH$nlNLmodulejs from \"./nl-NL.mjs\";\nimport $umoiH$plPLmodulejs from \"./pl-PL.mjs\";\nimport $umoiH$ptBRmodulejs from \"./pt-BR.mjs\";\nimport $umoiH$ptPTmodulejs from \"./pt-PT.mjs\";\nimport $umoiH$roROmodulejs from \"./ro-RO.mjs\";\nimport $umoiH$ruRUmodulejs from \"./ru-RU.mjs\";\nimport $umoiH$skSKmodulejs from \"./sk-SK.mjs\";\nimport $umoiH$slSImodulejs from \"./sl-SI.mjs\";\nimport $umoiH$srSPmodulejs from \"./sr-SP.mjs\";\nimport $umoiH$svSEmodulejs from \"./sv-SE.mjs\";\nimport $umoiH$trTRmodulejs from \"./tr-TR.mjs\";\nimport $umoiH$ukUAmodulejs from \"./uk-UA.mjs\";\nimport $umoiH$zhCNmodulejs from \"./zh-CN.mjs\";\nimport $umoiH$zhTWmodulejs from \"./zh-TW.mjs\";\n\nvar $452ac34de8c2444e$exports = {};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$452ac34de8c2444e$exports = {\n \"ar-AE\": $umoiH$arAEmodulejs,\n \"bg-BG\": $umoiH$bgBGmodulejs,\n \"cs-CZ\": $umoiH$csCZmodulejs,\n \"da-DK\": $umoiH$daDKmodulejs,\n \"de-DE\": $umoiH$deDEmodulejs,\n \"el-GR\": $umoiH$elGRmodulejs,\n \"en-US\": $umoiH$enUSmodulejs,\n \"es-ES\": $umoiH$esESmodulejs,\n \"et-EE\": $umoiH$etEEmodulejs,\n \"fi-FI\": $umoiH$fiFImodulejs,\n \"fr-FR\": $umoiH$frFRmodulejs,\n \"he-IL\": $umoiH$heILmodulejs,\n \"hr-HR\": $umoiH$hrHRmodulejs,\n \"hu-HU\": $umoiH$huHUmodulejs,\n \"it-IT\": $umoiH$itITmodulejs,\n \"ja-JP\": $umoiH$jaJPmodulejs,\n \"ko-KR\": $umoiH$koKRmodulejs,\n \"lt-LT\": $umoiH$ltLTmodulejs,\n \"lv-LV\": $umoiH$lvLVmodulejs,\n \"nb-NO\": $umoiH$nbNOmodulejs,\n \"nl-NL\": $umoiH$nlNLmodulejs,\n \"pl-PL\": $umoiH$plPLmodulejs,\n \"pt-BR\": $umoiH$ptBRmodulejs,\n \"pt-PT\": $umoiH$ptPTmodulejs,\n \"ro-RO\": $umoiH$roROmodulejs,\n \"ru-RU\": $umoiH$ruRUmodulejs,\n \"sk-SK\": $umoiH$skSKmodulejs,\n \"sl-SI\": $umoiH$slSImodulejs,\n \"sr-SP\": $umoiH$srSPmodulejs,\n \"sv-SE\": $umoiH$svSEmodulejs,\n \"tr-TR\": $umoiH$trTRmodulejs,\n \"uk-UA\": $umoiH$ukUAmodulejs,\n \"zh-CN\": $umoiH$zhCNmodulejs,\n \"zh-TW\": $umoiH$zhTWmodulejs\n};\n\n\nexport {$452ac34de8c2444e$exports as default};\n//# sourceMappingURL=intlStrings.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $2b4dce13dd5a17fa$export$842a2cf37af977e1(amount, numerator) {\n return amount - numerator * Math.floor(amount / numerator);\n}\n\n\nexport {$2b4dce13dd5a17fa$export$842a2cf37af977e1 as mod};\n//# sourceMappingURL=utils.module.js.map\n","import {CalendarDate as $35ea8db9cb2ccb90$export$99faa760c7908e4f} from \"./CalendarDate.mjs\";\nimport {mod as $2b4dce13dd5a17fa$export$842a2cf37af977e1} from \"./utils.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from ICU.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\n\nconst $3b62074eb05584b2$var$EPOCH = 1721426; // 001/01/03 Julian C.E.\nfunction $3b62074eb05584b2$export$f297eb839006d339(era, year, month, day) {\n year = $3b62074eb05584b2$export$c36e0ecb2d4fa69d(era, year);\n let y1 = year - 1;\n let monthOffset = -2;\n if (month <= 2) monthOffset = 0;\n else if ($3b62074eb05584b2$export$553d7fa8e3805fc0(year)) monthOffset = -1;\n return $3b62074eb05584b2$var$EPOCH - 1 + 365 * y1 + Math.floor(y1 / 4) - Math.floor(y1 / 100) + Math.floor(y1 / 400) + Math.floor((367 * month - 362) / 12 + monthOffset + day);\n}\nfunction $3b62074eb05584b2$export$553d7fa8e3805fc0(year) {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n}\nfunction $3b62074eb05584b2$export$c36e0ecb2d4fa69d(era, year) {\n return era === 'BC' ? 1 - year : year;\n}\nfunction $3b62074eb05584b2$export$4475b7e617eb123c(year) {\n let era = 'AD';\n if (year <= 0) {\n era = 'BC';\n year = 1 - year;\n }\n return [\n era,\n year\n ];\n}\nconst $3b62074eb05584b2$var$daysInMonth = {\n standard: [\n 31,\n 28,\n 31,\n 30,\n 31,\n 30,\n 31,\n 31,\n 30,\n 31,\n 30,\n 31\n ],\n leapyear: [\n 31,\n 29,\n 31,\n 30,\n 31,\n 30,\n 31,\n 31,\n 30,\n 31,\n 30,\n 31\n ]\n};\nclass $3b62074eb05584b2$export$80ee6245ec4f29ec {\n fromJulianDay(jd) {\n let jd0 = jd;\n let depoch = jd0 - $3b62074eb05584b2$var$EPOCH;\n let quadricent = Math.floor(depoch / 146097);\n let dqc = (0, $2b4dce13dd5a17fa$export$842a2cf37af977e1)(depoch, 146097);\n let cent = Math.floor(dqc / 36524);\n let dcent = (0, $2b4dce13dd5a17fa$export$842a2cf37af977e1)(dqc, 36524);\n let quad = Math.floor(dcent / 1461);\n let dquad = (0, $2b4dce13dd5a17fa$export$842a2cf37af977e1)(dcent, 1461);\n let yindex = Math.floor(dquad / 365);\n let extendedYear = quadricent * 400 + cent * 100 + quad * 4 + yindex + (cent !== 4 && yindex !== 4 ? 1 : 0);\n let [era, year] = $3b62074eb05584b2$export$4475b7e617eb123c(extendedYear);\n let yearDay = jd0 - $3b62074eb05584b2$export$f297eb839006d339(era, year, 1, 1);\n let leapAdj = 2;\n if (jd0 < $3b62074eb05584b2$export$f297eb839006d339(era, year, 3, 1)) leapAdj = 0;\n else if ($3b62074eb05584b2$export$553d7fa8e3805fc0(year)) leapAdj = 1;\n let month = Math.floor(((yearDay + leapAdj) * 12 + 373) / 367);\n let day = jd0 - $3b62074eb05584b2$export$f297eb839006d339(era, year, month, 1) + 1;\n return new (0, $35ea8db9cb2ccb90$export$99faa760c7908e4f)(era, year, month, day);\n }\n toJulianDay(date) {\n return $3b62074eb05584b2$export$f297eb839006d339(date.era, date.year, date.month, date.day);\n }\n getDaysInMonth(date) {\n return $3b62074eb05584b2$var$daysInMonth[$3b62074eb05584b2$export$553d7fa8e3805fc0(date.year) ? 'leapyear' : 'standard'][date.month - 1];\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getMonthsInYear(date) {\n return 12;\n }\n getDaysInYear(date) {\n return $3b62074eb05584b2$export$553d7fa8e3805fc0(date.year) ? 366 : 365;\n }\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n getYearsInEra(date) {\n return 9999;\n }\n getEras() {\n return [\n 'BC',\n 'AD'\n ];\n }\n isInverseEra(date) {\n return date.era === 'BC';\n }\n balanceDate(date) {\n if (date.year <= 0) {\n date.era = date.era === 'BC' ? 'AD' : 'BC';\n date.year = 1 - date.year;\n }\n }\n constructor(){\n this.identifier = 'gregory';\n }\n}\n\n\nexport {$3b62074eb05584b2$export$f297eb839006d339 as gregorianToJulianDay, $3b62074eb05584b2$export$c36e0ecb2d4fa69d as getExtendedYear, $3b62074eb05584b2$export$553d7fa8e3805fc0 as isLeapYear, $3b62074eb05584b2$export$4475b7e617eb123c as fromExtendedYear, $3b62074eb05584b2$export$80ee6245ec4f29ec as GregorianCalendar};\n//# sourceMappingURL=GregorianCalendar.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Data from https://github.com/unicode-cldr/cldr-core/blob/master/supplemental/weekData.json\n// Locales starting on Sunday have been removed for compression.\nconst $2fe286d2fb449abb$export$7a5acbd77d414bd9 = {\n '001': 1,\n AD: 1,\n AE: 6,\n AF: 6,\n AI: 1,\n AL: 1,\n AM: 1,\n AN: 1,\n AR: 1,\n AT: 1,\n AU: 1,\n AX: 1,\n AZ: 1,\n BA: 1,\n BE: 1,\n BG: 1,\n BH: 6,\n BM: 1,\n BN: 1,\n BY: 1,\n CH: 1,\n CL: 1,\n CM: 1,\n CN: 1,\n CR: 1,\n CY: 1,\n CZ: 1,\n DE: 1,\n DJ: 6,\n DK: 1,\n DZ: 6,\n EC: 1,\n EE: 1,\n EG: 6,\n ES: 1,\n FI: 1,\n FJ: 1,\n FO: 1,\n FR: 1,\n GB: 1,\n GE: 1,\n GF: 1,\n GP: 1,\n GR: 1,\n HR: 1,\n HU: 1,\n IE: 1,\n IQ: 6,\n IR: 6,\n IS: 1,\n IT: 1,\n JO: 6,\n KG: 1,\n KW: 6,\n KZ: 1,\n LB: 1,\n LI: 1,\n LK: 1,\n LT: 1,\n LU: 1,\n LV: 1,\n LY: 6,\n MC: 1,\n MD: 1,\n ME: 1,\n MK: 1,\n MN: 1,\n MQ: 1,\n MV: 5,\n MY: 1,\n NL: 1,\n NO: 1,\n NZ: 1,\n OM: 6,\n PL: 1,\n QA: 6,\n RE: 1,\n RO: 1,\n RS: 1,\n RU: 1,\n SD: 6,\n SE: 1,\n SI: 1,\n SK: 1,\n SM: 1,\n SY: 6,\n TJ: 1,\n TM: 1,\n TR: 1,\n UA: 1,\n UY: 1,\n UZ: 1,\n VA: 1,\n VN: 1,\n XK: 1\n};\n\n\nexport {$2fe286d2fb449abb$export$7a5acbd77d414bd9 as weekStartData};\n//# sourceMappingURL=weekStartData.module.js.map\n","import {fromAbsolute as $11d87f3f76e88657$export$1b96692a1ba042ac, toAbsolute as $11d87f3f76e88657$export$5107c82f94518f5c, toCalendar as $11d87f3f76e88657$export$b4a036af3fc0b032, toCalendarDate as $11d87f3f76e88657$export$93522d1a439f3617} from \"./conversion.mjs\";\nimport {weekStartData as $2fe286d2fb449abb$export$7a5acbd77d414bd9} from \"./weekStartData.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $14e0f24ef4ac5c92$export$ea39ec197993aef0(a, b) {\n b = (0, $11d87f3f76e88657$export$b4a036af3fc0b032)(b, a.calendar);\n return a.era === b.era && a.year === b.year && a.month === b.month && a.day === b.day;\n}\nfunction $14e0f24ef4ac5c92$export$a18c89cbd24170ff(a, b) {\n b = (0, $11d87f3f76e88657$export$b4a036af3fc0b032)(b, a.calendar);\n // In the Japanese calendar, months can span multiple eras/years, so only compare the first of the month.\n a = $14e0f24ef4ac5c92$export$a5a3b454ada2268e(a);\n b = $14e0f24ef4ac5c92$export$a5a3b454ada2268e(b);\n return a.era === b.era && a.year === b.year && a.month === b.month;\n}\nfunction $14e0f24ef4ac5c92$export$5841f9eb9773f25f(a, b) {\n b = (0, $11d87f3f76e88657$export$b4a036af3fc0b032)(b, a.calendar);\n a = $14e0f24ef4ac5c92$export$f91e89d3d0406102(a);\n b = $14e0f24ef4ac5c92$export$f91e89d3d0406102(b);\n return a.era === b.era && a.year === b.year;\n}\nfunction $14e0f24ef4ac5c92$export$91b62ebf2ba703ee(a, b) {\n return $14e0f24ef4ac5c92$export$dbc69fd56b53d5e(a.calendar, b.calendar) && $14e0f24ef4ac5c92$export$ea39ec197993aef0(a, b);\n}\nfunction $14e0f24ef4ac5c92$export$5a8da0c44a3afdf2(a, b) {\n return $14e0f24ef4ac5c92$export$dbc69fd56b53d5e(a.calendar, b.calendar) && $14e0f24ef4ac5c92$export$a18c89cbd24170ff(a, b);\n}\nfunction $14e0f24ef4ac5c92$export$ea840f5a6dda8147(a, b) {\n return $14e0f24ef4ac5c92$export$dbc69fd56b53d5e(a.calendar, b.calendar) && $14e0f24ef4ac5c92$export$5841f9eb9773f25f(a, b);\n}\nfunction $14e0f24ef4ac5c92$export$dbc69fd56b53d5e(a, b) {\n var _a_isEqual, _b_isEqual;\n var _a_isEqual1, _ref;\n return (_ref = (_a_isEqual1 = (_a_isEqual = a.isEqual) === null || _a_isEqual === void 0 ? void 0 : _a_isEqual.call(a, b)) !== null && _a_isEqual1 !== void 0 ? _a_isEqual1 : (_b_isEqual = b.isEqual) === null || _b_isEqual === void 0 ? void 0 : _b_isEqual.call(b, a)) !== null && _ref !== void 0 ? _ref : a.identifier === b.identifier;\n}\nfunction $14e0f24ef4ac5c92$export$629b0a497aa65267(date, timeZone) {\n return $14e0f24ef4ac5c92$export$ea39ec197993aef0(date, $14e0f24ef4ac5c92$export$d0bdf45af03a6ea3(timeZone));\n}\nconst $14e0f24ef4ac5c92$var$DAY_MAP = {\n sun: 0,\n mon: 1,\n tue: 2,\n wed: 3,\n thu: 4,\n fri: 5,\n sat: 6\n};\nfunction $14e0f24ef4ac5c92$export$2061056d06d7cdf7(date, locale, firstDayOfWeek) {\n let julian = date.calendar.toJulianDay(date);\n // If julian is negative, then julian % 7 will be negative, so we adjust\n // accordingly. Julian day 0 is Monday.\n let weekStart = firstDayOfWeek ? $14e0f24ef4ac5c92$var$DAY_MAP[firstDayOfWeek] : $14e0f24ef4ac5c92$var$getWeekStart(locale);\n let dayOfWeek = Math.ceil(julian + 1 - weekStart) % 7;\n if (dayOfWeek < 0) dayOfWeek += 7;\n return dayOfWeek;\n}\nfunction $14e0f24ef4ac5c92$export$461939dd4422153(timeZone) {\n return (0, $11d87f3f76e88657$export$1b96692a1ba042ac)(Date.now(), timeZone);\n}\nfunction $14e0f24ef4ac5c92$export$d0bdf45af03a6ea3(timeZone) {\n return (0, $11d87f3f76e88657$export$93522d1a439f3617)($14e0f24ef4ac5c92$export$461939dd4422153(timeZone));\n}\nfunction $14e0f24ef4ac5c92$export$68781ddf31c0090f(a, b) {\n return a.calendar.toJulianDay(a) - b.calendar.toJulianDay(b);\n}\nfunction $14e0f24ef4ac5c92$export$c19a80a9721b80f6(a, b) {\n return $14e0f24ef4ac5c92$var$timeToMs(a) - $14e0f24ef4ac5c92$var$timeToMs(b);\n}\nfunction $14e0f24ef4ac5c92$var$timeToMs(a) {\n return a.hour * 3600000 + a.minute * 60000 + a.second * 1000 + a.millisecond;\n}\nfunction $14e0f24ef4ac5c92$export$126c91c941de7e(a, timeZone) {\n let ms = (0, $11d87f3f76e88657$export$5107c82f94518f5c)(a, timeZone);\n let tomorrow = a.add({\n days: 1\n });\n let tomorrowMs = (0, $11d87f3f76e88657$export$5107c82f94518f5c)(tomorrow, timeZone);\n return (tomorrowMs - ms) / 3600000;\n}\nlet $14e0f24ef4ac5c92$var$localTimeZone = null;\nfunction $14e0f24ef4ac5c92$export$aa8b41735afcabd2() {\n // TODO: invalidate this somehow?\n if ($14e0f24ef4ac5c92$var$localTimeZone == null) $14e0f24ef4ac5c92$var$localTimeZone = new Intl.DateTimeFormat().resolvedOptions().timeZone;\n return $14e0f24ef4ac5c92$var$localTimeZone;\n}\nfunction $14e0f24ef4ac5c92$export$a5a3b454ada2268e(date) {\n // Use `subtract` instead of `set` so we don't get constrained in an era.\n return date.subtract({\n days: date.day - 1\n });\n}\nfunction $14e0f24ef4ac5c92$export$a2258d9c4118825c(date) {\n return date.add({\n days: date.calendar.getDaysInMonth(date) - date.day\n });\n}\nfunction $14e0f24ef4ac5c92$export$f91e89d3d0406102(date) {\n return $14e0f24ef4ac5c92$export$a5a3b454ada2268e(date.subtract({\n months: date.month - 1\n }));\n}\nfunction $14e0f24ef4ac5c92$export$8b7aa55c66d5569e(date) {\n return $14e0f24ef4ac5c92$export$a2258d9c4118825c(date.add({\n months: date.calendar.getMonthsInYear(date) - date.month\n }));\n}\nfunction $14e0f24ef4ac5c92$export$5412ac11713b72ad(date) {\n if (date.calendar.getMinimumMonthInYear) return date.calendar.getMinimumMonthInYear(date);\n return 1;\n}\nfunction $14e0f24ef4ac5c92$export$b2f4953d301981d5(date) {\n if (date.calendar.getMinimumDayInMonth) return date.calendar.getMinimumDayInMonth(date);\n return 1;\n}\nfunction $14e0f24ef4ac5c92$export$42c81a444fbfb5d4(date, locale, firstDayOfWeek) {\n let dayOfWeek = $14e0f24ef4ac5c92$export$2061056d06d7cdf7(date, locale, firstDayOfWeek);\n return date.subtract({\n days: dayOfWeek\n });\n}\nfunction $14e0f24ef4ac5c92$export$ef8b6d9133084f4e(date, locale, firstDayOfWeek) {\n return $14e0f24ef4ac5c92$export$42c81a444fbfb5d4(date, locale, firstDayOfWeek).add({\n days: 6\n });\n}\nconst $14e0f24ef4ac5c92$var$cachedRegions = new Map();\nfunction $14e0f24ef4ac5c92$var$getRegion(locale) {\n // If the Intl.Locale API is available, use it to get the region for the locale.\n // @ts-ignore\n if (Intl.Locale) {\n // Constructing an Intl.Locale is expensive, so cache the result.\n let region = $14e0f24ef4ac5c92$var$cachedRegions.get(locale);\n if (!region) {\n // @ts-ignore\n region = new Intl.Locale(locale).maximize().region;\n if (region) $14e0f24ef4ac5c92$var$cachedRegions.set(locale, region);\n }\n return region;\n }\n // If not, just try splitting the string.\n // If the second part of the locale string is 'u',\n // then this is a unicode extension, so ignore it.\n // Otherwise, it should be the region.\n let part = locale.split('-')[1];\n return part === 'u' ? undefined : part;\n}\nfunction $14e0f24ef4ac5c92$var$getWeekStart(locale) {\n // TODO: use Intl.Locale for this once browsers support the weekInfo property\n // https://github.com/tc39/proposal-intl-locale-info\n let region = $14e0f24ef4ac5c92$var$getRegion(locale);\n return region ? (0, $2fe286d2fb449abb$export$7a5acbd77d414bd9)[region] || 0 : 0;\n}\nfunction $14e0f24ef4ac5c92$export$ccc1b2479e7dd654(date, locale, firstDayOfWeek) {\n let days = date.calendar.getDaysInMonth(date);\n return Math.ceil(($14e0f24ef4ac5c92$export$2061056d06d7cdf7($14e0f24ef4ac5c92$export$a5a3b454ada2268e(date), locale, firstDayOfWeek) + days) / 7);\n}\nfunction $14e0f24ef4ac5c92$export$5c333a116e949cdd(a, b) {\n if (a && b) return a.compare(b) <= 0 ? a : b;\n return a || b;\n}\nfunction $14e0f24ef4ac5c92$export$a75f2bff57811055(a, b) {\n if (a && b) return a.compare(b) >= 0 ? a : b;\n return a || b;\n}\nconst $14e0f24ef4ac5c92$var$WEEKEND_DATA = {\n AF: [\n 4,\n 5\n ],\n AE: [\n 5,\n 6\n ],\n BH: [\n 5,\n 6\n ],\n DZ: [\n 5,\n 6\n ],\n EG: [\n 5,\n 6\n ],\n IL: [\n 5,\n 6\n ],\n IQ: [\n 5,\n 6\n ],\n IR: [\n 5,\n 5\n ],\n JO: [\n 5,\n 6\n ],\n KW: [\n 5,\n 6\n ],\n LY: [\n 5,\n 6\n ],\n OM: [\n 5,\n 6\n ],\n QA: [\n 5,\n 6\n ],\n SA: [\n 5,\n 6\n ],\n SD: [\n 5,\n 6\n ],\n SY: [\n 5,\n 6\n ],\n YE: [\n 5,\n 6\n ]\n};\nfunction $14e0f24ef4ac5c92$export$618d60ea299da42(date, locale) {\n let julian = date.calendar.toJulianDay(date);\n // If julian is negative, then julian % 7 will be negative, so we adjust\n // accordingly. Julian day 0 is Monday.\n let dayOfWeek = Math.ceil(julian + 1) % 7;\n if (dayOfWeek < 0) dayOfWeek += 7;\n let region = $14e0f24ef4ac5c92$var$getRegion(locale);\n // Use Intl.Locale for this once weekInfo is supported.\n // https://github.com/tc39/proposal-intl-locale-info\n let [start, end] = $14e0f24ef4ac5c92$var$WEEKEND_DATA[region] || [\n 6,\n 0\n ];\n return dayOfWeek === start || dayOfWeek === end;\n}\nfunction $14e0f24ef4ac5c92$export$ee9d87258e1d19ed(date, locale) {\n return !$14e0f24ef4ac5c92$export$618d60ea299da42(date, locale);\n}\n\n\nexport {$14e0f24ef4ac5c92$export$ea39ec197993aef0 as isSameDay, $14e0f24ef4ac5c92$export$a18c89cbd24170ff as isSameMonth, $14e0f24ef4ac5c92$export$a5a3b454ada2268e as startOfMonth, $14e0f24ef4ac5c92$export$5841f9eb9773f25f as isSameYear, $14e0f24ef4ac5c92$export$f91e89d3d0406102 as startOfYear, $14e0f24ef4ac5c92$export$91b62ebf2ba703ee as isEqualDay, $14e0f24ef4ac5c92$export$dbc69fd56b53d5e as isEqualCalendar, $14e0f24ef4ac5c92$export$5a8da0c44a3afdf2 as isEqualMonth, $14e0f24ef4ac5c92$export$ea840f5a6dda8147 as isEqualYear, $14e0f24ef4ac5c92$export$629b0a497aa65267 as isToday, $14e0f24ef4ac5c92$export$d0bdf45af03a6ea3 as today, $14e0f24ef4ac5c92$export$2061056d06d7cdf7 as getDayOfWeek, $14e0f24ef4ac5c92$export$461939dd4422153 as now, $14e0f24ef4ac5c92$export$68781ddf31c0090f as compareDate, $14e0f24ef4ac5c92$export$c19a80a9721b80f6 as compareTime, $14e0f24ef4ac5c92$export$126c91c941de7e as getHoursInDay, $14e0f24ef4ac5c92$export$aa8b41735afcabd2 as getLocalTimeZone, $14e0f24ef4ac5c92$export$a2258d9c4118825c as endOfMonth, $14e0f24ef4ac5c92$export$8b7aa55c66d5569e as endOfYear, $14e0f24ef4ac5c92$export$5412ac11713b72ad as getMinimumMonthInYear, $14e0f24ef4ac5c92$export$b2f4953d301981d5 as getMinimumDayInMonth, $14e0f24ef4ac5c92$export$42c81a444fbfb5d4 as startOfWeek, $14e0f24ef4ac5c92$export$ef8b6d9133084f4e as endOfWeek, $14e0f24ef4ac5c92$export$ccc1b2479e7dd654 as getWeeksInMonth, $14e0f24ef4ac5c92$export$5c333a116e949cdd as minDate, $14e0f24ef4ac5c92$export$a75f2bff57811055 as maxDate, $14e0f24ef4ac5c92$export$618d60ea299da42 as isWeekend, $14e0f24ef4ac5c92$export$ee9d87258e1d19ed as isWeekday};\n//# sourceMappingURL=queries.module.js.map\n","import {CalendarDate as $35ea8db9cb2ccb90$export$99faa760c7908e4f, CalendarDateTime as $35ea8db9cb2ccb90$export$ca871e8dbb80966f, Time as $35ea8db9cb2ccb90$export$680ea196effce5f, ZonedDateTime as $35ea8db9cb2ccb90$export$d3b7288e7994edea} from \"./CalendarDate.mjs\";\nimport {constrain as $735220c2d4774dd3$export$c4e2ecac49351ef2} from \"./manipulation.mjs\";\nimport {getExtendedYear as $3b62074eb05584b2$export$c36e0ecb2d4fa69d, GregorianCalendar as $3b62074eb05584b2$export$80ee6245ec4f29ec} from \"./GregorianCalendar.mjs\";\nimport {getLocalTimeZone as $14e0f24ef4ac5c92$export$aa8b41735afcabd2, isEqualCalendar as $14e0f24ef4ac5c92$export$dbc69fd56b53d5e} from \"./queries.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from the TC39 Temporal proposal.\n// Original licensing can be found in the NOTICE file in the root directory of this source tree.\n\n\n\n\nfunction $11d87f3f76e88657$export$bd4fb2bc8bb06fb(date) {\n date = $11d87f3f76e88657$export$b4a036af3fc0b032(date, new (0, $3b62074eb05584b2$export$80ee6245ec4f29ec)());\n let year = (0, $3b62074eb05584b2$export$c36e0ecb2d4fa69d)(date.era, date.year);\n return $11d87f3f76e88657$var$epochFromParts(year, date.month, date.day, date.hour, date.minute, date.second, date.millisecond);\n}\nfunction $11d87f3f76e88657$var$epochFromParts(year, month, day, hour, minute, second, millisecond) {\n // Note: Date.UTC() interprets one and two-digit years as being in the\n // 20th century, so don't use it\n let date = new Date();\n date.setUTCHours(hour, minute, second, millisecond);\n date.setUTCFullYear(year, month - 1, day);\n return date.getTime();\n}\nfunction $11d87f3f76e88657$export$59c99f3515d3493f(ms, timeZone) {\n // Fast path for UTC.\n if (timeZone === 'UTC') return 0;\n // Fast path: for local timezone after 1970, use native Date.\n if (ms > 0 && timeZone === (0, $14e0f24ef4ac5c92$export$aa8b41735afcabd2)()) return new Date(ms).getTimezoneOffset() * -60000;\n let { year: year, month: month, day: day, hour: hour, minute: minute, second: second } = $11d87f3f76e88657$var$getTimeZoneParts(ms, timeZone);\n let utc = $11d87f3f76e88657$var$epochFromParts(year, month, day, hour, minute, second, 0);\n return utc - Math.floor(ms / 1000) * 1000;\n}\nconst $11d87f3f76e88657$var$formattersByTimeZone = new Map();\nfunction $11d87f3f76e88657$var$getTimeZoneParts(ms, timeZone) {\n let formatter = $11d87f3f76e88657$var$formattersByTimeZone.get(timeZone);\n if (!formatter) {\n formatter = new Intl.DateTimeFormat('en-US', {\n timeZone: timeZone,\n hour12: false,\n era: 'short',\n year: 'numeric',\n month: 'numeric',\n day: 'numeric',\n hour: 'numeric',\n minute: 'numeric',\n second: 'numeric'\n });\n $11d87f3f76e88657$var$formattersByTimeZone.set(timeZone, formatter);\n }\n let parts = formatter.formatToParts(new Date(ms));\n let namedParts = {};\n for (let part of parts)if (part.type !== 'literal') namedParts[part.type] = part.value;\n return {\n // Firefox returns B instead of BC... https://bugzilla.mozilla.org/show_bug.cgi?id=1752253\n year: namedParts.era === 'BC' || namedParts.era === 'B' ? -namedParts.year + 1 : +namedParts.year,\n month: +namedParts.month,\n day: +namedParts.day,\n hour: namedParts.hour === '24' ? 0 : +namedParts.hour,\n minute: +namedParts.minute,\n second: +namedParts.second\n };\n}\nconst $11d87f3f76e88657$var$DAYMILLIS = 86400000;\nfunction $11d87f3f76e88657$export$136f38efe7caf549(date, timeZone) {\n let ms = $11d87f3f76e88657$export$bd4fb2bc8bb06fb(date);\n let earlier = ms - $11d87f3f76e88657$export$59c99f3515d3493f(ms - $11d87f3f76e88657$var$DAYMILLIS, timeZone);\n let later = ms - $11d87f3f76e88657$export$59c99f3515d3493f(ms + $11d87f3f76e88657$var$DAYMILLIS, timeZone);\n return $11d87f3f76e88657$var$getValidWallTimes(date, timeZone, earlier, later);\n}\nfunction $11d87f3f76e88657$var$getValidWallTimes(date, timeZone, earlier, later) {\n let found = earlier === later ? [\n earlier\n ] : [\n earlier,\n later\n ];\n return found.filter((absolute)=>$11d87f3f76e88657$var$isValidWallTime(date, timeZone, absolute));\n}\nfunction $11d87f3f76e88657$var$isValidWallTime(date, timeZone, absolute) {\n let parts = $11d87f3f76e88657$var$getTimeZoneParts(absolute, timeZone);\n return date.year === parts.year && date.month === parts.month && date.day === parts.day && date.hour === parts.hour && date.minute === parts.minute && date.second === parts.second;\n}\nfunction $11d87f3f76e88657$export$5107c82f94518f5c(date, timeZone, disambiguation = 'compatible') {\n let dateTime = $11d87f3f76e88657$export$b21e0b124e224484(date);\n // Fast path: if the time zone is UTC, use native Date.\n if (timeZone === 'UTC') return $11d87f3f76e88657$export$bd4fb2bc8bb06fb(dateTime);\n // Fast path: if the time zone is the local timezone and disambiguation is compatible, use native Date.\n if (timeZone === (0, $14e0f24ef4ac5c92$export$aa8b41735afcabd2)() && disambiguation === 'compatible') {\n dateTime = $11d87f3f76e88657$export$b4a036af3fc0b032(dateTime, new (0, $3b62074eb05584b2$export$80ee6245ec4f29ec)());\n // Don't use Date constructor here because two-digit years are interpreted in the 20th century.\n let date = new Date();\n let year = (0, $3b62074eb05584b2$export$c36e0ecb2d4fa69d)(dateTime.era, dateTime.year);\n date.setFullYear(year, dateTime.month - 1, dateTime.day);\n date.setHours(dateTime.hour, dateTime.minute, dateTime.second, dateTime.millisecond);\n return date.getTime();\n }\n let ms = $11d87f3f76e88657$export$bd4fb2bc8bb06fb(dateTime);\n let offsetBefore = $11d87f3f76e88657$export$59c99f3515d3493f(ms - $11d87f3f76e88657$var$DAYMILLIS, timeZone);\n let offsetAfter = $11d87f3f76e88657$export$59c99f3515d3493f(ms + $11d87f3f76e88657$var$DAYMILLIS, timeZone);\n let valid = $11d87f3f76e88657$var$getValidWallTimes(dateTime, timeZone, ms - offsetBefore, ms - offsetAfter);\n if (valid.length === 1) return valid[0];\n if (valid.length > 1) switch(disambiguation){\n // 'compatible' means 'earlier' for \"fall back\" transitions\n case 'compatible':\n case 'earlier':\n return valid[0];\n case 'later':\n return valid[valid.length - 1];\n case 'reject':\n throw new RangeError('Multiple possible absolute times found');\n }\n switch(disambiguation){\n case 'earlier':\n return Math.min(ms - offsetBefore, ms - offsetAfter);\n // 'compatible' means 'later' for \"spring forward\" transitions\n case 'compatible':\n case 'later':\n return Math.max(ms - offsetBefore, ms - offsetAfter);\n case 'reject':\n throw new RangeError('No such absolute time found');\n }\n}\nfunction $11d87f3f76e88657$export$e67a095c620b86fe(dateTime, timeZone, disambiguation = 'compatible') {\n return new Date($11d87f3f76e88657$export$5107c82f94518f5c(dateTime, timeZone, disambiguation));\n}\nfunction $11d87f3f76e88657$export$1b96692a1ba042ac(ms, timeZone) {\n let offset = $11d87f3f76e88657$export$59c99f3515d3493f(ms, timeZone);\n let date = new Date(ms + offset);\n let year = date.getUTCFullYear();\n let month = date.getUTCMonth() + 1;\n let day = date.getUTCDate();\n let hour = date.getUTCHours();\n let minute = date.getUTCMinutes();\n let second = date.getUTCSeconds();\n let millisecond = date.getUTCMilliseconds();\n return new (0, $35ea8db9cb2ccb90$export$d3b7288e7994edea)(year < 1 ? 'BC' : 'AD', year < 1 ? -year + 1 : year, month, day, timeZone, offset, hour, minute, second, millisecond);\n}\nfunction $11d87f3f76e88657$export$e57ff100d91bd4b9(date, timeZone) {\n return $11d87f3f76e88657$export$1b96692a1ba042ac(date.getTime(), timeZone);\n}\nfunction $11d87f3f76e88657$export$d7f92bcd3596b086(date) {\n return $11d87f3f76e88657$export$e57ff100d91bd4b9(date, (0, $14e0f24ef4ac5c92$export$aa8b41735afcabd2)());\n}\nfunction $11d87f3f76e88657$export$93522d1a439f3617(dateTime) {\n return new (0, $35ea8db9cb2ccb90$export$99faa760c7908e4f)(dateTime.calendar, dateTime.era, dateTime.year, dateTime.month, dateTime.day);\n}\nfunction $11d87f3f76e88657$export$6f4d78149f3f53ac(date) {\n return {\n era: date.era,\n year: date.year,\n month: date.month,\n day: date.day\n };\n}\nfunction $11d87f3f76e88657$export$4d0393e732857be5(date) {\n return {\n hour: date.hour,\n minute: date.minute,\n second: date.second,\n millisecond: date.millisecond\n };\n}\nfunction $11d87f3f76e88657$export$b21e0b124e224484(date, time) {\n let hour = 0, minute = 0, second = 0, millisecond = 0;\n if ('timeZone' in date) ({ hour: hour, minute: minute, second: second, millisecond: millisecond } = date);\n else if ('hour' in date && !time) return date;\n if (time) ({ hour: hour, minute: minute, second: second, millisecond: millisecond } = time);\n return new (0, $35ea8db9cb2ccb90$export$ca871e8dbb80966f)(date.calendar, date.era, date.year, date.month, date.day, hour, minute, second, millisecond);\n}\nfunction $11d87f3f76e88657$export$d33f79e3ffc3dc83(dateTime) {\n return new (0, $35ea8db9cb2ccb90$export$680ea196effce5f)(dateTime.hour, dateTime.minute, dateTime.second, dateTime.millisecond);\n}\nfunction $11d87f3f76e88657$export$b4a036af3fc0b032(date, calendar) {\n if ((0, $14e0f24ef4ac5c92$export$dbc69fd56b53d5e)(date.calendar, calendar)) return date;\n let calendarDate = calendar.fromJulianDay(date.calendar.toJulianDay(date));\n let copy = date.copy();\n copy.calendar = calendar;\n copy.era = calendarDate.era;\n copy.year = calendarDate.year;\n copy.month = calendarDate.month;\n copy.day = calendarDate.day;\n (0, $735220c2d4774dd3$export$c4e2ecac49351ef2)(copy);\n return copy;\n}\nfunction $11d87f3f76e88657$export$84c95a83c799e074(date, timeZone, disambiguation) {\n if (date instanceof (0, $35ea8db9cb2ccb90$export$d3b7288e7994edea)) {\n if (date.timeZone === timeZone) return date;\n return $11d87f3f76e88657$export$538b00033cc11c75(date, timeZone);\n }\n let ms = $11d87f3f76e88657$export$5107c82f94518f5c(date, timeZone, disambiguation);\n return $11d87f3f76e88657$export$1b96692a1ba042ac(ms, timeZone);\n}\nfunction $11d87f3f76e88657$export$83aac07b4c37b25(date) {\n let ms = $11d87f3f76e88657$export$bd4fb2bc8bb06fb(date) - date.offset;\n return new Date(ms);\n}\nfunction $11d87f3f76e88657$export$538b00033cc11c75(date, timeZone) {\n let ms = $11d87f3f76e88657$export$bd4fb2bc8bb06fb(date) - date.offset;\n return $11d87f3f76e88657$export$b4a036af3fc0b032($11d87f3f76e88657$export$1b96692a1ba042ac(ms, timeZone), date.calendar);\n}\nfunction $11d87f3f76e88657$export$d9b67bc93c097491(date) {\n return $11d87f3f76e88657$export$538b00033cc11c75(date, (0, $14e0f24ef4ac5c92$export$aa8b41735afcabd2)());\n}\n\n\nexport {$11d87f3f76e88657$export$bd4fb2bc8bb06fb as epochFromDate, $11d87f3f76e88657$export$b4a036af3fc0b032 as toCalendar, $11d87f3f76e88657$export$59c99f3515d3493f as getTimeZoneOffset, $11d87f3f76e88657$export$136f38efe7caf549 as possibleAbsolutes, $11d87f3f76e88657$export$5107c82f94518f5c as toAbsolute, $11d87f3f76e88657$export$b21e0b124e224484 as toCalendarDateTime, $11d87f3f76e88657$export$e67a095c620b86fe as toDate, $11d87f3f76e88657$export$1b96692a1ba042ac as fromAbsolute, $11d87f3f76e88657$export$e57ff100d91bd4b9 as fromDate, $11d87f3f76e88657$export$d7f92bcd3596b086 as fromDateToLocal, $11d87f3f76e88657$export$93522d1a439f3617 as toCalendarDate, $11d87f3f76e88657$export$6f4d78149f3f53ac as toDateFields, $11d87f3f76e88657$export$4d0393e732857be5 as toTimeFields, $11d87f3f76e88657$export$d33f79e3ffc3dc83 as toTime, $11d87f3f76e88657$export$84c95a83c799e074 as toZoned, $11d87f3f76e88657$export$538b00033cc11c75 as toTimeZone, $11d87f3f76e88657$export$83aac07b4c37b25 as zonedToDate, $11d87f3f76e88657$export$d9b67bc93c097491 as toLocalTimeZone};\n//# sourceMappingURL=conversion.module.js.map\n","import {epochFromDate as $11d87f3f76e88657$export$bd4fb2bc8bb06fb, fromAbsolute as $11d87f3f76e88657$export$1b96692a1ba042ac, toAbsolute as $11d87f3f76e88657$export$5107c82f94518f5c, toCalendar as $11d87f3f76e88657$export$b4a036af3fc0b032, toCalendarDateTime as $11d87f3f76e88657$export$b21e0b124e224484} from \"./conversion.mjs\";\nimport {GregorianCalendar as $3b62074eb05584b2$export$80ee6245ec4f29ec} from \"./GregorianCalendar.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nconst $735220c2d4774dd3$var$ONE_HOUR = 3600000;\nfunction $735220c2d4774dd3$export$e16d8520af44a096(date, duration) {\n let mutableDate = date.copy();\n let days = 'hour' in mutableDate ? $735220c2d4774dd3$var$addTimeFields(mutableDate, duration) : 0;\n $735220c2d4774dd3$var$addYears(mutableDate, duration.years || 0);\n if (mutableDate.calendar.balanceYearMonth) mutableDate.calendar.balanceYearMonth(mutableDate, date);\n mutableDate.month += duration.months || 0;\n $735220c2d4774dd3$var$balanceYearMonth(mutableDate);\n $735220c2d4774dd3$var$constrainMonthDay(mutableDate);\n mutableDate.day += (duration.weeks || 0) * 7;\n mutableDate.day += duration.days || 0;\n mutableDate.day += days;\n $735220c2d4774dd3$var$balanceDay(mutableDate);\n if (mutableDate.calendar.balanceDate) mutableDate.calendar.balanceDate(mutableDate);\n // Constrain in case adding ended up with a date outside the valid range for the calendar system.\n // The behavior here is slightly different than when constraining in the `set` function in that\n // we adjust smaller fields to their minimum/maximum values rather than constraining each field\n // individually. This matches the general behavior of `add` vs `set` regarding how fields are balanced.\n if (mutableDate.year < 1) {\n mutableDate.year = 1;\n mutableDate.month = 1;\n mutableDate.day = 1;\n }\n let maxYear = mutableDate.calendar.getYearsInEra(mutableDate);\n if (mutableDate.year > maxYear) {\n var _mutableDate_calendar_isInverseEra, _mutableDate_calendar;\n let isInverseEra = (_mutableDate_calendar_isInverseEra = (_mutableDate_calendar = mutableDate.calendar).isInverseEra) === null || _mutableDate_calendar_isInverseEra === void 0 ? void 0 : _mutableDate_calendar_isInverseEra.call(_mutableDate_calendar, mutableDate);\n mutableDate.year = maxYear;\n mutableDate.month = isInverseEra ? 1 : mutableDate.calendar.getMonthsInYear(mutableDate);\n mutableDate.day = isInverseEra ? 1 : mutableDate.calendar.getDaysInMonth(mutableDate);\n }\n if (mutableDate.month < 1) {\n mutableDate.month = 1;\n mutableDate.day = 1;\n }\n let maxMonth = mutableDate.calendar.getMonthsInYear(mutableDate);\n if (mutableDate.month > maxMonth) {\n mutableDate.month = maxMonth;\n mutableDate.day = mutableDate.calendar.getDaysInMonth(mutableDate);\n }\n mutableDate.day = Math.max(1, Math.min(mutableDate.calendar.getDaysInMonth(mutableDate), mutableDate.day));\n return mutableDate;\n}\nfunction $735220c2d4774dd3$var$addYears(date, years) {\n var _date_calendar_isInverseEra, _date_calendar;\n if ((_date_calendar_isInverseEra = (_date_calendar = date.calendar).isInverseEra) === null || _date_calendar_isInverseEra === void 0 ? void 0 : _date_calendar_isInverseEra.call(_date_calendar, date)) years = -years;\n date.year += years;\n}\nfunction $735220c2d4774dd3$var$balanceYearMonth(date) {\n while(date.month < 1){\n $735220c2d4774dd3$var$addYears(date, -1);\n date.month += date.calendar.getMonthsInYear(date);\n }\n let monthsInYear = 0;\n while(date.month > (monthsInYear = date.calendar.getMonthsInYear(date))){\n date.month -= monthsInYear;\n $735220c2d4774dd3$var$addYears(date, 1);\n }\n}\nfunction $735220c2d4774dd3$var$balanceDay(date) {\n while(date.day < 1){\n date.month--;\n $735220c2d4774dd3$var$balanceYearMonth(date);\n date.day += date.calendar.getDaysInMonth(date);\n }\n while(date.day > date.calendar.getDaysInMonth(date)){\n date.day -= date.calendar.getDaysInMonth(date);\n date.month++;\n $735220c2d4774dd3$var$balanceYearMonth(date);\n }\n}\nfunction $735220c2d4774dd3$var$constrainMonthDay(date) {\n date.month = Math.max(1, Math.min(date.calendar.getMonthsInYear(date), date.month));\n date.day = Math.max(1, Math.min(date.calendar.getDaysInMonth(date), date.day));\n}\nfunction $735220c2d4774dd3$export$c4e2ecac49351ef2(date) {\n if (date.calendar.constrainDate) date.calendar.constrainDate(date);\n date.year = Math.max(1, Math.min(date.calendar.getYearsInEra(date), date.year));\n $735220c2d4774dd3$var$constrainMonthDay(date);\n}\nfunction $735220c2d4774dd3$export$3e2544e88a25bff8(duration) {\n let inverseDuration = {};\n for(let key in duration)if (typeof duration[key] === 'number') inverseDuration[key] = -duration[key];\n return inverseDuration;\n}\nfunction $735220c2d4774dd3$export$4e2d2ead65e5f7e3(date, duration) {\n return $735220c2d4774dd3$export$e16d8520af44a096(date, $735220c2d4774dd3$export$3e2544e88a25bff8(duration));\n}\nfunction $735220c2d4774dd3$export$adaa4cf7ef1b65be(date, fields) {\n let mutableDate = date.copy();\n if (fields.era != null) mutableDate.era = fields.era;\n if (fields.year != null) mutableDate.year = fields.year;\n if (fields.month != null) mutableDate.month = fields.month;\n if (fields.day != null) mutableDate.day = fields.day;\n $735220c2d4774dd3$export$c4e2ecac49351ef2(mutableDate);\n return mutableDate;\n}\nfunction $735220c2d4774dd3$export$e5d5e1c1822b6e56(value, fields) {\n let mutableValue = value.copy();\n if (fields.hour != null) mutableValue.hour = fields.hour;\n if (fields.minute != null) mutableValue.minute = fields.minute;\n if (fields.second != null) mutableValue.second = fields.second;\n if (fields.millisecond != null) mutableValue.millisecond = fields.millisecond;\n $735220c2d4774dd3$export$7555de1e070510cb(mutableValue);\n return mutableValue;\n}\nfunction $735220c2d4774dd3$var$balanceTime(time) {\n time.second += Math.floor(time.millisecond / 1000);\n time.millisecond = $735220c2d4774dd3$var$nonNegativeMod(time.millisecond, 1000);\n time.minute += Math.floor(time.second / 60);\n time.second = $735220c2d4774dd3$var$nonNegativeMod(time.second, 60);\n time.hour += Math.floor(time.minute / 60);\n time.minute = $735220c2d4774dd3$var$nonNegativeMod(time.minute, 60);\n let days = Math.floor(time.hour / 24);\n time.hour = $735220c2d4774dd3$var$nonNegativeMod(time.hour, 24);\n return days;\n}\nfunction $735220c2d4774dd3$export$7555de1e070510cb(time) {\n time.millisecond = Math.max(0, Math.min(time.millisecond, 1000));\n time.second = Math.max(0, Math.min(time.second, 59));\n time.minute = Math.max(0, Math.min(time.minute, 59));\n time.hour = Math.max(0, Math.min(time.hour, 23));\n}\nfunction $735220c2d4774dd3$var$nonNegativeMod(a, b) {\n let result = a % b;\n if (result < 0) result += b;\n return result;\n}\nfunction $735220c2d4774dd3$var$addTimeFields(time, duration) {\n time.hour += duration.hours || 0;\n time.minute += duration.minutes || 0;\n time.second += duration.seconds || 0;\n time.millisecond += duration.milliseconds || 0;\n return $735220c2d4774dd3$var$balanceTime(time);\n}\nfunction $735220c2d4774dd3$export$7ed87b6bc2506470(time, duration) {\n let res = time.copy();\n $735220c2d4774dd3$var$addTimeFields(res, duration);\n return res;\n}\nfunction $735220c2d4774dd3$export$fe34d3a381cd7501(time, duration) {\n return $735220c2d4774dd3$export$7ed87b6bc2506470(time, $735220c2d4774dd3$export$3e2544e88a25bff8(duration));\n}\nfunction $735220c2d4774dd3$export$d52ced6badfb9a4c(value, field, amount, options) {\n let mutable = value.copy();\n switch(field){\n case 'era':\n {\n let eras = value.calendar.getEras();\n let eraIndex = eras.indexOf(value.era);\n if (eraIndex < 0) throw new Error('Invalid era: ' + value.era);\n eraIndex = $735220c2d4774dd3$var$cycleValue(eraIndex, amount, 0, eras.length - 1, options === null || options === void 0 ? void 0 : options.round);\n mutable.era = eras[eraIndex];\n // Constrain the year and other fields within the era, so the era doesn't change when we balance below.\n $735220c2d4774dd3$export$c4e2ecac49351ef2(mutable);\n break;\n }\n case 'year':\n var _mutable_calendar_isInverseEra, _mutable_calendar;\n if ((_mutable_calendar_isInverseEra = (_mutable_calendar = mutable.calendar).isInverseEra) === null || _mutable_calendar_isInverseEra === void 0 ? void 0 : _mutable_calendar_isInverseEra.call(_mutable_calendar, mutable)) amount = -amount;\n // The year field should not cycle within the era as that can cause weird behavior affecting other fields.\n // We need to also allow values < 1 so that decrementing goes to the previous era. If we get -Infinity back\n // we know we wrapped around after reaching 9999 (the maximum), so set the year back to 1.\n mutable.year = $735220c2d4774dd3$var$cycleValue(value.year, amount, -Infinity, 9999, options === null || options === void 0 ? void 0 : options.round);\n if (mutable.year === -Infinity) mutable.year = 1;\n if (mutable.calendar.balanceYearMonth) mutable.calendar.balanceYearMonth(mutable, value);\n break;\n case 'month':\n mutable.month = $735220c2d4774dd3$var$cycleValue(value.month, amount, 1, value.calendar.getMonthsInYear(value), options === null || options === void 0 ? void 0 : options.round);\n break;\n case 'day':\n mutable.day = $735220c2d4774dd3$var$cycleValue(value.day, amount, 1, value.calendar.getDaysInMonth(value), options === null || options === void 0 ? void 0 : options.round);\n break;\n default:\n throw new Error('Unsupported field ' + field);\n }\n if (value.calendar.balanceDate) value.calendar.balanceDate(mutable);\n $735220c2d4774dd3$export$c4e2ecac49351ef2(mutable);\n return mutable;\n}\nfunction $735220c2d4774dd3$export$dd02b3e0007dfe28(value, field, amount, options) {\n let mutable = value.copy();\n switch(field){\n case 'hour':\n {\n let hours = value.hour;\n let min = 0;\n let max = 23;\n if ((options === null || options === void 0 ? void 0 : options.hourCycle) === 12) {\n let isPM = hours >= 12;\n min = isPM ? 12 : 0;\n max = isPM ? 23 : 11;\n }\n mutable.hour = $735220c2d4774dd3$var$cycleValue(hours, amount, min, max, options === null || options === void 0 ? void 0 : options.round);\n break;\n }\n case 'minute':\n mutable.minute = $735220c2d4774dd3$var$cycleValue(value.minute, amount, 0, 59, options === null || options === void 0 ? void 0 : options.round);\n break;\n case 'second':\n mutable.second = $735220c2d4774dd3$var$cycleValue(value.second, amount, 0, 59, options === null || options === void 0 ? void 0 : options.round);\n break;\n case 'millisecond':\n mutable.millisecond = $735220c2d4774dd3$var$cycleValue(value.millisecond, amount, 0, 999, options === null || options === void 0 ? void 0 : options.round);\n break;\n default:\n throw new Error('Unsupported field ' + field);\n }\n return mutable;\n}\nfunction $735220c2d4774dd3$var$cycleValue(value, amount, min, max, round = false) {\n if (round) {\n value += Math.sign(amount);\n if (value < min) value = max;\n let div = Math.abs(amount);\n if (amount > 0) value = Math.ceil(value / div) * div;\n else value = Math.floor(value / div) * div;\n if (value > max) value = min;\n } else {\n value += amount;\n if (value < min) value = max - (min - value - 1);\n else if (value > max) value = min + (value - max - 1);\n }\n return value;\n}\nfunction $735220c2d4774dd3$export$96b1d28349274637(dateTime, duration) {\n let ms;\n if (duration.years != null && duration.years !== 0 || duration.months != null && duration.months !== 0 || duration.weeks != null && duration.weeks !== 0 || duration.days != null && duration.days !== 0) {\n let res = $735220c2d4774dd3$export$e16d8520af44a096((0, $11d87f3f76e88657$export$b21e0b124e224484)(dateTime), {\n years: duration.years,\n months: duration.months,\n weeks: duration.weeks,\n days: duration.days\n });\n // Changing the date may change the timezone offset, so we need to recompute\n // using the 'compatible' disambiguation.\n ms = (0, $11d87f3f76e88657$export$5107c82f94518f5c)(res, dateTime.timeZone);\n } else // Otherwise, preserve the offset of the original date.\n ms = (0, $11d87f3f76e88657$export$bd4fb2bc8bb06fb)(dateTime) - dateTime.offset;\n // Perform time manipulation in milliseconds rather than on the original time fields to account for DST.\n // For example, adding one hour during a DST transition may result in the hour field staying the same or\n // skipping an hour. This results in the offset field changing value instead of the specified field.\n ms += duration.milliseconds || 0;\n ms += (duration.seconds || 0) * 1000;\n ms += (duration.minutes || 0) * 60000;\n ms += (duration.hours || 0) * 3600000;\n let res = (0, $11d87f3f76e88657$export$1b96692a1ba042ac)(ms, dateTime.timeZone);\n return (0, $11d87f3f76e88657$export$b4a036af3fc0b032)(res, dateTime.calendar);\n}\nfunction $735220c2d4774dd3$export$6814caac34ca03c7(dateTime, duration) {\n return $735220c2d4774dd3$export$96b1d28349274637(dateTime, $735220c2d4774dd3$export$3e2544e88a25bff8(duration));\n}\nfunction $735220c2d4774dd3$export$9a297d111fc86b79(dateTime, field, amount, options) {\n // For date fields, we want the time to remain consistent and the UTC offset to potentially change to account for DST changes.\n // For time fields, we want the time to change by the amount given. This may result in the hour field staying the same, but the UTC\n // offset changing in the case of a backward DST transition, or skipping an hour in the case of a forward DST transition.\n switch(field){\n case 'hour':\n {\n let min = 0;\n let max = 23;\n if ((options === null || options === void 0 ? void 0 : options.hourCycle) === 12) {\n let isPM = dateTime.hour >= 12;\n min = isPM ? 12 : 0;\n max = isPM ? 23 : 11;\n }\n // The minimum and maximum hour may be affected by daylight saving time.\n // For example, it might jump forward at midnight, and skip 1am.\n // Or it might end at midnight and repeat the 11pm hour. To handle this, we get\n // the possible absolute times for the min and max, and find the maximum range\n // that is within the current day.\n let plainDateTime = (0, $11d87f3f76e88657$export$b21e0b124e224484)(dateTime);\n let minDate = (0, $11d87f3f76e88657$export$b4a036af3fc0b032)($735220c2d4774dd3$export$e5d5e1c1822b6e56(plainDateTime, {\n hour: min\n }), new (0, $3b62074eb05584b2$export$80ee6245ec4f29ec)());\n let minAbsolute = [\n (0, $11d87f3f76e88657$export$5107c82f94518f5c)(minDate, dateTime.timeZone, 'earlier'),\n (0, $11d87f3f76e88657$export$5107c82f94518f5c)(minDate, dateTime.timeZone, 'later')\n ].filter((ms)=>(0, $11d87f3f76e88657$export$1b96692a1ba042ac)(ms, dateTime.timeZone).day === minDate.day)[0];\n let maxDate = (0, $11d87f3f76e88657$export$b4a036af3fc0b032)($735220c2d4774dd3$export$e5d5e1c1822b6e56(plainDateTime, {\n hour: max\n }), new (0, $3b62074eb05584b2$export$80ee6245ec4f29ec)());\n let maxAbsolute = [\n (0, $11d87f3f76e88657$export$5107c82f94518f5c)(maxDate, dateTime.timeZone, 'earlier'),\n (0, $11d87f3f76e88657$export$5107c82f94518f5c)(maxDate, dateTime.timeZone, 'later')\n ].filter((ms)=>(0, $11d87f3f76e88657$export$1b96692a1ba042ac)(ms, dateTime.timeZone).day === maxDate.day).pop();\n // Since hours may repeat, we need to operate on the absolute time in milliseconds.\n // This is done in hours from the Unix epoch so that cycleValue works correctly,\n // and then converted back to milliseconds.\n let ms = (0, $11d87f3f76e88657$export$bd4fb2bc8bb06fb)(dateTime) - dateTime.offset;\n let hours = Math.floor(ms / $735220c2d4774dd3$var$ONE_HOUR);\n let remainder = ms % $735220c2d4774dd3$var$ONE_HOUR;\n ms = $735220c2d4774dd3$var$cycleValue(hours, amount, Math.floor(minAbsolute / $735220c2d4774dd3$var$ONE_HOUR), Math.floor(maxAbsolute / $735220c2d4774dd3$var$ONE_HOUR), options === null || options === void 0 ? void 0 : options.round) * $735220c2d4774dd3$var$ONE_HOUR + remainder;\n // Now compute the new timezone offset, and convert the absolute time back to local time.\n return (0, $11d87f3f76e88657$export$b4a036af3fc0b032)((0, $11d87f3f76e88657$export$1b96692a1ba042ac)(ms, dateTime.timeZone), dateTime.calendar);\n }\n case 'minute':\n case 'second':\n case 'millisecond':\n // @ts-ignore\n return $735220c2d4774dd3$export$dd02b3e0007dfe28(dateTime, field, amount, options);\n case 'era':\n case 'year':\n case 'month':\n case 'day':\n {\n let res = $735220c2d4774dd3$export$d52ced6badfb9a4c((0, $11d87f3f76e88657$export$b21e0b124e224484)(dateTime), field, amount, options);\n let ms = (0, $11d87f3f76e88657$export$5107c82f94518f5c)(res, dateTime.timeZone);\n return (0, $11d87f3f76e88657$export$b4a036af3fc0b032)((0, $11d87f3f76e88657$export$1b96692a1ba042ac)(ms, dateTime.timeZone), dateTime.calendar);\n }\n default:\n throw new Error('Unsupported field ' + field);\n }\n}\nfunction $735220c2d4774dd3$export$31b5430eb18be4f8(dateTime, fields, disambiguation) {\n // Set the date/time fields, and recompute the UTC offset to account for DST changes.\n // We also need to validate by converting back to a local time in case hours are skipped during forward DST transitions.\n let plainDateTime = (0, $11d87f3f76e88657$export$b21e0b124e224484)(dateTime);\n let res = $735220c2d4774dd3$export$e5d5e1c1822b6e56($735220c2d4774dd3$export$adaa4cf7ef1b65be(plainDateTime, fields), fields);\n // If the resulting plain date time values are equal, return the original time.\n // We don't want to change the offset when setting the time to the same value.\n if (res.compare(plainDateTime) === 0) return dateTime;\n let ms = (0, $11d87f3f76e88657$export$5107c82f94518f5c)(res, dateTime.timeZone, disambiguation);\n return (0, $11d87f3f76e88657$export$b4a036af3fc0b032)((0, $11d87f3f76e88657$export$1b96692a1ba042ac)(ms, dateTime.timeZone), dateTime.calendar);\n}\n\n\nexport {$735220c2d4774dd3$export$e16d8520af44a096 as add, $735220c2d4774dd3$export$c4e2ecac49351ef2 as constrain, $735220c2d4774dd3$export$3e2544e88a25bff8 as invertDuration, $735220c2d4774dd3$export$4e2d2ead65e5f7e3 as subtract, $735220c2d4774dd3$export$adaa4cf7ef1b65be as set, $735220c2d4774dd3$export$e5d5e1c1822b6e56 as setTime, $735220c2d4774dd3$export$7555de1e070510cb as constrainTime, $735220c2d4774dd3$export$7ed87b6bc2506470 as addTime, $735220c2d4774dd3$export$fe34d3a381cd7501 as subtractTime, $735220c2d4774dd3$export$d52ced6badfb9a4c as cycleDate, $735220c2d4774dd3$export$dd02b3e0007dfe28 as cycleTime, $735220c2d4774dd3$export$96b1d28349274637 as addZoned, $735220c2d4774dd3$export$6814caac34ca03c7 as subtractZoned, $735220c2d4774dd3$export$9a297d111fc86b79 as cycleZoned, $735220c2d4774dd3$export$31b5430eb18be4f8 as setZoned};\n//# sourceMappingURL=manipulation.module.js.map\n","import {CalendarDate as $35ea8db9cb2ccb90$export$99faa760c7908e4f, CalendarDateTime as $35ea8db9cb2ccb90$export$ca871e8dbb80966f, Time as $35ea8db9cb2ccb90$export$680ea196effce5f, ZonedDateTime as $35ea8db9cb2ccb90$export$d3b7288e7994edea} from \"./CalendarDate.mjs\";\nimport {epochFromDate as $11d87f3f76e88657$export$bd4fb2bc8bb06fb, fromAbsolute as $11d87f3f76e88657$export$1b96692a1ba042ac, possibleAbsolutes as $11d87f3f76e88657$export$136f38efe7caf549, toAbsolute as $11d87f3f76e88657$export$5107c82f94518f5c, toCalendar as $11d87f3f76e88657$export$b4a036af3fc0b032, toCalendarDateTime as $11d87f3f76e88657$export$b21e0b124e224484, toTimeZone as $11d87f3f76e88657$export$538b00033cc11c75} from \"./conversion.mjs\";\nimport {getLocalTimeZone as $14e0f24ef4ac5c92$export$aa8b41735afcabd2} from \"./queries.mjs\";\nimport {GregorianCalendar as $3b62074eb05584b2$export$80ee6245ec4f29ec} from \"./GregorianCalendar.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nconst $fae977aafc393c5c$var$TIME_RE = /^(\\d{2})(?::(\\d{2}))?(?::(\\d{2}))?(\\.\\d+)?$/;\nconst $fae977aafc393c5c$var$DATE_RE = /^([+-]\\d{6}|\\d{4})-(\\d{2})-(\\d{2})$/;\nconst $fae977aafc393c5c$var$DATE_TIME_RE = /^([+-]\\d{6}|\\d{4})-(\\d{2})-(\\d{2})(?:T(\\d{2}))?(?::(\\d{2}))?(?::(\\d{2}))?(\\.\\d+)?$/;\nconst $fae977aafc393c5c$var$ZONED_DATE_TIME_RE = /^([+-]\\d{6}|\\d{4})-(\\d{2})-(\\d{2})(?:T(\\d{2}))?(?::(\\d{2}))?(?::(\\d{2}))?(\\.\\d+)?(?:([+-]\\d{2})(?::?(\\d{2}))?)?\\[(.*?)\\]$/;\nconst $fae977aafc393c5c$var$ABSOLUTE_RE = /^([+-]\\d{6}|\\d{4})-(\\d{2})-(\\d{2})(?:T(\\d{2}))?(?::(\\d{2}))?(?::(\\d{2}))?(\\.\\d+)?(?:(?:([+-]\\d{2})(?::?(\\d{2}))?)|Z)$/;\nconst $fae977aafc393c5c$var$DATE_TIME_DURATION_RE = /^((?<negative>-)|\\+)?P((?<years>\\d*)Y)?((?<months>\\d*)M)?((?<weeks>\\d*)W)?((?<days>\\d*)D)?((?<time>T)((?<hours>\\d*[.,]?\\d{1,9})H)?((?<minutes>\\d*[.,]?\\d{1,9})M)?((?<seconds>\\d*[.,]?\\d{1,9})S)?)?$/;\nconst $fae977aafc393c5c$var$requiredDurationTimeGroups = [\n 'hours',\n 'minutes',\n 'seconds'\n];\nconst $fae977aafc393c5c$var$requiredDurationGroups = [\n 'years',\n 'months',\n 'weeks',\n 'days',\n ...$fae977aafc393c5c$var$requiredDurationTimeGroups\n];\nfunction $fae977aafc393c5c$export$c9698ec7f05a07e1(value) {\n let m = value.match($fae977aafc393c5c$var$TIME_RE);\n if (!m) throw new Error('Invalid ISO 8601 time string: ' + value);\n return new (0, $35ea8db9cb2ccb90$export$680ea196effce5f)($fae977aafc393c5c$var$parseNumber(m[1], 0, 23), m[2] ? $fae977aafc393c5c$var$parseNumber(m[2], 0, 59) : 0, m[3] ? $fae977aafc393c5c$var$parseNumber(m[3], 0, 59) : 0, m[4] ? $fae977aafc393c5c$var$parseNumber(m[4], 0, Infinity) * 1000 : 0);\n}\nfunction $fae977aafc393c5c$export$6b862160d295c8e(value) {\n let m = value.match($fae977aafc393c5c$var$DATE_RE);\n if (!m) throw new Error('Invalid ISO 8601 date string: ' + value);\n let date = new (0, $35ea8db9cb2ccb90$export$99faa760c7908e4f)($fae977aafc393c5c$var$parseNumber(m[1], 0, 9999), $fae977aafc393c5c$var$parseNumber(m[2], 1, 12), 1);\n date.day = $fae977aafc393c5c$var$parseNumber(m[3], 1, date.calendar.getDaysInMonth(date));\n return date;\n}\nfunction $fae977aafc393c5c$export$588937bcd60ade55(value) {\n let m = value.match($fae977aafc393c5c$var$DATE_TIME_RE);\n if (!m) throw new Error('Invalid ISO 8601 date time string: ' + value);\n let year = $fae977aafc393c5c$var$parseNumber(m[1], -9999, 9999);\n let era = year < 1 ? 'BC' : 'AD';\n let date = new (0, $35ea8db9cb2ccb90$export$ca871e8dbb80966f)(era, year < 1 ? -year + 1 : year, $fae977aafc393c5c$var$parseNumber(m[2], 1, 12), 1, m[4] ? $fae977aafc393c5c$var$parseNumber(m[4], 0, 23) : 0, m[5] ? $fae977aafc393c5c$var$parseNumber(m[5], 0, 59) : 0, m[6] ? $fae977aafc393c5c$var$parseNumber(m[6], 0, 59) : 0, m[7] ? $fae977aafc393c5c$var$parseNumber(m[7], 0, Infinity) * 1000 : 0);\n date.day = $fae977aafc393c5c$var$parseNumber(m[3], 0, date.calendar.getDaysInMonth(date));\n return date;\n}\nfunction $fae977aafc393c5c$export$fd7893f06e92a6a4(value, disambiguation) {\n let m = value.match($fae977aafc393c5c$var$ZONED_DATE_TIME_RE);\n if (!m) throw new Error('Invalid ISO 8601 date time string: ' + value);\n let year = $fae977aafc393c5c$var$parseNumber(m[1], -9999, 9999);\n let era = year < 1 ? 'BC' : 'AD';\n let date = new (0, $35ea8db9cb2ccb90$export$d3b7288e7994edea)(era, year < 1 ? -year + 1 : year, $fae977aafc393c5c$var$parseNumber(m[2], 1, 12), 1, m[10], 0, m[4] ? $fae977aafc393c5c$var$parseNumber(m[4], 0, 23) : 0, m[5] ? $fae977aafc393c5c$var$parseNumber(m[5], 0, 59) : 0, m[6] ? $fae977aafc393c5c$var$parseNumber(m[6], 0, 59) : 0, m[7] ? $fae977aafc393c5c$var$parseNumber(m[7], 0, Infinity) * 1000 : 0);\n date.day = $fae977aafc393c5c$var$parseNumber(m[3], 0, date.calendar.getDaysInMonth(date));\n let plainDateTime = (0, $11d87f3f76e88657$export$b21e0b124e224484)(date);\n let ms;\n if (m[8]) {\n var _m_;\n date.offset = $fae977aafc393c5c$var$parseNumber(m[8], -23, 23) * 3600000 + $fae977aafc393c5c$var$parseNumber((_m_ = m[9]) !== null && _m_ !== void 0 ? _m_ : '0', 0, 59) * 60000;\n ms = (0, $11d87f3f76e88657$export$bd4fb2bc8bb06fb)(date) - date.offset;\n // Validate offset against parsed date.\n let absolutes = (0, $11d87f3f76e88657$export$136f38efe7caf549)(plainDateTime, date.timeZone);\n if (!absolutes.includes(ms)) throw new Error(`Offset ${$fae977aafc393c5c$var$offsetToString(date.offset)} is invalid for ${$fae977aafc393c5c$export$4223de14708adc63(date)} in ${date.timeZone}`);\n } else // Convert to absolute and back to fix invalid times due to DST.\n ms = (0, $11d87f3f76e88657$export$5107c82f94518f5c)((0, $11d87f3f76e88657$export$b21e0b124e224484)(plainDateTime), date.timeZone, disambiguation);\n return (0, $11d87f3f76e88657$export$1b96692a1ba042ac)(ms, date.timeZone);\n}\nfunction $fae977aafc393c5c$export$5adfdab05168c219(value, timeZone) {\n let m = value.match($fae977aafc393c5c$var$ABSOLUTE_RE);\n if (!m) throw new Error('Invalid ISO 8601 date time string: ' + value);\n let year = $fae977aafc393c5c$var$parseNumber(m[1], -9999, 9999);\n let era = year < 1 ? 'BC' : 'AD';\n let date = new (0, $35ea8db9cb2ccb90$export$d3b7288e7994edea)(era, year < 1 ? -year + 1 : year, $fae977aafc393c5c$var$parseNumber(m[2], 1, 12), 1, timeZone, 0, m[4] ? $fae977aafc393c5c$var$parseNumber(m[4], 0, 23) : 0, m[5] ? $fae977aafc393c5c$var$parseNumber(m[5], 0, 59) : 0, m[6] ? $fae977aafc393c5c$var$parseNumber(m[6], 0, 59) : 0, m[7] ? $fae977aafc393c5c$var$parseNumber(m[7], 0, Infinity) * 1000 : 0);\n date.day = $fae977aafc393c5c$var$parseNumber(m[3], 0, date.calendar.getDaysInMonth(date));\n var _m_;\n if (m[8]) date.offset = $fae977aafc393c5c$var$parseNumber(m[8], -23, 23) * 3600000 + $fae977aafc393c5c$var$parseNumber((_m_ = m[9]) !== null && _m_ !== void 0 ? _m_ : '0', 0, 59) * 60000;\n return (0, $11d87f3f76e88657$export$538b00033cc11c75)(date, timeZone);\n}\nfunction $fae977aafc393c5c$export$8e384432362ed0f0(value) {\n return $fae977aafc393c5c$export$5adfdab05168c219(value, (0, $14e0f24ef4ac5c92$export$aa8b41735afcabd2)());\n}\nfunction $fae977aafc393c5c$var$parseNumber(value, min, max) {\n let val = Number(value);\n if (val < min || val > max) throw new RangeError(`Value out of range: ${min} <= ${val} <= ${max}`);\n return val;\n}\nfunction $fae977aafc393c5c$export$f59dee82248f5ad4(time) {\n return `${String(time.hour).padStart(2, '0')}:${String(time.minute).padStart(2, '0')}:${String(time.second).padStart(2, '0')}${time.millisecond ? String(time.millisecond / 1000).slice(1) : ''}`;\n}\nfunction $fae977aafc393c5c$export$60dfd74aa96791bd(date) {\n let gregorianDate = (0, $11d87f3f76e88657$export$b4a036af3fc0b032)(date, new (0, $3b62074eb05584b2$export$80ee6245ec4f29ec)());\n let year;\n if (gregorianDate.era === 'BC') year = gregorianDate.year === 1 ? '0000' : '-' + String(Math.abs(1 - gregorianDate.year)).padStart(6, '00');\n else year = String(gregorianDate.year).padStart(4, '0');\n return `${year}-${String(gregorianDate.month).padStart(2, '0')}-${String(gregorianDate.day).padStart(2, '0')}`;\n}\nfunction $fae977aafc393c5c$export$4223de14708adc63(date) {\n // @ts-ignore\n return `${$fae977aafc393c5c$export$60dfd74aa96791bd(date)}T${$fae977aafc393c5c$export$f59dee82248f5ad4(date)}`;\n}\nfunction $fae977aafc393c5c$var$offsetToString(offset) {\n let sign = Math.sign(offset) < 0 ? '-' : '+';\n offset = Math.abs(offset);\n let offsetHours = Math.floor(offset / 3600000);\n let offsetMinutes = offset % 3600000 / 60000;\n return `${sign}${String(offsetHours).padStart(2, '0')}:${String(offsetMinutes).padStart(2, '0')}`;\n}\nfunction $fae977aafc393c5c$export$bf79f1ebf4b18792(date) {\n return `${$fae977aafc393c5c$export$4223de14708adc63(date)}${$fae977aafc393c5c$var$offsetToString(date.offset)}[${date.timeZone}]`;\n}\nfunction $fae977aafc393c5c$export$ecae829bb3747ea6(value) {\n var _match_groups, _match_groups1, _match_groups2, _match_groups3, _match_groups4, _match_groups5, _match_groups6, _match_groups7, _match_groups8;\n const match = value.match($fae977aafc393c5c$var$DATE_TIME_DURATION_RE);\n if (!match) throw new Error(`Invalid ISO 8601 Duration string: ${value}`);\n const parseDurationGroup = (group, isNegative)=>{\n if (!group) return 0;\n try {\n const sign = isNegative ? -1 : 1;\n return sign * Number(group.replace(',', '.'));\n } catch {\n throw new Error(`Invalid ISO 8601 Duration string: ${value}`);\n }\n };\n const isNegative = !!((_match_groups = match.groups) === null || _match_groups === void 0 ? void 0 : _match_groups.negative);\n const hasRequiredGroups = $fae977aafc393c5c$var$requiredDurationGroups.some((group)=>{\n var _match_groups;\n return (_match_groups = match.groups) === null || _match_groups === void 0 ? void 0 : _match_groups[group];\n });\n if (!hasRequiredGroups) throw new Error(`Invalid ISO 8601 Duration string: ${value}`);\n const durationStringIncludesTime = (_match_groups1 = match.groups) === null || _match_groups1 === void 0 ? void 0 : _match_groups1.time;\n if (durationStringIncludesTime) {\n const hasRequiredDurationTimeGroups = $fae977aafc393c5c$var$requiredDurationTimeGroups.some((group)=>{\n var _match_groups;\n return (_match_groups = match.groups) === null || _match_groups === void 0 ? void 0 : _match_groups[group];\n });\n if (!hasRequiredDurationTimeGroups) throw new Error(`Invalid ISO 8601 Duration string: ${value}`);\n }\n const duration = {\n years: parseDurationGroup((_match_groups2 = match.groups) === null || _match_groups2 === void 0 ? void 0 : _match_groups2.years, isNegative),\n months: parseDurationGroup((_match_groups3 = match.groups) === null || _match_groups3 === void 0 ? void 0 : _match_groups3.months, isNegative),\n weeks: parseDurationGroup((_match_groups4 = match.groups) === null || _match_groups4 === void 0 ? void 0 : _match_groups4.weeks, isNegative),\n days: parseDurationGroup((_match_groups5 = match.groups) === null || _match_groups5 === void 0 ? void 0 : _match_groups5.days, isNegative),\n hours: parseDurationGroup((_match_groups6 = match.groups) === null || _match_groups6 === void 0 ? void 0 : _match_groups6.hours, isNegative),\n minutes: parseDurationGroup((_match_groups7 = match.groups) === null || _match_groups7 === void 0 ? void 0 : _match_groups7.minutes, isNegative),\n seconds: parseDurationGroup((_match_groups8 = match.groups) === null || _match_groups8 === void 0 ? void 0 : _match_groups8.seconds, isNegative)\n };\n if (duration.hours !== undefined && duration.hours % 1 !== 0 && (duration.minutes || duration.seconds)) throw new Error(`Invalid ISO 8601 Duration string: ${value} - only the smallest unit can be fractional`);\n if (duration.minutes !== undefined && duration.minutes % 1 !== 0 && duration.seconds) throw new Error(`Invalid ISO 8601 Duration string: ${value} - only the smallest unit can be fractional`);\n return duration;\n}\n\n\nexport {$fae977aafc393c5c$export$c9698ec7f05a07e1 as parseTime, $fae977aafc393c5c$export$6b862160d295c8e as parseDate, $fae977aafc393c5c$export$588937bcd60ade55 as parseDateTime, $fae977aafc393c5c$export$fd7893f06e92a6a4 as parseZonedDateTime, $fae977aafc393c5c$export$4223de14708adc63 as dateTimeToString, $fae977aafc393c5c$export$5adfdab05168c219 as parseAbsolute, $fae977aafc393c5c$export$8e384432362ed0f0 as parseAbsoluteToLocal, $fae977aafc393c5c$export$f59dee82248f5ad4 as timeToString, $fae977aafc393c5c$export$60dfd74aa96791bd as dateToString, $fae977aafc393c5c$export$bf79f1ebf4b18792 as zonedDateTimeToString, $fae977aafc393c5c$export$ecae829bb3747ea6 as parseDuration};\n//# sourceMappingURL=string.module.js.map\n","function _check_private_redeclaration(obj, privateCollection) {\n if (privateCollection.has(obj)) {\n throw new TypeError(\"Cannot initialize the same private elements twice on an object\");\n }\n}\nexport { _check_private_redeclaration as _ };\n","import { _ as _check_private_redeclaration } from \"./_check_private_redeclaration.js\";\n\nfunction _class_private_field_init(obj, privateMap, value) {\n _check_private_redeclaration(obj, privateMap);\n privateMap.set(obj, value);\n}\nexport { _class_private_field_init as _ };\n","import {add as $735220c2d4774dd3$export$e16d8520af44a096, addTime as $735220c2d4774dd3$export$7ed87b6bc2506470, addZoned as $735220c2d4774dd3$export$96b1d28349274637, constrain as $735220c2d4774dd3$export$c4e2ecac49351ef2, constrainTime as $735220c2d4774dd3$export$7555de1e070510cb, cycleDate as $735220c2d4774dd3$export$d52ced6badfb9a4c, cycleTime as $735220c2d4774dd3$export$dd02b3e0007dfe28, cycleZoned as $735220c2d4774dd3$export$9a297d111fc86b79, set as $735220c2d4774dd3$export$adaa4cf7ef1b65be, setTime as $735220c2d4774dd3$export$e5d5e1c1822b6e56, setZoned as $735220c2d4774dd3$export$31b5430eb18be4f8, subtract as $735220c2d4774dd3$export$4e2d2ead65e5f7e3, subtractTime as $735220c2d4774dd3$export$fe34d3a381cd7501, subtractZoned as $735220c2d4774dd3$export$6814caac34ca03c7} from \"./manipulation.mjs\";\nimport {compareDate as $14e0f24ef4ac5c92$export$68781ddf31c0090f, compareTime as $14e0f24ef4ac5c92$export$c19a80a9721b80f6} from \"./queries.mjs\";\nimport {dateTimeToString as $fae977aafc393c5c$export$4223de14708adc63, dateToString as $fae977aafc393c5c$export$60dfd74aa96791bd, timeToString as $fae977aafc393c5c$export$f59dee82248f5ad4, zonedDateTimeToString as $fae977aafc393c5c$export$bf79f1ebf4b18792} from \"./string.mjs\";\nimport {GregorianCalendar as $3b62074eb05584b2$export$80ee6245ec4f29ec} from \"./GregorianCalendar.mjs\";\nimport {toCalendarDateTime as $11d87f3f76e88657$export$b21e0b124e224484, toDate as $11d87f3f76e88657$export$e67a095c620b86fe, toZoned as $11d87f3f76e88657$export$84c95a83c799e074, zonedToDate as $11d87f3f76e88657$export$83aac07b4c37b25} from \"./conversion.mjs\";\nimport {_ as $aksy1$_} from \"@swc/helpers/_/_class_private_field_init\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\nfunction $35ea8db9cb2ccb90$var$shiftArgs(args) {\n let calendar = typeof args[0] === 'object' ? args.shift() : new (0, $3b62074eb05584b2$export$80ee6245ec4f29ec)();\n let era;\n if (typeof args[0] === 'string') era = args.shift();\n else {\n let eras = calendar.getEras();\n era = eras[eras.length - 1];\n }\n let year = args.shift();\n let month = args.shift();\n let day = args.shift();\n return [\n calendar,\n era,\n year,\n month,\n day\n ];\n}\nvar // This prevents TypeScript from allowing other types with the same fields to match.\n// i.e. a ZonedDateTime should not be be passable to a parameter that expects CalendarDate.\n// If that behavior is desired, use the AnyCalendarDate interface instead.\n// @ts-ignore\n$35ea8db9cb2ccb90$var$_type = /*#__PURE__*/ new WeakMap();\nclass $35ea8db9cb2ccb90$export$99faa760c7908e4f {\n /** Returns a copy of this date. */ copy() {\n if (this.era) return new $35ea8db9cb2ccb90$export$99faa760c7908e4f(this.calendar, this.era, this.year, this.month, this.day);\n else return new $35ea8db9cb2ccb90$export$99faa760c7908e4f(this.calendar, this.year, this.month, this.day);\n }\n /** Returns a new `CalendarDate` with the given duration added to it. */ add(duration) {\n return (0, $735220c2d4774dd3$export$e16d8520af44a096)(this, duration);\n }\n /** Returns a new `CalendarDate` with the given duration subtracted from it. */ subtract(duration) {\n return (0, $735220c2d4774dd3$export$4e2d2ead65e5f7e3)(this, duration);\n }\n /** Returns a new `CalendarDate` with the given fields set to the provided values. Other fields will be constrained accordingly. */ set(fields) {\n return (0, $735220c2d4774dd3$export$adaa4cf7ef1b65be)(this, fields);\n }\n /**\n * Returns a new `CalendarDate` with the given field adjusted by a specified amount.\n * When the resulting value reaches the limits of the field, it wraps around.\n */ cycle(field, amount, options) {\n return (0, $735220c2d4774dd3$export$d52ced6badfb9a4c)(this, field, amount, options);\n }\n /** Converts the date to a native JavaScript Date object, with the time set to midnight in the given time zone. */ toDate(timeZone) {\n return (0, $11d87f3f76e88657$export$e67a095c620b86fe)(this, timeZone);\n }\n /** Converts the date to an ISO 8601 formatted string. */ toString() {\n return (0, $fae977aafc393c5c$export$60dfd74aa96791bd)(this);\n }\n /** Compares this date with another. A negative result indicates that this date is before the given one, and a positive date indicates that it is after. */ compare(b) {\n return (0, $14e0f24ef4ac5c92$export$68781ddf31c0090f)(this, b);\n }\n constructor(...args){\n (0, $aksy1$_)(this, $35ea8db9cb2ccb90$var$_type, {\n writable: true,\n value: void 0\n });\n let [calendar, era, year, month, day] = $35ea8db9cb2ccb90$var$shiftArgs(args);\n this.calendar = calendar;\n this.era = era;\n this.year = year;\n this.month = month;\n this.day = day;\n (0, $735220c2d4774dd3$export$c4e2ecac49351ef2)(this);\n }\n}\nvar // This prevents TypeScript from allowing other types with the same fields to match.\n// @ts-ignore\n$35ea8db9cb2ccb90$var$_type1 = /*#__PURE__*/ new WeakMap();\nclass $35ea8db9cb2ccb90$export$680ea196effce5f {\n /** Returns a copy of this time. */ copy() {\n return new $35ea8db9cb2ccb90$export$680ea196effce5f(this.hour, this.minute, this.second, this.millisecond);\n }\n /** Returns a new `Time` with the given duration added to it. */ add(duration) {\n return (0, $735220c2d4774dd3$export$7ed87b6bc2506470)(this, duration);\n }\n /** Returns a new `Time` with the given duration subtracted from it. */ subtract(duration) {\n return (0, $735220c2d4774dd3$export$fe34d3a381cd7501)(this, duration);\n }\n /** Returns a new `Time` with the given fields set to the provided values. Other fields will be constrained accordingly. */ set(fields) {\n return (0, $735220c2d4774dd3$export$e5d5e1c1822b6e56)(this, fields);\n }\n /**\n * Returns a new `Time` with the given field adjusted by a specified amount.\n * When the resulting value reaches the limits of the field, it wraps around.\n */ cycle(field, amount, options) {\n return (0, $735220c2d4774dd3$export$dd02b3e0007dfe28)(this, field, amount, options);\n }\n /** Converts the time to an ISO 8601 formatted string. */ toString() {\n return (0, $fae977aafc393c5c$export$f59dee82248f5ad4)(this);\n }\n /** Compares this time with another. A negative result indicates that this time is before the given one, and a positive time indicates that it is after. */ compare(b) {\n return (0, $14e0f24ef4ac5c92$export$c19a80a9721b80f6)(this, b);\n }\n constructor(hour = 0, minute = 0, second = 0, millisecond = 0){\n (0, $aksy1$_)(this, $35ea8db9cb2ccb90$var$_type1, {\n writable: true,\n value: void 0\n });\n this.hour = hour;\n this.minute = minute;\n this.second = second;\n this.millisecond = millisecond;\n (0, $735220c2d4774dd3$export$7555de1e070510cb)(this);\n }\n}\nvar // This prevents TypeScript from allowing other types with the same fields to match.\n// @ts-ignore\n$35ea8db9cb2ccb90$var$_type2 = /*#__PURE__*/ new WeakMap();\nclass $35ea8db9cb2ccb90$export$ca871e8dbb80966f {\n /** Returns a copy of this date. */ copy() {\n if (this.era) return new $35ea8db9cb2ccb90$export$ca871e8dbb80966f(this.calendar, this.era, this.year, this.month, this.day, this.hour, this.minute, this.second, this.millisecond);\n else return new $35ea8db9cb2ccb90$export$ca871e8dbb80966f(this.calendar, this.year, this.month, this.day, this.hour, this.minute, this.second, this.millisecond);\n }\n /** Returns a new `CalendarDateTime` with the given duration added to it. */ add(duration) {\n return (0, $735220c2d4774dd3$export$e16d8520af44a096)(this, duration);\n }\n /** Returns a new `CalendarDateTime` with the given duration subtracted from it. */ subtract(duration) {\n return (0, $735220c2d4774dd3$export$4e2d2ead65e5f7e3)(this, duration);\n }\n /** Returns a new `CalendarDateTime` with the given fields set to the provided values. Other fields will be constrained accordingly. */ set(fields) {\n return (0, $735220c2d4774dd3$export$adaa4cf7ef1b65be)((0, $735220c2d4774dd3$export$e5d5e1c1822b6e56)(this, fields), fields);\n }\n /**\n * Returns a new `CalendarDateTime` with the given field adjusted by a specified amount.\n * When the resulting value reaches the limits of the field, it wraps around.\n */ cycle(field, amount, options) {\n switch(field){\n case 'era':\n case 'year':\n case 'month':\n case 'day':\n return (0, $735220c2d4774dd3$export$d52ced6badfb9a4c)(this, field, amount, options);\n default:\n return (0, $735220c2d4774dd3$export$dd02b3e0007dfe28)(this, field, amount, options);\n }\n }\n /** Converts the date to a native JavaScript Date object in the given time zone. */ toDate(timeZone, disambiguation) {\n return (0, $11d87f3f76e88657$export$e67a095c620b86fe)(this, timeZone, disambiguation);\n }\n /** Converts the date to an ISO 8601 formatted string. */ toString() {\n return (0, $fae977aafc393c5c$export$4223de14708adc63)(this);\n }\n /** Compares this date with another. A negative result indicates that this date is before the given one, and a positive date indicates that it is after. */ compare(b) {\n let res = (0, $14e0f24ef4ac5c92$export$68781ddf31c0090f)(this, b);\n if (res === 0) return (0, $14e0f24ef4ac5c92$export$c19a80a9721b80f6)(this, (0, $11d87f3f76e88657$export$b21e0b124e224484)(b));\n return res;\n }\n constructor(...args){\n (0, $aksy1$_)(this, $35ea8db9cb2ccb90$var$_type2, {\n writable: true,\n value: void 0\n });\n let [calendar, era, year, month, day] = $35ea8db9cb2ccb90$var$shiftArgs(args);\n this.calendar = calendar;\n this.era = era;\n this.year = year;\n this.month = month;\n this.day = day;\n this.hour = args.shift() || 0;\n this.minute = args.shift() || 0;\n this.second = args.shift() || 0;\n this.millisecond = args.shift() || 0;\n (0, $735220c2d4774dd3$export$c4e2ecac49351ef2)(this);\n }\n}\nvar // This prevents TypeScript from allowing other types with the same fields to match.\n// @ts-ignore\n$35ea8db9cb2ccb90$var$_type3 = /*#__PURE__*/ new WeakMap();\nclass $35ea8db9cb2ccb90$export$d3b7288e7994edea {\n /** Returns a copy of this date. */ copy() {\n if (this.era) return new $35ea8db9cb2ccb90$export$d3b7288e7994edea(this.calendar, this.era, this.year, this.month, this.day, this.timeZone, this.offset, this.hour, this.minute, this.second, this.millisecond);\n else return new $35ea8db9cb2ccb90$export$d3b7288e7994edea(this.calendar, this.year, this.month, this.day, this.timeZone, this.offset, this.hour, this.minute, this.second, this.millisecond);\n }\n /** Returns a new `ZonedDateTime` with the given duration added to it. */ add(duration) {\n return (0, $735220c2d4774dd3$export$96b1d28349274637)(this, duration);\n }\n /** Returns a new `ZonedDateTime` with the given duration subtracted from it. */ subtract(duration) {\n return (0, $735220c2d4774dd3$export$6814caac34ca03c7)(this, duration);\n }\n /** Returns a new `ZonedDateTime` with the given fields set to the provided values. Other fields will be constrained accordingly. */ set(fields, disambiguation) {\n return (0, $735220c2d4774dd3$export$31b5430eb18be4f8)(this, fields, disambiguation);\n }\n /**\n * Returns a new `ZonedDateTime` with the given field adjusted by a specified amount.\n * When the resulting value reaches the limits of the field, it wraps around.\n */ cycle(field, amount, options) {\n return (0, $735220c2d4774dd3$export$9a297d111fc86b79)(this, field, amount, options);\n }\n /** Converts the date to a native JavaScript Date object. */ toDate() {\n return (0, $11d87f3f76e88657$export$83aac07b4c37b25)(this);\n }\n /** Converts the date to an ISO 8601 formatted string, including the UTC offset and time zone identifier. */ toString() {\n return (0, $fae977aafc393c5c$export$bf79f1ebf4b18792)(this);\n }\n /** Converts the date to an ISO 8601 formatted string in UTC. */ toAbsoluteString() {\n return this.toDate().toISOString();\n }\n /** Compares this date with another. A negative result indicates that this date is before the given one, and a positive date indicates that it is after. */ compare(b) {\n // TODO: Is this a bad idea??\n return this.toDate().getTime() - (0, $11d87f3f76e88657$export$84c95a83c799e074)(b, this.timeZone).toDate().getTime();\n }\n constructor(...args){\n (0, $aksy1$_)(this, $35ea8db9cb2ccb90$var$_type3, {\n writable: true,\n value: void 0\n });\n let [calendar, era, year, month, day] = $35ea8db9cb2ccb90$var$shiftArgs(args);\n let timeZone = args.shift();\n let offset = args.shift();\n this.calendar = calendar;\n this.era = era;\n this.year = year;\n this.month = month;\n this.day = day;\n this.timeZone = timeZone;\n this.offset = offset;\n this.hour = args.shift() || 0;\n this.minute = args.shift() || 0;\n this.second = args.shift() || 0;\n this.millisecond = args.shift() || 0;\n (0, $735220c2d4774dd3$export$c4e2ecac49351ef2)(this);\n }\n}\n\n\nexport {$35ea8db9cb2ccb90$export$99faa760c7908e4f as CalendarDate, $35ea8db9cb2ccb90$export$680ea196effce5f as Time, $35ea8db9cb2ccb90$export$ca871e8dbb80966f as CalendarDateTime, $35ea8db9cb2ccb90$export$d3b7288e7994edea as ZonedDateTime};\n//# sourceMappingURL=CalendarDate.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ let $fb18d541ea1ad717$var$formatterCache = new Map();\nclass $fb18d541ea1ad717$export$ad991b66133851cf {\n /** Formats a date as a string according to the locale and format options passed to the constructor. */ format(value) {\n return this.formatter.format(value);\n }\n /** Formats a date to an array of parts such as separators, numbers, punctuation, and more. */ formatToParts(value) {\n return this.formatter.formatToParts(value);\n }\n /** Formats a date range as a string. */ formatRange(start, end) {\n // @ts-ignore\n if (typeof this.formatter.formatRange === 'function') // @ts-ignore\n return this.formatter.formatRange(start, end);\n if (end < start) throw new RangeError('End date must be >= start date');\n // Very basic fallback for old browsers.\n return `${this.formatter.format(start)} \\u{2013} ${this.formatter.format(end)}`;\n }\n /** Formats a date range as an array of parts. */ formatRangeToParts(start, end) {\n // @ts-ignore\n if (typeof this.formatter.formatRangeToParts === 'function') // @ts-ignore\n return this.formatter.formatRangeToParts(start, end);\n if (end < start) throw new RangeError('End date must be >= start date');\n let startParts = this.formatter.formatToParts(start);\n let endParts = this.formatter.formatToParts(end);\n return [\n ...startParts.map((p)=>({\n ...p,\n source: 'startRange'\n })),\n {\n type: 'literal',\n value: \" \\u2013 \",\n source: 'shared'\n },\n ...endParts.map((p)=>({\n ...p,\n source: 'endRange'\n }))\n ];\n }\n /** Returns the resolved formatting options based on the values passed to the constructor. */ resolvedOptions() {\n let resolvedOptions = this.formatter.resolvedOptions();\n if ($fb18d541ea1ad717$var$hasBuggyResolvedHourCycle()) {\n if (!this.resolvedHourCycle) this.resolvedHourCycle = $fb18d541ea1ad717$var$getResolvedHourCycle(resolvedOptions.locale, this.options);\n resolvedOptions.hourCycle = this.resolvedHourCycle;\n resolvedOptions.hour12 = this.resolvedHourCycle === 'h11' || this.resolvedHourCycle === 'h12';\n }\n // Safari uses a different name for the Ethiopic (Amete Alem) calendar.\n // https://bugs.webkit.org/show_bug.cgi?id=241564\n if (resolvedOptions.calendar === 'ethiopic-amete-alem') resolvedOptions.calendar = 'ethioaa';\n return resolvedOptions;\n }\n constructor(locale, options = {}){\n this.formatter = $fb18d541ea1ad717$var$getCachedDateFormatter(locale, options);\n this.options = options;\n }\n}\n// There are multiple bugs involving the hour12 and hourCycle options in various browser engines.\n// - Chrome [1] (and the ECMA 402 spec [2]) resolve hour12: false in English and other locales to h24 (24:00 - 23:59)\n// rather than h23 (00:00 - 23:59). Same can happen with hour12: true in French, which Chrome resolves to h11 (00:00 - 11:59)\n// rather than h12 (12:00 - 11:59).\n// - WebKit returns an incorrect hourCycle resolved option in the French locale due to incorrect parsing of 'h' literal\n// in the resolved pattern. It also formats incorrectly when specifying the hourCycle option for the same reason. [3]\n// [1] https://bugs.chromium.org/p/chromium/issues/detail?id=1045791\n// [2] https://github.com/tc39/ecma402/issues/402\n// [3] https://bugs.webkit.org/show_bug.cgi?id=229313\n// https://github.com/unicode-org/cldr/blob/018b55eff7ceb389c7e3fc44e2f657eae3b10b38/common/supplemental/supplementalData.xml#L4774-L4802\nconst $fb18d541ea1ad717$var$hour12Preferences = {\n true: {\n // Only Japanese uses the h11 style for 12 hour time. All others use h12.\n ja: 'h11'\n },\n false: {\n }\n};\nfunction $fb18d541ea1ad717$var$getCachedDateFormatter(locale, options = {}) {\n // Work around buggy hour12 behavior in Chrome / ECMA 402 spec by using hourCycle instead.\n // Only apply the workaround if the issue is detected, because the hourCycle option is buggy in Safari.\n if (typeof options.hour12 === 'boolean' && $fb18d541ea1ad717$var$hasBuggyHour12Behavior()) {\n options = {\n ...options\n };\n let pref = $fb18d541ea1ad717$var$hour12Preferences[String(options.hour12)][locale.split('-')[0]];\n let defaultHourCycle = options.hour12 ? 'h12' : 'h23';\n options.hourCycle = pref !== null && pref !== void 0 ? pref : defaultHourCycle;\n delete options.hour12;\n }\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b)=>a[0] < b[0] ? -1 : 1).join() : '');\n if ($fb18d541ea1ad717$var$formatterCache.has(cacheKey)) return $fb18d541ea1ad717$var$formatterCache.get(cacheKey);\n let numberFormatter = new Intl.DateTimeFormat(locale, options);\n $fb18d541ea1ad717$var$formatterCache.set(cacheKey, numberFormatter);\n return numberFormatter;\n}\nlet $fb18d541ea1ad717$var$_hasBuggyHour12Behavior = null;\nfunction $fb18d541ea1ad717$var$hasBuggyHour12Behavior() {\n if ($fb18d541ea1ad717$var$_hasBuggyHour12Behavior == null) $fb18d541ea1ad717$var$_hasBuggyHour12Behavior = new Intl.DateTimeFormat('en-US', {\n hour: 'numeric',\n hour12: false\n }).format(new Date(2020, 2, 3, 0)) === '24';\n return $fb18d541ea1ad717$var$_hasBuggyHour12Behavior;\n}\nlet $fb18d541ea1ad717$var$_hasBuggyResolvedHourCycle = null;\nfunction $fb18d541ea1ad717$var$hasBuggyResolvedHourCycle() {\n if ($fb18d541ea1ad717$var$_hasBuggyResolvedHourCycle == null) $fb18d541ea1ad717$var$_hasBuggyResolvedHourCycle = new Intl.DateTimeFormat('fr', {\n hour: 'numeric',\n hour12: false\n }).resolvedOptions().hourCycle === 'h12';\n return $fb18d541ea1ad717$var$_hasBuggyResolvedHourCycle;\n}\nfunction $fb18d541ea1ad717$var$getResolvedHourCycle(locale, options) {\n if (!options.timeStyle && !options.hour) return undefined;\n // Work around buggy results in resolved hourCycle and hour12 options in WebKit.\n // Format the minimum possible hour and maximum possible hour in a day and parse the results.\n locale = locale.replace(/(-u-)?-nu-[a-zA-Z0-9]+/, '');\n locale += (locale.includes('-u-') ? '' : '-u') + '-nu-latn';\n let formatter = $fb18d541ea1ad717$var$getCachedDateFormatter(locale, {\n ...options,\n timeZone: undefined // use local timezone\n });\n let min = parseInt(formatter.formatToParts(new Date(2020, 2, 3, 0)).find((p)=>p.type === 'hour').value, 10);\n let max = parseInt(formatter.formatToParts(new Date(2020, 2, 3, 23)).find((p)=>p.type === 'hour').value, 10);\n if (min === 0 && max === 23) return 'h23';\n if (min === 24 && max === 23) return 'h24';\n if (min === 0 && max === 11) return 'h11';\n if (min === 12 && max === 11) return 'h12';\n throw new Error('Unexpected hour cycle result');\n}\n\n\nexport {$fb18d541ea1ad717$export$ad991b66133851cf as DateFormatter};\n//# sourceMappingURL=DateFormatter.module.js.map\n","/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $5b160d28a433310d$var$localeSymbol = Symbol.for('react-aria.i18n.locale');\nconst $5b160d28a433310d$var$stringsSymbol = Symbol.for('react-aria.i18n.strings');\nlet $5b160d28a433310d$var$cachedGlobalStrings = undefined;\nclass $5b160d28a433310d$export$c17fa47878dc55b6 {\n /** Returns a localized string for the given key and locale. */ getStringForLocale(key, locale) {\n let strings = this.getStringsForLocale(locale);\n let string = strings[key];\n if (!string) throw new Error(`Could not find intl message ${key} in ${locale} locale`);\n return string;\n }\n /** Returns all localized strings for the given locale. */ getStringsForLocale(locale) {\n let strings = this.strings[locale];\n if (!strings) {\n strings = $5b160d28a433310d$var$getStringsForLocale(locale, this.strings, this.defaultLocale);\n this.strings[locale] = strings;\n }\n return strings;\n }\n static getGlobalDictionaryForPackage(packageName) {\n if (typeof window === 'undefined') return null;\n let locale = window[$5b160d28a433310d$var$localeSymbol];\n if ($5b160d28a433310d$var$cachedGlobalStrings === undefined) {\n let globalStrings = window[$5b160d28a433310d$var$stringsSymbol];\n if (!globalStrings) return null;\n $5b160d28a433310d$var$cachedGlobalStrings = {};\n for(let pkg in globalStrings)$5b160d28a433310d$var$cachedGlobalStrings[pkg] = new $5b160d28a433310d$export$c17fa47878dc55b6({\n [locale]: globalStrings[pkg]\n }, locale);\n }\n let dictionary = $5b160d28a433310d$var$cachedGlobalStrings === null || $5b160d28a433310d$var$cachedGlobalStrings === void 0 ? void 0 : $5b160d28a433310d$var$cachedGlobalStrings[packageName];\n if (!dictionary) throw new Error(`Strings for package \"${packageName}\" were not included by LocalizedStringProvider. Please add it to the list passed to createLocalizedStringDictionary.`);\n return dictionary;\n }\n constructor(messages, defaultLocale = 'en-US'){\n // Clone messages so we don't modify the original object.\n // Filter out entries with falsy values which may have been caused by applying optimize-locales-plugin.\n this.strings = Object.fromEntries(Object.entries(messages).filter(([, v])=>v));\n this.defaultLocale = defaultLocale;\n }\n}\nfunction $5b160d28a433310d$var$getStringsForLocale(locale, strings, defaultLocale = 'en-US') {\n // If there is an exact match, use it.\n if (strings[locale]) return strings[locale];\n // Attempt to find the closest match by language.\n // For example, if the locale is fr-CA (French Canadian), but there is only\n // an fr-FR (France) set of strings, use that.\n // This could be replaced with Intl.LocaleMatcher once it is supported.\n // https://github.com/tc39/proposal-intl-localematcher\n let language = $5b160d28a433310d$var$getLanguage(locale);\n if (strings[language]) return strings[language];\n for(let key in strings){\n if (key.startsWith(language + '-')) return strings[key];\n }\n // Nothing close, use english.\n return strings[defaultLocale];\n}\nfunction $5b160d28a433310d$var$getLanguage(locale) {\n // @ts-ignore\n if (Intl.Locale) // @ts-ignore\n return new Intl.Locale(locale).language;\n return locale.split('-')[0];\n}\n\n\nexport {$5b160d28a433310d$export$c17fa47878dc55b6 as LocalizedStringDictionary};\n//# sourceMappingURL=LocalizedStringDictionary.module.js.map\n","/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $6db58dc88e78b024$var$pluralRulesCache = new Map();\nconst $6db58dc88e78b024$var$numberFormatCache = new Map();\nclass $6db58dc88e78b024$export$2f817fcdc4b89ae0 {\n /** Formats a localized string for the given key with the provided variables. */ format(key, variables) {\n let message = this.strings.getStringForLocale(key, this.locale);\n return typeof message === 'function' ? message(variables, this) : message;\n }\n plural(count, options, type = 'cardinal') {\n let opt = options['=' + count];\n if (opt) return typeof opt === 'function' ? opt() : opt;\n let key = this.locale + ':' + type;\n let pluralRules = $6db58dc88e78b024$var$pluralRulesCache.get(key);\n if (!pluralRules) {\n pluralRules = new Intl.PluralRules(this.locale, {\n type: type\n });\n $6db58dc88e78b024$var$pluralRulesCache.set(key, pluralRules);\n }\n let selected = pluralRules.select(count);\n opt = options[selected] || options.other;\n return typeof opt === 'function' ? opt() : opt;\n }\n number(value) {\n let numberFormat = $6db58dc88e78b024$var$numberFormatCache.get(this.locale);\n if (!numberFormat) {\n numberFormat = new Intl.NumberFormat(this.locale);\n $6db58dc88e78b024$var$numberFormatCache.set(this.locale, numberFormat);\n }\n return numberFormat.format(value);\n }\n select(options, value) {\n let opt = options[value] || options.other;\n return typeof opt === 'function' ? opt() : opt;\n }\n constructor(locale, strings){\n this.locale = locale;\n this.strings = strings;\n }\n}\n\n\nexport {$6db58dc88e78b024$export$2f817fcdc4b89ae0 as LocalizedStringFormatter};\n//# sourceMappingURL=LocalizedStringFormatter.module.js.map\n","import {createContext as $69F46$createContext, useMemo as $69F46$useMemo, useContext as $69F46$useContext, useState as $69F46$useState, useRef as $69F46$useRef, useEffect as $69F46$useEffect} from \"react\";\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $e5be200c675c3b3a$export$aca958c65c314e6c = {\n badInput: false,\n customError: false,\n patternMismatch: false,\n rangeOverflow: false,\n rangeUnderflow: false,\n stepMismatch: false,\n tooLong: false,\n tooShort: false,\n typeMismatch: false,\n valueMissing: false,\n valid: true\n};\nconst $e5be200c675c3b3a$var$CUSTOM_VALIDITY_STATE = {\n ...$e5be200c675c3b3a$export$aca958c65c314e6c,\n customError: true,\n valid: false\n};\nconst $e5be200c675c3b3a$export$dad6ae84456c676a = {\n isInvalid: false,\n validationDetails: $e5be200c675c3b3a$export$aca958c65c314e6c,\n validationErrors: []\n};\nconst $e5be200c675c3b3a$export$571b5131b7e65c11 = (0, $69F46$createContext)({});\nconst $e5be200c675c3b3a$export$a763b9476acd3eb = '__formValidationState' + Date.now();\nfunction $e5be200c675c3b3a$export$fc1a364ae1f3ff10(props) {\n // Private prop for parent components to pass state to children.\n if (props[$e5be200c675c3b3a$export$a763b9476acd3eb]) {\n let { realtimeValidation: realtimeValidation, displayValidation: displayValidation, updateValidation: updateValidation, resetValidation: resetValidation, commitValidation: commitValidation } = props[$e5be200c675c3b3a$export$a763b9476acd3eb];\n return {\n realtimeValidation: realtimeValidation,\n displayValidation: displayValidation,\n updateValidation: updateValidation,\n resetValidation: resetValidation,\n commitValidation: commitValidation\n };\n }\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return $e5be200c675c3b3a$var$useFormValidationStateImpl(props);\n}\nfunction $e5be200c675c3b3a$var$useFormValidationStateImpl(props) {\n let { isInvalid: isInvalid, validationState: validationState, name: name, value: value, builtinValidation: builtinValidation, validate: validate, validationBehavior: validationBehavior = 'aria' } = props;\n // backward compatibility.\n if (validationState) isInvalid || (isInvalid = validationState === 'invalid');\n // If the isInvalid prop is controlled, update validation result in realtime.\n let controlledError = isInvalid !== undefined ? {\n isInvalid: isInvalid,\n validationErrors: [],\n validationDetails: $e5be200c675c3b3a$var$CUSTOM_VALIDITY_STATE\n } : null;\n // Perform custom client side validation.\n let clientError = (0, $69F46$useMemo)(()=>{\n if (!validate || value == null) return null;\n let validateErrors = $e5be200c675c3b3a$var$runValidate(validate, value);\n return $e5be200c675c3b3a$var$getValidationResult(validateErrors);\n }, [\n validate,\n value\n ]);\n if (builtinValidation === null || builtinValidation === void 0 ? void 0 : builtinValidation.validationDetails.valid) builtinValidation = undefined;\n // Get relevant server errors from the form.\n let serverErrors = (0, $69F46$useContext)($e5be200c675c3b3a$export$571b5131b7e65c11);\n let serverErrorMessages = (0, $69F46$useMemo)(()=>{\n if (name) return Array.isArray(name) ? name.flatMap((name)=>$e5be200c675c3b3a$var$asArray(serverErrors[name])) : $e5be200c675c3b3a$var$asArray(serverErrors[name]);\n return [];\n }, [\n serverErrors,\n name\n ]);\n // Show server errors when the form gets a new value, and clear when the user changes the value.\n let [lastServerErrors, setLastServerErrors] = (0, $69F46$useState)(serverErrors);\n let [isServerErrorCleared, setServerErrorCleared] = (0, $69F46$useState)(false);\n if (serverErrors !== lastServerErrors) {\n setLastServerErrors(serverErrors);\n setServerErrorCleared(false);\n }\n let serverError = (0, $69F46$useMemo)(()=>$e5be200c675c3b3a$var$getValidationResult(isServerErrorCleared ? [] : serverErrorMessages), [\n isServerErrorCleared,\n serverErrorMessages\n ]);\n // Track the next validation state in a ref until commitValidation is called.\n let nextValidation = (0, $69F46$useRef)($e5be200c675c3b3a$export$dad6ae84456c676a);\n let [currentValidity, setCurrentValidity] = (0, $69F46$useState)($e5be200c675c3b3a$export$dad6ae84456c676a);\n let lastError = (0, $69F46$useRef)($e5be200c675c3b3a$export$dad6ae84456c676a);\n let commitValidation = ()=>{\n if (!commitQueued) return;\n setCommitQueued(false);\n let error = clientError || builtinValidation || nextValidation.current;\n if (!$e5be200c675c3b3a$var$isEqualValidation(error, lastError.current)) {\n lastError.current = error;\n setCurrentValidity(error);\n }\n };\n let [commitQueued, setCommitQueued] = (0, $69F46$useState)(false);\n (0, $69F46$useEffect)(commitValidation);\n // realtimeValidation is used to update the native input element's state based on custom validation logic.\n // displayValidation is the currently displayed validation state that the user sees (e.g. on input change/form submit).\n // With validationBehavior=\"aria\", all errors are displayed in realtime rather than on submit.\n let realtimeValidation = controlledError || serverError || clientError || builtinValidation || $e5be200c675c3b3a$export$dad6ae84456c676a;\n let displayValidation = validationBehavior === 'native' ? controlledError || serverError || currentValidity : controlledError || serverError || clientError || builtinValidation || currentValidity;\n return {\n realtimeValidation: realtimeValidation,\n displayValidation: displayValidation,\n updateValidation (value) {\n // If validationBehavior is 'aria', update in realtime. Otherwise, store in a ref until commit.\n if (validationBehavior === 'aria' && !$e5be200c675c3b3a$var$isEqualValidation(currentValidity, value)) setCurrentValidity(value);\n else nextValidation.current = value;\n },\n resetValidation () {\n // Update the currently displayed validation state to valid on form reset,\n // even if the native validity says it isn't. It'll show again on the next form submit.\n let error = $e5be200c675c3b3a$export$dad6ae84456c676a;\n if (!$e5be200c675c3b3a$var$isEqualValidation(error, lastError.current)) {\n lastError.current = error;\n setCurrentValidity(error);\n }\n // Do not commit validation after the next render. This avoids a condition where\n // useSelect calls commitValidation inside an onReset handler.\n if (validationBehavior === 'native') setCommitQueued(false);\n setServerErrorCleared(true);\n },\n commitValidation () {\n // Commit validation state so the user sees it on blur/change/submit. Also clear any server errors.\n // Wait until after the next render to commit so that the latest value has been validated.\n if (validationBehavior === 'native') setCommitQueued(true);\n setServerErrorCleared(true);\n }\n };\n}\nfunction $e5be200c675c3b3a$var$asArray(v) {\n if (!v) return [];\n return Array.isArray(v) ? v : [\n v\n ];\n}\nfunction $e5be200c675c3b3a$var$runValidate(validate, value) {\n if (typeof validate === 'function') {\n let e = validate(value);\n if (e && typeof e !== 'boolean') return $e5be200c675c3b3a$var$asArray(e);\n }\n return [];\n}\nfunction $e5be200c675c3b3a$var$getValidationResult(errors) {\n return errors.length ? {\n isInvalid: true,\n validationErrors: errors,\n validationDetails: $e5be200c675c3b3a$var$CUSTOM_VALIDITY_STATE\n } : null;\n}\nfunction $e5be200c675c3b3a$var$isEqualValidation(a, b) {\n if (a === b) return true;\n return !!a && !!b && a.isInvalid === b.isInvalid && a.validationErrors.length === b.validationErrors.length && a.validationErrors.every((a, i)=>a === b.validationErrors[i]) && Object.entries(a.validationDetails).every(([k, v])=>b.validationDetails[k] === v);\n}\nfunction $e5be200c675c3b3a$export$75ee7c75d68f5b0e(...results) {\n let errors = new Set();\n let isInvalid = false;\n let validationDetails = {\n ...$e5be200c675c3b3a$export$aca958c65c314e6c\n };\n for (let v of results){\n var _validationDetails, _key;\n for (let e of v.validationErrors)errors.add(e);\n // Only these properties apply for checkboxes.\n isInvalid || (isInvalid = v.isInvalid);\n for(let key in validationDetails)(_validationDetails = validationDetails)[_key = key] || (_validationDetails[_key] = v.validationDetails[key]);\n }\n validationDetails.valid = !isInvalid;\n return {\n isInvalid: isInvalid,\n validationErrors: [\n ...errors\n ],\n validationDetails: validationDetails\n };\n}\n\n\nexport {$e5be200c675c3b3a$export$aca958c65c314e6c as VALID_VALIDITY_STATE, $e5be200c675c3b3a$export$dad6ae84456c676a as DEFAULT_VALIDATION_RESULT, $e5be200c675c3b3a$export$571b5131b7e65c11 as FormValidationContext, $e5be200c675c3b3a$export$a763b9476acd3eb as privateValidationStateProp, $e5be200c675c3b3a$export$fc1a364ae1f3ff10 as useFormValidationState, $e5be200c675c3b3a$export$75ee7c75d68f5b0e as mergeValidation};\n//# sourceMappingURL=useFormValidationState.module.js.map\n","import $bUJMr$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {DateFormatter as $bUJMr$DateFormatter, Time as $bUJMr$Time, toCalendar as $bUJMr$toCalendar, now as $bUJMr$now, getLocalTimeZone as $bUJMr$getLocalTimeZone, toCalendarDate as $bUJMr$toCalendarDate, toCalendarDateTime as $bUJMr$toCalendarDateTime} from \"@internationalized/date\";\nimport {LocalizedStringDictionary as $bUJMr$LocalizedStringDictionary, LocalizedStringFormatter as $bUJMr$LocalizedStringFormatter} from \"@internationalized/string\";\nimport {mergeValidation as $bUJMr$mergeValidation, VALID_VALIDITY_STATE as $bUJMr$VALID_VALIDITY_STATE} from \"@react-stately/form\";\nimport {useState as $bUJMr$useState} from \"react\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nconst $35a22f14a1f04b11$var$dictionary = new (0, $bUJMr$LocalizedStringDictionary)((0, ($parcel$interopDefault($bUJMr$intlStringsmodulejs))));\nfunction $35a22f14a1f04b11$var$getLocale() {\n // Match browser language setting here, NOT react-aria's I18nProvider, so that we match other browser-provided\n // validation messages, which to not respect our provider's language.\n // @ts-ignore\n return typeof navigator !== 'undefined' && (navigator.language || navigator.userLanguage) || 'en-US';\n}\nfunction $35a22f14a1f04b11$export$f18627323ab57ac0(value, minValue, maxValue, isDateUnavailable, options) {\n let rangeOverflow = value != null && maxValue != null && value.compare(maxValue) > 0;\n let rangeUnderflow = value != null && minValue != null && value.compare(minValue) < 0;\n let isUnavailable = value != null && (isDateUnavailable === null || isDateUnavailable === void 0 ? void 0 : isDateUnavailable(value)) || false;\n let isInvalid = rangeOverflow || rangeUnderflow || isUnavailable;\n let errors = [];\n if (isInvalid) {\n let locale = $35a22f14a1f04b11$var$getLocale();\n let strings = (0, $bUJMr$LocalizedStringDictionary).getGlobalDictionaryForPackage('@react-stately/datepicker') || $35a22f14a1f04b11$var$dictionary;\n let formatter = new (0, $bUJMr$LocalizedStringFormatter)(locale, strings);\n let dateFormatter = new (0, $bUJMr$DateFormatter)(locale, $35a22f14a1f04b11$export$7e319ea407e63bc0({}, options));\n let timeZone = dateFormatter.resolvedOptions().timeZone;\n if (rangeUnderflow && minValue != null) errors.push(formatter.format('rangeUnderflow', {\n minValue: dateFormatter.format(minValue.toDate(timeZone))\n }));\n if (rangeOverflow && maxValue != null) errors.push(formatter.format('rangeOverflow', {\n maxValue: dateFormatter.format(maxValue.toDate(timeZone))\n }));\n if (isUnavailable) errors.push(formatter.format('unavailableDate'));\n }\n return {\n isInvalid: isInvalid,\n validationErrors: errors,\n validationDetails: {\n badInput: isUnavailable,\n customError: false,\n patternMismatch: false,\n rangeOverflow: rangeOverflow,\n rangeUnderflow: rangeUnderflow,\n stepMismatch: false,\n tooLong: false,\n tooShort: false,\n typeMismatch: false,\n valueMissing: false,\n valid: !isInvalid\n }\n };\n}\nfunction $35a22f14a1f04b11$export$80ff8fc0ae339c13(value, minValue, maxValue, isDateUnavailable, options) {\n var _value_start;\n let startValidation = $35a22f14a1f04b11$export$f18627323ab57ac0((_value_start = value === null || value === void 0 ? void 0 : value.start) !== null && _value_start !== void 0 ? _value_start : null, minValue, maxValue, isDateUnavailable, options);\n var _value_end;\n let endValidation = $35a22f14a1f04b11$export$f18627323ab57ac0((_value_end = value === null || value === void 0 ? void 0 : value.end) !== null && _value_end !== void 0 ? _value_end : null, minValue, maxValue, isDateUnavailable, options);\n let result = (0, $bUJMr$mergeValidation)(startValidation, endValidation);\n if ((value === null || value === void 0 ? void 0 : value.end) != null && value.start != null && value.end.compare(value.start) < 0) {\n let strings = (0, $bUJMr$LocalizedStringDictionary).getGlobalDictionaryForPackage('@react-stately/datepicker') || $35a22f14a1f04b11$var$dictionary;\n result = (0, $bUJMr$mergeValidation)(result, {\n isInvalid: true,\n validationErrors: [\n strings.getStringForLocale('rangeReversed', $35a22f14a1f04b11$var$getLocale())\n ],\n validationDetails: {\n ...(0, $bUJMr$VALID_VALIDITY_STATE),\n rangeUnderflow: true,\n rangeOverflow: true,\n valid: false\n }\n });\n }\n return result;\n}\nconst $35a22f14a1f04b11$var$DEFAULT_FIELD_OPTIONS = {\n year: 'numeric',\n month: 'numeric',\n day: 'numeric',\n hour: 'numeric',\n minute: '2-digit',\n second: '2-digit'\n};\nconst $35a22f14a1f04b11$var$TWO_DIGIT_FIELD_OPTIONS = {\n year: 'numeric',\n month: '2-digit',\n day: '2-digit',\n hour: '2-digit',\n minute: '2-digit',\n second: '2-digit'\n};\nfunction $35a22f14a1f04b11$export$7e319ea407e63bc0(fieldOptions, options) {\n let defaultFieldOptions = options.shouldForceLeadingZeros ? $35a22f14a1f04b11$var$TWO_DIGIT_FIELD_OPTIONS : $35a22f14a1f04b11$var$DEFAULT_FIELD_OPTIONS;\n fieldOptions = {\n ...defaultFieldOptions,\n ...fieldOptions\n };\n let granularity = options.granularity || 'minute';\n let keys = Object.keys(fieldOptions);\n var _options_maxGranularity;\n let startIdx = keys.indexOf((_options_maxGranularity = options.maxGranularity) !== null && _options_maxGranularity !== void 0 ? _options_maxGranularity : 'year');\n if (startIdx < 0) startIdx = 0;\n let endIdx = keys.indexOf(granularity);\n if (endIdx < 0) endIdx = 2;\n if (startIdx > endIdx) throw new Error('maxGranularity must be greater than granularity');\n let opts = keys.slice(startIdx, endIdx + 1).reduce((opts, key)=>{\n opts[key] = fieldOptions[key];\n return opts;\n }, {});\n if (options.hourCycle != null) opts.hour12 = options.hourCycle === 12;\n opts.timeZone = options.timeZone || 'UTC';\n let hasTime = granularity === 'hour' || granularity === 'minute' || granularity === 'second';\n if (hasTime && options.timeZone && !options.hideTimeZone) opts.timeZoneName = 'short';\n if (options.showEra && startIdx === 0) opts.era = 'short';\n return opts;\n}\nfunction $35a22f14a1f04b11$export$c5221a78ef73c5e9(placeholderValue) {\n if (placeholderValue && 'hour' in placeholderValue) return placeholderValue;\n return new (0, $bUJMr$Time)();\n}\nfunction $35a22f14a1f04b11$export$61a490a80c552550(value, calendar) {\n if (value === null) return null;\n if (!value) return undefined;\n return (0, $bUJMr$toCalendar)(value, calendar);\n}\nfunction $35a22f14a1f04b11$export$66aa2b09de4b1ea5(placeholderValue, granularity, calendar, timeZone) {\n if (placeholderValue) return $35a22f14a1f04b11$export$61a490a80c552550(placeholderValue, calendar);\n let date = (0, $bUJMr$toCalendar)((0, $bUJMr$now)(timeZone !== null && timeZone !== void 0 ? timeZone : (0, $bUJMr$getLocalTimeZone)()).set({\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }), calendar);\n if (granularity === 'year' || granularity === 'month' || granularity === 'day') return (0, $bUJMr$toCalendarDate)(date);\n if (!timeZone) return (0, $bUJMr$toCalendarDateTime)(date);\n return date;\n}\nfunction $35a22f14a1f04b11$export$2440da353cedad43(v, granularity) {\n // Compute default granularity and time zone from the value. If the value becomes null, keep the last values.\n let defaultTimeZone = v && 'timeZone' in v ? v.timeZone : undefined;\n let defaultGranularity = v && 'minute' in v ? 'minute' : 'day';\n // props.granularity must actually exist in the value if one is provided.\n if (v && granularity && !(granularity in v)) throw new Error('Invalid granularity ' + granularity + ' for value ' + v.toString());\n let [lastValue, setLastValue] = (0, $bUJMr$useState)([\n defaultGranularity,\n defaultTimeZone\n ]);\n // If the granularity or time zone changed, update the last value.\n if (v && (lastValue[0] !== defaultGranularity || lastValue[1] !== defaultTimeZone)) setLastValue([\n defaultGranularity,\n defaultTimeZone\n ]);\n if (!granularity) granularity = v ? defaultGranularity : lastValue[0];\n let timeZone = v ? defaultTimeZone : lastValue[1];\n return [\n granularity,\n timeZone\n ];\n}\n\n\nexport {$35a22f14a1f04b11$export$f18627323ab57ac0 as getValidationResult, $35a22f14a1f04b11$export$7e319ea407e63bc0 as getFormatOptions, $35a22f14a1f04b11$export$80ff8fc0ae339c13 as getRangeValidationResult, $35a22f14a1f04b11$export$c5221a78ef73c5e9 as getPlaceholderTime, $35a22f14a1f04b11$export$61a490a80c552550 as convertValue, $35a22f14a1f04b11$export$66aa2b09de4b1ea5 as createPlaceholderDate, $35a22f14a1f04b11$export$2440da353cedad43 as useDefaultProps};\n//# sourceMappingURL=utils.module.js.map\n","import {useState as $3whtM$useState, useRef as $3whtM$useRef, useEffect as $3whtM$useEffect, useCallback as $3whtM$useCallback} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $458b0a5536c1a7cf$export$40bfa8c7b0832715(value, defaultValue, onChange) {\n let [stateValue, setStateValue] = (0, $3whtM$useState)(value || defaultValue);\n let isControlledRef = (0, $3whtM$useRef)(value !== undefined);\n let isControlled = value !== undefined;\n (0, $3whtM$useEffect)(()=>{\n let wasControlled = isControlledRef.current;\n if (wasControlled !== isControlled && process.env.NODE_ENV !== 'production') console.warn(`WARN: A component changed from ${wasControlled ? 'controlled' : 'uncontrolled'} to ${isControlled ? 'controlled' : 'uncontrolled'}.`);\n isControlledRef.current = isControlled;\n }, [\n isControlled\n ]);\n let currentValue = isControlled ? value : stateValue;\n let setValue = (0, $3whtM$useCallback)((value, ...args)=>{\n let onChangeCaller = (value, ...onChangeArgs)=>{\n if (onChange) {\n if (!Object.is(currentValue, value)) onChange(value, ...onChangeArgs);\n }\n if (!isControlled) // If uncontrolled, mutate the currentValue local variable so that\n // calling setState multiple times with the same value only emits onChange once.\n // We do not use a ref for this because we specifically _do_ want the value to\n // reset every render, and assigning to a ref in render breaks aborted suspended renders.\n // eslint-disable-next-line react-hooks/exhaustive-deps\n currentValue = value;\n };\n if (typeof value === 'function') {\n if (process.env.NODE_ENV !== 'production') console.warn('We can not support a function callback. See Github Issues for details https://github.com/adobe/react-spectrum/issues/2320');\n // this supports functional updates https://reactjs.org/docs/hooks-reference.html#functional-updates\n // when someone using useControlledState calls setControlledState(myFunc)\n // this will call our useState setState with a function as well which invokes myFunc and calls onChange with the value from myFunc\n // if we're in an uncontrolled state, then we also return the value of myFunc which to setState looks as though it was just called with myFunc from the beginning\n // otherwise we just return the controlled value, which won't cause a rerender because React knows to bail out when the value is the same\n let updateFunction = (oldValue, ...functionArgs)=>{\n let interceptedValue = value(isControlled ? currentValue : oldValue, ...functionArgs);\n onChangeCaller(interceptedValue, ...args);\n if (!isControlled) return interceptedValue;\n return oldValue;\n };\n setStateValue(updateFunction);\n } else {\n if (!isControlled) setStateValue(value);\n onChangeCaller(value, ...args);\n }\n }, [\n isControlled,\n currentValue,\n onChange\n ]);\n return [\n currentValue,\n setValue\n ];\n}\n\n\nexport {$458b0a5536c1a7cf$export$40bfa8c7b0832715 as useControlledState};\n//# sourceMappingURL=useControlledState.module.js.map\n","import {useCallback as $hnMvi$useCallback} from \"react\";\nimport {useControlledState as $hnMvi$useControlledState} from \"@react-stately/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $fc909762b330b746$export$61c6a8c84e605fb6(props) {\n let [isOpen, setOpen] = (0, $hnMvi$useControlledState)(props.isOpen, props.defaultOpen || false, props.onOpenChange);\n const open = (0, $hnMvi$useCallback)(()=>{\n setOpen(true);\n }, [\n setOpen\n ]);\n const close = (0, $hnMvi$useCallback)(()=>{\n setOpen(false);\n }, [\n setOpen\n ]);\n const toggle = (0, $hnMvi$useCallback)(()=>{\n setOpen(!isOpen);\n }, [\n setOpen,\n isOpen\n ]);\n return {\n isOpen: isOpen,\n setOpen: setOpen,\n open: open,\n close: close,\n toggle: toggle\n };\n}\n\n\nexport {$fc909762b330b746$export$61c6a8c84e605fb6 as useOverlayTriggerState};\n//# sourceMappingURL=useOverlayTriggerState.module.js.map\n","import {getFormatOptions as $35a22f14a1f04b11$export$7e319ea407e63bc0, getPlaceholderTime as $35a22f14a1f04b11$export$c5221a78ef73c5e9, getValidationResult as $35a22f14a1f04b11$export$f18627323ab57ac0, useDefaultProps as $35a22f14a1f04b11$export$2440da353cedad43} from \"./utils.mjs\";\nimport {toCalendarDate as $goopS$toCalendarDate, toCalendarDateTime as $goopS$toCalendarDateTime, DateFormatter as $goopS$DateFormatter} from \"@internationalized/date\";\nimport {useFormValidationState as $goopS$useFormValidationState} from \"@react-stately/form\";\nimport {useOverlayTriggerState as $goopS$useOverlayTriggerState} from \"@react-stately/overlays\";\nimport {useControlledState as $goopS$useControlledState} from \"@react-stately/utils\";\nimport {useState as $goopS$useState, useMemo as $goopS$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\nfunction $ab5bf3f618090389$export$87194bb378cc3ac2(props) {\n let overlayState = (0, $goopS$useOverlayTriggerState)(props);\n let [value, setValue] = (0, $goopS$useControlledState)(props.value, props.defaultValue || null, props.onChange);\n let [initialValue] = (0, $goopS$useState)(value);\n let v = value || props.placeholderValue || null;\n let [granularity, defaultTimeZone] = (0, $35a22f14a1f04b11$export$2440da353cedad43)(v, props.granularity);\n let dateValue = value != null ? value.toDate(defaultTimeZone !== null && defaultTimeZone !== void 0 ? defaultTimeZone : 'UTC') : null;\n let hasTime = granularity === 'hour' || granularity === 'minute' || granularity === 'second';\n var _props_shouldCloseOnSelect;\n let shouldCloseOnSelect = (_props_shouldCloseOnSelect = props.shouldCloseOnSelect) !== null && _props_shouldCloseOnSelect !== void 0 ? _props_shouldCloseOnSelect : true;\n let [selectedDate, setSelectedDate] = (0, $goopS$useState)(null);\n let [selectedTime, setSelectedTime] = (0, $goopS$useState)(null);\n if (value) {\n selectedDate = value;\n if ('hour' in value) selectedTime = value;\n }\n // props.granularity must actually exist in the value if one is provided.\n if (v && !(granularity in v)) throw new Error('Invalid granularity ' + granularity + ' for value ' + v.toString());\n let showEra = (value === null || value === void 0 ? void 0 : value.calendar.identifier) === 'gregory' && value.era === 'BC';\n let formatOpts = (0, $goopS$useMemo)(()=>({\n granularity: granularity,\n timeZone: defaultTimeZone,\n hideTimeZone: props.hideTimeZone,\n hourCycle: props.hourCycle,\n shouldForceLeadingZeros: props.shouldForceLeadingZeros,\n showEra: showEra\n }), [\n granularity,\n props.hourCycle,\n props.shouldForceLeadingZeros,\n defaultTimeZone,\n props.hideTimeZone,\n showEra\n ]);\n let { minValue: minValue, maxValue: maxValue, isDateUnavailable: isDateUnavailable } = props;\n let builtinValidation = (0, $goopS$useMemo)(()=>(0, $35a22f14a1f04b11$export$f18627323ab57ac0)(value, minValue, maxValue, isDateUnavailable, formatOpts), [\n value,\n minValue,\n maxValue,\n isDateUnavailable,\n formatOpts\n ]);\n let validation = (0, $goopS$useFormValidationState)({\n ...props,\n value: value,\n builtinValidation: builtinValidation\n });\n let isValueInvalid = validation.displayValidation.isInvalid;\n let validationState = props.validationState || (isValueInvalid ? 'invalid' : null);\n let commitValue = (date, time)=>{\n setValue('timeZone' in time ? time.set((0, $goopS$toCalendarDate)(date)) : (0, $goopS$toCalendarDateTime)(date, time));\n setSelectedDate(null);\n setSelectedTime(null);\n validation.commitValidation();\n };\n // Intercept setValue to make sure the Time section is not changed by date selection in Calendar\n let selectDate = (newValue)=>{\n let shouldClose = typeof shouldCloseOnSelect === 'function' ? shouldCloseOnSelect() : shouldCloseOnSelect;\n if (hasTime) {\n if (selectedTime || shouldClose) commitValue(newValue, selectedTime || (0, $35a22f14a1f04b11$export$c5221a78ef73c5e9)(props.defaultValue || props.placeholderValue));\n else setSelectedDate(newValue);\n } else {\n setValue(newValue);\n validation.commitValidation();\n }\n if (shouldClose) overlayState.setOpen(false);\n };\n let selectTime = (newValue)=>{\n if (selectedDate && newValue) commitValue(selectedDate, newValue);\n else setSelectedTime(newValue);\n };\n var _props_defaultValue;\n return {\n ...validation,\n value: value,\n defaultValue: (_props_defaultValue = props.defaultValue) !== null && _props_defaultValue !== void 0 ? _props_defaultValue : initialValue,\n setValue: setValue,\n dateValue: selectedDate,\n timeValue: selectedTime,\n setDateValue: selectDate,\n setTimeValue: selectTime,\n granularity: granularity,\n hasTime: hasTime,\n ...overlayState,\n setOpen (isOpen) {\n // Commit the selected date when the calendar is closed. Use a placeholder time if one wasn't set.\n // If only the time was set and not the date, don't commit. The state will be preserved until\n // the user opens the popover again.\n if (!isOpen && !value && selectedDate && hasTime) commitValue(selectedDate, selectedTime || (0, $35a22f14a1f04b11$export$c5221a78ef73c5e9)(props.defaultValue || props.placeholderValue));\n overlayState.setOpen(isOpen);\n },\n validationState: validationState,\n isInvalid: isValueInvalid,\n formatValue (locale, fieldOptions) {\n if (!dateValue) return '';\n let formatOptions = (0, $35a22f14a1f04b11$export$7e319ea407e63bc0)(fieldOptions, formatOpts);\n let formatter = new (0, $goopS$DateFormatter)(locale, formatOptions);\n return formatter.format(dateValue);\n },\n getDateFormatter (locale, formatOptions) {\n let newOptions = {\n ...formatOpts,\n ...formatOptions\n };\n let newFormatOptions = (0, $35a22f14a1f04b11$export$7e319ea407e63bc0)({}, newOptions);\n return new (0, $goopS$DateFormatter)(locale, newFormatOptions);\n }\n };\n}\n\n\nexport {$ab5bf3f618090389$export$87194bb378cc3ac2 as useDatePickerState};\n//# sourceMappingURL=useDatePickerState.module.js.map\n","import {LocalizedStringDictionary as $bzTv4$LocalizedStringDictionary} from \"@internationalized/string\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n// These placeholders are based on the strings used by the <input type=\"date\">\n// implementations in Chrome and Firefox. Additional languages are supported\n// here than React Spectrum's typical translations.\nconst $3e3ed55ab2966714$var$placeholders = new (0, $bzTv4$LocalizedStringDictionary)({\n ach: {\n year: 'mwaka',\n month: 'dwe',\n day: 'nino'\n },\n af: {\n year: 'jjjj',\n month: 'mm',\n day: 'dd'\n },\n am: {\n year: \"\\u12D3\\u12D3\\u12D3\\u12D3\",\n month: \"\\u121A\\u121C\",\n day: \"\\u1240\\u1240\"\n },\n an: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n ar: {\n year: \"\\u0633\\u0646\\u0629\",\n month: \"\\u0634\\u0647\\u0631\",\n day: \"\\u064A\\u0648\\u0645\"\n },\n ast: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n az: {\n year: 'iiii',\n month: 'aa',\n day: 'gg'\n },\n be: {\n year: \"\\u0433\\u0433\\u0433\\u0433\",\n month: \"\\u043C\\u043C\",\n day: \"\\u0434\\u0434\"\n },\n bg: {\n year: \"\\u0433\\u0433\\u0433\\u0433\",\n month: \"\\u043C\\u043C\",\n day: \"\\u0434\\u0434\"\n },\n bn: {\n year: 'yyyy',\n month: \"\\u09AE\\u09BF\\u09AE\\u09BF\",\n day: 'dd'\n },\n br: {\n year: 'bbbb',\n month: 'mm',\n day: 'dd'\n },\n bs: {\n year: 'gggg',\n month: 'mm',\n day: 'dd'\n },\n ca: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n cak: {\n year: 'jjjj',\n month: 'ii',\n day: \"q'q'\"\n },\n ckb: {\n year: \"\\u0633\\u0627\\u06B5\",\n month: \"\\u0645\\u0627\\u0646\\u06AF\",\n day: \"\\u0695\\u06C6\\u0698\"\n },\n cs: {\n year: 'rrrr',\n month: 'mm',\n day: 'dd'\n },\n cy: {\n year: 'bbbb',\n month: 'mm',\n day: 'dd'\n },\n da: {\n year: \"\\xe5\\xe5\\xe5\\xe5\",\n month: 'mm',\n day: 'dd'\n },\n de: {\n year: 'jjjj',\n month: 'mm',\n day: 'tt'\n },\n dsb: {\n year: 'llll',\n month: 'mm',\n day: \"\\u017A\\u017A\"\n },\n el: {\n year: \"\\u03B5\\u03B5\\u03B5\\u03B5\",\n month: \"\\u03BC\\u03BC\",\n day: \"\\u03B7\\u03B7\"\n },\n en: {\n year: 'yyyy',\n month: 'mm',\n day: 'dd'\n },\n eo: {\n year: 'jjjj',\n month: 'mm',\n day: 'tt'\n },\n es: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n et: {\n year: 'aaaa',\n month: 'kk',\n day: 'pp'\n },\n eu: {\n year: 'uuuu',\n month: 'hh',\n day: 'ee'\n },\n fa: {\n year: \"\\u0633\\u0627\\u0644\",\n month: \"\\u0645\\u0627\\u0647\",\n day: \"\\u0631\\u0648\\u0632\"\n },\n ff: {\n year: 'hhhh',\n month: 'll',\n day: \"\\xf1\\xf1\"\n },\n fi: {\n year: 'vvvv',\n month: 'kk',\n day: 'pp'\n },\n fr: {\n year: 'aaaa',\n month: 'mm',\n day: 'jj'\n },\n fy: {\n year: 'jjjj',\n month: 'mm',\n day: 'dd'\n },\n ga: {\n year: 'bbbb',\n month: 'mm',\n day: 'll'\n },\n gd: {\n year: 'bbbb',\n month: 'mm',\n day: 'll'\n },\n gl: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n he: {\n year: \"\\u05E9\\u05E0\\u05D4\",\n month: \"\\u05D7\\u05D5\\u05D3\\u05E9\",\n day: \"\\u05D9\\u05D5\\u05DD\"\n },\n hr: {\n year: 'gggg',\n month: 'mm',\n day: 'dd'\n },\n hsb: {\n year: 'llll',\n month: 'mm',\n day: 'dd'\n },\n hu: {\n year: \"\\xe9\\xe9\\xe9\\xe9\",\n month: 'hh',\n day: 'nn'\n },\n ia: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n id: {\n year: 'tttt',\n month: 'bb',\n day: 'hh'\n },\n it: {\n year: 'aaaa',\n month: 'mm',\n day: 'gg'\n },\n ja: {\n year: \"\\u5E74\",\n month: \"\\u6708\",\n day: \"\\u65E5\"\n },\n ka: {\n year: \"\\u10EC\\u10EC\\u10EC\\u10EC\",\n month: \"\\u10D7\\u10D7\",\n day: \"\\u10E0\\u10E0\"\n },\n kk: {\n year: \"\\u0436\\u0436\\u0436\\u0436\",\n month: \"\\u0430\\u0430\",\n day: \"\\u043A\\u043A\"\n },\n kn: {\n year: \"\\u0CB5\\u0CB5\\u0CB5\\u0CB5\",\n month: \"\\u0CAE\\u0CBF\\u0CAE\\u0CC0\",\n day: \"\\u0CA6\\u0CBF\\u0CA6\\u0CBF\"\n },\n ko: {\n year: \"\\uC5F0\\uB3C4\",\n month: \"\\uC6D4\",\n day: \"\\uC77C\"\n },\n lb: {\n year: 'jjjj',\n month: 'mm',\n day: 'dd'\n },\n lo: {\n year: \"\\u0E9B\\u0E9B\\u0E9B\\u0E9B\",\n month: \"\\u0E94\\u0E94\",\n day: \"\\u0EA7\\u0EA7\"\n },\n lt: {\n year: 'mmmm',\n month: 'mm',\n day: 'dd'\n },\n lv: {\n year: 'gggg',\n month: 'mm',\n day: 'dd'\n },\n meh: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n ml: {\n year: \"\\u0D35\\u0D7C\\u0D37\\u0D02\",\n month: \"\\u0D2E\\u0D3E\\u0D38\\u0D02\",\n day: \"\\u0D24\\u0D40\\u0D2F\\u0D24\\u0D3F\"\n },\n ms: {\n year: 'tttt',\n month: 'mm',\n day: 'hh'\n },\n nl: {\n year: 'jjjj',\n month: 'mm',\n day: 'dd'\n },\n nn: {\n year: \"\\xe5\\xe5\\xe5\\xe5\",\n month: 'mm',\n day: 'dd'\n },\n no: {\n year: \"\\xe5\\xe5\\xe5\\xe5\",\n month: 'mm',\n day: 'dd'\n },\n oc: {\n year: 'aaaa',\n month: 'mm',\n day: 'jj'\n },\n pl: {\n year: 'rrrr',\n month: 'mm',\n day: 'dd'\n },\n pt: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n rm: {\n year: 'oooo',\n month: 'mm',\n day: 'dd'\n },\n ro: {\n year: 'aaaa',\n month: 'll',\n day: 'zz'\n },\n ru: {\n year: \"\\u0433\\u0433\\u0433\\u0433\",\n month: \"\\u043C\\u043C\",\n day: \"\\u0434\\u0434\"\n },\n sc: {\n year: 'aaaa',\n month: 'mm',\n day: 'dd'\n },\n scn: {\n year: 'aaaa',\n month: 'mm',\n day: 'jj'\n },\n sk: {\n year: 'rrrr',\n month: 'mm',\n day: 'dd'\n },\n sl: {\n year: 'llll',\n month: 'mm',\n day: 'dd'\n },\n sr: {\n year: \"\\u0433\\u0433\\u0433\\u0433\",\n month: \"\\u043C\\u043C\",\n day: \"\\u0434\\u0434\"\n },\n sv: {\n year: \"\\xe5\\xe5\\xe5\\xe5\",\n month: 'mm',\n day: 'dd'\n },\n szl: {\n year: 'rrrr',\n month: 'mm',\n day: 'dd'\n },\n tg: {\n year: \"\\u0441\\u0441\\u0441\\u0441\",\n month: \"\\u043C\\u043C\",\n day: \"\\u0440\\u0440\"\n },\n th: {\n year: \"\\u0E1B\\u0E1B\\u0E1B\\u0E1B\",\n month: \"\\u0E14\\u0E14\",\n day: \"\\u0E27\\u0E27\"\n },\n tr: {\n year: 'yyyy',\n month: 'aa',\n day: 'gg'\n },\n uk: {\n year: \"\\u0440\\u0440\\u0440\\u0440\",\n month: \"\\u043C\\u043C\",\n day: \"\\u0434\\u0434\"\n },\n 'zh-CN': {\n year: \"\\u5E74\",\n month: \"\\u6708\",\n day: \"\\u65E5\"\n },\n 'zh-TW': {\n year: \"\\u5E74\",\n month: \"\\u6708\",\n day: \"\\u65E5\"\n }\n}, 'en');\nfunction $3e3ed55ab2966714$export$d3f5c5e0a5023fa0(field, value, locale) {\n // Use the actual placeholder value for the era and day period fields.\n if (field === 'era' || field === 'dayPeriod') return value;\n if (field === 'year' || field === 'month' || field === 'day') return $3e3ed55ab2966714$var$placeholders.getStringForLocale(field, locale);\n // For time fields (e.g. hour, minute, etc.), use two dashes as the placeholder.\n return \"\\u2013\\u2013\";\n}\n\n\nexport {$3e3ed55ab2966714$export$d3f5c5e0a5023fa0 as getPlaceholder};\n//# sourceMappingURL=placeholders.module.js.map\n","import {convertValue as $35a22f14a1f04b11$export$61a490a80c552550, createPlaceholderDate as $35a22f14a1f04b11$export$66aa2b09de4b1ea5, getFormatOptions as $35a22f14a1f04b11$export$7e319ea407e63bc0, getValidationResult as $35a22f14a1f04b11$export$f18627323ab57ac0, useDefaultProps as $35a22f14a1f04b11$export$2440da353cedad43} from \"./utils.mjs\";\nimport {getPlaceholder as $3e3ed55ab2966714$export$d3f5c5e0a5023fa0} from \"./placeholders.mjs\";\nimport {DateFormatter as $g03ag$DateFormatter, isEqualCalendar as $g03ag$isEqualCalendar, toCalendar as $g03ag$toCalendar, GregorianCalendar as $g03ag$GregorianCalendar, getMinimumMonthInYear as $g03ag$getMinimumMonthInYear, getMinimumDayInMonth as $g03ag$getMinimumDayInMonth} from \"@internationalized/date\";\nimport {useFormValidationState as $g03ag$useFormValidationState} from \"@react-stately/form\";\nimport {useControlledState as $g03ag$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $g03ag$useMemo, useState as $g03ag$useState, useRef as $g03ag$useRef, useEffect as $g03ag$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\nconst $3c0fc76039f1c516$var$EDITABLE_SEGMENTS = {\n year: true,\n month: true,\n day: true,\n hour: true,\n minute: true,\n second: true,\n dayPeriod: true,\n era: true\n};\nconst $3c0fc76039f1c516$var$PAGE_STEP = {\n year: 5,\n month: 2,\n day: 7,\n hour: 2,\n minute: 15,\n second: 15\n};\nconst $3c0fc76039f1c516$var$TYPE_MAPPING = {\n // Node seems to convert everything to lowercase...\n dayperiod: 'dayPeriod',\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/formatToParts#named_years\n relatedYear: 'year',\n yearName: 'literal',\n unknown: 'literal'\n};\nfunction $3c0fc76039f1c516$export$60e84778edff6d26(props) {\n let { locale: locale, createCalendar: createCalendar, hideTimeZone: hideTimeZone, isDisabled: isDisabled = false, isReadOnly: isReadOnly = false, isRequired: isRequired = false, minValue: minValue, maxValue: maxValue, isDateUnavailable: isDateUnavailable } = props;\n let v = props.value || props.defaultValue || props.placeholderValue || null;\n let [granularity, defaultTimeZone] = (0, $35a22f14a1f04b11$export$2440da353cedad43)(v, props.granularity);\n let timeZone = defaultTimeZone || 'UTC';\n // props.granularity must actually exist in the value if one is provided.\n if (v && !(granularity in v)) throw new Error('Invalid granularity ' + granularity + ' for value ' + v.toString());\n let defaultFormatter = (0, $g03ag$useMemo)(()=>new (0, $g03ag$DateFormatter)(locale), [\n locale\n ]);\n let calendar = (0, $g03ag$useMemo)(()=>createCalendar(defaultFormatter.resolvedOptions().calendar), [\n createCalendar,\n defaultFormatter\n ]);\n var _props_defaultValue;\n let [value, setDate] = (0, $g03ag$useControlledState)(props.value, (_props_defaultValue = props.defaultValue) !== null && _props_defaultValue !== void 0 ? _props_defaultValue : null, props.onChange);\n let [initialValue] = (0, $g03ag$useState)(value);\n let calendarValue = (0, $g03ag$useMemo)(()=>{\n var _convertValue;\n return (_convertValue = (0, $35a22f14a1f04b11$export$61a490a80c552550)(value, calendar)) !== null && _convertValue !== void 0 ? _convertValue : null;\n }, [\n value,\n calendar\n ]);\n // We keep track of the placeholder date separately in state so that onChange is not called\n // until all segments are set. If the value === null (not undefined), then assume the component\n // is controlled, so use the placeholder as the value until all segments are entered so it doesn't\n // change from uncontrolled to controlled and emit a warning.\n let [placeholderDate, setPlaceholderDate] = (0, $g03ag$useState)(()=>(0, $35a22f14a1f04b11$export$66aa2b09de4b1ea5)(props.placeholderValue, granularity, calendar, defaultTimeZone));\n let val = calendarValue || placeholderDate;\n let showEra = calendar.identifier === 'gregory' && val.era === 'BC';\n let formatOpts = (0, $g03ag$useMemo)(()=>{\n var _props_maxGranularity;\n return {\n granularity: granularity,\n maxGranularity: (_props_maxGranularity = props.maxGranularity) !== null && _props_maxGranularity !== void 0 ? _props_maxGranularity : 'year',\n timeZone: defaultTimeZone,\n hideTimeZone: hideTimeZone,\n hourCycle: props.hourCycle,\n showEra: showEra,\n shouldForceLeadingZeros: props.shouldForceLeadingZeros\n };\n }, [\n props.maxGranularity,\n granularity,\n props.hourCycle,\n props.shouldForceLeadingZeros,\n defaultTimeZone,\n hideTimeZone,\n showEra\n ]);\n let opts = (0, $g03ag$useMemo)(()=>(0, $35a22f14a1f04b11$export$7e319ea407e63bc0)({}, formatOpts), [\n formatOpts\n ]);\n let dateFormatter = (0, $g03ag$useMemo)(()=>new (0, $g03ag$DateFormatter)(locale, opts), [\n locale,\n opts\n ]);\n let resolvedOptions = (0, $g03ag$useMemo)(()=>dateFormatter.resolvedOptions(), [\n dateFormatter\n ]);\n // Determine how many editable segments there are for validation purposes.\n // The result is cached for performance.\n let allSegments = (0, $g03ag$useMemo)(()=>dateFormatter.formatToParts(new Date()).filter((seg)=>$3c0fc76039f1c516$var$EDITABLE_SEGMENTS[seg.type]).reduce((p, seg)=>(p[$3c0fc76039f1c516$var$TYPE_MAPPING[seg.type] || seg.type] = true, p), {}), [\n dateFormatter\n ]);\n let [validSegments, setValidSegments] = (0, $g03ag$useState)(()=>props.value || props.defaultValue ? {\n ...allSegments\n } : {});\n let clearedSegment = (0, $g03ag$useRef)(null);\n // Reset placeholder when calendar changes\n let lastCalendar = (0, $g03ag$useRef)(calendar);\n (0, $g03ag$useEffect)(()=>{\n if (!(0, $g03ag$isEqualCalendar)(calendar, lastCalendar.current)) {\n lastCalendar.current = calendar;\n setPlaceholderDate((placeholder)=>Object.keys(validSegments).length > 0 ? (0, $g03ag$toCalendar)(placeholder, calendar) : (0, $35a22f14a1f04b11$export$66aa2b09de4b1ea5)(props.placeholderValue, granularity, calendar, defaultTimeZone));\n }\n }, [\n calendar,\n granularity,\n validSegments,\n defaultTimeZone,\n props.placeholderValue\n ]);\n // If there is a value prop, and some segments were previously placeholders, mark them all as valid.\n if (value && Object.keys(validSegments).length < Object.keys(allSegments).length) {\n validSegments = {\n ...allSegments\n };\n setValidSegments(validSegments);\n }\n // If the value is set to null and all segments are valid, reset the placeholder.\n if (value == null && Object.keys(validSegments).length === Object.keys(allSegments).length) {\n validSegments = {};\n setValidSegments(validSegments);\n setPlaceholderDate((0, $35a22f14a1f04b11$export$66aa2b09de4b1ea5)(props.placeholderValue, granularity, calendar, defaultTimeZone));\n }\n // If all segments are valid, use the date from state, otherwise use the placeholder date.\n let displayValue = calendarValue && Object.keys(validSegments).length >= Object.keys(allSegments).length ? calendarValue : placeholderDate;\n let setValue = (newValue)=>{\n if (props.isDisabled || props.isReadOnly) return;\n let validKeys = Object.keys(validSegments);\n let allKeys = Object.keys(allSegments);\n // if all the segments are completed or a timefield with everything but am/pm set the time, also ignore when am/pm cleared\n if (newValue == null) {\n setDate(null);\n setPlaceholderDate((0, $35a22f14a1f04b11$export$66aa2b09de4b1ea5)(props.placeholderValue, granularity, calendar, defaultTimeZone));\n setValidSegments({});\n } else if (validKeys.length === 0 && clearedSegment.current == null || validKeys.length >= allKeys.length || validKeys.length === allKeys.length - 1 && allSegments.dayPeriod && !validSegments.dayPeriod && clearedSegment.current !== 'dayPeriod') {\n // If the field was empty (no valid segments) or all segments are completed, commit the new value.\n // When committing from an empty state, mark every segment as valid so value is committed.\n if (validKeys.length === 0) {\n validSegments = {\n ...allSegments\n };\n setValidSegments(validSegments);\n }\n // The display calendar should not have any effect on the emitted value.\n // Emit dates in the same calendar as the original value, if any, otherwise gregorian.\n newValue = (0, $g03ag$toCalendar)(newValue, (v === null || v === void 0 ? void 0 : v.calendar) || new (0, $g03ag$GregorianCalendar)());\n setDate(newValue);\n } else setPlaceholderDate(newValue);\n clearedSegment.current = null;\n };\n let dateValue = (0, $g03ag$useMemo)(()=>displayValue.toDate(timeZone), [\n displayValue,\n timeZone\n ]);\n let segments = (0, $g03ag$useMemo)(()=>$3c0fc76039f1c516$var$processSegments(dateValue, validSegments, dateFormatter, resolvedOptions, displayValue, calendar, locale, granularity), [\n dateValue,\n validSegments,\n dateFormatter,\n resolvedOptions,\n displayValue,\n calendar,\n locale,\n granularity\n ]);\n // When the era field appears, mark it valid if the year field is already valid.\n // If the era field disappears, remove it from the valid segments.\n if (allSegments.era && validSegments.year && !validSegments.era) {\n validSegments.era = true;\n setValidSegments({\n ...validSegments\n });\n } else if (!allSegments.era && validSegments.era) {\n delete validSegments.era;\n setValidSegments({\n ...validSegments\n });\n }\n let markValid = (part)=>{\n validSegments[part] = true;\n if (part === 'year' && allSegments.era) validSegments.era = true;\n setValidSegments({\n ...validSegments\n });\n };\n let adjustSegment = (type, amount)=>{\n if (!validSegments[type]) {\n markValid(type);\n let validKeys = Object.keys(validSegments);\n let allKeys = Object.keys(allSegments);\n if (validKeys.length >= allKeys.length || validKeys.length === allKeys.length - 1 && allSegments.dayPeriod && !validSegments.dayPeriod) setValue(displayValue);\n } else setValue($3c0fc76039f1c516$var$addSegment(displayValue, type, amount, resolvedOptions));\n };\n let builtinValidation = (0, $g03ag$useMemo)(()=>(0, $35a22f14a1f04b11$export$f18627323ab57ac0)(value, minValue, maxValue, isDateUnavailable, formatOpts), [\n value,\n minValue,\n maxValue,\n isDateUnavailable,\n formatOpts\n ]);\n let validation = (0, $g03ag$useFormValidationState)({\n ...props,\n value: value,\n builtinValidation: builtinValidation\n });\n let isValueInvalid = validation.displayValidation.isInvalid;\n let validationState = props.validationState || (isValueInvalid ? 'invalid' : null);\n var _props_defaultValue1, _props_maxGranularity;\n return {\n ...validation,\n value: calendarValue,\n defaultValue: (_props_defaultValue1 = props.defaultValue) !== null && _props_defaultValue1 !== void 0 ? _props_defaultValue1 : initialValue,\n dateValue: dateValue,\n calendar: calendar,\n setValue: setValue,\n segments: segments,\n dateFormatter: dateFormatter,\n validationState: validationState,\n isInvalid: isValueInvalid,\n granularity: granularity,\n maxGranularity: (_props_maxGranularity = props.maxGranularity) !== null && _props_maxGranularity !== void 0 ? _props_maxGranularity : 'year',\n isDisabled: isDisabled,\n isReadOnly: isReadOnly,\n isRequired: isRequired,\n increment (part) {\n adjustSegment(part, 1);\n },\n decrement (part) {\n adjustSegment(part, -1);\n },\n incrementPage (part) {\n adjustSegment(part, $3c0fc76039f1c516$var$PAGE_STEP[part] || 1);\n },\n decrementPage (part) {\n adjustSegment(part, -($3c0fc76039f1c516$var$PAGE_STEP[part] || 1));\n },\n setSegment (part, v) {\n markValid(part);\n setValue($3c0fc76039f1c516$var$setSegment(displayValue, part, v, resolvedOptions));\n },\n confirmPlaceholder () {\n if (props.isDisabled || props.isReadOnly) return;\n // Confirm the placeholder if only the day period is not filled in.\n let validKeys = Object.keys(validSegments);\n let allKeys = Object.keys(allSegments);\n if (validKeys.length === allKeys.length - 1 && allSegments.dayPeriod && !validSegments.dayPeriod) {\n validSegments = {\n ...allSegments\n };\n setValidSegments(validSegments);\n setValue(displayValue.copy());\n }\n },\n clearSegment (part) {\n delete validSegments[part];\n clearedSegment.current = part;\n setValidSegments({\n ...validSegments\n });\n let placeholder = (0, $35a22f14a1f04b11$export$66aa2b09de4b1ea5)(props.placeholderValue, granularity, calendar, defaultTimeZone);\n let value = displayValue;\n // Reset day period to default without changing the hour.\n if (part === 'dayPeriod' && 'hour' in displayValue && 'hour' in placeholder) {\n let isPM = displayValue.hour >= 12;\n let shouldBePM = placeholder.hour >= 12;\n if (isPM && !shouldBePM) value = displayValue.set({\n hour: displayValue.hour - 12\n });\n else if (!isPM && shouldBePM) value = displayValue.set({\n hour: displayValue.hour + 12\n });\n } else if (part === 'hour' && 'hour' in displayValue && displayValue.hour >= 12 && validSegments.dayPeriod) value = displayValue.set({\n hour: placeholder['hour'] + 12\n });\n else if (part in displayValue) value = displayValue.set({\n [part]: placeholder[part]\n });\n setDate(null);\n setValue(value);\n },\n formatValue (fieldOptions) {\n if (!calendarValue) return '';\n let formatOptions = (0, $35a22f14a1f04b11$export$7e319ea407e63bc0)(fieldOptions, formatOpts);\n let formatter = new (0, $g03ag$DateFormatter)(locale, formatOptions);\n return formatter.format(dateValue);\n },\n getDateFormatter (locale, formatOptions) {\n let newOptions = {\n ...formatOpts,\n ...formatOptions\n };\n let newFormatOptions = (0, $35a22f14a1f04b11$export$7e319ea407e63bc0)({}, newOptions);\n return new (0, $g03ag$DateFormatter)(locale, newFormatOptions);\n }\n };\n}\nfunction $3c0fc76039f1c516$var$processSegments(dateValue, validSegments, dateFormatter, resolvedOptions, displayValue, calendar, locale, granularity) {\n let timeValue = [\n 'hour',\n 'minute',\n 'second'\n ];\n let segments = dateFormatter.formatToParts(dateValue);\n let processedSegments = [];\n for (let segment of segments){\n let type = $3c0fc76039f1c516$var$TYPE_MAPPING[segment.type] || segment.type;\n let isEditable = $3c0fc76039f1c516$var$EDITABLE_SEGMENTS[type];\n if (type === 'era' && calendar.getEras().length === 1) isEditable = false;\n let isPlaceholder = $3c0fc76039f1c516$var$EDITABLE_SEGMENTS[type] && !validSegments[type];\n let placeholder = $3c0fc76039f1c516$var$EDITABLE_SEGMENTS[type] ? (0, $3e3ed55ab2966714$export$d3f5c5e0a5023fa0)(type, segment.value, locale) : null;\n let dateSegment = {\n type: type,\n text: isPlaceholder ? placeholder : segment.value,\n ...$3c0fc76039f1c516$var$getSegmentLimits(displayValue, type, resolvedOptions),\n isPlaceholder: isPlaceholder,\n placeholder: placeholder,\n isEditable: isEditable\n };\n // There is an issue in RTL languages where time fields render (minute:hour) instead of (hour:minute).\n // To force an LTR direction on the time field since, we wrap the time segments in LRI (left-to-right) isolate unicode. See https://www.w3.org/International/questions/qa-bidi-unicode-controls.\n // These unicode characters will be added to the array of processed segments as literals and will mark the start and end of the embedded direction change.\n if (type === 'hour') {\n // This marks the start of the embedded direction change.\n processedSegments.push({\n type: 'literal',\n text: '\\u2066',\n ...$3c0fc76039f1c516$var$getSegmentLimits(displayValue, 'literal', resolvedOptions),\n isPlaceholder: false,\n placeholder: '',\n isEditable: false\n });\n processedSegments.push(dateSegment);\n // This marks the end of the embedded direction change in the case that the granularity it set to \"hour\".\n if (type === granularity) processedSegments.push({\n type: 'literal',\n text: '\\u2069',\n ...$3c0fc76039f1c516$var$getSegmentLimits(displayValue, 'literal', resolvedOptions),\n isPlaceholder: false,\n placeholder: '',\n isEditable: false\n });\n } else if (timeValue.includes(type) && type === granularity) {\n processedSegments.push(dateSegment);\n // This marks the end of the embedded direction change.\n processedSegments.push({\n type: 'literal',\n text: '\\u2069',\n ...$3c0fc76039f1c516$var$getSegmentLimits(displayValue, 'literal', resolvedOptions),\n isPlaceholder: false,\n placeholder: '',\n isEditable: false\n });\n } else // We only want to \"wrap\" the unicode around segments that are hour, minute, or second. If they aren't, just process as normal.\n processedSegments.push(dateSegment);\n }\n return processedSegments;\n}\nfunction $3c0fc76039f1c516$var$getSegmentLimits(date, type, options) {\n switch(type){\n case 'era':\n {\n let eras = date.calendar.getEras();\n return {\n value: eras.indexOf(date.era),\n minValue: 0,\n maxValue: eras.length - 1\n };\n }\n case 'year':\n return {\n value: date.year,\n minValue: 1,\n maxValue: date.calendar.getYearsInEra(date)\n };\n case 'month':\n return {\n value: date.month,\n minValue: (0, $g03ag$getMinimumMonthInYear)(date),\n maxValue: date.calendar.getMonthsInYear(date)\n };\n case 'day':\n return {\n value: date.day,\n minValue: (0, $g03ag$getMinimumDayInMonth)(date),\n maxValue: date.calendar.getDaysInMonth(date)\n };\n }\n if ('hour' in date) switch(type){\n case 'dayPeriod':\n return {\n value: date.hour >= 12 ? 12 : 0,\n minValue: 0,\n maxValue: 12\n };\n case 'hour':\n if (options.hour12) {\n let isPM = date.hour >= 12;\n return {\n value: date.hour,\n minValue: isPM ? 12 : 0,\n maxValue: isPM ? 23 : 11\n };\n }\n return {\n value: date.hour,\n minValue: 0,\n maxValue: 23\n };\n case 'minute':\n return {\n value: date.minute,\n minValue: 0,\n maxValue: 59\n };\n case 'second':\n return {\n value: date.second,\n minValue: 0,\n maxValue: 59\n };\n }\n return {};\n}\nfunction $3c0fc76039f1c516$var$addSegment(value, part, amount, options) {\n switch(part){\n case 'era':\n case 'year':\n case 'month':\n case 'day':\n return value.cycle(part, amount, {\n round: part === 'year'\n });\n }\n if ('hour' in value) switch(part){\n case 'dayPeriod':\n {\n let hours = value.hour;\n let isPM = hours >= 12;\n return value.set({\n hour: isPM ? hours - 12 : hours + 12\n });\n }\n case 'hour':\n case 'minute':\n case 'second':\n return value.cycle(part, amount, {\n round: part !== 'hour',\n hourCycle: options.hour12 ? 12 : 24\n });\n }\n throw new Error('Unknown segment: ' + part);\n}\nfunction $3c0fc76039f1c516$var$setSegment(value, part, segmentValue, options) {\n switch(part){\n case 'day':\n case 'month':\n case 'year':\n case 'era':\n return value.set({\n [part]: segmentValue\n });\n }\n if ('hour' in value && typeof segmentValue === 'number') switch(part){\n case 'dayPeriod':\n {\n let hours = value.hour;\n let wasPM = hours >= 12;\n let isPM = segmentValue >= 12;\n if (isPM === wasPM) return value;\n return value.set({\n hour: wasPM ? hours - 12 : hours + 12\n });\n }\n case 'hour':\n // In 12 hour time, ensure that AM/PM does not change\n if (options.hour12) {\n let hours = value.hour;\n let wasPM = hours >= 12;\n if (!wasPM && segmentValue === 12) segmentValue = 0;\n if (wasPM && segmentValue < 12) segmentValue += 12;\n }\n // fallthrough\n case 'minute':\n case 'second':\n return value.set({\n [part]: segmentValue\n });\n }\n throw new Error('Unknown segment: ' + part);\n}\n\n\nexport {$3c0fc76039f1c516$export$60e84778edff6d26 as useDateFieldState};\n//# sourceMappingURL=useDateFieldState.module.js.map\n","import {useDateFieldState as $3c0fc76039f1c516$export$60e84778edff6d26} from \"./useDateFieldState.mjs\";\nimport {Time as $2PRh3$Time, toZoned as $2PRh3$toZoned, toTime as $2PRh3$toTime, GregorianCalendar as $2PRh3$GregorianCalendar, today as $2PRh3$today, getLocalTimeZone as $2PRh3$getLocalTimeZone, toCalendarDateTime as $2PRh3$toCalendarDateTime} from \"@internationalized/date\";\nimport {useMemo as $2PRh3$useMemo, useCallback as $2PRh3$useCallback} from \"react\";\nimport {useControlledState as $2PRh3$useControlledState} from \"@react-stately/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the 'License');\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $eff5d8ee529ac4bb$export$fd53cef0cc796101(props) {\n let { placeholderValue: placeholderValue = new (0, $2PRh3$Time)(), minValue: minValue, maxValue: maxValue, defaultValue: defaultValue, granularity: granularity, validate: validate } = props;\n let [value, setValue] = (0, $2PRh3$useControlledState)(props.value, defaultValue !== null && defaultValue !== void 0 ? defaultValue : null, props.onChange);\n let v = value || placeholderValue;\n let day = v && 'day' in v ? v : undefined;\n let defaultValueTimeZone = defaultValue && 'timeZone' in defaultValue ? defaultValue.timeZone : undefined;\n let placeholderDate = (0, $2PRh3$useMemo)(()=>{\n let valueTimeZone = v && 'timeZone' in v ? v.timeZone : undefined;\n return (valueTimeZone || defaultValueTimeZone) && placeholderValue ? (0, $2PRh3$toZoned)($eff5d8ee529ac4bb$var$convertValue(placeholderValue), valueTimeZone || defaultValueTimeZone) : $eff5d8ee529ac4bb$var$convertValue(placeholderValue);\n }, [\n placeholderValue,\n v,\n defaultValueTimeZone\n ]);\n let minDate = (0, $2PRh3$useMemo)(()=>$eff5d8ee529ac4bb$var$convertValue(minValue, day), [\n minValue,\n day\n ]);\n let maxDate = (0, $2PRh3$useMemo)(()=>$eff5d8ee529ac4bb$var$convertValue(maxValue, day), [\n maxValue,\n day\n ]);\n let timeValue = (0, $2PRh3$useMemo)(()=>value && 'day' in value ? (0, $2PRh3$toTime)(value) : value, [\n value\n ]);\n let dateTime = (0, $2PRh3$useMemo)(()=>value == null ? null : $eff5d8ee529ac4bb$var$convertValue(value), [\n value\n ]);\n let defaultDateTime = (0, $2PRh3$useMemo)(()=>defaultValue == null ? null : $eff5d8ee529ac4bb$var$convertValue(defaultValue), [\n defaultValue\n ]);\n let onChange = (newValue)=>{\n setValue(day || defaultValueTimeZone ? newValue : newValue && (0, $2PRh3$toTime)(newValue));\n };\n let state = (0, $3c0fc76039f1c516$export$60e84778edff6d26)({\n ...props,\n value: dateTime,\n defaultValue: defaultDateTime,\n minValue: minDate,\n maxValue: maxDate,\n onChange: onChange,\n granularity: granularity || 'minute',\n maxGranularity: 'hour',\n placeholderValue: placeholderDate !== null && placeholderDate !== void 0 ? placeholderDate : undefined,\n // Calendar should not matter for time fields.\n createCalendar: ()=>new (0, $2PRh3$GregorianCalendar)(),\n validate: (0, $2PRh3$useCallback)(()=>validate === null || validate === void 0 ? void 0 : validate(value), [\n validate,\n value\n ])\n });\n return {\n ...state,\n timeValue: timeValue\n };\n}\nfunction $eff5d8ee529ac4bb$var$convertValue(value, date = (0, $2PRh3$today)((0, $2PRh3$getLocalTimeZone)())) {\n if (!value) return null;\n if ('day' in value) return value;\n return (0, $2PRh3$toCalendarDateTime)(date, value);\n}\n\n\nexport {$eff5d8ee529ac4bb$export$fd53cef0cc796101 as useTimeFieldState};\n//# sourceMappingURL=useTimeFieldState.module.js.map\n","var $f23889fffbde9058$exports = {};\n$f23889fffbde9058$exports = {\n \"calendar\": `\\u{627}\\u{644}\\u{62A}\\u{642}\\u{648}\\u{64A}\\u{645}`,\n \"day\": `\\u{64A}\\u{648}\\u{645}`,\n \"dayPeriod\": `\\u{635}/\\u{645}`,\n \"endDate\": `\\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E} \\u{627}\\u{644}\\u{627}\\u{646}\\u{62A}\\u{647}\\u{627}\\u{621}`,\n \"era\": `\\u{627}\\u{644}\\u{639}\\u{635}\\u{631}`,\n \"hour\": `\\u{627}\\u{644}\\u{633}\\u{627}\\u{639}\\u{627}\\u{62A}`,\n \"minute\": `\\u{627}\\u{644}\\u{62F}\\u{642}\\u{627}\\u{626}\\u{642}`,\n \"month\": `\\u{627}\\u{644}\\u{634}\\u{647}\\u{631}`,\n \"second\": `\\u{627}\\u{644}\\u{62B}\\u{648}\\u{627}\\u{646}\\u{64A}`,\n \"selectedDateDescription\": (args)=>`\\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E} \\u{645}\\u{62D}\\u{62F}\\u{62F}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{627}\\u{644}\\u{645}\\u{62F}\\u{649} \\u{627}\\u{644}\\u{632}\\u{645}\\u{646}\\u{64A} \\u{627}\\u{644}\\u{645}\\u{62D}\\u{62F}\\u{62F}: ${args.startDate} \\u{625}\\u{644}\\u{649} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{627}\\u{644}\\u{648}\\u{642}\\u{62A} \\u{627}\\u{644}\\u{645}\\u{62D}\\u{62F}\\u{62F}: ${args.time}`,\n \"startDate\": `\\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E} \\u{627}\\u{644}\\u{628}\\u{62F}\\u{621}`,\n \"timeZoneName\": `\\u{627}\\u{644}\\u{62A}\\u{648}\\u{642}\\u{64A}\\u{62A}`,\n \"weekday\": `\\u{627}\\u{644}\\u{64A}\\u{648}\\u{645}`,\n \"year\": `\\u{627}\\u{644}\\u{633}\\u{646}\\u{629}`\n};\n\n\nexport {$f23889fffbde9058$exports as default};\n//# sourceMappingURL=ar-AE.module.js.map\n","var $09d9badaa8903929$exports = {};\n$09d9badaa8903929$exports = {\n \"calendar\": `\\u{41A}\\u{430}\\u{43B}\\u{435}\\u{43D}\\u{434}\\u{430}\\u{440}`,\n \"day\": `\\u{434}\\u{435}\\u{43D}`,\n \"dayPeriod\": `\\u{43F}\\u{440}.\\u{43E}\\u{431}./\\u{441}\\u{43B}.\\u{43E}\\u{431}.`,\n \"endDate\": `\\u{41A}\\u{440}\\u{430}\\u{439}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}`,\n \"era\": `\\u{435}\\u{440}\\u{430}`,\n \"hour\": `\\u{447}\\u{430}\\u{441}`,\n \"minute\": `\\u{43C}\\u{438}\\u{43D}\\u{443}\\u{442}\\u{430}`,\n \"month\": `\\u{43C}\\u{435}\\u{441}\\u{435}\\u{446}`,\n \"second\": `\\u{441}\\u{435}\\u{43A}\\u{443}\\u{43D}\\u{434}\\u{430}`,\n \"selectedDateDescription\": (args)=>`\\u{418}\\u{437}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{418}\\u{437}\\u{431}\\u{440}\\u{430}\\u{43D} \\u{434}\\u{438}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}: ${args.startDate} \\u{434}\\u{43E} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{418}\\u{437}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43E} \\u{432}\\u{440}\\u{435}\\u{43C}\\u{435}: ${args.time}`,\n \"startDate\": `\\u{41D}\\u{430}\\u{447}\\u{430}\\u{43B}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}`,\n \"timeZoneName\": `\\u{447}\\u{430}\\u{441}\\u{43E}\\u{432}\\u{430} \\u{437}\\u{43E}\\u{43D}\\u{430}`,\n \"weekday\": `\\u{434}\\u{435}\\u{43D} \\u{43E}\\u{442} \\u{441}\\u{435}\\u{434}\\u{43C}\\u{438}\\u{446}\\u{430}\\u{442}\\u{430}`,\n \"year\": `\\u{433}\\u{43E}\\u{434}\\u{438}\\u{43D}\\u{430}`\n};\n\n\nexport {$09d9badaa8903929$exports as default};\n//# sourceMappingURL=bg-BG.module.js.map\n","var $151b77e0fd711730$exports = {};\n$151b77e0fd711730$exports = {\n \"calendar\": `Kalend\\xe1\\u{159}`,\n \"day\": `den`,\n \"dayPeriod\": `\\u{10D}\\xe1st dne`,\n \"endDate\": `Kone\\u{10D}n\\xe9 datum`,\n \"era\": `letopo\\u{10D}et`,\n \"hour\": `hodina`,\n \"minute\": `minuta`,\n \"month\": `m\\u{11B}s\\xedc`,\n \"second\": `sekunda`,\n \"selectedDateDescription\": (args)=>`Vybran\\xe9 datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Vybran\\xe9 obdob\\xed: ${args.startDate} a\\u{17E} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Vybran\\xfd \\u{10D}as: ${args.time}`,\n \"startDate\": `Po\\u{10D}\\xe1te\\u{10D}n\\xed datum`,\n \"timeZoneName\": `\\u{10D}asov\\xe9 p\\xe1smo`,\n \"weekday\": `den v t\\xfddnu`,\n \"year\": `rok`\n};\n\n\nexport {$151b77e0fd711730$exports as default};\n//# sourceMappingURL=cs-CZ.module.js.map\n","var $61915aa8630b90a2$exports = {};\n$61915aa8630b90a2$exports = {\n \"calendar\": `Kalender`,\n \"day\": `dag`,\n \"dayPeriod\": `AM/PM`,\n \"endDate\": `Slutdato`,\n \"era\": `\\xe6ra`,\n \"hour\": `time`,\n \"minute\": `minut`,\n \"month\": `m\\xe5ned`,\n \"second\": `sekund`,\n \"selectedDateDescription\": (args)=>`Valgt dato: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valgt interval: ${args.startDate} til ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Valgt tidspunkt: ${args.time}`,\n \"startDate\": `Startdato`,\n \"timeZoneName\": `tidszone`,\n \"weekday\": `ugedag`,\n \"year\": `\\xe5r`\n};\n\n\nexport {$61915aa8630b90a2$exports as default};\n//# sourceMappingURL=da-DK.module.js.map\n","var $35cea00159787840$exports = {};\n$35cea00159787840$exports = {\n \"calendar\": `Kalender`,\n \"day\": `Tag`,\n \"dayPeriod\": `Tagesh\\xe4lfte`,\n \"endDate\": `Enddatum`,\n \"era\": `Epoche`,\n \"hour\": `Stunde`,\n \"minute\": `Minute`,\n \"month\": `Monat`,\n \"second\": `Sekunde`,\n \"selectedDateDescription\": (args)=>`Ausgew\\xe4hltes Datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Ausgew\\xe4hlter Bereich: ${args.startDate} bis ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Ausgew\\xe4hlte Zeit: ${args.time}`,\n \"startDate\": `Startdatum`,\n \"timeZoneName\": `Zeitzone`,\n \"weekday\": `Wochentag`,\n \"year\": `Jahr`\n};\n\n\nexport {$35cea00159787840$exports as default};\n//# sourceMappingURL=de-DE.module.js.map\n","var $518b4e82b9eacafd$exports = {};\n$518b4e82b9eacafd$exports = {\n \"calendar\": `\\u{397}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BB}\\u{3CC}\\u{3B3}\\u{3B9}\\u{3BF}`,\n \"day\": `\\u{3B7}\\u{3BC}\\u{3AD}\\u{3C1}\\u{3B1}`,\n \"dayPeriod\": `\\u{3C0}.\\u{3BC}./\\u{3BC}.\\u{3BC}.`,\n \"endDate\": `\\u{397}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1} \\u{3BB}\\u{3AE}\\u{3BE}\\u{3B7}\\u{3C2}`,\n \"era\": `\\u{3C0}\\u{3B5}\\u{3C1}\\u{3AF}\\u{3BF}\\u{3B4}\\u{3BF}\\u{3C2}`,\n \"hour\": `\\u{3CE}\\u{3C1}\\u{3B1}`,\n \"minute\": `\\u{3BB}\\u{3B5}\\u{3C0}\\u{3C4}\\u{3CC}`,\n \"month\": `\\u{3BC}\\u{3AE}\\u{3BD}\\u{3B1}\\u{3C2}`,\n \"second\": `\\u{3B4}\\u{3B5}\\u{3C5}\\u{3C4}\\u{3B5}\\u{3C1}\\u{3CC}\\u{3BB}\\u{3B5}\\u{3C0}\\u{3C4}\\u{3BF}`,\n \"selectedDateDescription\": (args)=>`\\u{395}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3B5}\\u{3B3}\\u{3BC}\\u{3AD}\\u{3BD}\\u{3B7} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{395}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3B5}\\u{3B3}\\u{3BC}\\u{3AD}\\u{3BD}\\u{3BF} \\u{3B5}\\u{3CD}\\u{3C1}\\u{3BF}\\u{3C2}: ${args.startDate} \\u{3AD}\\u{3C9}\\u{3C2} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{395}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3B5}\\u{3B3}\\u{3BC}\\u{3AD}\\u{3BD}\\u{3B7} \\u{3CE}\\u{3C1}\\u{3B1}: ${args.time}`,\n \"startDate\": `\\u{397}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1} \\u{3AD}\\u{3BD}\\u{3B1}\\u{3C1}\\u{3BE}\\u{3B7}\\u{3C2}`,\n \"timeZoneName\": `\\u{3B6}\\u{3CE}\\u{3BD}\\u{3B7} \\u{3CE}\\u{3C1}\\u{3B1}\\u{3C2}`,\n \"weekday\": `\\u{3BA}\\u{3B1}\\u{3B8}\\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3B9}\\u{3BD}\\u{3AE}`,\n \"year\": `\\u{3AD}\\u{3C4}\\u{3BF}\\u{3C2}`\n};\n\n\nexport {$518b4e82b9eacafd$exports as default};\n//# sourceMappingURL=el-GR.module.js.map\n","var $1c2b297f7e2cf474$exports = {};\n$1c2b297f7e2cf474$exports = {\n \"era\": `era`,\n \"year\": `year`,\n \"month\": `month`,\n \"day\": `day`,\n \"hour\": `hour`,\n \"minute\": `minute`,\n \"second\": `second`,\n \"dayPeriod\": `AM/PM`,\n \"calendar\": `Calendar`,\n \"startDate\": `Start Date`,\n \"endDate\": `End Date`,\n \"weekday\": `day of the week`,\n \"timeZoneName\": `time zone`,\n \"selectedDateDescription\": (args)=>`Selected Date: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Selected Range: ${args.startDate} to ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Selected Time: ${args.time}`\n};\n\n\nexport {$1c2b297f7e2cf474$exports as default};\n//# sourceMappingURL=en-US.module.js.map\n","var $07f628a707cf9b18$exports = {};\n$07f628a707cf9b18$exports = {\n \"calendar\": `Calendario`,\n \"day\": `d\\xeda`,\n \"dayPeriod\": `a.\\xa0m./p.\\xa0m.`,\n \"endDate\": `Fecha final`,\n \"era\": `era`,\n \"hour\": `hora`,\n \"minute\": `minuto`,\n \"month\": `mes`,\n \"second\": `segundo`,\n \"selectedDateDescription\": (args)=>`Fecha seleccionada: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Rango seleccionado: ${args.startDate} a ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Hora seleccionada: ${args.time}`,\n \"startDate\": `Fecha de inicio`,\n \"timeZoneName\": `zona horaria`,\n \"weekday\": `d\\xeda de la semana`,\n \"year\": `a\\xf1o`\n};\n\n\nexport {$07f628a707cf9b18$exports as default};\n//# sourceMappingURL=es-ES.module.js.map\n","var $db553ffe17c7f4db$exports = {};\n$db553ffe17c7f4db$exports = {\n \"calendar\": `Kalender`,\n \"day\": `p\\xe4ev`,\n \"dayPeriod\": `enne/p\\xe4rast l\\xf5unat`,\n \"endDate\": `L\\xf5ppkuup\\xe4ev`,\n \"era\": `ajastu`,\n \"hour\": `tund`,\n \"minute\": `minut`,\n \"month\": `kuu`,\n \"second\": `sekund`,\n \"selectedDateDescription\": (args)=>`Valitud kuup\\xe4ev: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valitud vahemik: ${args.startDate} kuni ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Valitud aeg: ${args.time}`,\n \"startDate\": `Alguskuup\\xe4ev`,\n \"timeZoneName\": `ajav\\xf6\\xf6nd`,\n \"weekday\": `n\\xe4dalap\\xe4ev`,\n \"year\": `aasta`\n};\n\n\nexport {$db553ffe17c7f4db$exports as default};\n//# sourceMappingURL=et-EE.module.js.map\n","var $4afcfe00cd703f83$exports = {};\n$4afcfe00cd703f83$exports = {\n \"calendar\": `Kalenteri`,\n \"day\": `p\\xe4iv\\xe4`,\n \"dayPeriod\": `vuorokaudenaika`,\n \"endDate\": `P\\xe4\\xe4ttymisp\\xe4iv\\xe4`,\n \"era\": `aikakausi`,\n \"hour\": `tunti`,\n \"minute\": `minuutti`,\n \"month\": `kuukausi`,\n \"second\": `sekunti`,\n \"selectedDateDescription\": (args)=>`Valittu p\\xe4iv\\xe4m\\xe4\\xe4r\\xe4: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valittu aikav\\xe4li: ${args.startDate} \\u{2013} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Valittu aika: ${args.time}`,\n \"startDate\": `Alkamisp\\xe4iv\\xe4`,\n \"timeZoneName\": `aikavy\\xf6hyke`,\n \"weekday\": `viikonp\\xe4iv\\xe4`,\n \"year\": `vuosi`\n};\n\n\nexport {$4afcfe00cd703f83$exports as default};\n//# sourceMappingURL=fi-FI.module.js.map\n","var $1d2645d18d4c5be0$exports = {};\n$1d2645d18d4c5be0$exports = {\n \"calendar\": `Calendrier`,\n \"day\": `jour`,\n \"dayPeriod\": `cadran`,\n \"endDate\": `Date de fin`,\n \"era\": `\\xe8re`,\n \"hour\": `heure`,\n \"minute\": `minute`,\n \"month\": `mois`,\n \"second\": `seconde`,\n \"selectedDateDescription\": (args)=>`Date s\\xe9lectionn\\xe9e\\xa0: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Plage s\\xe9lectionn\\xe9e\\xa0: ${args.startDate} au ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Heure choisie\\xa0: ${args.time}`,\n \"startDate\": `Date de d\\xe9but`,\n \"timeZoneName\": `fuseau horaire`,\n \"weekday\": `jour de la semaine`,\n \"year\": `ann\\xe9e`\n};\n\n\nexport {$1d2645d18d4c5be0$exports as default};\n//# sourceMappingURL=fr-FR.module.js.map\n","var $64cb6a9be1f6fa48$exports = {};\n$64cb6a9be1f6fa48$exports = {\n \"calendar\": `\\u{5DC}\\u{5D5}\\u{5D7} \\u{5E9}\\u{5E0}\\u{5D4}`,\n \"day\": `\\u{5D9}\\u{5D5}\\u{5DD}`,\n \"dayPeriod\": `\\u{5DC}\\u{5E4}\\u{5E0}\\u{5D4}\\u{5F4}\\u{5E6}/\\u{5D0}\\u{5D7}\\u{5D4}\\u{5F4}\\u{5E6}`,\n \"endDate\": `\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5E1}\\u{5D9}\\u{5D5}\\u{5DD}`,\n \"era\": `\\u{5EA}\\u{5E7}\\u{5D5}\\u{5E4}\\u{5D4}`,\n \"hour\": `\\u{5E9}\\u{5E2}\\u{5D4}`,\n \"minute\": `\\u{5D3}\\u{5E7}\\u{5D4}`,\n \"month\": `\\u{5D7}\\u{5D5}\\u{5D3}\\u{5E9}`,\n \"second\": `\\u{5E9}\\u{5E0}\\u{5D9}\\u{5D9}\\u{5D4}`,\n \"selectedDateDescription\": (args)=>`\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5E0}\\u{5D1}\\u{5D7}\\u{5E8}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{5D8}\\u{5D5}\\u{5D5}\\u{5D7} \\u{5E0}\\u{5D1}\\u{5D7}\\u{5E8}: ${args.startDate} \\u{5E2}\\u{5D3} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{5D6}\\u{5DE}\\u{5DF} \\u{5E0}\\u{5D1}\\u{5D7}\\u{5E8}: ${args.time}`,\n \"startDate\": `\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5D4}\\u{5EA}\\u{5D7}\\u{5DC}\\u{5D4}`,\n \"timeZoneName\": `\\u{5D0}\\u{5D6}\\u{5D5}\\u{5E8} \\u{5D6}\\u{5DE}\\u{5DF}`,\n \"weekday\": `\\u{5D9}\\u{5D5}\\u{5DD} \\u{5D1}\\u{5E9}\\u{5D1}\\u{5D5}\\u{5E2}`,\n \"year\": `\\u{5E9}\\u{5E0}\\u{5D4}`\n};\n\n\nexport {$64cb6a9be1f6fa48$exports as default};\n//# sourceMappingURL=he-IL.module.js.map\n","var $2a1ef2e8050be27a$exports = {};\n$2a1ef2e8050be27a$exports = {\n \"calendar\": `Kalendar`,\n \"day\": `dan`,\n \"dayPeriod\": `AM/PM`,\n \"endDate\": `Datum zavr\\u{161}etka`,\n \"era\": `era`,\n \"hour\": `sat`,\n \"minute\": `minuta`,\n \"month\": `mjesec`,\n \"second\": `sekunda`,\n \"selectedDateDescription\": (args)=>`Odabrani datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Odabrani raspon: ${args.startDate} do ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Odabrano vrijeme: ${args.time}`,\n \"startDate\": `Datum po\\u{10D}etka`,\n \"timeZoneName\": `vremenska zona`,\n \"weekday\": `dan u tjednu`,\n \"year\": `godina`\n};\n\n\nexport {$2a1ef2e8050be27a$exports as default};\n//# sourceMappingURL=hr-HR.module.js.map\n","var $ad429dca102acd0e$exports = {};\n$ad429dca102acd0e$exports = {\n \"calendar\": `Napt\\xe1r`,\n \"day\": `nap`,\n \"dayPeriod\": `napszak`,\n \"endDate\": `Befejez\\u{151} d\\xe1tum`,\n \"era\": `\\xe9ra`,\n \"hour\": `\\xf3ra`,\n \"minute\": `perc`,\n \"month\": `h\\xf3nap`,\n \"second\": `m\\xe1sodperc`,\n \"selectedDateDescription\": (args)=>`Kijel\\xf6lt d\\xe1tum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Kijel\\xf6lt tartom\\xe1ny: ${args.startDate}\\u{2013}${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Kijel\\xf6lt id\\u{151}: ${args.time}`,\n \"startDate\": `Kezd\\u{151} d\\xe1tum`,\n \"timeZoneName\": `id\\u{151}z\\xf3na`,\n \"weekday\": `h\\xe9t napja`,\n \"year\": `\\xe9v`\n};\n\n\nexport {$ad429dca102acd0e$exports as default};\n//# sourceMappingURL=hu-HU.module.js.map\n","var $6e68cb5d1cb97bd2$exports = {};\n$6e68cb5d1cb97bd2$exports = {\n \"calendar\": `Calendario`,\n \"day\": `giorno`,\n \"dayPeriod\": `AM/PM`,\n \"endDate\": `Data finale`,\n \"era\": `era`,\n \"hour\": `ora`,\n \"minute\": `minuto`,\n \"month\": `mese`,\n \"second\": `secondo`,\n \"selectedDateDescription\": (args)=>`Data selezionata: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Intervallo selezionato: da ${args.startDate} a ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Ora selezionata: ${args.time}`,\n \"startDate\": `Data iniziale`,\n \"timeZoneName\": `fuso orario`,\n \"weekday\": `giorno della settimana`,\n \"year\": `anno`\n};\n\n\nexport {$6e68cb5d1cb97bd2$exports as default};\n//# sourceMappingURL=it-IT.module.js.map\n","var $a82ee9af063ee069$exports = {};\n$a82ee9af063ee069$exports = {\n \"calendar\": `\\u{30AB}\\u{30EC}\\u{30F3}\\u{30C0}\\u{30FC}`,\n \"day\": `\\u{65E5}`,\n \"dayPeriod\": `\\u{5348}\\u{524D}/\\u{5348}\\u{5F8C}`,\n \"endDate\": `\\u{7D42}\\u{4E86}\\u{65E5}`,\n \"era\": `\\u{6642}\\u{4EE3}`,\n \"hour\": `\\u{6642}`,\n \"minute\": `\\u{5206}`,\n \"month\": `\\u{6708}`,\n \"second\": `\\u{79D2}`,\n \"selectedDateDescription\": (args)=>`\\u{9078}\\u{629E}\\u{3057}\\u{305F}\\u{65E5}\\u{4ED8} : ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{9078}\\u{629E}\\u{7BC4}\\u{56F2} : ${args.startDate} \\u{304B}\\u{3089} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{9078}\\u{629E}\\u{3057}\\u{305F}\\u{6642}\\u{9593} : ${args.time}`,\n \"startDate\": `\\u{958B}\\u{59CB}\\u{65E5}`,\n \"timeZoneName\": `\\u{30BF}\\u{30A4}\\u{30E0}\\u{30BE}\\u{30FC}\\u{30F3}`,\n \"weekday\": `\\u{66DC}\\u{65E5}`,\n \"year\": `\\u{5E74}`\n};\n\n\nexport {$a82ee9af063ee069$exports as default};\n//# sourceMappingURL=ja-JP.module.js.map\n","var $67e9091dbf37d4eb$exports = {};\n$67e9091dbf37d4eb$exports = {\n \"calendar\": `\\u{B2EC}\\u{B825}`,\n \"day\": `\\u{C77C}`,\n \"dayPeriod\": `\\u{C624}\\u{C804}/\\u{C624}\\u{D6C4}`,\n \"endDate\": `\\u{C885}\\u{B8CC}\\u{C77C}`,\n \"era\": `\\u{C5F0}\\u{D638}`,\n \"hour\": `\\u{C2DC}`,\n \"minute\": `\\u{BD84}`,\n \"month\": `\\u{C6D4}`,\n \"second\": `\\u{CD08}`,\n \"selectedDateDescription\": (args)=>`\\u{C120}\\u{D0DD} \\u{C77C}\\u{C790}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{C120}\\u{D0DD} \\u{BC94}\\u{C704}: ${args.startDate} ~ ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{C120}\\u{D0DD} \\u{C2DC}\\u{AC04}: ${args.time}`,\n \"startDate\": `\\u{C2DC}\\u{C791}\\u{C77C}`,\n \"timeZoneName\": `\\u{C2DC}\\u{AC04}\\u{B300}`,\n \"weekday\": `\\u{C694}\\u{C77C}`,\n \"year\": `\\u{B144}`\n};\n\n\nexport {$67e9091dbf37d4eb$exports as default};\n//# sourceMappingURL=ko-KR.module.js.map\n","var $75834f9729f653d1$exports = {};\n$75834f9729f653d1$exports = {\n \"calendar\": `Kalendorius`,\n \"day\": `diena`,\n \"dayPeriod\": `iki piet\\u{173} / po piet\\u{173}`,\n \"endDate\": `Pabaigos data`,\n \"era\": `era`,\n \"hour\": `valanda`,\n \"minute\": `minut\\u{117}`,\n \"month\": `m\\u{117}nuo`,\n \"second\": `sekund\\u{117}`,\n \"selectedDateDescription\": (args)=>`Pasirinkta data: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Pasirinktas intervalas: nuo ${args.startDate} iki ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Pasirinktas laikas: ${args.time}`,\n \"startDate\": `Prad\\u{17E}ios data`,\n \"timeZoneName\": `laiko juosta`,\n \"weekday\": `savait\\u{117}s diena`,\n \"year\": `metai`\n};\n\n\nexport {$75834f9729f653d1$exports as default};\n//# sourceMappingURL=lt-LT.module.js.map\n","var $a2df2c2520b4a7f0$exports = {};\n$a2df2c2520b4a7f0$exports = {\n \"calendar\": `Kalend\\u{101}rs`,\n \"day\": `diena`,\n \"dayPeriod\": `priek\\u{161}pusdien\\u{101}/p\\u{113}cpusdien\\u{101}`,\n \"endDate\": `Beigu datums`,\n \"era\": `\\u{113}ra`,\n \"hour\": `stundas`,\n \"minute\": `min\\u{16B}tes`,\n \"month\": `m\\u{113}nesis`,\n \"second\": `sekundes`,\n \"selectedDateDescription\": (args)=>`Atlas\\u{12B}tais datums: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Atlas\\u{12B}tais diapazons: no ${args.startDate} l\\u{12B}dz ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Atlas\\u{12B}tais laiks: ${args.time}`,\n \"startDate\": `S\\u{101}kuma datums`,\n \"timeZoneName\": `laika josla`,\n \"weekday\": `ned\\u{113}\\u{13C}as diena`,\n \"year\": `gads`\n};\n\n\nexport {$a2df2c2520b4a7f0$exports as default};\n//# sourceMappingURL=lv-LV.module.js.map\n","var $aedcd71db4933ed5$exports = {};\n$aedcd71db4933ed5$exports = {\n \"calendar\": `Kalender`,\n \"day\": `dag`,\n \"dayPeriod\": `a.m./p.m.`,\n \"endDate\": `Sluttdato`,\n \"era\": `tidsalder`,\n \"hour\": `time`,\n \"minute\": `minutt`,\n \"month\": `m\\xe5ned`,\n \"second\": `sekund`,\n \"selectedDateDescription\": (args)=>`Valgt dato: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valgt omr\\xe5de: ${args.startDate} til ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Valgt tid: ${args.time}`,\n \"startDate\": `Startdato`,\n \"timeZoneName\": `tidssone`,\n \"weekday\": `ukedag`,\n \"year\": `\\xe5r`\n};\n\n\nexport {$aedcd71db4933ed5$exports as default};\n//# sourceMappingURL=nb-NO.module.js.map\n","var $3b2df9e54353046c$exports = {};\n$3b2df9e54353046c$exports = {\n \"calendar\": `Kalender`,\n \"day\": `dag`,\n \"dayPeriod\": `a.m./p.m.`,\n \"endDate\": `Einddatum`,\n \"era\": `tijdperk`,\n \"hour\": `uur`,\n \"minute\": `minuut`,\n \"month\": `maand`,\n \"second\": `seconde`,\n \"selectedDateDescription\": (args)=>`Geselecteerde datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Geselecteerd bereik: ${args.startDate} tot ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Geselecteerde tijd: ${args.time}`,\n \"startDate\": `Startdatum`,\n \"timeZoneName\": `tijdzone`,\n \"weekday\": `dag van de week`,\n \"year\": `jaar`\n};\n\n\nexport {$3b2df9e54353046c$exports as default};\n//# sourceMappingURL=nl-NL.module.js.map\n","var $c03fe977fcfafe93$exports = {};\n$c03fe977fcfafe93$exports = {\n \"calendar\": `Kalendarz`,\n \"day\": `dzie\\u{144}`,\n \"dayPeriod\": `rano / po po\\u{142}udniu / wieczorem`,\n \"endDate\": `Data ko\\u{144}cowa`,\n \"era\": `era`,\n \"hour\": `godzina`,\n \"minute\": `minuta`,\n \"month\": `miesi\\u{105}c`,\n \"second\": `sekunda`,\n \"selectedDateDescription\": (args)=>`Wybrana data: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Wybrany zakres: ${args.startDate} do ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Wybrany czas: ${args.time}`,\n \"startDate\": `Data pocz\\u{105}tkowa`,\n \"timeZoneName\": `strefa czasowa`,\n \"weekday\": `dzie\\u{144} tygodnia`,\n \"year\": `rok`\n};\n\n\nexport {$c03fe977fcfafe93$exports as default};\n//# sourceMappingURL=pl-PL.module.js.map\n","var $569f006fc292345f$exports = {};\n$569f006fc292345f$exports = {\n \"calendar\": `Calend\\xe1rio`,\n \"day\": `dia`,\n \"dayPeriod\": `AM/PM`,\n \"endDate\": `Data final`,\n \"era\": `era`,\n \"hour\": `hora`,\n \"minute\": `minuto`,\n \"month\": `m\\xeas`,\n \"second\": `segundo`,\n \"selectedDateDescription\": (args)=>`Data selecionada: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Intervalo selecionado: ${args.startDate} a ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Hora selecionada: ${args.time}`,\n \"startDate\": `Data inicial`,\n \"timeZoneName\": `fuso hor\\xe1rio`,\n \"weekday\": `dia da semana`,\n \"year\": `ano`\n};\n\n\nexport {$569f006fc292345f$exports as default};\n//# sourceMappingURL=pt-BR.module.js.map\n","var $7c2494e14452f2dd$exports = {};\n$7c2494e14452f2dd$exports = {\n \"calendar\": `Calend\\xe1rio`,\n \"day\": `dia`,\n \"dayPeriod\": `am/pm`,\n \"endDate\": `Data de T\\xe9rmino`,\n \"era\": `era`,\n \"hour\": `hora`,\n \"minute\": `minuto`,\n \"month\": `m\\xeas`,\n \"second\": `segundo`,\n \"selectedDateDescription\": (args)=>`Data selecionada: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Intervalo selecionado: ${args.startDate} a ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Hora selecionada: ${args.time}`,\n \"startDate\": `Data de In\\xedcio`,\n \"timeZoneName\": `fuso hor\\xe1rio`,\n \"weekday\": `dia da semana`,\n \"year\": `ano`\n};\n\n\nexport {$7c2494e14452f2dd$exports as default};\n//# sourceMappingURL=pt-PT.module.js.map\n","var $eb82ef981b5592bf$exports = {};\n$eb82ef981b5592bf$exports = {\n \"calendar\": `Calendar`,\n \"day\": `zi`,\n \"dayPeriod\": `a.m/p.m.`,\n \"endDate\": `Dat\\u{103} final`,\n \"era\": `er\\u{103}`,\n \"hour\": `or\\u{103}`,\n \"minute\": `minut`,\n \"month\": `lun\\u{103}`,\n \"second\": `secund\\u{103}`,\n \"selectedDateDescription\": (args)=>`Dat\\u{103} selectat\\u{103}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Interval selectat: de la ${args.startDate} p\\xe2n\\u{103} la ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Ora selectat\\u{103}: ${args.time}`,\n \"startDate\": `Dat\\u{103} \\xeenceput`,\n \"timeZoneName\": `fus orar`,\n \"weekday\": `ziua din s\\u{103}pt\\u{103}m\\xe2n\\u{103}`,\n \"year\": `an`\n};\n\n\nexport {$eb82ef981b5592bf$exports as default};\n//# sourceMappingURL=ro-RO.module.js.map\n","var $6efa0e119f396950$exports = {};\n$6efa0e119f396950$exports = {\n \"calendar\": `\\u{41A}\\u{430}\\u{43B}\\u{435}\\u{43D}\\u{434}\\u{430}\\u{440}\\u{44C}`,\n \"day\": `\\u{434}\\u{435}\\u{43D}\\u{44C}`,\n \"dayPeriod\": `AM/PM`,\n \"endDate\": `\\u{414}\\u{430}\\u{442}\\u{430} \\u{43E}\\u{43A}\\u{43E}\\u{43D}\\u{447}\\u{430}\\u{43D}\\u{438}\\u{44F}`,\n \"era\": `\\u{44D}\\u{440}\\u{430}`,\n \"hour\": `\\u{447}\\u{430}\\u{441}`,\n \"minute\": `\\u{43C}\\u{438}\\u{43D}\\u{443}\\u{442}\\u{430}`,\n \"month\": `\\u{43C}\\u{435}\\u{441}\\u{44F}\\u{446}`,\n \"second\": `\\u{441}\\u{435}\\u{43A}\\u{443}\\u{43D}\\u{434}\\u{430}`,\n \"selectedDateDescription\": (args)=>`\\u{412}\\u{44B}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43D}\\u{430}\\u{44F} \\u{434}\\u{430}\\u{442}\\u{430}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{412}\\u{44B}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43D}\\u{44B}\\u{439} \\u{434}\\u{438}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}: \\u{441} ${args.startDate} \\u{43F}\\u{43E} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{412}\\u{44B}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43D}\\u{43E}\\u{435} \\u{432}\\u{440}\\u{435}\\u{43C}\\u{44F}: ${args.time}`,\n \"startDate\": `\\u{414}\\u{430}\\u{442}\\u{430} \\u{43D}\\u{430}\\u{447}\\u{430}\\u{43B}\\u{430}`,\n \"timeZoneName\": `\\u{447}\\u{430}\\u{441}\\u{43E}\\u{432}\\u{43E}\\u{439} \\u{43F}\\u{43E}\\u{44F}\\u{441}`,\n \"weekday\": `\\u{434}\\u{435}\\u{43D}\\u{44C} \\u{43D}\\u{435}\\u{434}\\u{435}\\u{43B}\\u{438}`,\n \"year\": `\\u{433}\\u{43E}\\u{434}`\n};\n\n\nexport {$6efa0e119f396950$exports as default};\n//# sourceMappingURL=ru-RU.module.js.map\n","var $7f5e57085d7f5049$exports = {};\n$7f5e57085d7f5049$exports = {\n \"calendar\": `Kalend\\xe1r`,\n \"day\": `de\\u{148}`,\n \"dayPeriod\": `AM/PM`,\n \"endDate\": `D\\xe1tum ukon\\u{10D}enia`,\n \"era\": `letopo\\u{10D}et`,\n \"hour\": `hodina`,\n \"minute\": `min\\xfata`,\n \"month\": `mesiac`,\n \"second\": `sekunda`,\n \"selectedDateDescription\": (args)=>`Vybrat\\xfd d\\xe1tum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Vybrat\\xfd rozsah: od ${args.startDate} do ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Vybrat\\xfd \\u{10D}as: ${args.time}`,\n \"startDate\": `D\\xe1tum za\\u{10D}atia`,\n \"timeZoneName\": `\\u{10D}asov\\xe9 p\\xe1smo`,\n \"weekday\": `de\\u{148} t\\xfd\\u{17E}d\\u{148}a`,\n \"year\": `rok`\n};\n\n\nexport {$7f5e57085d7f5049$exports as default};\n//# sourceMappingURL=sk-SK.module.js.map\n","var $578ee7c11dcdde7a$exports = {};\n$578ee7c11dcdde7a$exports = {\n \"calendar\": `Koledar`,\n \"day\": `dan`,\n \"dayPeriod\": `dop/pop`,\n \"endDate\": `Datum konca`,\n \"era\": `doba`,\n \"hour\": `ura`,\n \"minute\": `minuta`,\n \"month\": `mesec`,\n \"second\": `sekunda`,\n \"selectedDateDescription\": (args)=>`Izbrani datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Izbrano obmo\\u{10D}je: ${args.startDate} do ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Izbrani \\u{10D}as: ${args.time}`,\n \"startDate\": `Datum za\\u{10D}etka`,\n \"timeZoneName\": `\\u{10D}asovni pas`,\n \"weekday\": `dan v tednu`,\n \"year\": `leto`\n};\n\n\nexport {$578ee7c11dcdde7a$exports as default};\n//# sourceMappingURL=sl-SI.module.js.map\n","var $bbc3fd6cd0bc9d50$exports = {};\n$bbc3fd6cd0bc9d50$exports = {\n \"calendar\": `Kalendar`,\n \"day\": `\\u{434}\\u{430}\\u{43D}`,\n \"dayPeriod\": `\\u{43F}\\u{440}\\u{435} \\u{43F}\\u{43E}\\u{434}\\u{43D}\\u{435}/\\u{43F}\\u{43E} \\u{43F}\\u{43E}\\u{434}\\u{43D}\\u{435}`,\n \"endDate\": `Datum zavr\\u{161}etka`,\n \"era\": `\\u{435}\\u{440}\\u{430}`,\n \"hour\": `\\u{441}\\u{430}\\u{442}`,\n \"minute\": `\\u{43C}\\u{438}\\u{43D}\\u{443}\\u{442}`,\n \"month\": `\\u{43C}\\u{435}\\u{441}\\u{435}\\u{446}`,\n \"second\": `\\u{441}\\u{435}\\u{43A}\\u{443}\\u{43D}\\u{434}`,\n \"selectedDateDescription\": (args)=>`Izabrani datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Izabrani opseg: od ${args.startDate} do ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Izabrano vreme: ${args.time}`,\n \"startDate\": `Datum po\\u{10D}etka`,\n \"timeZoneName\": `\\u{432}\\u{440}\\u{435}\\u{43C}\\u{435}\\u{43D}\\u{441}\\u{43A}\\u{430} \\u{437}\\u{43E}\\u{43D}\\u{430}`,\n \"weekday\": `\\u{434}\\u{430}\\u{43D} \\u{443} \\u{43D}\\u{435}\\u{434}\\u{435}\\u{459}\\u{438}`,\n \"year\": `\\u{433}\\u{43E}\\u{434}\\u{438}\\u{43D}\\u{430}`\n};\n\n\nexport {$bbc3fd6cd0bc9d50$exports as default};\n//# sourceMappingURL=sr-SP.module.js.map\n","var $0b04512118591d2a$exports = {};\n$0b04512118591d2a$exports = {\n \"calendar\": `Kalender`,\n \"day\": `dag`,\n \"dayPeriod\": `fm/em`,\n \"endDate\": `Slutdatum`,\n \"era\": `era`,\n \"hour\": `timme`,\n \"minute\": `minut`,\n \"month\": `m\\xe5nad`,\n \"second\": `sekund`,\n \"selectedDateDescription\": (args)=>`Valt datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valt intervall: ${args.startDate} till ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Vald tid: ${args.time}`,\n \"startDate\": `Startdatum`,\n \"timeZoneName\": `tidszon`,\n \"weekday\": `veckodag`,\n \"year\": `\\xe5r`\n};\n\n\nexport {$0b04512118591d2a$exports as default};\n//# sourceMappingURL=sv-SE.module.js.map\n","var $3a49d121fe4c9e1d$exports = {};\n$3a49d121fe4c9e1d$exports = {\n \"calendar\": `Takvim`,\n \"day\": `g\\xfcn`,\n \"dayPeriod\": `\\xd6\\xd6/\\xd6S`,\n \"endDate\": `Biti\\u{15F} Tarihi`,\n \"era\": `\\xe7a\\u{11F}`,\n \"hour\": `saat`,\n \"minute\": `dakika`,\n \"month\": `ay`,\n \"second\": `saniye`,\n \"selectedDateDescription\": (args)=>`Se\\xe7ilen Tarih: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Se\\xe7ilen Aral\\u{131}k: ${args.startDate} - ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`Se\\xe7ilen Zaman: ${args.time}`,\n \"startDate\": `Ba\\u{15F}lang\\u{131}\\xe7 Tarihi`,\n \"timeZoneName\": `saat dilimi`,\n \"weekday\": `haftan\\u{131}n g\\xfcn\\xfc`,\n \"year\": `y\\u{131}l`\n};\n\n\nexport {$3a49d121fe4c9e1d$exports as default};\n//# sourceMappingURL=tr-TR.module.js.map\n","var $5ba21dbb8914919d$exports = {};\n$5ba21dbb8914919d$exports = {\n \"calendar\": `\\u{41A}\\u{430}\\u{43B}\\u{435}\\u{43D}\\u{434}\\u{430}\\u{440}`,\n \"day\": `\\u{434}\\u{435}\\u{43D}\\u{44C}`,\n \"dayPeriod\": `\\u{434}\\u{43F}/\\u{43F}\\u{43F}`,\n \"endDate\": `\\u{414}\\u{430}\\u{442}\\u{430} \\u{437}\\u{430}\\u{432}\\u{435}\\u{440}\\u{448}\\u{435}\\u{43D}\\u{43D}\\u{44F}`,\n \"era\": `\\u{435}\\u{440}\\u{430}`,\n \"hour\": `\\u{433}\\u{43E}\\u{434}\\u{438}\\u{43D}\\u{430}`,\n \"minute\": `\\u{445}\\u{432}\\u{438}\\u{43B}\\u{438}\\u{43D}\\u{430}`,\n \"month\": `\\u{43C}\\u{456}\\u{441}\\u{44F}\\u{446}\\u{44C}`,\n \"second\": `\\u{441}\\u{435}\\u{43A}\\u{443}\\u{43D}\\u{434}\\u{430}`,\n \"selectedDateDescription\": (args)=>`\\u{412}\\u{438}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{412}\\u{438}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{438}\\u{439} \\u{434}\\u{456}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}: ${args.startDate} \\u{2014} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{412}\\u{438}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{438}\\u{439} \\u{447}\\u{430}\\u{441}: ${args.time}`,\n \"startDate\": `\\u{414}\\u{430}\\u{442}\\u{430} \\u{43F}\\u{43E}\\u{447}\\u{430}\\u{442}\\u{43A}\\u{443}`,\n \"timeZoneName\": `\\u{447}\\u{430}\\u{441}\\u{43E}\\u{432}\\u{438}\\u{439} \\u{43F}\\u{43E}\\u{44F}\\u{441}`,\n \"weekday\": `\\u{434}\\u{435}\\u{43D}\\u{44C} \\u{442}\\u{438}\\u{436}\\u{43D}\\u{44F}`,\n \"year\": `\\u{440}\\u{456}\\u{43A}`\n};\n\n\nexport {$5ba21dbb8914919d$exports as default};\n//# sourceMappingURL=uk-UA.module.js.map\n","var $51078838e1b16cd7$exports = {};\n$51078838e1b16cd7$exports = {\n \"calendar\": `\\u{65E5}\\u{5386}`,\n \"day\": `\\u{65E5}`,\n \"dayPeriod\": `\\u{4E0A}\\u{5348}/\\u{4E0B}\\u{5348}`,\n \"endDate\": `\\u{7ED3}\\u{675F}\\u{65E5}\\u{671F}`,\n \"era\": `\\u{7EAA}\\u{5143}`,\n \"hour\": `\\u{5C0F}\\u{65F6}`,\n \"minute\": `\\u{5206}\\u{949F}`,\n \"month\": `\\u{6708}`,\n \"second\": `\\u{79D2}`,\n \"selectedDateDescription\": (args)=>`\\u{9009}\\u{5B9A}\\u{7684}\\u{65E5}\\u{671F}\\u{FF1A}${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{9009}\\u{5B9A}\\u{7684}\\u{8303}\\u{56F4}\\u{FF1A}${args.startDate} \\u{81F3} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{9009}\\u{5B9A}\\u{7684}\\u{65F6}\\u{95F4}\\u{FF1A}${args.time}`,\n \"startDate\": `\\u{5F00}\\u{59CB}\\u{65E5}\\u{671F}`,\n \"timeZoneName\": `\\u{65F6}\\u{533A}`,\n \"weekday\": `\\u{5DE5}\\u{4F5C}\\u{65E5}`,\n \"year\": `\\u{5E74}`\n};\n\n\nexport {$51078838e1b16cd7$exports as default};\n//# sourceMappingURL=zh-CN.module.js.map\n","var $33fab8219207655a$exports = {};\n$33fab8219207655a$exports = {\n \"calendar\": `\\u{65E5}\\u{66C6}`,\n \"day\": `\\u{65E5}`,\n \"dayPeriod\": `\\u{4E0A}\\u{5348}/\\u{4E0B}\\u{5348}`,\n \"endDate\": `\\u{7D50}\\u{675F}\\u{65E5}\\u{671F}`,\n \"era\": `\\u{7EAA}\\u{5143}`,\n \"hour\": `\\u{5C0F}\\u{65F6}`,\n \"minute\": `\\u{5206}\\u{949F}`,\n \"month\": `\\u{6708}`,\n \"second\": `\\u{79D2}`,\n \"selectedDateDescription\": (args)=>`\\u{9078}\\u{5B9A}\\u{7684}\\u{65E5}\\u{671F}\\u{FF1A}${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{9078}\\u{5B9A}\\u{7684}\\u{7BC4}\\u{570D}\\u{FF1A}${args.startDate} \\u{81F3} ${args.endDate}`,\n \"selectedTimeDescription\": (args)=>`\\u{9078}\\u{5B9A}\\u{7684}\\u{6642}\\u{9593}\\u{FF1A}${args.time}`,\n \"startDate\": `\\u{958B}\\u{59CB}\\u{65E5}\\u{671F}`,\n \"timeZoneName\": `\\u{65F6}\\u{533A}`,\n \"weekday\": `\\u{5DE5}\\u{4F5C}\\u{65E5}`,\n \"year\": `\\u{5E74}`\n};\n\n\nexport {$33fab8219207655a$exports as default};\n//# sourceMappingURL=zh-TW.module.js.map\n","import $4YhVz$arAEmodulejs from \"./ar-AE.mjs\";\nimport $4YhVz$bgBGmodulejs from \"./bg-BG.mjs\";\nimport $4YhVz$csCZmodulejs from \"./cs-CZ.mjs\";\nimport $4YhVz$daDKmodulejs from \"./da-DK.mjs\";\nimport $4YhVz$deDEmodulejs from \"./de-DE.mjs\";\nimport $4YhVz$elGRmodulejs from \"./el-GR.mjs\";\nimport $4YhVz$enUSmodulejs from \"./en-US.mjs\";\nimport $4YhVz$esESmodulejs from \"./es-ES.mjs\";\nimport $4YhVz$etEEmodulejs from \"./et-EE.mjs\";\nimport $4YhVz$fiFImodulejs from \"./fi-FI.mjs\";\nimport $4YhVz$frFRmodulejs from \"./fr-FR.mjs\";\nimport $4YhVz$heILmodulejs from \"./he-IL.mjs\";\nimport $4YhVz$hrHRmodulejs from \"./hr-HR.mjs\";\nimport $4YhVz$huHUmodulejs from \"./hu-HU.mjs\";\nimport $4YhVz$itITmodulejs from \"./it-IT.mjs\";\nimport $4YhVz$jaJPmodulejs from \"./ja-JP.mjs\";\nimport $4YhVz$koKRmodulejs from \"./ko-KR.mjs\";\nimport $4YhVz$ltLTmodulejs from \"./lt-LT.mjs\";\nimport $4YhVz$lvLVmodulejs from \"./lv-LV.mjs\";\nimport $4YhVz$nbNOmodulejs from \"./nb-NO.mjs\";\nimport $4YhVz$nlNLmodulejs from \"./nl-NL.mjs\";\nimport $4YhVz$plPLmodulejs from \"./pl-PL.mjs\";\nimport $4YhVz$ptBRmodulejs from \"./pt-BR.mjs\";\nimport $4YhVz$ptPTmodulejs from \"./pt-PT.mjs\";\nimport $4YhVz$roROmodulejs from \"./ro-RO.mjs\";\nimport $4YhVz$ruRUmodulejs from \"./ru-RU.mjs\";\nimport $4YhVz$skSKmodulejs from \"./sk-SK.mjs\";\nimport $4YhVz$slSImodulejs from \"./sl-SI.mjs\";\nimport $4YhVz$srSPmodulejs from \"./sr-SP.mjs\";\nimport $4YhVz$svSEmodulejs from \"./sv-SE.mjs\";\nimport $4YhVz$trTRmodulejs from \"./tr-TR.mjs\";\nimport $4YhVz$ukUAmodulejs from \"./uk-UA.mjs\";\nimport $4YhVz$zhCNmodulejs from \"./zh-CN.mjs\";\nimport $4YhVz$zhTWmodulejs from \"./zh-TW.mjs\";\n\nvar $dfb4eba373ed9493$exports = {};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$dfb4eba373ed9493$exports = {\n \"ar-AE\": $4YhVz$arAEmodulejs,\n \"bg-BG\": $4YhVz$bgBGmodulejs,\n \"cs-CZ\": $4YhVz$csCZmodulejs,\n \"da-DK\": $4YhVz$daDKmodulejs,\n \"de-DE\": $4YhVz$deDEmodulejs,\n \"el-GR\": $4YhVz$elGRmodulejs,\n \"en-US\": $4YhVz$enUSmodulejs,\n \"es-ES\": $4YhVz$esESmodulejs,\n \"et-EE\": $4YhVz$etEEmodulejs,\n \"fi-FI\": $4YhVz$fiFImodulejs,\n \"fr-FR\": $4YhVz$frFRmodulejs,\n \"he-IL\": $4YhVz$heILmodulejs,\n \"hr-HR\": $4YhVz$hrHRmodulejs,\n \"hu-HU\": $4YhVz$huHUmodulejs,\n \"it-IT\": $4YhVz$itITmodulejs,\n \"ja-JP\": $4YhVz$jaJPmodulejs,\n \"ko-KR\": $4YhVz$koKRmodulejs,\n \"lt-LT\": $4YhVz$ltLTmodulejs,\n \"lv-LV\": $4YhVz$lvLVmodulejs,\n \"nb-NO\": $4YhVz$nbNOmodulejs,\n \"nl-NL\": $4YhVz$nlNLmodulejs,\n \"pl-PL\": $4YhVz$plPLmodulejs,\n \"pt-BR\": $4YhVz$ptBRmodulejs,\n \"pt-PT\": $4YhVz$ptPTmodulejs,\n \"ro-RO\": $4YhVz$roROmodulejs,\n \"ru-RU\": $4YhVz$ruRUmodulejs,\n \"sk-SK\": $4YhVz$skSKmodulejs,\n \"sl-SI\": $4YhVz$slSImodulejs,\n \"sr-SP\": $4YhVz$srSPmodulejs,\n \"sv-SE\": $4YhVz$svSEmodulejs,\n \"tr-TR\": $4YhVz$trTRmodulejs,\n \"uk-UA\": $4YhVz$ukUAmodulejs,\n \"zh-CN\": $4YhVz$zhCNmodulejs,\n \"zh-TW\": $4YhVz$zhTWmodulejs\n};\n\n\nexport {$dfb4eba373ed9493$exports as default};\n//# sourceMappingURL=intlStrings.module.js.map\n","import $HgANd$react from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c = typeof document !== 'undefined' ? (0, $HgANd$react).useLayoutEffect : ()=>{};\n\n\nexport {$f0a04ccd8dbdd83b$export$e5c5a5f917a5871c as useLayoutEffect};\n//# sourceMappingURL=useLayoutEffect.module.js.map\n","import {useLayoutEffect as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c} from \"./useLayoutEffect.mjs\";\nimport $lmaYr$react, {useRef as $lmaYr$useRef, useCallback as $lmaYr$useCallback} from \"react\";\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nvar $8ae05eaa5c114e9c$var$_React_useInsertionEffect;\n// Use the earliest effect type possible. useInsertionEffect runs during the mutation phase,\n// before all layout effects, but is available only in React 18 and later.\nconst $8ae05eaa5c114e9c$var$useEarlyEffect = ($8ae05eaa5c114e9c$var$_React_useInsertionEffect = (0, $lmaYr$react)['useInsertionEffect']) !== null && $8ae05eaa5c114e9c$var$_React_useInsertionEffect !== void 0 ? $8ae05eaa5c114e9c$var$_React_useInsertionEffect : (0, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c);\nfunction $8ae05eaa5c114e9c$export$7f54fc3180508a52(fn) {\n const ref = (0, $lmaYr$useRef)(null);\n $8ae05eaa5c114e9c$var$useEarlyEffect(()=>{\n ref.current = fn;\n }, [\n fn\n ]);\n // @ts-ignore\n return (0, $lmaYr$useCallback)((...args)=>{\n const f = ref.current;\n return f === null || f === void 0 ? void 0 : f(...args);\n }, []);\n}\n\n\nexport {$8ae05eaa5c114e9c$export$7f54fc3180508a52 as useEffectEvent};\n//# sourceMappingURL=useEffectEvent.module.js.map\n","import {useEffectEvent as $8ae05eaa5c114e9c$export$7f54fc3180508a52} from \"./useEffectEvent.mjs\";\nimport {useLayoutEffect as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c} from \"./useLayoutEffect.mjs\";\nimport {useState as $fCAlL$useState, useRef as $fCAlL$useRef} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $1dbecbe27a04f9af$export$14d238f342723f25(defaultValue) {\n let [value, setValue] = (0, $fCAlL$useState)(defaultValue);\n let effect = (0, $fCAlL$useRef)(null);\n // Store the function in a ref so we can always access the current version\n // which has the proper `value` in scope.\n let nextRef = (0, $8ae05eaa5c114e9c$export$7f54fc3180508a52)(()=>{\n if (!effect.current) return;\n // Run the generator to the next yield.\n let newValue = effect.current.next();\n // If the generator is done, reset the effect.\n if (newValue.done) {\n effect.current = null;\n return;\n }\n // If the value is the same as the current value,\n // then continue to the next yield. Otherwise,\n // set the value in state and wait for the next layout effect.\n if (value === newValue.value) nextRef();\n else setValue(newValue.value);\n });\n (0, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{\n // If there is an effect currently running, continue to the next yield.\n if (effect.current) nextRef();\n });\n let queue = (0, $8ae05eaa5c114e9c$export$7f54fc3180508a52)((fn)=>{\n effect.current = fn(value);\n nextRef();\n });\n return [\n value,\n queue\n ];\n}\n\n\nexport {$1dbecbe27a04f9af$export$14d238f342723f25 as useValueEffect};\n//# sourceMappingURL=useValueEffect.module.js.map\n","import $670gB$react, {useContext as $670gB$useContext, useState as $670gB$useState, useMemo as $670gB$useMemo, useLayoutEffect as $670gB$useLayoutEffect, useRef as $670gB$useRef} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We must avoid a circular dependency with @react-aria/utils, and this useLayoutEffect is\n// guarded by a check that it only runs on the client side.\n// eslint-disable-next-line rulesdir/useLayoutEffectRule\n\n// Default context value to use in case there is no SSRProvider. This is fine for\n// client-only apps. In order to support multiple copies of React Aria potentially\n// being on the page at once, the prefix is set to a random number. SSRProvider\n// will reset this to zero for consistency between server and client, so in the\n// SSR case multiple copies of React Aria is not supported.\nconst $b5e257d569688ac6$var$defaultContext = {\n prefix: String(Math.round(Math.random() * 10000000000)),\n current: 0\n};\nconst $b5e257d569688ac6$var$SSRContext = /*#__PURE__*/ (0, $670gB$react).createContext($b5e257d569688ac6$var$defaultContext);\nconst $b5e257d569688ac6$var$IsSSRContext = /*#__PURE__*/ (0, $670gB$react).createContext(false);\n// This is only used in React < 18.\nfunction $b5e257d569688ac6$var$LegacySSRProvider(props) {\n let cur = (0, $670gB$useContext)($b5e257d569688ac6$var$SSRContext);\n let counter = $b5e257d569688ac6$var$useCounter(cur === $b5e257d569688ac6$var$defaultContext);\n let [isSSR, setIsSSR] = (0, $670gB$useState)(true);\n let value = (0, $670gB$useMemo)(()=>({\n // If this is the first SSRProvider, start with an empty string prefix, otherwise\n // append and increment the counter.\n prefix: cur === $b5e257d569688ac6$var$defaultContext ? '' : `${cur.prefix}-${counter}`,\n current: 0\n }), [\n cur,\n counter\n ]);\n // If on the client, and the component was initially server rendered,\n // then schedule a layout effect to update the component after hydration.\n if (typeof document !== 'undefined') // This if statement technically breaks the rules of hooks, but is safe\n // because the condition never changes after mounting.\n // eslint-disable-next-line react-hooks/rules-of-hooks\n (0, $670gB$useLayoutEffect)(()=>{\n setIsSSR(false);\n }, []);\n return /*#__PURE__*/ (0, $670gB$react).createElement($b5e257d569688ac6$var$SSRContext.Provider, {\n value: value\n }, /*#__PURE__*/ (0, $670gB$react).createElement($b5e257d569688ac6$var$IsSSRContext.Provider, {\n value: isSSR\n }, props.children));\n}\nlet $b5e257d569688ac6$var$warnedAboutSSRProvider = false;\nfunction $b5e257d569688ac6$export$9f8ac96af4b1b2ae(props) {\n if (typeof (0, $670gB$react)['useId'] === 'function') {\n if (process.env.NODE_ENV !== 'test' && process.env.NODE_ENV !== 'production' && !$b5e257d569688ac6$var$warnedAboutSSRProvider) {\n console.warn('In React 18, SSRProvider is not necessary and is a noop. You can remove it from your app.');\n $b5e257d569688ac6$var$warnedAboutSSRProvider = true;\n }\n return /*#__PURE__*/ (0, $670gB$react).createElement((0, $670gB$react).Fragment, null, props.children);\n }\n return /*#__PURE__*/ (0, $670gB$react).createElement($b5e257d569688ac6$var$LegacySSRProvider, props);\n}\nlet $b5e257d569688ac6$var$canUseDOM = Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);\nlet $b5e257d569688ac6$var$componentIds = new WeakMap();\nfunction $b5e257d569688ac6$var$useCounter(isDisabled = false) {\n let ctx = (0, $670gB$useContext)($b5e257d569688ac6$var$SSRContext);\n let ref = (0, $670gB$useRef)(null);\n // eslint-disable-next-line rulesdir/pure-render\n if (ref.current === null && !isDisabled) {\n var _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner, _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n // In strict mode, React renders components twice, and the ref will be reset to null on the second render.\n // This means our id counter will be incremented twice instead of once. This is a problem because on the\n // server, components are only rendered once and so ids generated on the server won't match the client.\n // In React 18, useId was introduced to solve this, but it is not available in older versions. So to solve this\n // we need to use some React internals to access the underlying Fiber instance, which is stable between renders.\n // This is exposed as ReactCurrentOwner in development, which is all we need since StrictMode only runs in development.\n // To ensure that we only increment the global counter once, we store the starting id for this component in\n // a weak map associated with the Fiber. On the second render, we reset the global counter to this value.\n // Since React runs the second render immediately after the first, this is safe.\n // @ts-ignore\n let currentOwner = (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = (0, $670gB$react).__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED === void 0 ? void 0 : (_React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner = _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner) === null || _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner === void 0 ? void 0 : _React___SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED_ReactCurrentOwner.current;\n if (currentOwner) {\n let prevComponentValue = $b5e257d569688ac6$var$componentIds.get(currentOwner);\n if (prevComponentValue == null) // On the first render, and first call to useId, store the id and state in our weak map.\n $b5e257d569688ac6$var$componentIds.set(currentOwner, {\n id: ctx.current,\n state: currentOwner.memoizedState\n });\n else if (currentOwner.memoizedState !== prevComponentValue.state) {\n // On the second render, the memoizedState gets reset by React.\n // Reset the counter, and remove from the weak map so we don't\n // do this for subsequent useId calls.\n ctx.current = prevComponentValue.id;\n $b5e257d569688ac6$var$componentIds.delete(currentOwner);\n }\n }\n // eslint-disable-next-line rulesdir/pure-render\n ref.current = ++ctx.current;\n }\n // eslint-disable-next-line rulesdir/pure-render\n return ref.current;\n}\nfunction $b5e257d569688ac6$var$useLegacySSRSafeId(defaultId) {\n let ctx = (0, $670gB$useContext)($b5e257d569688ac6$var$SSRContext);\n // If we are rendering in a non-DOM environment, and there's no SSRProvider,\n // provide a warning to hint to the developer to add one.\n if (ctx === $b5e257d569688ac6$var$defaultContext && !$b5e257d569688ac6$var$canUseDOM && process.env.NODE_ENV !== 'production') console.warn('When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.');\n let counter = $b5e257d569688ac6$var$useCounter(!!defaultId);\n let prefix = ctx === $b5e257d569688ac6$var$defaultContext && process.env.NODE_ENV === 'test' ? 'react-aria' : `react-aria${ctx.prefix}`;\n return defaultId || `${prefix}-${counter}`;\n}\nfunction $b5e257d569688ac6$var$useModernSSRSafeId(defaultId) {\n let id = (0, $670gB$react).useId();\n let [didSSR] = (0, $670gB$useState)($b5e257d569688ac6$export$535bd6ca7f90a273());\n let prefix = didSSR || process.env.NODE_ENV === 'test' ? 'react-aria' : `react-aria${$b5e257d569688ac6$var$defaultContext.prefix}`;\n return defaultId || `${prefix}-${id}`;\n}\nconst $b5e257d569688ac6$export$619500959fc48b26 = typeof (0, $670gB$react)['useId'] === 'function' ? $b5e257d569688ac6$var$useModernSSRSafeId : $b5e257d569688ac6$var$useLegacySSRSafeId;\nfunction $b5e257d569688ac6$var$getSnapshot() {\n return false;\n}\nfunction $b5e257d569688ac6$var$getServerSnapshot() {\n return true;\n}\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nfunction $b5e257d569688ac6$var$subscribe(onStoreChange) {\n // noop\n return ()=>{};\n}\nfunction $b5e257d569688ac6$export$535bd6ca7f90a273() {\n // In React 18, we can use useSyncExternalStore to detect if we're server rendering or hydrating.\n if (typeof (0, $670gB$react)['useSyncExternalStore'] === 'function') return (0, $670gB$react)['useSyncExternalStore']($b5e257d569688ac6$var$subscribe, $b5e257d569688ac6$var$getSnapshot, $b5e257d569688ac6$var$getServerSnapshot);\n // eslint-disable-next-line react-hooks/rules-of-hooks\n return (0, $670gB$useContext)($b5e257d569688ac6$var$IsSSRContext);\n}\n\n\nexport {$b5e257d569688ac6$export$9f8ac96af4b1b2ae as SSRProvider, $b5e257d569688ac6$export$535bd6ca7f90a273 as useIsSSR, $b5e257d569688ac6$export$619500959fc48b26 as useSSRSafeId};\n//# sourceMappingURL=SSRProvider.module.js.map\n","import {useLayoutEffect as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c} from \"./useLayoutEffect.mjs\";\nimport {useValueEffect as $1dbecbe27a04f9af$export$14d238f342723f25} from \"./useValueEffect.mjs\";\nimport {useState as $eKkEp$useState, useRef as $eKkEp$useRef, useEffect as $eKkEp$useEffect, useCallback as $eKkEp$useCallback} from \"react\";\nimport {useSSRSafeId as $eKkEp$useSSRSafeId} from \"@react-aria/ssr\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n// copied from SSRProvider.tsx to reduce exports, if needed again, consider sharing\nlet $bdb11010cef70236$var$canUseDOM = Boolean(typeof window !== 'undefined' && window.document && window.document.createElement);\nlet $bdb11010cef70236$export$d41a04c74483c6ef = new Map();\n// This allows us to clean up the idsUpdaterMap when the id is no longer used.\n// Map is a strong reference, so unused ids wouldn't be cleaned up otherwise.\n// This can happen in suspended components where mount/unmount is not called.\nlet $bdb11010cef70236$var$registry;\nif (typeof FinalizationRegistry !== 'undefined') $bdb11010cef70236$var$registry = new FinalizationRegistry((heldValue)=>{\n $bdb11010cef70236$export$d41a04c74483c6ef.delete(heldValue);\n});\nfunction $bdb11010cef70236$export$f680877a34711e37(defaultId) {\n let [value, setValue] = (0, $eKkEp$useState)(defaultId);\n let nextId = (0, $eKkEp$useRef)(null);\n let res = (0, $eKkEp$useSSRSafeId)(value);\n let cleanupRef = (0, $eKkEp$useRef)(null);\n if ($bdb11010cef70236$var$registry) $bdb11010cef70236$var$registry.register(cleanupRef, res);\n if ($bdb11010cef70236$var$canUseDOM) {\n const cacheIdRef = $bdb11010cef70236$export$d41a04c74483c6ef.get(res);\n if (cacheIdRef && !cacheIdRef.includes(nextId)) cacheIdRef.push(nextId);\n else $bdb11010cef70236$export$d41a04c74483c6ef.set(res, [\n nextId\n ]);\n }\n (0, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{\n let r = res;\n return ()=>{\n // In Suspense, the cleanup function may be not called\n // when it is though, also remove it from the finalization registry.\n if ($bdb11010cef70236$var$registry) $bdb11010cef70236$var$registry.unregister(cleanupRef);\n $bdb11010cef70236$export$d41a04c74483c6ef.delete(r);\n };\n }, [\n res\n ]);\n // This cannot cause an infinite loop because the ref is always cleaned up.\n // eslint-disable-next-line\n (0, $eKkEp$useEffect)(()=>{\n let newId = nextId.current;\n if (newId) setValue(newId);\n return ()=>{\n if (newId) nextId.current = null;\n };\n });\n return res;\n}\nfunction $bdb11010cef70236$export$cd8c9cb68f842629(idA, idB) {\n if (idA === idB) return idA;\n let setIdsA = $bdb11010cef70236$export$d41a04c74483c6ef.get(idA);\n if (setIdsA) {\n setIdsA.forEach((ref)=>ref.current = idB);\n return idB;\n }\n let setIdsB = $bdb11010cef70236$export$d41a04c74483c6ef.get(idB);\n if (setIdsB) {\n setIdsB.forEach((ref)=>ref.current = idA);\n return idA;\n }\n return idB;\n}\nfunction $bdb11010cef70236$export$b4cc09c592e8fdb8(depArray = []) {\n let id = $bdb11010cef70236$export$f680877a34711e37();\n let [resolvedId, setResolvedId] = (0, $1dbecbe27a04f9af$export$14d238f342723f25)(id);\n let updateId = (0, $eKkEp$useCallback)(()=>{\n setResolvedId(function*() {\n yield id;\n yield document.getElementById(id) ? id : undefined;\n });\n }, [\n id,\n setResolvedId\n ]);\n (0, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(updateId, [\n id,\n updateId,\n ...depArray\n ]);\n return resolvedId;\n}\n\n\nexport {$bdb11010cef70236$export$d41a04c74483c6ef as idsUpdaterMap, $bdb11010cef70236$export$f680877a34711e37 as useId, $bdb11010cef70236$export$cd8c9cb68f842629 as mergeIds, $bdb11010cef70236$export$b4cc09c592e8fdb8 as useSlotId};\n//# sourceMappingURL=useId.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /**\n * Calls all functions in the order they were chained with the same arguments.\n */ function $ff5963eb1fccf552$export$e08e3b67e392101e(...callbacks) {\n return (...args)=>{\n for (let callback of callbacks)if (typeof callback === 'function') callback(...args);\n };\n}\n\n\nexport {$ff5963eb1fccf552$export$e08e3b67e392101e as chain};\n//# sourceMappingURL=chain.module.js.map\n","const $431fbd86ca7dc216$export$b204af158042fbac = (el)=>{\n var _el_ownerDocument;\n return (_el_ownerDocument = el === null || el === void 0 ? void 0 : el.ownerDocument) !== null && _el_ownerDocument !== void 0 ? _el_ownerDocument : document;\n};\nconst $431fbd86ca7dc216$export$f21a1ffae260145a = (el)=>{\n if (el && 'window' in el && el.window === el) return el;\n const doc = $431fbd86ca7dc216$export$b204af158042fbac(el);\n return doc.defaultView || window;\n};\n/**\n * Type guard that checks if a value is a Node. Verifies the presence and type of the nodeType property.\n */ function $431fbd86ca7dc216$var$isNode(value) {\n return value !== null && typeof value === 'object' && 'nodeType' in value && typeof value.nodeType === 'number';\n}\nfunction $431fbd86ca7dc216$export$af51f0f06c0f328a(node) {\n return $431fbd86ca7dc216$var$isNode(node) && node.nodeType === Node.DOCUMENT_FRAGMENT_NODE && 'host' in node;\n}\n\n\nexport {$431fbd86ca7dc216$export$b204af158042fbac as getOwnerDocument, $431fbd86ca7dc216$export$f21a1ffae260145a as getOwnerWindow, $431fbd86ca7dc216$export$af51f0f06c0f328a as isShadowRoot};\n//# sourceMappingURL=domHelpers.module.js.map\n","/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ let $f4e2df6bd15f8569$var$_tableNestedRows = false;\nlet $f4e2df6bd15f8569$var$_shadowDOM = false;\nfunction $f4e2df6bd15f8569$export$d9d8a0f82de49530() {\n $f4e2df6bd15f8569$var$_tableNestedRows = true;\n}\nfunction $f4e2df6bd15f8569$export$1b00cb14a96194e6() {\n return $f4e2df6bd15f8569$var$_tableNestedRows;\n}\nfunction $f4e2df6bd15f8569$export$12b151d9882e9985() {\n $f4e2df6bd15f8569$var$_shadowDOM = true;\n}\nfunction $f4e2df6bd15f8569$export$98658e8c59125e6a() {\n return $f4e2df6bd15f8569$var$_shadowDOM;\n}\n\n\nexport {$f4e2df6bd15f8569$export$d9d8a0f82de49530 as enableTableNestedRows, $f4e2df6bd15f8569$export$1b00cb14a96194e6 as tableNestedRows, $f4e2df6bd15f8569$export$12b151d9882e9985 as enableShadowDOM, $f4e2df6bd15f8569$export$98658e8c59125e6a as shadowDOM};\n//# sourceMappingURL=module.js.map\n","import {isShadowRoot as $431fbd86ca7dc216$export$af51f0f06c0f328a} from \"./domHelpers.mjs\";\nimport {shadowDOM as $lcSu5$shadowDOM} from \"@react-stately/flags\";\n\n// Source: https://github.com/microsoft/tabster/blob/a89fc5d7e332d48f68d03b1ca6e344489d1c3898/src/Shadowdomize/DOMFunctions.ts#L16\n\n\nfunction $d4ee10de306f2510$export$4282f70798064fe0(node, otherNode) {\n if (!(0, $lcSu5$shadowDOM)()) return otherNode && node ? node.contains(otherNode) : false;\n if (!node || !otherNode) return false;\n let currentNode = otherNode;\n while(currentNode !== null){\n if (currentNode === node) return true;\n if (currentNode.tagName === 'SLOT' && currentNode.assignedSlot) // Element is slotted\n currentNode = currentNode.assignedSlot.parentNode;\n else if ((0, $431fbd86ca7dc216$export$af51f0f06c0f328a)(currentNode)) // Element is in shadow root\n currentNode = currentNode.host;\n else currentNode = currentNode.parentNode;\n }\n return false;\n}\nconst $d4ee10de306f2510$export$cd4e5573fbe2b576 = (doc = document)=>{\n var _activeElement_shadowRoot;\n if (!(0, $lcSu5$shadowDOM)()) return doc.activeElement;\n let activeElement = doc.activeElement;\n while(activeElement && 'shadowRoot' in activeElement && ((_activeElement_shadowRoot = activeElement.shadowRoot) === null || _activeElement_shadowRoot === void 0 ? void 0 : _activeElement_shadowRoot.activeElement))activeElement = activeElement.shadowRoot.activeElement;\n return activeElement;\n};\nfunction $d4ee10de306f2510$export$e58f029f0fbfdb29(event) {\n if ((0, $lcSu5$shadowDOM)() && event.target.shadowRoot) {\n if (event.composedPath) return event.composedPath()[0];\n }\n return event.target;\n}\n\n\nexport {$d4ee10de306f2510$export$4282f70798064fe0 as nodeContains, $d4ee10de306f2510$export$cd4e5573fbe2b576 as getActiveElement, $d4ee10de306f2510$export$e58f029f0fbfdb29 as getEventTarget};\n//# sourceMappingURL=DOMFunctions.module.js.map\n","import {nodeContains as $d4ee10de306f2510$export$4282f70798064fe0} from \"./DOMFunctions.mjs\";\nimport {shadowDOM as $bJKXg$shadowDOM} from \"@react-stately/flags\";\n\n// https://github.com/microsoft/tabster/blob/a89fc5d7e332d48f68d03b1ca6e344489d1c3898/src/Shadowdomize/ShadowTreeWalker.ts\n\n\nclass $dfc540311bf7f109$export$63eb3ababa9c55c4 {\n get currentNode() {\n return this._currentNode;\n }\n set currentNode(node) {\n if (!(0, $d4ee10de306f2510$export$4282f70798064fe0)(this.root, node)) throw new Error('Cannot set currentNode to a node that is not contained by the root node.');\n const walkers = [];\n let curNode = node;\n let currentWalkerCurrentNode = node;\n this._currentNode = node;\n while(curNode && curNode !== this.root)if (curNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE) {\n const shadowRoot = curNode;\n const walker = this._doc.createTreeWalker(shadowRoot, this.whatToShow, {\n acceptNode: this._acceptNode\n });\n walkers.push(walker);\n walker.currentNode = currentWalkerCurrentNode;\n this._currentSetFor.add(walker);\n curNode = currentWalkerCurrentNode = shadowRoot.host;\n } else curNode = curNode.parentNode;\n const walker = this._doc.createTreeWalker(this.root, this.whatToShow, {\n acceptNode: this._acceptNode\n });\n walkers.push(walker);\n walker.currentNode = currentWalkerCurrentNode;\n this._currentSetFor.add(walker);\n this._walkerStack = walkers;\n }\n get doc() {\n return this._doc;\n }\n firstChild() {\n let currentNode = this.currentNode;\n let newNode = this.nextNode();\n if (!(0, $d4ee10de306f2510$export$4282f70798064fe0)(currentNode, newNode)) {\n this.currentNode = currentNode;\n return null;\n }\n if (newNode) this.currentNode = newNode;\n return newNode;\n }\n lastChild() {\n let walker = this._walkerStack[0];\n let newNode = walker.lastChild();\n if (newNode) this.currentNode = newNode;\n return newNode;\n }\n nextNode() {\n const nextNode = this._walkerStack[0].nextNode();\n if (nextNode) {\n const shadowRoot = nextNode.shadowRoot;\n if (shadowRoot) {\n var _this_filter;\n let nodeResult;\n if (typeof this.filter === 'function') nodeResult = this.filter(nextNode);\n else if ((_this_filter = this.filter) === null || _this_filter === void 0 ? void 0 : _this_filter.acceptNode) nodeResult = this.filter.acceptNode(nextNode);\n if (nodeResult === NodeFilter.FILTER_ACCEPT) {\n this.currentNode = nextNode;\n return nextNode;\n }\n // _acceptNode should have added new walker for this shadow,\n // go in recursively.\n let newNode = this.nextNode();\n if (newNode) this.currentNode = newNode;\n return newNode;\n }\n if (nextNode) this.currentNode = nextNode;\n return nextNode;\n } else {\n if (this._walkerStack.length > 1) {\n this._walkerStack.shift();\n let newNode = this.nextNode();\n if (newNode) this.currentNode = newNode;\n return newNode;\n } else return null;\n }\n }\n previousNode() {\n const currentWalker = this._walkerStack[0];\n if (currentWalker.currentNode === currentWalker.root) {\n if (this._currentSetFor.has(currentWalker)) {\n this._currentSetFor.delete(currentWalker);\n if (this._walkerStack.length > 1) {\n this._walkerStack.shift();\n let newNode = this.previousNode();\n if (newNode) this.currentNode = newNode;\n return newNode;\n } else return null;\n }\n return null;\n }\n const previousNode = currentWalker.previousNode();\n if (previousNode) {\n const shadowRoot = previousNode.shadowRoot;\n if (shadowRoot) {\n var _this_filter;\n let nodeResult;\n if (typeof this.filter === 'function') nodeResult = this.filter(previousNode);\n else if ((_this_filter = this.filter) === null || _this_filter === void 0 ? void 0 : _this_filter.acceptNode) nodeResult = this.filter.acceptNode(previousNode);\n if (nodeResult === NodeFilter.FILTER_ACCEPT) {\n if (previousNode) this.currentNode = previousNode;\n return previousNode;\n }\n // _acceptNode should have added new walker for this shadow,\n // go in recursively.\n let newNode = this.lastChild();\n if (newNode) this.currentNode = newNode;\n return newNode;\n }\n if (previousNode) this.currentNode = previousNode;\n return previousNode;\n } else {\n if (this._walkerStack.length > 1) {\n this._walkerStack.shift();\n let newNode = this.previousNode();\n if (newNode) this.currentNode = newNode;\n return newNode;\n } else return null;\n }\n }\n /**\n * @deprecated\n */ nextSibling() {\n // if (__DEV__) {\n // throw new Error(\"Method not implemented.\");\n // }\n return null;\n }\n /**\n * @deprecated\n */ previousSibling() {\n // if (__DEV__) {\n // throw new Error(\"Method not implemented.\");\n // }\n return null;\n }\n /**\n * @deprecated\n */ parentNode() {\n // if (__DEV__) {\n // throw new Error(\"Method not implemented.\");\n // }\n return null;\n }\n constructor(doc, root, whatToShow, filter){\n this._walkerStack = [];\n this._currentSetFor = new Set();\n this._acceptNode = (node)=>{\n if (node.nodeType === Node.ELEMENT_NODE) {\n const shadowRoot = node.shadowRoot;\n if (shadowRoot) {\n const walker = this._doc.createTreeWalker(shadowRoot, this.whatToShow, {\n acceptNode: this._acceptNode\n });\n this._walkerStack.unshift(walker);\n return NodeFilter.FILTER_ACCEPT;\n } else {\n var _this_filter;\n if (typeof this.filter === 'function') return this.filter(node);\n else if ((_this_filter = this.filter) === null || _this_filter === void 0 ? void 0 : _this_filter.acceptNode) return this.filter.acceptNode(node);\n else if (this.filter === null) return NodeFilter.FILTER_ACCEPT;\n }\n }\n return NodeFilter.FILTER_SKIP;\n };\n this._doc = doc;\n this.root = root;\n this.filter = filter !== null && filter !== void 0 ? filter : null;\n this.whatToShow = whatToShow !== null && whatToShow !== void 0 ? whatToShow : NodeFilter.SHOW_ALL;\n this._currentNode = root;\n this._walkerStack.unshift(doc.createTreeWalker(root, whatToShow, this._acceptNode));\n const shadowRoot = root.shadowRoot;\n if (shadowRoot) {\n const walker = this._doc.createTreeWalker(shadowRoot, this.whatToShow, {\n acceptNode: this._acceptNode\n });\n this._walkerStack.unshift(walker);\n }\n }\n}\nfunction $dfc540311bf7f109$export$4d0f8be8b12a7ef6(doc, root, whatToShow, filter) {\n if ((0, $bJKXg$shadowDOM)()) return new $dfc540311bf7f109$export$63eb3ababa9c55c4(doc, root, whatToShow, filter);\n return doc.createTreeWalker(root, whatToShow, filter);\n}\n\n\nexport {$dfc540311bf7f109$export$63eb3ababa9c55c4 as ShadowTreeWalker, $dfc540311bf7f109$export$4d0f8be8b12a7ef6 as createShadowTreeWalker};\n//# sourceMappingURL=ShadowTreeWalker.module.js.map\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t<o;t++)e[t]&&(f=r(e[t]))&&(n&&(n+=\" \"),n+=f)}else for(f in e)e[f]&&(n&&(n+=\" \"),n+=f);return n}export function clsx(){for(var e,t,f=0,n=\"\",o=arguments.length;f<o;f++)(e=arguments[f])&&(t=r(e))&&(n&&(n+=\" \"),n+=t);return n}export default clsx;","import {chain as $ff5963eb1fccf552$export$e08e3b67e392101e} from \"./chain.mjs\";\nimport {mergeIds as $bdb11010cef70236$export$cd8c9cb68f842629} from \"./useId.mjs\";\nimport $7jXr9$clsx from \"clsx\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $3ef42575df84b30b$export$9d1611c77c2fe928(...args) {\n // Start with a base clone of the first argument. This is a lot faster than starting\n // with an empty object and adding properties as we go.\n let result = {\n ...args[0]\n };\n for(let i = 1; i < args.length; i++){\n let props = args[i];\n for(let key in props){\n let a = result[key];\n let b = props[key];\n // Chain events\n if (typeof a === 'function' && typeof b === 'function' && // This is a lot faster than a regex.\n key[0] === 'o' && key[1] === 'n' && key.charCodeAt(2) >= /* 'A' */ 65 && key.charCodeAt(2) <= /* 'Z' */ 90) result[key] = (0, $ff5963eb1fccf552$export$e08e3b67e392101e)(a, b);\n else if ((key === 'className' || key === 'UNSAFE_className') && typeof a === 'string' && typeof b === 'string') result[key] = (0, $7jXr9$clsx)(a, b);\n else if (key === 'id' && a && b) result.id = (0, $bdb11010cef70236$export$cd8c9cb68f842629)(a, b);\n else result[key] = b !== undefined ? b : a;\n }\n }\n return result;\n}\n\n\nexport {$3ef42575df84b30b$export$9d1611c77c2fe928 as mergeProps};\n//# sourceMappingURL=mergeProps.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $65484d02dcb7eb3e$var$DOMPropNames = new Set([\n 'id'\n]);\nconst $65484d02dcb7eb3e$var$labelablePropNames = new Set([\n 'aria-label',\n 'aria-labelledby',\n 'aria-describedby',\n 'aria-details'\n]);\n// See LinkDOMProps in dom.d.ts.\nconst $65484d02dcb7eb3e$var$linkPropNames = new Set([\n 'href',\n 'hrefLang',\n 'target',\n 'rel',\n 'download',\n 'ping',\n 'referrerPolicy'\n]);\nconst $65484d02dcb7eb3e$var$globalAttrs = new Set([\n 'dir',\n 'lang',\n 'hidden',\n 'inert',\n 'translate'\n]);\nconst $65484d02dcb7eb3e$var$globalEvents = new Set([\n 'onClick',\n 'onAuxClick',\n 'onContextMenu',\n 'onDoubleClick',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onTouchCancel',\n 'onTouchEnd',\n 'onTouchMove',\n 'onTouchStart',\n 'onPointerDown',\n 'onPointerMove',\n 'onPointerUp',\n 'onPointerCancel',\n 'onPointerEnter',\n 'onPointerLeave',\n 'onPointerOver',\n 'onPointerOut',\n 'onGotPointerCapture',\n 'onLostPointerCapture',\n 'onScroll',\n 'onWheel',\n 'onAnimationStart',\n 'onAnimationEnd',\n 'onAnimationIteration',\n 'onTransitionCancel',\n 'onTransitionEnd',\n 'onTransitionRun',\n 'onTransitionStart'\n]);\nconst $65484d02dcb7eb3e$var$propRe = /^(data-.*)$/;\nfunction $65484d02dcb7eb3e$export$457c3d6518dd4c6f(props, opts = {}) {\n let { labelable: labelable, isLink: isLink, global: global, events: events = global, propNames: propNames } = opts;\n let filteredProps = {};\n for(const prop in props)if (Object.prototype.hasOwnProperty.call(props, prop) && ($65484d02dcb7eb3e$var$DOMPropNames.has(prop) || labelable && $65484d02dcb7eb3e$var$labelablePropNames.has(prop) || isLink && $65484d02dcb7eb3e$var$linkPropNames.has(prop) || global && $65484d02dcb7eb3e$var$globalAttrs.has(prop) || events && $65484d02dcb7eb3e$var$globalEvents.has(prop) || prop.endsWith('Capture') && $65484d02dcb7eb3e$var$globalEvents.has(prop.slice(0, -7)) || (propNames === null || propNames === void 0 ? void 0 : propNames.has(prop)) || $65484d02dcb7eb3e$var$propRe.test(prop))) filteredProps[prop] = props[prop];\n return filteredProps;\n}\n\n\nexport {$65484d02dcb7eb3e$export$457c3d6518dd4c6f as filterDOMProps};\n//# sourceMappingURL=filterDOMProps.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $7215afc6de606d6b$export$de79e2c695e052f3(element) {\n if ($7215afc6de606d6b$var$supportsPreventScroll()) element.focus({\n preventScroll: true\n });\n else {\n let scrollableElements = $7215afc6de606d6b$var$getScrollableElements(element);\n element.focus();\n $7215afc6de606d6b$var$restoreScrollPosition(scrollableElements);\n }\n}\nlet $7215afc6de606d6b$var$supportsPreventScrollCached = null;\nfunction $7215afc6de606d6b$var$supportsPreventScroll() {\n if ($7215afc6de606d6b$var$supportsPreventScrollCached == null) {\n $7215afc6de606d6b$var$supportsPreventScrollCached = false;\n try {\n let focusElem = document.createElement('div');\n focusElem.focus({\n get preventScroll () {\n $7215afc6de606d6b$var$supportsPreventScrollCached = true;\n return true;\n }\n });\n } catch {\n // Ignore\n }\n }\n return $7215afc6de606d6b$var$supportsPreventScrollCached;\n}\nfunction $7215afc6de606d6b$var$getScrollableElements(element) {\n let parent = element.parentNode;\n let scrollableElements = [];\n let rootScrollingElement = document.scrollingElement || document.documentElement;\n while(parent instanceof HTMLElement && parent !== rootScrollingElement){\n if (parent.offsetHeight < parent.scrollHeight || parent.offsetWidth < parent.scrollWidth) scrollableElements.push({\n element: parent,\n scrollTop: parent.scrollTop,\n scrollLeft: parent.scrollLeft\n });\n parent = parent.parentNode;\n }\n if (rootScrollingElement instanceof HTMLElement) scrollableElements.push({\n element: rootScrollingElement,\n scrollTop: rootScrollingElement.scrollTop,\n scrollLeft: rootScrollingElement.scrollLeft\n });\n return scrollableElements;\n}\nfunction $7215afc6de606d6b$var$restoreScrollPosition(scrollableElements) {\n for (let { element: element, scrollTop: scrollTop, scrollLeft: scrollLeft } of scrollableElements){\n element.scrollTop = scrollTop;\n element.scrollLeft = scrollLeft;\n }\n}\n\n\nexport {$7215afc6de606d6b$export$de79e2c695e052f3 as focusWithoutScrolling};\n//# sourceMappingURL=focusWithoutScrolling.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $c87311424ea30a05$var$testUserAgent(re) {\n var _window_navigator_userAgentData;\n if (typeof window === 'undefined' || window.navigator == null) return false;\n let brands = (_window_navigator_userAgentData = window.navigator['userAgentData']) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.brands;\n return Array.isArray(brands) && brands.some((brand)=>re.test(brand.brand)) || re.test(window.navigator.userAgent);\n}\nfunction $c87311424ea30a05$var$testPlatform(re) {\n var _window_navigator_userAgentData;\n return typeof window !== 'undefined' && window.navigator != null ? re.test(((_window_navigator_userAgentData = window.navigator['userAgentData']) === null || _window_navigator_userAgentData === void 0 ? void 0 : _window_navigator_userAgentData.platform) || window.navigator.platform) : false;\n}\nfunction $c87311424ea30a05$var$cached(fn) {\n if (process.env.NODE_ENV === 'test') return fn;\n let res = null;\n return ()=>{\n if (res == null) res = fn();\n return res;\n };\n}\nconst $c87311424ea30a05$export$9ac100e40613ea10 = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$var$testPlatform(/^Mac/i);\n});\nconst $c87311424ea30a05$export$186c6964ca17d99 = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$var$testPlatform(/^iPhone/i);\n});\nconst $c87311424ea30a05$export$7bef049ce92e4224 = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$var$testPlatform(/^iPad/i) || // iPadOS 13 lies and says it's a Mac, but we can distinguish by detecting touch support.\n $c87311424ea30a05$export$9ac100e40613ea10() && navigator.maxTouchPoints > 1;\n});\nconst $c87311424ea30a05$export$fedb369cb70207f1 = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$export$186c6964ca17d99() || $c87311424ea30a05$export$7bef049ce92e4224();\n});\nconst $c87311424ea30a05$export$e1865c3bedcd822b = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$export$9ac100e40613ea10() || $c87311424ea30a05$export$fedb369cb70207f1();\n});\nconst $c87311424ea30a05$export$78551043582a6a98 = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$var$testUserAgent(/AppleWebKit/i) && !$c87311424ea30a05$export$6446a186d09e379e();\n});\nconst $c87311424ea30a05$export$6446a186d09e379e = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$var$testUserAgent(/Chrome/i);\n});\nconst $c87311424ea30a05$export$a11b0059900ceec8 = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$var$testUserAgent(/Android/i);\n});\nconst $c87311424ea30a05$export$b7d78993b74f766d = $c87311424ea30a05$var$cached(function() {\n return $c87311424ea30a05$var$testUserAgent(/Firefox/i);\n});\n\n\nexport {$c87311424ea30a05$export$9ac100e40613ea10 as isMac, $c87311424ea30a05$export$186c6964ca17d99 as isIPhone, $c87311424ea30a05$export$7bef049ce92e4224 as isIPad, $c87311424ea30a05$export$fedb369cb70207f1 as isIOS, $c87311424ea30a05$export$e1865c3bedcd822b as isAppleDevice, $c87311424ea30a05$export$78551043582a6a98 as isWebKit, $c87311424ea30a05$export$6446a186d09e379e as isChrome, $c87311424ea30a05$export$a11b0059900ceec8 as isAndroid, $c87311424ea30a05$export$b7d78993b74f766d as isFirefox};\n//# sourceMappingURL=platform.module.js.map\n","import {focusWithoutScrolling as $7215afc6de606d6b$export$de79e2c695e052f3} from \"./focusWithoutScrolling.mjs\";\nimport {isMac as $c87311424ea30a05$export$9ac100e40613ea10, isWebKit as $c87311424ea30a05$export$78551043582a6a98, isFirefox as $c87311424ea30a05$export$b7d78993b74f766d, isIPad as $c87311424ea30a05$export$7bef049ce92e4224} from \"./platform.mjs\";\nimport $g3jFn$react, {createContext as $g3jFn$createContext, useMemo as $g3jFn$useMemo, useContext as $g3jFn$useContext} from \"react\";\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $ea8dcbcb9ea1b556$var$RouterContext = /*#__PURE__*/ (0, $g3jFn$createContext)({\n isNative: true,\n open: $ea8dcbcb9ea1b556$var$openSyntheticLink,\n useHref: (href)=>href\n});\nfunction $ea8dcbcb9ea1b556$export$323e4fc2fa4753fb(props) {\n let { children: children, navigate: navigate, useHref: useHref } = props;\n let ctx = (0, $g3jFn$useMemo)(()=>({\n isNative: false,\n open: (target, modifiers, href, routerOptions)=>{\n $ea8dcbcb9ea1b556$var$getSyntheticLink(target, (link)=>{\n if ($ea8dcbcb9ea1b556$export$efa8c9099e530235(link, modifiers)) navigate(href, routerOptions);\n else $ea8dcbcb9ea1b556$export$95185d699e05d4d7(link, modifiers);\n });\n },\n useHref: useHref || ((href)=>href)\n }), [\n navigate,\n useHref\n ]);\n return /*#__PURE__*/ (0, $g3jFn$react).createElement($ea8dcbcb9ea1b556$var$RouterContext.Provider, {\n value: ctx\n }, children);\n}\nfunction $ea8dcbcb9ea1b556$export$9a302a45f65d0572() {\n return (0, $g3jFn$useContext)($ea8dcbcb9ea1b556$var$RouterContext);\n}\nfunction $ea8dcbcb9ea1b556$export$efa8c9099e530235(link, modifiers) {\n // Use getAttribute here instead of link.target. Firefox will default link.target to \"_parent\" when inside an iframe.\n let target = link.getAttribute('target');\n return (!target || target === '_self') && link.origin === location.origin && !link.hasAttribute('download') && !modifiers.metaKey && // open in new tab (mac)\n !modifiers.ctrlKey && // open in new tab (windows)\n !modifiers.altKey && // download\n !modifiers.shiftKey;\n}\nfunction $ea8dcbcb9ea1b556$export$95185d699e05d4d7(target, modifiers, setOpening = true) {\n var _window_event_type, _window_event;\n let { metaKey: metaKey, ctrlKey: ctrlKey, altKey: altKey, shiftKey: shiftKey } = modifiers;\n // Firefox does not recognize keyboard events as a user action by default, and the popup blocker\n // will prevent links with target=\"_blank\" from opening. However, it does allow the event if the\n // Command/Control key is held, which opens the link in a background tab. This seems like the best we can do.\n // See https://bugzilla.mozilla.org/show_bug.cgi?id=257870 and https://bugzilla.mozilla.org/show_bug.cgi?id=746640.\n if ((0, $c87311424ea30a05$export$b7d78993b74f766d)() && ((_window_event = window.event) === null || _window_event === void 0 ? void 0 : (_window_event_type = _window_event.type) === null || _window_event_type === void 0 ? void 0 : _window_event_type.startsWith('key')) && target.target === '_blank') {\n if ((0, $c87311424ea30a05$export$9ac100e40613ea10)()) metaKey = true;\n else ctrlKey = true;\n }\n // WebKit does not support firing click events with modifier keys, but does support keyboard events.\n // https://github.com/WebKit/WebKit/blob/c03d0ac6e6db178f90923a0a63080b5ca210d25f/Source/WebCore/html/HTMLAnchorElement.cpp#L184\n let event = (0, $c87311424ea30a05$export$78551043582a6a98)() && (0, $c87311424ea30a05$export$9ac100e40613ea10)() && !(0, $c87311424ea30a05$export$7bef049ce92e4224)() && process.env.NODE_ENV !== 'test' ? new KeyboardEvent('keydown', {\n keyIdentifier: 'Enter',\n metaKey: metaKey,\n ctrlKey: ctrlKey,\n altKey: altKey,\n shiftKey: shiftKey\n }) : new MouseEvent('click', {\n metaKey: metaKey,\n ctrlKey: ctrlKey,\n altKey: altKey,\n shiftKey: shiftKey,\n bubbles: true,\n cancelable: true\n });\n $ea8dcbcb9ea1b556$export$95185d699e05d4d7.isOpening = setOpening;\n (0, $7215afc6de606d6b$export$de79e2c695e052f3)(target);\n target.dispatchEvent(event);\n $ea8dcbcb9ea1b556$export$95185d699e05d4d7.isOpening = false;\n}\n// https://github.com/parcel-bundler/parcel/issues/8724\n$ea8dcbcb9ea1b556$export$95185d699e05d4d7.isOpening = false;\nfunction $ea8dcbcb9ea1b556$var$getSyntheticLink(target, open) {\n if (target instanceof HTMLAnchorElement) open(target);\n else if (target.hasAttribute('data-href')) {\n let link = document.createElement('a');\n link.href = target.getAttribute('data-href');\n if (target.hasAttribute('data-target')) link.target = target.getAttribute('data-target');\n if (target.hasAttribute('data-rel')) link.rel = target.getAttribute('data-rel');\n if (target.hasAttribute('data-download')) link.download = target.getAttribute('data-download');\n if (target.hasAttribute('data-ping')) link.ping = target.getAttribute('data-ping');\n if (target.hasAttribute('data-referrer-policy')) link.referrerPolicy = target.getAttribute('data-referrer-policy');\n target.appendChild(link);\n open(link);\n target.removeChild(link);\n }\n}\nfunction $ea8dcbcb9ea1b556$var$openSyntheticLink(target, modifiers) {\n $ea8dcbcb9ea1b556$var$getSyntheticLink(target, (link)=>$ea8dcbcb9ea1b556$export$95185d699e05d4d7(link, modifiers));\n}\nfunction $ea8dcbcb9ea1b556$export$bdc77b0c0a3a85d6(props) {\n let router = $ea8dcbcb9ea1b556$export$9a302a45f65d0572();\n var _props_href;\n const href = router.useHref((_props_href = props.href) !== null && _props_href !== void 0 ? _props_href : '');\n return {\n 'data-href': props.href ? href : undefined,\n 'data-target': props.target,\n 'data-rel': props.rel,\n 'data-download': props.download,\n 'data-ping': props.ping,\n 'data-referrer-policy': props.referrerPolicy\n };\n}\nfunction $ea8dcbcb9ea1b556$export$51437d503373d223(props) {\n return {\n 'data-href': props.href,\n 'data-target': props.target,\n 'data-rel': props.rel,\n 'data-download': props.download,\n 'data-ping': props.ping,\n 'data-referrer-policy': props.referrerPolicy\n };\n}\nfunction $ea8dcbcb9ea1b556$export$7e924b3091a3bd18(props) {\n let router = $ea8dcbcb9ea1b556$export$9a302a45f65d0572();\n var _props_href;\n const href = router.useHref((_props_href = props === null || props === void 0 ? void 0 : props.href) !== null && _props_href !== void 0 ? _props_href : '');\n return {\n href: (props === null || props === void 0 ? void 0 : props.href) ? href : undefined,\n target: props === null || props === void 0 ? void 0 : props.target,\n rel: props === null || props === void 0 ? void 0 : props.rel,\n download: props === null || props === void 0 ? void 0 : props.download,\n ping: props === null || props === void 0 ? void 0 : props.ping,\n referrerPolicy: props === null || props === void 0 ? void 0 : props.referrerPolicy\n };\n}\nfunction $ea8dcbcb9ea1b556$export$13aea1a3cb5e3f1f(e, router, href, routerOptions) {\n // If a custom router is provided, prevent default and forward if this link should client navigate.\n if (!router.isNative && e.currentTarget instanceof HTMLAnchorElement && e.currentTarget.href && // If props are applied to a router Link component, it may have already prevented default.\n !e.isDefaultPrevented() && $ea8dcbcb9ea1b556$export$efa8c9099e530235(e.currentTarget, e) && href) {\n e.preventDefault();\n router.open(e.currentTarget, e, href, routerOptions);\n }\n}\n\n\nexport {$ea8dcbcb9ea1b556$export$323e4fc2fa4753fb as RouterProvider, $ea8dcbcb9ea1b556$export$efa8c9099e530235 as shouldClientNavigate, $ea8dcbcb9ea1b556$export$95185d699e05d4d7 as openLink, $ea8dcbcb9ea1b556$export$9a302a45f65d0572 as useRouter, $ea8dcbcb9ea1b556$export$bdc77b0c0a3a85d6 as useSyntheticLinkProps, $ea8dcbcb9ea1b556$export$51437d503373d223 as getSyntheticLinkProps, $ea8dcbcb9ea1b556$export$7e924b3091a3bd18 as useLinkProps, $ea8dcbcb9ea1b556$export$13aea1a3cb5e3f1f as handleLinkClick};\n//# sourceMappingURL=openLink.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We store a global list of elements that are currently transitioning,\n// mapped to a set of CSS properties that are transitioning for that element.\n// This is necessary rather than a simple count of transitions because of browser\n// bugs, e.g. Chrome sometimes fires both transitionend and transitioncancel rather\n// than one or the other. So we need to track what's actually transitioning so that\n// we can ignore these duplicate events.\nlet $bbed8b41f857bcc0$var$transitionsByElement = new Map();\n// A list of callbacks to call once there are no transitioning elements.\nlet $bbed8b41f857bcc0$var$transitionCallbacks = new Set();\nfunction $bbed8b41f857bcc0$var$setupGlobalEvents() {\n if (typeof window === 'undefined') return;\n function isTransitionEvent(event) {\n return 'propertyName' in event;\n }\n let onTransitionStart = (e)=>{\n if (!isTransitionEvent(e) || !e.target) return;\n // Add the transitioning property to the list for this element.\n let transitions = $bbed8b41f857bcc0$var$transitionsByElement.get(e.target);\n if (!transitions) {\n transitions = new Set();\n $bbed8b41f857bcc0$var$transitionsByElement.set(e.target, transitions);\n // The transitioncancel event must be registered on the element itself, rather than as a global\n // event. This enables us to handle when the node is deleted from the document while it is transitioning.\n // In that case, the cancel event would have nowhere to bubble to so we need to handle it directly.\n e.target.addEventListener('transitioncancel', onTransitionEnd, {\n once: true\n });\n }\n transitions.add(e.propertyName);\n };\n let onTransitionEnd = (e)=>{\n if (!isTransitionEvent(e) || !e.target) return;\n // Remove property from list of transitioning properties.\n let properties = $bbed8b41f857bcc0$var$transitionsByElement.get(e.target);\n if (!properties) return;\n properties.delete(e.propertyName);\n // If empty, remove transitioncancel event, and remove the element from the list of transitioning elements.\n if (properties.size === 0) {\n e.target.removeEventListener('transitioncancel', onTransitionEnd);\n $bbed8b41f857bcc0$var$transitionsByElement.delete(e.target);\n }\n // If no transitioning elements, call all of the queued callbacks.\n if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) {\n for (let cb of $bbed8b41f857bcc0$var$transitionCallbacks)cb();\n $bbed8b41f857bcc0$var$transitionCallbacks.clear();\n }\n };\n document.body.addEventListener('transitionrun', onTransitionStart);\n document.body.addEventListener('transitionend', onTransitionEnd);\n}\nif (typeof document !== 'undefined') {\n if (document.readyState !== 'loading') $bbed8b41f857bcc0$var$setupGlobalEvents();\n else document.addEventListener('DOMContentLoaded', $bbed8b41f857bcc0$var$setupGlobalEvents);\n}\n/**\n * Cleans up any elements that are no longer in the document.\n * This is necessary because we can't rely on transitionend events to fire\n * for elements that are removed from the document while transitioning.\n */ function $bbed8b41f857bcc0$var$cleanupDetachedElements() {\n for (const [eventTarget] of $bbed8b41f857bcc0$var$transitionsByElement)// Similar to `eventTarget instanceof Element && !eventTarget.isConnected`, but avoids\n // the explicit instanceof check, since it may be different in different contexts.\n if ('isConnected' in eventTarget && !eventTarget.isConnected) $bbed8b41f857bcc0$var$transitionsByElement.delete(eventTarget);\n}\nfunction $bbed8b41f857bcc0$export$24490316f764c430(fn) {\n // Wait one frame to see if an animation starts, e.g. a transition on mount.\n requestAnimationFrame(()=>{\n $bbed8b41f857bcc0$var$cleanupDetachedElements();\n // If no transitions are running, call the function immediately.\n // Otherwise, add it to a list of callbacks to run at the end of the animation.\n if ($bbed8b41f857bcc0$var$transitionsByElement.size === 0) fn();\n else $bbed8b41f857bcc0$var$transitionCallbacks.add(fn);\n });\n}\n\n\nexport {$bbed8b41f857bcc0$export$24490316f764c430 as runAfterTransition};\n//# sourceMappingURL=runAfterTransition.module.js.map\n","import {useRef as $lPAwt$useRef, useCallback as $lPAwt$useCallback, useEffect as $lPAwt$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $03deb23ff14920c4$export$4eaf04e54aa8eed6() {\n let globalListeners = (0, $lPAwt$useRef)(new Map());\n let addGlobalListener = (0, $lPAwt$useCallback)((eventTarget, type, listener, options)=>{\n // Make sure we remove the listener after it is called with the `once` option.\n let fn = (options === null || options === void 0 ? void 0 : options.once) ? (...args)=>{\n globalListeners.current.delete(listener);\n listener(...args);\n } : listener;\n globalListeners.current.set(listener, {\n type: type,\n eventTarget: eventTarget,\n fn: fn,\n options: options\n });\n eventTarget.addEventListener(type, fn, options);\n }, []);\n let removeGlobalListener = (0, $lPAwt$useCallback)((eventTarget, type, listener, options)=>{\n var _globalListeners_current_get;\n let fn = ((_globalListeners_current_get = globalListeners.current.get(listener)) === null || _globalListeners_current_get === void 0 ? void 0 : _globalListeners_current_get.fn) || listener;\n eventTarget.removeEventListener(type, fn, options);\n globalListeners.current.delete(listener);\n }, []);\n let removeAllGlobalListeners = (0, $lPAwt$useCallback)(()=>{\n globalListeners.current.forEach((value, key)=>{\n removeGlobalListener(value.eventTarget, value.type, key, value.options);\n });\n }, [\n removeGlobalListener\n ]);\n (0, $lPAwt$useEffect)(()=>{\n return removeAllGlobalListeners;\n }, [\n removeAllGlobalListeners\n ]);\n return {\n addGlobalListener: addGlobalListener,\n removeGlobalListener: removeGlobalListener,\n removeAllGlobalListeners: removeAllGlobalListeners\n };\n}\n\n\nexport {$03deb23ff14920c4$export$4eaf04e54aa8eed6 as useGlobalListeners};\n//# sourceMappingURL=useGlobalListeners.module.js.map\n","import {useId as $bdb11010cef70236$export$f680877a34711e37} from \"./useId.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $313b98861ee5dd6c$export$d6875122194c7b44(props, defaultLabel) {\n let { id: id, 'aria-label': label, 'aria-labelledby': labelledBy } = props;\n // If there is both an aria-label and aria-labelledby,\n // combine them by pointing to the element itself.\n id = (0, $bdb11010cef70236$export$f680877a34711e37)(id);\n if (labelledBy && label) {\n let ids = new Set([\n id,\n ...labelledBy.trim().split(/\\s+/)\n ]);\n labelledBy = [\n ...ids\n ].join(' ');\n } else if (labelledBy) labelledBy = labelledBy.trim().split(/\\s+/).join(' ');\n // If no labels are provided, use the default\n if (!label && !labelledBy && defaultLabel) label = defaultLabel;\n return {\n id: id,\n 'aria-label': label,\n 'aria-labelledby': labelledBy\n };\n}\n\n\nexport {$313b98861ee5dd6c$export$d6875122194c7b44 as useLabels};\n//# sourceMappingURL=useLabels.module.js.map\n","import {useRef as $9vW05$useRef, useEffect as $9vW05$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $4f58c5f72bcf79f7$export$496315a1608d9602(effect, dependencies) {\n const isInitialMount = (0, $9vW05$useRef)(true);\n const lastDeps = (0, $9vW05$useRef)(null);\n (0, $9vW05$useEffect)(()=>{\n isInitialMount.current = true;\n return ()=>{\n isInitialMount.current = false;\n };\n }, []);\n (0, $9vW05$useEffect)(()=>{\n let prevDeps = lastDeps.current;\n if (isInitialMount.current) isInitialMount.current = false;\n else if (!prevDeps || dependencies.some((dep, i)=>!Object.is(dep, prevDeps[i]))) effect();\n lastDeps.current = dependencies;\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, dependencies);\n}\n\n\nexport {$4f58c5f72bcf79f7$export$496315a1608d9602 as useUpdateEffect};\n//# sourceMappingURL=useUpdateEffect.module.js.map\n","import {useLayoutEffect as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c} from \"./useLayoutEffect.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $e7801be82b4b2a53$export$4debdb1a3f0fa79e(context, ref) {\n (0, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{\n if (context && context.ref && ref) {\n context.ref.current = ref.current;\n return ()=>{\n if (context.ref) context.ref.current = null;\n };\n }\n });\n}\n\n\nexport {$e7801be82b4b2a53$export$4debdb1a3f0fa79e as useSyncRef};\n//# sourceMappingURL=useSyncRef.module.js.map\n","/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $cc38e7bd3fc7b213$export$2bb74740c4e19def(node, checkForOverflow) {\n if (!node) return false;\n let style = window.getComputedStyle(node);\n let isScrollable = /(auto|scroll)/.test(style.overflow + style.overflowX + style.overflowY);\n if (isScrollable && checkForOverflow) isScrollable = node.scrollHeight !== node.clientHeight || node.scrollWidth !== node.clientWidth;\n return isScrollable;\n}\n\n\nexport {$cc38e7bd3fc7b213$export$2bb74740c4e19def as isScrollable};\n//# sourceMappingURL=isScrollable.module.js.map\n","import {isScrollable as $cc38e7bd3fc7b213$export$2bb74740c4e19def} from \"./isScrollable.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $62d8ded9296f3872$export$cfa2225e87938781(node, checkForOverflow) {\n let scrollableNode = node;\n if ((0, $cc38e7bd3fc7b213$export$2bb74740c4e19def)(scrollableNode, checkForOverflow)) scrollableNode = scrollableNode.parentElement;\n while(scrollableNode && !(0, $cc38e7bd3fc7b213$export$2bb74740c4e19def)(scrollableNode, checkForOverflow))scrollableNode = scrollableNode.parentElement;\n return scrollableNode || document.scrollingElement || document.documentElement;\n}\n\n\nexport {$62d8ded9296f3872$export$cfa2225e87938781 as getScrollParent};\n//# sourceMappingURL=getScrollParent.module.js.map\n","import {isScrollable as $cc38e7bd3fc7b213$export$2bb74740c4e19def} from \"./isScrollable.mjs\";\n\n/*\n * Copyright 2024 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $a40c673dc9f6d9c7$export$94ed1c92c7beeb22(node, checkForOverflow) {\n const scrollParents = [];\n while(node && node !== document.documentElement){\n if ((0, $cc38e7bd3fc7b213$export$2bb74740c4e19def)(node, checkForOverflow)) scrollParents.push(node);\n node = node.parentElement;\n }\n return scrollParents;\n}\n\n\nexport {$a40c673dc9f6d9c7$export$94ed1c92c7beeb22 as getScrollParents};\n//# sourceMappingURL=getScrollParents.module.js.map\n","import {useLayoutEffect as $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c} from \"./useLayoutEffect.mjs\";\nimport {useState as $hQ5Hp$useState} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nlet $ef06256079686ba0$var$descriptionId = 0;\nconst $ef06256079686ba0$var$descriptionNodes = new Map();\nfunction $ef06256079686ba0$export$f8aeda7b10753fa1(description) {\n let [id, setId] = (0, $hQ5Hp$useState)();\n (0, $f0a04ccd8dbdd83b$export$e5c5a5f917a5871c)(()=>{\n if (!description) return;\n let desc = $ef06256079686ba0$var$descriptionNodes.get(description);\n if (!desc) {\n let id = `react-aria-description-${$ef06256079686ba0$var$descriptionId++}`;\n setId(id);\n let node = document.createElement('div');\n node.id = id;\n node.style.display = 'none';\n node.textContent = description;\n document.body.appendChild(node);\n desc = {\n refCount: 0,\n element: node\n };\n $ef06256079686ba0$var$descriptionNodes.set(description, desc);\n } else setId(desc.element.id);\n desc.refCount++;\n return ()=>{\n if (desc && --desc.refCount === 0) {\n desc.element.remove();\n $ef06256079686ba0$var$descriptionNodes.delete(description);\n }\n };\n }, [\n description\n ]);\n return {\n 'aria-describedby': description ? id : undefined\n };\n}\n\n\nexport {$ef06256079686ba0$export$f8aeda7b10753fa1 as useDescription};\n//# sourceMappingURL=useDescription.module.js.map\n","import {useEffectEvent as $8ae05eaa5c114e9c$export$7f54fc3180508a52} from \"./useEffectEvent.mjs\";\nimport {useEffect as $ceQd6$useEffect} from \"react\";\n\n/*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $e9faafb641e167db$export$90fc3a17d93f704c(ref, event, handler, options) {\n let handleEvent = (0, $8ae05eaa5c114e9c$export$7f54fc3180508a52)(handler);\n let isDisabled = handler == null;\n (0, $ceQd6$useEffect)(()=>{\n if (isDisabled || !ref.current) return;\n let element = ref.current;\n element.addEventListener(event, handleEvent, options);\n return ()=>{\n element.removeEventListener(event, handleEvent, options);\n };\n }, [\n ref,\n event,\n options,\n isDisabled,\n handleEvent\n ]);\n}\n\n\nexport {$e9faafb641e167db$export$90fc3a17d93f704c as useEvent};\n//# sourceMappingURL=useEvent.module.js.map\n","import {getScrollParents as $a40c673dc9f6d9c7$export$94ed1c92c7beeb22} from \"./getScrollParents.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $2f04cbc44ee30ce0$export$53a0910f038337bd(scrollView, element) {\n let offsetX = $2f04cbc44ee30ce0$var$relativeOffset(scrollView, element, 'left');\n let offsetY = $2f04cbc44ee30ce0$var$relativeOffset(scrollView, element, 'top');\n let width = element.offsetWidth;\n let height = element.offsetHeight;\n let x = scrollView.scrollLeft;\n let y = scrollView.scrollTop;\n // Account for top/left border offsetting the scroll top/Left + scroll padding\n let { borderTopWidth: borderTopWidth, borderLeftWidth: borderLeftWidth, scrollPaddingTop: scrollPaddingTop, scrollPaddingRight: scrollPaddingRight, scrollPaddingBottom: scrollPaddingBottom, scrollPaddingLeft: scrollPaddingLeft } = getComputedStyle(scrollView);\n let borderAdjustedX = x + parseInt(borderLeftWidth, 10);\n let borderAdjustedY = y + parseInt(borderTopWidth, 10);\n // Ignore end/bottom border via clientHeight/Width instead of offsetHeight/Width\n let maxX = borderAdjustedX + scrollView.clientWidth;\n let maxY = borderAdjustedY + scrollView.clientHeight;\n // Get scroll padding values as pixels - defaults to 0 if no scroll padding\n // is used.\n let scrollPaddingTopNumber = parseInt(scrollPaddingTop, 10) || 0;\n let scrollPaddingBottomNumber = parseInt(scrollPaddingBottom, 10) || 0;\n let scrollPaddingRightNumber = parseInt(scrollPaddingRight, 10) || 0;\n let scrollPaddingLeftNumber = parseInt(scrollPaddingLeft, 10) || 0;\n if (offsetX <= x + scrollPaddingLeftNumber) x = offsetX - parseInt(borderLeftWidth, 10) - scrollPaddingLeftNumber;\n else if (offsetX + width > maxX - scrollPaddingRightNumber) x += offsetX + width - maxX + scrollPaddingRightNumber;\n if (offsetY <= borderAdjustedY + scrollPaddingTopNumber) y = offsetY - parseInt(borderTopWidth, 10) - scrollPaddingTopNumber;\n else if (offsetY + height > maxY - scrollPaddingBottomNumber) y += offsetY + height - maxY + scrollPaddingBottomNumber;\n scrollView.scrollLeft = x;\n scrollView.scrollTop = y;\n}\n/**\n * Computes the offset left or top from child to ancestor by accumulating\n * offsetLeft or offsetTop through intervening offsetParents.\n */ function $2f04cbc44ee30ce0$var$relativeOffset(ancestor, child, axis) {\n const prop = axis === 'left' ? 'offsetLeft' : 'offsetTop';\n let sum = 0;\n while(child.offsetParent){\n sum += child[prop];\n if (child.offsetParent === ancestor) break;\n else if (child.offsetParent.contains(ancestor)) {\n // If the ancestor is not `position:relative`, then we stop at\n // _its_ offset parent, and we subtract off _its_ offset, so that\n // we end up with the proper offset from child to ancestor.\n sum -= ancestor[prop];\n break;\n }\n child = child.offsetParent;\n }\n return sum;\n}\nfunction $2f04cbc44ee30ce0$export$c826860796309d1b(targetElement, opts) {\n if (targetElement && document.contains(targetElement)) {\n let root = document.scrollingElement || document.documentElement;\n let isScrollPrevented = window.getComputedStyle(root).overflow === 'hidden';\n // If scrolling is not currently prevented then we aren’t in a overlay nor is a overlay open, just use element.scrollIntoView to bring the element into view\n if (!isScrollPrevented) {\n var // use scrollIntoView({block: 'nearest'}) instead of .focus to check if the element is fully in view or not since .focus()\n // won't cause a scroll if the element is already focused and doesn't behave consistently when an element is partially out of view horizontally vs vertically\n _targetElement_scrollIntoView;\n let { left: originalLeft, top: originalTop } = targetElement.getBoundingClientRect();\n targetElement === null || targetElement === void 0 ? void 0 : (_targetElement_scrollIntoView = targetElement.scrollIntoView) === null || _targetElement_scrollIntoView === void 0 ? void 0 : _targetElement_scrollIntoView.call(targetElement, {\n block: 'nearest'\n });\n let { left: newLeft, top: newTop } = targetElement.getBoundingClientRect();\n // Account for sub pixel differences from rounding\n if (Math.abs(originalLeft - newLeft) > 1 || Math.abs(originalTop - newTop) > 1) {\n var _opts_containingElement_scrollIntoView, _opts_containingElement, _targetElement_scrollIntoView1;\n opts === null || opts === void 0 ? void 0 : (_opts_containingElement = opts.containingElement) === null || _opts_containingElement === void 0 ? void 0 : (_opts_containingElement_scrollIntoView = _opts_containingElement.scrollIntoView) === null || _opts_containingElement_scrollIntoView === void 0 ? void 0 : _opts_containingElement_scrollIntoView.call(_opts_containingElement, {\n block: 'center',\n inline: 'center'\n });\n (_targetElement_scrollIntoView1 = targetElement.scrollIntoView) === null || _targetElement_scrollIntoView1 === void 0 ? void 0 : _targetElement_scrollIntoView1.call(targetElement, {\n block: 'nearest'\n });\n }\n } else {\n let scrollParents = (0, $a40c673dc9f6d9c7$export$94ed1c92c7beeb22)(targetElement);\n // If scrolling is prevented, we don't want to scroll the body since it might move the overlay partially offscreen and the user can't scroll it back into view.\n for (let scrollParent of scrollParents)$2f04cbc44ee30ce0$export$53a0910f038337bd(scrollParent, targetElement);\n }\n }\n}\n\n\nexport {$2f04cbc44ee30ce0$export$53a0910f038337bd as scrollIntoView, $2f04cbc44ee30ce0$export$c826860796309d1b as scrollIntoViewport};\n//# sourceMappingURL=scrollIntoView.module.js.map\n","import {isAndroid as $c87311424ea30a05$export$a11b0059900ceec8} from \"./platform.mjs\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $6a7db85432448f7f$export$60278871457622de(event) {\n // JAWS/NVDA with Firefox.\n if (event.mozInputSource === 0 && event.isTrusted) return true;\n // Android TalkBack's detail value varies depending on the event listener providing the event so we have specific logic here instead\n // If pointerType is defined, event is from a click listener. For events from mousedown listener, detail === 0 is a sufficient check\n // to detect TalkBack virtual clicks.\n if ((0, $c87311424ea30a05$export$a11b0059900ceec8)() && event.pointerType) return event.type === 'click' && event.buttons === 1;\n return event.detail === 0 && !event.pointerType;\n}\nfunction $6a7db85432448f7f$export$29bf1b5f2c56cf63(event) {\n // If the pointer size is zero, then we assume it's from a screen reader.\n // Android TalkBack double tap will sometimes return a event with width and height of 1\n // and pointerType === 'mouse' so we need to check for a specific combination of event attributes.\n // Cannot use \"event.pressure === 0\" as the sole check due to Safari pointer events always returning pressure === 0\n // instead of .5, see https://bugs.webkit.org/show_bug.cgi?id=206216. event.pointerType === 'mouse' is to distingush\n // Talkback double tap from Windows Firefox touch screen press\n return !(0, $c87311424ea30a05$export$a11b0059900ceec8)() && event.width === 0 && event.height === 0 || event.width === 1 && event.height === 1 && event.pressure === 0 && event.detail === 0 && event.pointerType === 'mouse';\n}\n\n\nexport {$6a7db85432448f7f$export$60278871457622de as isVirtualClick, $6a7db85432448f7f$export$29bf1b5f2c56cf63 as isVirtualPointerEvent};\n//# sourceMappingURL=isVirtualEvent.module.js.map\n","import {useRef as $jtQ6z$useRef} from \"react\";\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /* eslint-disable rulesdir/pure-render */ \nfunction $5a387cc49350e6db$export$722debc0e56fea39(value, isEqual) {\n // Using a ref during render is ok here because it's only an optimization – both values are equivalent.\n // If a render is thrown away, it'll still work the same no matter if the next render is the same or not.\n let lastValue = (0, $jtQ6z$useRef)(null);\n if (value && lastValue.current && isEqual(value, lastValue.current)) value = lastValue.current;\n lastValue.current = value;\n return value;\n}\n\n\nexport {$5a387cc49350e6db$export$722debc0e56fea39 as useDeepMemo};\n//# sourceMappingURL=useDeepMemo.module.js.map\n","import {useEffectEvent as $8ae05eaa5c114e9c$export$7f54fc3180508a52} from \"./useEffectEvent.mjs\";\nimport {useEffect as $8rM3G$useEffect} from \"react\";\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $99facab73266f662$export$5add1d006293d136(ref, initialValue, onReset) {\n let handleReset = (0, $8ae05eaa5c114e9c$export$7f54fc3180508a52)(()=>{\n if (onReset) onReset(initialValue);\n });\n (0, $8rM3G$useEffect)(()=>{\n var _ref_current;\n let form = ref === null || ref === void 0 ? void 0 : (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.form;\n form === null || form === void 0 ? void 0 : form.addEventListener('reset', handleReset);\n return ()=>{\n form === null || form === void 0 ? void 0 : form.removeEventListener('reset', handleReset);\n };\n }, [\n ref,\n handleReset\n ]);\n}\n\n\nexport {$99facab73266f662$export$5add1d006293d136 as useFormReset};\n//# sourceMappingURL=useFormReset.module.js.map\n","import {getOwnerWindow as $431fbd86ca7dc216$export$f21a1ffae260145a} from \"./domHelpers.mjs\";\n\n/*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $7d2416ea0959daaa$var$supportsCheckVisibility = typeof Element !== 'undefined' && 'checkVisibility' in Element.prototype;\nfunction $7d2416ea0959daaa$var$isStyleVisible(element) {\n const windowObject = (0, $431fbd86ca7dc216$export$f21a1ffae260145a)(element);\n if (!(element instanceof windowObject.HTMLElement) && !(element instanceof windowObject.SVGElement)) return false;\n let { display: display, visibility: visibility } = element.style;\n let isVisible = display !== 'none' && visibility !== 'hidden' && visibility !== 'collapse';\n if (isVisible) {\n const { getComputedStyle: getComputedStyle } = element.ownerDocument.defaultView;\n let { display: computedDisplay, visibility: computedVisibility } = getComputedStyle(element);\n isVisible = computedDisplay !== 'none' && computedVisibility !== 'hidden' && computedVisibility !== 'collapse';\n }\n return isVisible;\n}\nfunction $7d2416ea0959daaa$var$isAttributeVisible(element, childElement) {\n return !element.hasAttribute('hidden') && // Ignore HiddenSelect when tree walking.\n !element.hasAttribute('data-react-aria-prevent-focus') && (element.nodeName === 'DETAILS' && childElement && childElement.nodeName !== 'SUMMARY' ? element.hasAttribute('open') : true);\n}\nfunction $7d2416ea0959daaa$export$e989c0fffaa6b27a(element, childElement) {\n if ($7d2416ea0959daaa$var$supportsCheckVisibility) return element.checkVisibility();\n return element.nodeName !== '#comment' && $7d2416ea0959daaa$var$isStyleVisible(element) && $7d2416ea0959daaa$var$isAttributeVisible(element, childElement) && (!element.parentElement || $7d2416ea0959daaa$export$e989c0fffaa6b27a(element.parentElement, element));\n}\n\n\nexport {$7d2416ea0959daaa$export$e989c0fffaa6b27a as isElementVisible};\n//# sourceMappingURL=isElementVisible.module.js.map\n","import {isElementVisible as $7d2416ea0959daaa$export$e989c0fffaa6b27a} from \"./isElementVisible.mjs\";\n\n/*\n * Copyright 2025 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $b4b717babfbb907b$var$focusableElements = [\n 'input:not([disabled]):not([type=hidden])',\n 'select:not([disabled])',\n 'textarea:not([disabled])',\n 'button:not([disabled])',\n 'a[href]',\n 'area[href]',\n 'summary',\n 'iframe',\n 'object',\n 'embed',\n 'audio[controls]',\n 'video[controls]',\n '[contenteditable]:not([contenteditable^=\"false\"])',\n 'permission'\n];\nconst $b4b717babfbb907b$var$FOCUSABLE_ELEMENT_SELECTOR = $b4b717babfbb907b$var$focusableElements.join(':not([hidden]),') + ',[tabindex]:not([disabled]):not([hidden])';\n$b4b717babfbb907b$var$focusableElements.push('[tabindex]:not([tabindex=\"-1\"]):not([disabled])');\nconst $b4b717babfbb907b$var$TABBABLE_ELEMENT_SELECTOR = $b4b717babfbb907b$var$focusableElements.join(':not([hidden]):not([tabindex=\"-1\"]),');\nfunction $b4b717babfbb907b$export$4c063cf1350e6fed(element) {\n return element.matches($b4b717babfbb907b$var$FOCUSABLE_ELEMENT_SELECTOR) && (0, $7d2416ea0959daaa$export$e989c0fffaa6b27a)(element) && !$b4b717babfbb907b$var$isInert(element);\n}\nfunction $b4b717babfbb907b$export$bebd5a1431fec25d(element) {\n return element.matches($b4b717babfbb907b$var$TABBABLE_ELEMENT_SELECTOR) && (0, $7d2416ea0959daaa$export$e989c0fffaa6b27a)(element) && !$b4b717babfbb907b$var$isInert(element);\n}\nfunction $b4b717babfbb907b$var$isInert(element) {\n let node = element;\n while(node != null){\n if (node instanceof node.ownerDocument.defaultView.HTMLElement && node.inert) return true;\n node = node.parentElement;\n }\n return false;\n}\n\n\nexport {$b4b717babfbb907b$export$4c063cf1350e6fed as isFocusable, $b4b717babfbb907b$export$bebd5a1431fec25d as isTabbable};\n//# sourceMappingURL=isFocusable.module.js.map\n","import {useLayoutEffect as $6dfIe$useLayoutEffect, useEffectEvent as $6dfIe$useEffectEvent, isFocusable as $6dfIe$isFocusable, getOwnerWindow as $6dfIe$getOwnerWindow, focusWithoutScrolling as $6dfIe$focusWithoutScrolling} from \"@react-aria/utils\";\nimport {useRef as $6dfIe$useRef, useCallback as $6dfIe$useCallback} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $8a9cb279dc87e130$export$525bc4921d56d4a(nativeEvent) {\n let event = nativeEvent;\n event.nativeEvent = nativeEvent;\n event.isDefaultPrevented = ()=>event.defaultPrevented;\n // cancelBubble is technically deprecated in the spec, but still supported in all browsers.\n event.isPropagationStopped = ()=>event.cancelBubble;\n event.persist = ()=>{};\n return event;\n}\nfunction $8a9cb279dc87e130$export$c2b7abe5d61ec696(event, target) {\n Object.defineProperty(event, 'target', {\n value: target\n });\n Object.defineProperty(event, 'currentTarget', {\n value: target\n });\n}\nfunction $8a9cb279dc87e130$export$715c682d09d639cc(onBlur) {\n let stateRef = (0, $6dfIe$useRef)({\n isFocused: false,\n observer: null\n });\n // Clean up MutationObserver on unmount. See below.\n (0, $6dfIe$useLayoutEffect)(()=>{\n const state = stateRef.current;\n return ()=>{\n if (state.observer) {\n state.observer.disconnect();\n state.observer = null;\n }\n };\n }, []);\n let dispatchBlur = (0, $6dfIe$useEffectEvent)((e)=>{\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n });\n // This function is called during a React onFocus event.\n return (0, $6dfIe$useCallback)((e)=>{\n // React does not fire onBlur when an element is disabled. https://github.com/facebook/react/issues/9142\n // Most browsers fire a native focusout event in this case, except for Firefox. In that case, we use a\n // MutationObserver to watch for the disabled attribute, and dispatch these events ourselves.\n // For browsers that do, focusout fires before the MutationObserver, so onBlur should not fire twice.\n if (e.target instanceof HTMLButtonElement || e.target instanceof HTMLInputElement || e.target instanceof HTMLTextAreaElement || e.target instanceof HTMLSelectElement) {\n stateRef.current.isFocused = true;\n let target = e.target;\n let onBlurHandler = (e)=>{\n stateRef.current.isFocused = false;\n if (target.disabled) {\n // For backward compatibility, dispatch a (fake) React synthetic event.\n let event = $8a9cb279dc87e130$export$525bc4921d56d4a(e);\n dispatchBlur(event);\n }\n // We no longer need the MutationObserver once the target is blurred.\n if (stateRef.current.observer) {\n stateRef.current.observer.disconnect();\n stateRef.current.observer = null;\n }\n };\n target.addEventListener('focusout', onBlurHandler, {\n once: true\n });\n stateRef.current.observer = new MutationObserver(()=>{\n if (stateRef.current.isFocused && target.disabled) {\n var _stateRef_current_observer;\n (_stateRef_current_observer = stateRef.current.observer) === null || _stateRef_current_observer === void 0 ? void 0 : _stateRef_current_observer.disconnect();\n let relatedTargetEl = target === document.activeElement ? null : document.activeElement;\n target.dispatchEvent(new FocusEvent('blur', {\n relatedTarget: relatedTargetEl\n }));\n target.dispatchEvent(new FocusEvent('focusout', {\n bubbles: true,\n relatedTarget: relatedTargetEl\n }));\n }\n });\n stateRef.current.observer.observe(target, {\n attributes: true,\n attributeFilter: [\n 'disabled'\n ]\n });\n }\n }, [\n dispatchBlur\n ]);\n}\nlet $8a9cb279dc87e130$export$fda7da73ab5d4c48 = false;\nfunction $8a9cb279dc87e130$export$cabe61c495ee3649(target) {\n // The browser will focus the nearest focusable ancestor of our target.\n while(target && !(0, $6dfIe$isFocusable)(target))target = target.parentElement;\n let window = (0, $6dfIe$getOwnerWindow)(target);\n let activeElement = window.document.activeElement;\n if (!activeElement || activeElement === target) return;\n $8a9cb279dc87e130$export$fda7da73ab5d4c48 = true;\n let isRefocusing = false;\n let onBlur = (e)=>{\n if (e.target === activeElement || isRefocusing) e.stopImmediatePropagation();\n };\n let onFocusOut = (e)=>{\n if (e.target === activeElement || isRefocusing) {\n e.stopImmediatePropagation();\n // If there was no focusable ancestor, we don't expect a focus event.\n // Re-focus the original active element here.\n if (!target && !isRefocusing) {\n isRefocusing = true;\n (0, $6dfIe$focusWithoutScrolling)(activeElement);\n cleanup();\n }\n }\n };\n let onFocus = (e)=>{\n if (e.target === target || isRefocusing) e.stopImmediatePropagation();\n };\n let onFocusIn = (e)=>{\n if (e.target === target || isRefocusing) {\n e.stopImmediatePropagation();\n if (!isRefocusing) {\n isRefocusing = true;\n (0, $6dfIe$focusWithoutScrolling)(activeElement);\n cleanup();\n }\n }\n };\n window.addEventListener('blur', onBlur, true);\n window.addEventListener('focusout', onFocusOut, true);\n window.addEventListener('focusin', onFocusIn, true);\n window.addEventListener('focus', onFocus, true);\n let cleanup = ()=>{\n cancelAnimationFrame(raf);\n window.removeEventListener('blur', onBlur, true);\n window.removeEventListener('focusout', onFocusOut, true);\n window.removeEventListener('focusin', onFocusIn, true);\n window.removeEventListener('focus', onFocus, true);\n $8a9cb279dc87e130$export$fda7da73ab5d4c48 = false;\n isRefocusing = false;\n };\n let raf = requestAnimationFrame(cleanup);\n return cleanup;\n}\n\n\nexport {$8a9cb279dc87e130$export$525bc4921d56d4a as createSyntheticEvent, $8a9cb279dc87e130$export$c2b7abe5d61ec696 as setEventTarget, $8a9cb279dc87e130$export$715c682d09d639cc as useSyntheticBlurEvent, $8a9cb279dc87e130$export$fda7da73ab5d4c48 as ignoreFocusEvent, $8a9cb279dc87e130$export$cabe61c495ee3649 as preventFocus};\n//# sourceMappingURL=utils.module.js.map\n","import {isIOS as $7R18e$isIOS, getOwnerDocument as $7R18e$getOwnerDocument, runAfterTransition as $7R18e$runAfterTransition} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n// Note that state only matters here for iOS. Non-iOS gets user-select: none applied to the target element\n// rather than at the document level so we just need to apply/remove user-select: none for each pressed element individually\nlet $14c0b72509d70225$var$state = 'default';\nlet $14c0b72509d70225$var$savedUserSelect = '';\nlet $14c0b72509d70225$var$modifiedElementMap = new WeakMap();\nfunction $14c0b72509d70225$export$16a4697467175487(target) {\n if ((0, $7R18e$isIOS)()) {\n if ($14c0b72509d70225$var$state === 'default') {\n const documentObject = (0, $7R18e$getOwnerDocument)(target);\n $14c0b72509d70225$var$savedUserSelect = documentObject.documentElement.style.webkitUserSelect;\n documentObject.documentElement.style.webkitUserSelect = 'none';\n }\n $14c0b72509d70225$var$state = 'disabled';\n } else if (target instanceof HTMLElement || target instanceof SVGElement) {\n // If not iOS, store the target's original user-select and change to user-select: none\n // Ignore state since it doesn't apply for non iOS\n let property = 'userSelect' in target.style ? 'userSelect' : 'webkitUserSelect';\n $14c0b72509d70225$var$modifiedElementMap.set(target, target.style[property]);\n target.style[property] = 'none';\n }\n}\nfunction $14c0b72509d70225$export$b0d6fa1ab32e3295(target) {\n if ((0, $7R18e$isIOS)()) {\n // If the state is already default, there's nothing to do.\n // If it is restoring, then there's no need to queue a second restore.\n if ($14c0b72509d70225$var$state !== 'disabled') return;\n $14c0b72509d70225$var$state = 'restoring';\n // There appears to be a delay on iOS where selection still might occur\n // after pointer up, so wait a bit before removing user-select.\n setTimeout(()=>{\n // Wait for any CSS transitions to complete so we don't recompute style\n // for the whole page in the middle of the animation and cause jank.\n (0, $7R18e$runAfterTransition)(()=>{\n // Avoid race conditions\n if ($14c0b72509d70225$var$state === 'restoring') {\n const documentObject = (0, $7R18e$getOwnerDocument)(target);\n if (documentObject.documentElement.style.webkitUserSelect === 'none') documentObject.documentElement.style.webkitUserSelect = $14c0b72509d70225$var$savedUserSelect || '';\n $14c0b72509d70225$var$savedUserSelect = '';\n $14c0b72509d70225$var$state = 'default';\n }\n });\n }, 300);\n } else if (target instanceof HTMLElement || target instanceof SVGElement) // If not iOS, restore the target's original user-select if any\n // Ignore state since it doesn't apply for non iOS\n {\n if (target && $14c0b72509d70225$var$modifiedElementMap.has(target)) {\n let targetOldUserSelect = $14c0b72509d70225$var$modifiedElementMap.get(target);\n let property = 'userSelect' in target.style ? 'userSelect' : 'webkitUserSelect';\n if (target.style[property] === 'none') target.style[property] = targetOldUserSelect;\n if (target.getAttribute('style') === '') target.removeAttribute('style');\n $14c0b72509d70225$var$modifiedElementMap.delete(target);\n }\n }\n}\n\n\nexport {$14c0b72509d70225$export$16a4697467175487 as disableTextSelection, $14c0b72509d70225$export$b0d6fa1ab32e3295 as restoreTextSelection};\n//# sourceMappingURL=textSelection.module.js.map\n","import $3aeG1$react from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $ae1eeba8b9eafd08$export$5165eccb35aaadb5 = (0, $3aeG1$react).createContext({\n register: ()=>{}\n});\n$ae1eeba8b9eafd08$export$5165eccb35aaadb5.displayName = 'PressResponderContext';\n\n\nexport {$ae1eeba8b9eafd08$export$5165eccb35aaadb5 as PressResponderContext};\n//# sourceMappingURL=context.module.js.map\n","function _class_apply_descriptor_get(receiver, descriptor) {\n if (descriptor.get) return descriptor.get.call(receiver);\n\n return descriptor.value;\n}\nexport { _class_apply_descriptor_get as _ };\n","function _class_extract_field_descriptor(receiver, privateMap, action) {\n if (!privateMap.has(receiver)) throw new TypeError(\"attempted to \" + action + \" private field on non-instance\");\n\n return privateMap.get(receiver);\n}\nexport { _class_extract_field_descriptor as _ };\n","import { _ as _class_apply_descriptor_get } from \"./_class_apply_descriptor_get.js\";\nimport { _ as _class_extract_field_descriptor } from \"./_class_extract_field_descriptor.js\";\n\nfunction _class_private_field_get(receiver, privateMap) {\n var descriptor = _class_extract_field_descriptor(receiver, privateMap, \"get\");\n return _class_apply_descriptor_get(receiver, descriptor);\n}\nexport { _class_private_field_get as _ };\n","function _class_apply_descriptor_set(receiver, descriptor, value) {\n if (descriptor.set) descriptor.set.call(receiver, value);\n else {\n if (!descriptor.writable) {\n // This should only throw in strict mode, but class bodies are\n // always strict and private fields can only be used inside\n // class bodies.\n throw new TypeError(\"attempted to set read only private field\");\n }\n descriptor.value = value;\n }\n}\nexport { _class_apply_descriptor_set as _ };\n","import { _ as _class_apply_descriptor_set } from \"./_class_apply_descriptor_set.js\";\nimport { _ as _class_extract_field_descriptor } from \"./_class_extract_field_descriptor.js\";\n\nfunction _class_private_field_set(receiver, privateMap, value) {\n var descriptor = _class_extract_field_descriptor(receiver, privateMap, \"set\");\n _class_apply_descriptor_set(receiver, descriptor, value);\n return value;\n}\nexport { _class_private_field_set as _ };\n","import {createSyntheticEvent as $8a9cb279dc87e130$export$525bc4921d56d4a, preventFocus as $8a9cb279dc87e130$export$cabe61c495ee3649, setEventTarget as $8a9cb279dc87e130$export$c2b7abe5d61ec696} from \"./utils.mjs\";\nimport {disableTextSelection as $14c0b72509d70225$export$16a4697467175487, restoreTextSelection as $14c0b72509d70225$export$b0d6fa1ab32e3295} from \"./textSelection.mjs\";\nimport {PressResponderContext as $ae1eeba8b9eafd08$export$5165eccb35aaadb5} from \"./context.mjs\";\nimport {_ as $7mdmh$_} from \"@swc/helpers/_/_class_private_field_get\";\nimport {_ as $7mdmh$_1} from \"@swc/helpers/_/_class_private_field_init\";\nimport {_ as $7mdmh$_2} from \"@swc/helpers/_/_class_private_field_set\";\nimport {mergeProps as $7mdmh$mergeProps, useSyncRef as $7mdmh$useSyncRef, useGlobalListeners as $7mdmh$useGlobalListeners, useEffectEvent as $7mdmh$useEffectEvent, nodeContains as $7mdmh$nodeContains, getEventTarget as $7mdmh$getEventTarget, getOwnerDocument as $7mdmh$getOwnerDocument, chain as $7mdmh$chain, isMac as $7mdmh$isMac, openLink as $7mdmh$openLink, isVirtualClick as $7mdmh$isVirtualClick, isVirtualPointerEvent as $7mdmh$isVirtualPointerEvent, focusWithoutScrolling as $7mdmh$focusWithoutScrolling, getOwnerWindow as $7mdmh$getOwnerWindow} from \"@react-aria/utils\";\nimport {flushSync as $7mdmh$flushSync} from \"react-dom\";\nimport {useContext as $7mdmh$useContext, useState as $7mdmh$useState, useRef as $7mdmh$useRef, useMemo as $7mdmh$useMemo, useEffect as $7mdmh$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\n\n\n\n\n\n\nfunction $f6c31cce2adf654f$var$usePressResponderContext(props) {\n // Consume context from <PressResponder> and merge with props.\n let context = (0, $7mdmh$useContext)((0, $ae1eeba8b9eafd08$export$5165eccb35aaadb5));\n if (context) {\n let { register: register, ...contextProps } = context;\n props = (0, $7mdmh$mergeProps)(contextProps, props);\n register();\n }\n (0, $7mdmh$useSyncRef)(context, props.ref);\n return props;\n}\nvar $f6c31cce2adf654f$var$_shouldStopPropagation = /*#__PURE__*/ new WeakMap();\nclass $f6c31cce2adf654f$var$PressEvent {\n continuePropagation() {\n (0, $7mdmh$_2)(this, $f6c31cce2adf654f$var$_shouldStopPropagation, false);\n }\n get shouldStopPropagation() {\n return (0, $7mdmh$_)(this, $f6c31cce2adf654f$var$_shouldStopPropagation);\n }\n constructor(type, pointerType, originalEvent, state){\n (0, $7mdmh$_1)(this, $f6c31cce2adf654f$var$_shouldStopPropagation, {\n writable: true,\n value: void 0\n });\n (0, $7mdmh$_2)(this, $f6c31cce2adf654f$var$_shouldStopPropagation, true);\n var _state_target;\n let currentTarget = (_state_target = state === null || state === void 0 ? void 0 : state.target) !== null && _state_target !== void 0 ? _state_target : originalEvent.currentTarget;\n const rect = currentTarget === null || currentTarget === void 0 ? void 0 : currentTarget.getBoundingClientRect();\n let x, y = 0;\n let clientX, clientY = null;\n if (originalEvent.clientX != null && originalEvent.clientY != null) {\n clientX = originalEvent.clientX;\n clientY = originalEvent.clientY;\n }\n if (rect) {\n if (clientX != null && clientY != null) {\n x = clientX - rect.left;\n y = clientY - rect.top;\n } else {\n x = rect.width / 2;\n y = rect.height / 2;\n }\n }\n this.type = type;\n this.pointerType = pointerType;\n this.target = originalEvent.currentTarget;\n this.shiftKey = originalEvent.shiftKey;\n this.metaKey = originalEvent.metaKey;\n this.ctrlKey = originalEvent.ctrlKey;\n this.altKey = originalEvent.altKey;\n this.x = x;\n this.y = y;\n }\n}\nconst $f6c31cce2adf654f$var$LINK_CLICKED = Symbol('linkClicked');\nconst $f6c31cce2adf654f$var$STYLE_ID = 'react-aria-pressable-style';\nconst $f6c31cce2adf654f$var$PRESSABLE_ATTRIBUTE = 'data-react-aria-pressable';\nfunction $f6c31cce2adf654f$export$45712eceda6fad21(props) {\n let { onPress: onPress, onPressChange: onPressChange, onPressStart: onPressStart, onPressEnd: onPressEnd, onPressUp: onPressUp, onClick: onClick, isDisabled: isDisabled, isPressed: isPressedProp, preventFocusOnPress: preventFocusOnPress, shouldCancelOnPointerExit: shouldCancelOnPointerExit, allowTextSelectionOnPress: allowTextSelectionOnPress, ref: domRef, ...domProps } = $f6c31cce2adf654f$var$usePressResponderContext(props);\n let [isPressed, setPressed] = (0, $7mdmh$useState)(false);\n let ref = (0, $7mdmh$useRef)({\n isPressed: false,\n ignoreEmulatedMouseEvents: false,\n didFirePressStart: false,\n isTriggeringEvent: false,\n activePointerId: null,\n target: null,\n isOverTarget: false,\n pointerType: null,\n disposables: []\n });\n let { addGlobalListener: addGlobalListener, removeAllGlobalListeners: removeAllGlobalListeners } = (0, $7mdmh$useGlobalListeners)();\n let triggerPressStart = (0, $7mdmh$useEffectEvent)((originalEvent, pointerType)=>{\n let state = ref.current;\n if (isDisabled || state.didFirePressStart) return false;\n let shouldStopPropagation = true;\n state.isTriggeringEvent = true;\n if (onPressStart) {\n let event = new $f6c31cce2adf654f$var$PressEvent('pressstart', pointerType, originalEvent);\n onPressStart(event);\n shouldStopPropagation = event.shouldStopPropagation;\n }\n if (onPressChange) onPressChange(true);\n state.isTriggeringEvent = false;\n state.didFirePressStart = true;\n setPressed(true);\n return shouldStopPropagation;\n });\n let triggerPressEnd = (0, $7mdmh$useEffectEvent)((originalEvent, pointerType, wasPressed = true)=>{\n let state = ref.current;\n if (!state.didFirePressStart) return false;\n state.didFirePressStart = false;\n state.isTriggeringEvent = true;\n let shouldStopPropagation = true;\n if (onPressEnd) {\n let event = new $f6c31cce2adf654f$var$PressEvent('pressend', pointerType, originalEvent);\n onPressEnd(event);\n shouldStopPropagation = event.shouldStopPropagation;\n }\n if (onPressChange) onPressChange(false);\n setPressed(false);\n if (onPress && wasPressed && !isDisabled) {\n let event = new $f6c31cce2adf654f$var$PressEvent('press', pointerType, originalEvent);\n onPress(event);\n shouldStopPropagation && (shouldStopPropagation = event.shouldStopPropagation);\n }\n state.isTriggeringEvent = false;\n return shouldStopPropagation;\n });\n let triggerPressUp = (0, $7mdmh$useEffectEvent)((originalEvent, pointerType)=>{\n let state = ref.current;\n if (isDisabled) return false;\n if (onPressUp) {\n state.isTriggeringEvent = true;\n let event = new $f6c31cce2adf654f$var$PressEvent('pressup', pointerType, originalEvent);\n onPressUp(event);\n state.isTriggeringEvent = false;\n return event.shouldStopPropagation;\n }\n return true;\n });\n let cancel = (0, $7mdmh$useEffectEvent)((e)=>{\n let state = ref.current;\n if (state.isPressed && state.target) {\n if (state.didFirePressStart && state.pointerType != null) triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n state.isPressed = false;\n state.isOverTarget = false;\n state.activePointerId = null;\n state.pointerType = null;\n removeAllGlobalListeners();\n if (!allowTextSelectionOnPress) (0, $14c0b72509d70225$export$b0d6fa1ab32e3295)(state.target);\n for (let dispose of state.disposables)dispose();\n state.disposables = [];\n }\n });\n let cancelOnPointerExit = (0, $7mdmh$useEffectEvent)((e)=>{\n if (shouldCancelOnPointerExit) cancel(e);\n });\n let triggerClick = (0, $7mdmh$useEffectEvent)((e)=>{\n onClick === null || onClick === void 0 ? void 0 : onClick(e);\n });\n let triggerSyntheticClick = (0, $7mdmh$useEffectEvent)((e, target)=>{\n // Some third-party libraries pass in onClick instead of onPress.\n // Create a fake mouse event and trigger onClick as well.\n // This matches the browser's native activation behavior for certain elements (e.g. button).\n // https://html.spec.whatwg.org/#activation\n // https://html.spec.whatwg.org/#fire-a-synthetic-pointer-event\n if (onClick) {\n let event = new MouseEvent('click', e);\n (0, $8a9cb279dc87e130$export$c2b7abe5d61ec696)(event, target);\n onClick((0, $8a9cb279dc87e130$export$525bc4921d56d4a)(event));\n }\n });\n let pressProps = (0, $7mdmh$useMemo)(()=>{\n let state = ref.current;\n let pressProps = {\n onKeyDown (e) {\n if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e.nativeEvent, e.currentTarget) && (0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) {\n var _state_metaKeyEvents;\n if ($f6c31cce2adf654f$var$shouldPreventDefaultKeyboard((0, $7mdmh$getEventTarget)(e.nativeEvent), e.key)) e.preventDefault();\n // If the event is repeating, it may have started on a different element\n // after which focus moved to the current element. Ignore these events and\n // only handle the first key down event.\n let shouldStopPropagation = true;\n if (!state.isPressed && !e.repeat) {\n state.target = e.currentTarget;\n state.isPressed = true;\n state.pointerType = 'keyboard';\n shouldStopPropagation = triggerPressStart(e, 'keyboard');\n // Focus may move before the key up event, so register the event on the document\n // instead of the same element where the key down event occurred. Make it capturing so that it will trigger\n // before stopPropagation from useKeyboard on a child element may happen and thus we can still call triggerPress for the parent element.\n let originalTarget = e.currentTarget;\n let pressUp = (e)=>{\n if ($f6c31cce2adf654f$var$isValidKeyboardEvent(e, originalTarget) && !e.repeat && (0, $7mdmh$nodeContains)(originalTarget, (0, $7mdmh$getEventTarget)(e)) && state.target) triggerPressUp($f6c31cce2adf654f$var$createEvent(state.target, e), 'keyboard');\n };\n addGlobalListener((0, $7mdmh$getOwnerDocument)(e.currentTarget), 'keyup', (0, $7mdmh$chain)(pressUp, onKeyUp), true);\n }\n if (shouldStopPropagation) e.stopPropagation();\n // Keep track of the keydown events that occur while the Meta (e.g. Command) key is held.\n // macOS has a bug where keyup events are not fired while the Meta key is down.\n // When the Meta key itself is released we will get an event for that, and we'll act as if\n // all of these other keys were released as well.\n // https://bugs.chromium.org/p/chromium/issues/detail?id=1393524\n // https://bugs.webkit.org/show_bug.cgi?id=55291\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1299553\n if (e.metaKey && (0, $7mdmh$isMac)()) (_state_metaKeyEvents = state.metaKeyEvents) === null || _state_metaKeyEvents === void 0 ? void 0 : _state_metaKeyEvents.set(e.key, e.nativeEvent);\n } else if (e.key === 'Meta') state.metaKeyEvents = new Map();\n },\n onClick (e) {\n if (e && !(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (e && e.button === 0 && !state.isTriggeringEvent && !(0, $7mdmh$openLink).isOpening) {\n let shouldStopPropagation = true;\n if (isDisabled) e.preventDefault();\n // If triggered from a screen reader or by using element.click(),\n // trigger as if it were a keyboard click.\n if (!state.ignoreEmulatedMouseEvents && !state.isPressed && (state.pointerType === 'virtual' || (0, $7mdmh$isVirtualClick)(e.nativeEvent))) {\n let stopPressStart = triggerPressStart(e, 'virtual');\n let stopPressUp = triggerPressUp(e, 'virtual');\n let stopPressEnd = triggerPressEnd(e, 'virtual');\n triggerClick(e);\n shouldStopPropagation = stopPressStart && stopPressUp && stopPressEnd;\n } else if (state.isPressed && state.pointerType !== 'keyboard') {\n let pointerType = state.pointerType || e.nativeEvent.pointerType || 'virtual';\n let stopPressUp = triggerPressUp($f6c31cce2adf654f$var$createEvent(e.currentTarget, e), pointerType);\n let stopPressEnd = triggerPressEnd($f6c31cce2adf654f$var$createEvent(e.currentTarget, e), pointerType, true);\n shouldStopPropagation = stopPressUp && stopPressEnd;\n state.isOverTarget = false;\n triggerClick(e);\n cancel(e);\n }\n state.ignoreEmulatedMouseEvents = false;\n if (shouldStopPropagation) e.stopPropagation();\n }\n }\n };\n let onKeyUp = (e)=>{\n var _state_metaKeyEvents;\n if (state.isPressed && state.target && $f6c31cce2adf654f$var$isValidKeyboardEvent(e, state.target)) {\n var _state_metaKeyEvents1;\n if ($f6c31cce2adf654f$var$shouldPreventDefaultKeyboard((0, $7mdmh$getEventTarget)(e), e.key)) e.preventDefault();\n let target = (0, $7mdmh$getEventTarget)(e);\n let wasPressed = (0, $7mdmh$nodeContains)(state.target, (0, $7mdmh$getEventTarget)(e));\n triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), 'keyboard', wasPressed);\n if (wasPressed) triggerSyntheticClick(e, state.target);\n removeAllGlobalListeners();\n // If a link was triggered with a key other than Enter, open the URL ourselves.\n // This means the link has a role override, and the default browser behavior\n // only applies when using the Enter key.\n if (e.key !== 'Enter' && $f6c31cce2adf654f$var$isHTMLAnchorLink(state.target) && (0, $7mdmh$nodeContains)(state.target, target) && !e[$f6c31cce2adf654f$var$LINK_CLICKED]) {\n // Store a hidden property on the event so we only trigger link click once,\n // even if there are multiple usePress instances attached to the element.\n e[$f6c31cce2adf654f$var$LINK_CLICKED] = true;\n (0, $7mdmh$openLink)(state.target, e, false);\n }\n state.isPressed = false;\n (_state_metaKeyEvents1 = state.metaKeyEvents) === null || _state_metaKeyEvents1 === void 0 ? void 0 : _state_metaKeyEvents1.delete(e.key);\n } else if (e.key === 'Meta' && ((_state_metaKeyEvents = state.metaKeyEvents) === null || _state_metaKeyEvents === void 0 ? void 0 : _state_metaKeyEvents.size)) {\n var _state_target;\n // If we recorded keydown events that occurred while the Meta key was pressed,\n // and those haven't received keyup events already, fire keyup events ourselves.\n // See comment above for more info about the macOS bug causing this.\n let events = state.metaKeyEvents;\n state.metaKeyEvents = undefined;\n for (let event of events.values())(_state_target = state.target) === null || _state_target === void 0 ? void 0 : _state_target.dispatchEvent(new KeyboardEvent('keyup', event));\n }\n };\n if (typeof PointerEvent !== 'undefined') {\n pressProps.onPointerDown = (e)=>{\n // Only handle left clicks, and ignore events that bubbled through portals.\n if (e.button !== 0 || !(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n // iOS safari fires pointer events from VoiceOver with incorrect coordinates/target.\n // Ignore and let the onClick handler take care of it instead.\n // https://bugs.webkit.org/show_bug.cgi?id=222627\n // https://bugs.webkit.org/show_bug.cgi?id=223202\n if ((0, $7mdmh$isVirtualPointerEvent)(e.nativeEvent)) {\n state.pointerType = 'virtual';\n return;\n }\n state.pointerType = e.pointerType;\n let shouldStopPropagation = true;\n if (!state.isPressed) {\n state.isPressed = true;\n state.isOverTarget = true;\n state.activePointerId = e.pointerId;\n state.target = e.currentTarget;\n if (!allowTextSelectionOnPress) (0, $14c0b72509d70225$export$16a4697467175487)(state.target);\n shouldStopPropagation = triggerPressStart(e, state.pointerType);\n // Release pointer capture so that touch interactions can leave the original target.\n // This enables onPointerLeave and onPointerEnter to fire.\n let target = (0, $7mdmh$getEventTarget)(e.nativeEvent);\n if ('releasePointerCapture' in target) target.releasePointerCapture(e.pointerId);\n addGlobalListener((0, $7mdmh$getOwnerDocument)(e.currentTarget), 'pointerup', onPointerUp, false);\n addGlobalListener((0, $7mdmh$getOwnerDocument)(e.currentTarget), 'pointercancel', onPointerCancel, false);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseDown = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (e.button === 0) {\n if (preventFocusOnPress) {\n let dispose = (0, $8a9cb279dc87e130$export$cabe61c495ee3649)(e.target);\n if (dispose) state.disposables.push(dispose);\n }\n e.stopPropagation();\n }\n };\n pressProps.onPointerUp = (e)=>{\n // iOS fires pointerup with zero width and height, so check the pointerType recorded during pointerdown.\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent)) || state.pointerType === 'virtual') return;\n // Only handle left clicks. If isPressed is true, delay until onClick.\n if (e.button === 0 && !state.isPressed) triggerPressUp(e, state.pointerType || e.pointerType);\n };\n pressProps.onPointerEnter = (e)=>{\n if (e.pointerId === state.activePointerId && state.target && !state.isOverTarget && state.pointerType != null) {\n state.isOverTarget = true;\n triggerPressStart($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType);\n }\n };\n pressProps.onPointerLeave = (e)=>{\n if (e.pointerId === state.activePointerId && state.target && state.isOverTarget && state.pointerType != null) {\n state.isOverTarget = false;\n triggerPressEnd($f6c31cce2adf654f$var$createEvent(state.target, e), state.pointerType, false);\n cancelOnPointerExit(e);\n }\n };\n let onPointerUp = (e)=>{\n if (e.pointerId === state.activePointerId && state.isPressed && e.button === 0 && state.target) {\n if ((0, $7mdmh$nodeContains)(state.target, (0, $7mdmh$getEventTarget)(e)) && state.pointerType != null) {\n // Wait for onClick to fire onPress. This avoids browser issues when the DOM\n // is mutated between onPointerUp and onClick, and is more compatible with third party libraries.\n // https://github.com/adobe/react-spectrum/issues/1513\n // https://issues.chromium.org/issues/40732224\n // However, iOS and Android do not focus or fire onClick after a long press.\n // We work around this by triggering a click ourselves after a timeout.\n // This timeout is canceled during the click event in case the real one fires first.\n // The timeout must be at least 32ms, because Safari on iOS delays the click event on\n // non-form elements without certain ARIA roles (for hover emulation).\n // https://github.com/WebKit/WebKit/blob/dccfae42bb29bd4bdef052e469f604a9387241c0/Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm#L875-L892\n let clicked = false;\n let timeout = setTimeout(()=>{\n if (state.isPressed && state.target instanceof HTMLElement) {\n if (clicked) cancel(e);\n else {\n (0, $7mdmh$focusWithoutScrolling)(state.target);\n state.target.click();\n }\n }\n }, 80);\n // Use a capturing listener to track if a click occurred.\n // If stopPropagation is called it may never reach our handler.\n addGlobalListener(e.currentTarget, 'click', ()=>clicked = true, true);\n state.disposables.push(()=>clearTimeout(timeout));\n } else cancel(e);\n // Ignore subsequent onPointerLeave event before onClick on touch devices.\n state.isOverTarget = false;\n }\n };\n let onPointerCancel = (e)=>{\n cancel(e);\n };\n pressProps.onDragStart = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n // Safari does not call onPointerCancel when a drag starts, whereas Chrome and Firefox do.\n cancel(e);\n };\n } else if (process.env.NODE_ENV === 'test') {\n // NOTE: this fallback branch is entirely used by unit tests.\n // All browsers now support pointer events, but JSDOM still does not.\n pressProps.onMouseDown = (e)=>{\n // Only handle left clicks\n if (e.button !== 0 || !(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (state.ignoreEmulatedMouseEvents) {\n e.stopPropagation();\n return;\n }\n state.isPressed = true;\n state.isOverTarget = true;\n state.target = e.currentTarget;\n state.pointerType = (0, $7mdmh$isVirtualClick)(e.nativeEvent) ? 'virtual' : 'mouse';\n // Flush sync so that focus moved during react re-renders occurs before we yield back to the browser.\n let shouldStopPropagation = (0, $7mdmh$flushSync)(()=>triggerPressStart(e, state.pointerType));\n if (shouldStopPropagation) e.stopPropagation();\n if (preventFocusOnPress) {\n let dispose = (0, $8a9cb279dc87e130$export$cabe61c495ee3649)(e.target);\n if (dispose) state.disposables.push(dispose);\n }\n addGlobalListener((0, $7mdmh$getOwnerDocument)(e.currentTarget), 'mouseup', onMouseUp, false);\n };\n pressProps.onMouseEnter = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n let shouldStopPropagation = true;\n if (state.isPressed && !state.ignoreEmulatedMouseEvents && state.pointerType != null) {\n state.isOverTarget = true;\n shouldStopPropagation = triggerPressStart(e, state.pointerType);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseLeave = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n let shouldStopPropagation = true;\n if (state.isPressed && !state.ignoreEmulatedMouseEvents && state.pointerType != null) {\n state.isOverTarget = false;\n shouldStopPropagation = triggerPressEnd(e, state.pointerType, false);\n cancelOnPointerExit(e);\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onMouseUp = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (!state.ignoreEmulatedMouseEvents && e.button === 0 && !state.isPressed) triggerPressUp(e, state.pointerType || 'mouse');\n };\n let onMouseUp = (e)=>{\n // Only handle left clicks\n if (e.button !== 0) return;\n if (state.ignoreEmulatedMouseEvents) {\n state.ignoreEmulatedMouseEvents = false;\n return;\n }\n if (state.target && state.target.contains(e.target) && state.pointerType != null) ;\n else cancel(e);\n state.isOverTarget = false;\n };\n pressProps.onTouchStart = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n let touch = $f6c31cce2adf654f$var$getTouchFromEvent(e.nativeEvent);\n if (!touch) return;\n state.activePointerId = touch.identifier;\n state.ignoreEmulatedMouseEvents = true;\n state.isOverTarget = true;\n state.isPressed = true;\n state.target = e.currentTarget;\n state.pointerType = 'touch';\n if (!allowTextSelectionOnPress) (0, $14c0b72509d70225$export$16a4697467175487)(state.target);\n let shouldStopPropagation = triggerPressStart($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType);\n if (shouldStopPropagation) e.stopPropagation();\n addGlobalListener((0, $7mdmh$getOwnerWindow)(e.currentTarget), 'scroll', onScroll, true);\n };\n pressProps.onTouchMove = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (!state.isPressed) {\n e.stopPropagation();\n return;\n }\n let touch = $f6c31cce2adf654f$var$getTouchById(e.nativeEvent, state.activePointerId);\n let shouldStopPropagation = true;\n if (touch && $f6c31cce2adf654f$var$isOverTarget(touch, e.currentTarget)) {\n if (!state.isOverTarget && state.pointerType != null) {\n state.isOverTarget = true;\n shouldStopPropagation = triggerPressStart($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType);\n }\n } else if (state.isOverTarget && state.pointerType != null) {\n state.isOverTarget = false;\n shouldStopPropagation = triggerPressEnd($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType, false);\n cancelOnPointerExit($f6c31cce2adf654f$var$createTouchEvent(state.target, e));\n }\n if (shouldStopPropagation) e.stopPropagation();\n };\n pressProps.onTouchEnd = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n if (!state.isPressed) {\n e.stopPropagation();\n return;\n }\n let touch = $f6c31cce2adf654f$var$getTouchById(e.nativeEvent, state.activePointerId);\n let shouldStopPropagation = true;\n if (touch && $f6c31cce2adf654f$var$isOverTarget(touch, e.currentTarget) && state.pointerType != null) {\n triggerPressUp($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType);\n shouldStopPropagation = triggerPressEnd($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType);\n triggerSyntheticClick(e.nativeEvent, state.target);\n } else if (state.isOverTarget && state.pointerType != null) shouldStopPropagation = triggerPressEnd($f6c31cce2adf654f$var$createTouchEvent(state.target, e), state.pointerType, false);\n if (shouldStopPropagation) e.stopPropagation();\n state.isPressed = false;\n state.activePointerId = null;\n state.isOverTarget = false;\n state.ignoreEmulatedMouseEvents = true;\n if (state.target && !allowTextSelectionOnPress) (0, $14c0b72509d70225$export$b0d6fa1ab32e3295)(state.target);\n removeAllGlobalListeners();\n };\n pressProps.onTouchCancel = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n e.stopPropagation();\n if (state.isPressed) cancel($f6c31cce2adf654f$var$createTouchEvent(state.target, e));\n };\n let onScroll = (e)=>{\n if (state.isPressed && (0, $7mdmh$nodeContains)((0, $7mdmh$getEventTarget)(e), state.target)) cancel({\n currentTarget: state.target,\n shiftKey: false,\n ctrlKey: false,\n metaKey: false,\n altKey: false\n });\n };\n pressProps.onDragStart = (e)=>{\n if (!(0, $7mdmh$nodeContains)(e.currentTarget, (0, $7mdmh$getEventTarget)(e.nativeEvent))) return;\n cancel(e);\n };\n }\n return pressProps;\n }, [\n addGlobalListener,\n isDisabled,\n preventFocusOnPress,\n removeAllGlobalListeners,\n allowTextSelectionOnPress,\n cancel,\n cancelOnPointerExit,\n triggerPressEnd,\n triggerPressStart,\n triggerPressUp,\n triggerClick,\n triggerSyntheticClick\n ]);\n // Avoid onClick delay for double tap to zoom by default.\n (0, $7mdmh$useEffect)(()=>{\n if (!domRef || process.env.NODE_ENV === 'test') return;\n const ownerDocument = (0, $7mdmh$getOwnerDocument)(domRef.current);\n if (!ownerDocument || !ownerDocument.head || ownerDocument.getElementById($f6c31cce2adf654f$var$STYLE_ID)) return;\n const style = ownerDocument.createElement('style');\n style.id = $f6c31cce2adf654f$var$STYLE_ID;\n // touchAction: 'manipulation' is supposed to be equivalent, but in\n // Safari it causes onPointerCancel not to fire on scroll.\n // https://bugs.webkit.org/show_bug.cgi?id=240917\n style.textContent = `\n@layer {\n [${$f6c31cce2adf654f$var$PRESSABLE_ATTRIBUTE}] {\n touch-action: pan-x pan-y pinch-zoom;\n }\n}\n `.trim();\n ownerDocument.head.prepend(style);\n }, [\n domRef\n ]);\n // Remove user-select: none in case component unmounts immediately after pressStart\n (0, $7mdmh$useEffect)(()=>{\n let state = ref.current;\n return ()=>{\n var _state_target;\n if (!allowTextSelectionOnPress) (0, $14c0b72509d70225$export$b0d6fa1ab32e3295)((_state_target = state.target) !== null && _state_target !== void 0 ? _state_target : undefined);\n for (let dispose of state.disposables)dispose();\n state.disposables = [];\n };\n }, [\n allowTextSelectionOnPress\n ]);\n return {\n isPressed: isPressedProp || isPressed,\n pressProps: (0, $7mdmh$mergeProps)(domProps, pressProps, {\n [$f6c31cce2adf654f$var$PRESSABLE_ATTRIBUTE]: true\n })\n };\n}\nfunction $f6c31cce2adf654f$var$isHTMLAnchorLink(target) {\n return target.tagName === 'A' && target.hasAttribute('href');\n}\nfunction $f6c31cce2adf654f$var$isValidKeyboardEvent(event, currentTarget) {\n const { key: key, code: code } = event;\n const element = currentTarget;\n const role = element.getAttribute('role');\n // Accessibility for keyboards. Space and Enter only.\n // \"Spacebar\" is for IE 11\n return (key === 'Enter' || key === ' ' || key === 'Spacebar' || code === 'Space') && !(element instanceof (0, $7mdmh$getOwnerWindow)(element).HTMLInputElement && !$f6c31cce2adf654f$var$isValidInputKey(element, key) || element instanceof (0, $7mdmh$getOwnerWindow)(element).HTMLTextAreaElement || element.isContentEditable) && // Links should only trigger with Enter key\n !((role === 'link' || !role && $f6c31cce2adf654f$var$isHTMLAnchorLink(element)) && key !== 'Enter');\n}\nfunction $f6c31cce2adf654f$var$getTouchFromEvent(event) {\n const { targetTouches: targetTouches } = event;\n if (targetTouches.length > 0) return targetTouches[0];\n return null;\n}\nfunction $f6c31cce2adf654f$var$getTouchById(event, pointerId) {\n const changedTouches = event.changedTouches;\n for(let i = 0; i < changedTouches.length; i++){\n const touch = changedTouches[i];\n if (touch.identifier === pointerId) return touch;\n }\n return null;\n}\nfunction $f6c31cce2adf654f$var$createTouchEvent(target, e) {\n let clientX = 0;\n let clientY = 0;\n if (e.targetTouches && e.targetTouches.length === 1) {\n clientX = e.targetTouches[0].clientX;\n clientY = e.targetTouches[0].clientY;\n }\n return {\n currentTarget: target,\n shiftKey: e.shiftKey,\n ctrlKey: e.ctrlKey,\n metaKey: e.metaKey,\n altKey: e.altKey,\n clientX: clientX,\n clientY: clientY\n };\n}\nfunction $f6c31cce2adf654f$var$createEvent(target, e) {\n let clientX = e.clientX;\n let clientY = e.clientY;\n return {\n currentTarget: target,\n shiftKey: e.shiftKey,\n ctrlKey: e.ctrlKey,\n metaKey: e.metaKey,\n altKey: e.altKey,\n clientX: clientX,\n clientY: clientY\n };\n}\nfunction $f6c31cce2adf654f$var$getPointClientRect(point) {\n let offsetX = 0;\n let offsetY = 0;\n if (point.width !== undefined) offsetX = point.width / 2;\n else if (point.radiusX !== undefined) offsetX = point.radiusX;\n if (point.height !== undefined) offsetY = point.height / 2;\n else if (point.radiusY !== undefined) offsetY = point.radiusY;\n return {\n top: point.clientY - offsetY,\n right: point.clientX + offsetX,\n bottom: point.clientY + offsetY,\n left: point.clientX - offsetX\n };\n}\nfunction $f6c31cce2adf654f$var$areRectanglesOverlapping(a, b) {\n // check if they cannot overlap on x axis\n if (a.left > b.right || b.left > a.right) return false;\n // check if they cannot overlap on y axis\n if (a.top > b.bottom || b.top > a.bottom) return false;\n return true;\n}\nfunction $f6c31cce2adf654f$var$isOverTarget(point, target) {\n let rect = target.getBoundingClientRect();\n let pointRect = $f6c31cce2adf654f$var$getPointClientRect(point);\n return $f6c31cce2adf654f$var$areRectanglesOverlapping(rect, pointRect);\n}\nfunction $f6c31cce2adf654f$var$shouldPreventDefaultUp(target) {\n if (target instanceof HTMLInputElement) return false;\n if (target instanceof HTMLButtonElement) return target.type !== 'submit' && target.type !== 'reset';\n if ($f6c31cce2adf654f$var$isHTMLAnchorLink(target)) return false;\n return true;\n}\nfunction $f6c31cce2adf654f$var$shouldPreventDefaultKeyboard(target, key) {\n if (target instanceof HTMLInputElement) return !$f6c31cce2adf654f$var$isValidInputKey(target, key);\n return $f6c31cce2adf654f$var$shouldPreventDefaultUp(target);\n}\nconst $f6c31cce2adf654f$var$nonTextInputTypes = new Set([\n 'checkbox',\n 'radio',\n 'range',\n 'color',\n 'file',\n 'image',\n 'button',\n 'submit',\n 'reset'\n]);\nfunction $f6c31cce2adf654f$var$isValidInputKey(target, key) {\n // Only space should toggle checkboxes and radios, not enter.\n return target.type === 'checkbox' || target.type === 'radio' ? key === ' ' : $f6c31cce2adf654f$var$nonTextInputTypes.has(target.type);\n}\n\n\nexport {$f6c31cce2adf654f$export$45712eceda6fad21 as usePress};\n//# sourceMappingURL=usePress.module.js.map\n","import {ignoreFocusEvent as $8a9cb279dc87e130$export$fda7da73ab5d4c48} from \"./utils.mjs\";\nimport {isMac as $28AnR$isMac, isVirtualClick as $28AnR$isVirtualClick, getOwnerWindow as $28AnR$getOwnerWindow, getOwnerDocument as $28AnR$getOwnerDocument} from \"@react-aria/utils\";\nimport {useState as $28AnR$useState, useEffect as $28AnR$useEffect} from \"react\";\nimport {useIsSSR as $28AnR$useIsSSR} from \"@react-aria/ssr\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\n\nlet $507fabe10e71c6fb$var$currentModality = null;\nlet $507fabe10e71c6fb$var$changeHandlers = new Set();\nlet $507fabe10e71c6fb$export$d90243b58daecda7 = new Map(); // We use a map here to support setting event listeners across multiple document objects.\nlet $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\nlet $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n// Only Tab or Esc keys will make focus visible on text input elements\nconst $507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS = {\n Tab: true,\n Escape: true\n};\nfunction $507fabe10e71c6fb$var$triggerChangeHandlers(modality, e) {\n for (let handler of $507fabe10e71c6fb$var$changeHandlers)handler(modality, e);\n}\n/**\n * Helper function to determine if a KeyboardEvent is unmodified and could make keyboard focus styles visible.\n */ function $507fabe10e71c6fb$var$isValidKey(e) {\n // Control and Shift keys trigger when navigating back to the tab with keyboard.\n return !(e.metaKey || !(0, $28AnR$isMac)() && e.altKey || e.ctrlKey || e.key === 'Control' || e.key === 'Shift' || e.key === 'Meta');\n}\nfunction $507fabe10e71c6fb$var$handleKeyboardEvent(e) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n if ($507fabe10e71c6fb$var$isValidKey(e)) {\n $507fabe10e71c6fb$var$currentModality = 'keyboard';\n $507fabe10e71c6fb$var$triggerChangeHandlers('keyboard', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handlePointerEvent(e) {\n $507fabe10e71c6fb$var$currentModality = 'pointer';\n if (e.type === 'mousedown' || e.type === 'pointerdown') {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$triggerChangeHandlers('pointer', e);\n }\n}\nfunction $507fabe10e71c6fb$var$handleClickEvent(e) {\n if ((0, $28AnR$isVirtualClick)(e)) {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n }\n}\nfunction $507fabe10e71c6fb$var$handleFocusEvent(e) {\n // Firefox fires two extra focus events when the user first clicks into an iframe:\n // first on the window, then on the document. We ignore these events so they don't\n // cause keyboard focus rings to appear.\n if (e.target === window || e.target === document || (0, $8a9cb279dc87e130$export$fda7da73ab5d4c48) || !e.isTrusted) return;\n // If a focus event occurs without a preceding keyboard or pointer event, switch to virtual modality.\n // This occurs, for example, when navigating a form with the next/previous buttons on iOS.\n if (!$507fabe10e71c6fb$var$hasEventBeforeFocus && !$507fabe10e71c6fb$var$hasBlurredWindowRecently) {\n $507fabe10e71c6fb$var$currentModality = 'virtual';\n $507fabe10e71c6fb$var$triggerChangeHandlers('virtual', e);\n }\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = false;\n}\nfunction $507fabe10e71c6fb$var$handleWindowBlur() {\n if (0, $8a9cb279dc87e130$export$fda7da73ab5d4c48) return;\n // When the window is blurred, reset state. This is necessary when tabbing out of the window,\n // for example, since a subsequent focus event won't be fired.\n $507fabe10e71c6fb$var$hasEventBeforeFocus = false;\n $507fabe10e71c6fb$var$hasBlurredWindowRecently = true;\n}\n/**\n * Setup global event listeners to control when keyboard focus style should be visible.\n */ function $507fabe10e71c6fb$var$setupGlobalFocusEvents(element) {\n if (typeof window === 'undefined' || typeof document === 'undefined' || $507fabe10e71c6fb$export$d90243b58daecda7.get((0, $28AnR$getOwnerWindow)(element))) return;\n const windowObject = (0, $28AnR$getOwnerWindow)(element);\n const documentObject = (0, $28AnR$getOwnerDocument)(element);\n // Programmatic focus() calls shouldn't affect the current input modality.\n // However, we need to detect other cases when a focus event occurs without\n // a preceding user event (e.g. screen reader focus). Overriding the focus\n // method on HTMLElement.prototype is a bit hacky, but works.\n let focus = windowObject.HTMLElement.prototype.focus;\n windowObject.HTMLElement.prototype.focus = function() {\n $507fabe10e71c6fb$var$hasEventBeforeFocus = true;\n focus.apply(this, arguments);\n };\n documentObject.addEventListener('keydown', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.addEventListener('keyup', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.addEventListener('click', $507fabe10e71c6fb$var$handleClickEvent, true);\n // Register focus events on the window so they are sure to happen\n // before React's event listeners (registered on the document).\n windowObject.addEventListener('focus', $507fabe10e71c6fb$var$handleFocusEvent, true);\n windowObject.addEventListener('blur', $507fabe10e71c6fb$var$handleWindowBlur, false);\n if (typeof PointerEvent !== 'undefined') {\n documentObject.addEventListener('pointerdown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('pointermove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('pointerup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n } else if (process.env.NODE_ENV === 'test') {\n documentObject.addEventListener('mousedown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('mousemove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.addEventListener('mouseup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n }\n // Add unmount handler\n windowObject.addEventListener('beforeunload', ()=>{\n $507fabe10e71c6fb$var$tearDownWindowFocusTracking(element);\n }, {\n once: true\n });\n $507fabe10e71c6fb$export$d90243b58daecda7.set(windowObject, {\n focus: focus\n });\n}\nconst $507fabe10e71c6fb$var$tearDownWindowFocusTracking = (element, loadListener)=>{\n const windowObject = (0, $28AnR$getOwnerWindow)(element);\n const documentObject = (0, $28AnR$getOwnerDocument)(element);\n if (loadListener) documentObject.removeEventListener('DOMContentLoaded', loadListener);\n if (!$507fabe10e71c6fb$export$d90243b58daecda7.has(windowObject)) return;\n windowObject.HTMLElement.prototype.focus = $507fabe10e71c6fb$export$d90243b58daecda7.get(windowObject).focus;\n documentObject.removeEventListener('keydown', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.removeEventListener('keyup', $507fabe10e71c6fb$var$handleKeyboardEvent, true);\n documentObject.removeEventListener('click', $507fabe10e71c6fb$var$handleClickEvent, true);\n windowObject.removeEventListener('focus', $507fabe10e71c6fb$var$handleFocusEvent, true);\n windowObject.removeEventListener('blur', $507fabe10e71c6fb$var$handleWindowBlur, false);\n if (typeof PointerEvent !== 'undefined') {\n documentObject.removeEventListener('pointerdown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('pointermove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('pointerup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n } else if (process.env.NODE_ENV === 'test') {\n documentObject.removeEventListener('mousedown', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('mousemove', $507fabe10e71c6fb$var$handlePointerEvent, true);\n documentObject.removeEventListener('mouseup', $507fabe10e71c6fb$var$handlePointerEvent, true);\n }\n $507fabe10e71c6fb$export$d90243b58daecda7.delete(windowObject);\n};\nfunction $507fabe10e71c6fb$export$2f1888112f558a7d(element) {\n const documentObject = (0, $28AnR$getOwnerDocument)(element);\n let loadListener;\n if (documentObject.readyState !== 'loading') $507fabe10e71c6fb$var$setupGlobalFocusEvents(element);\n else {\n loadListener = ()=>{\n $507fabe10e71c6fb$var$setupGlobalFocusEvents(element);\n };\n documentObject.addEventListener('DOMContentLoaded', loadListener);\n }\n return ()=>$507fabe10e71c6fb$var$tearDownWindowFocusTracking(element, loadListener);\n}\n// Server-side rendering does not have the document object defined\n// eslint-disable-next-line no-restricted-globals\nif (typeof document !== 'undefined') $507fabe10e71c6fb$export$2f1888112f558a7d();\nfunction $507fabe10e71c6fb$export$b9b3dfddab17db27() {\n return $507fabe10e71c6fb$var$currentModality !== 'pointer';\n}\nfunction $507fabe10e71c6fb$export$630ff653c5ada6a9() {\n return $507fabe10e71c6fb$var$currentModality;\n}\nfunction $507fabe10e71c6fb$export$8397ddfc504fdb9a(modality) {\n $507fabe10e71c6fb$var$currentModality = modality;\n $507fabe10e71c6fb$var$triggerChangeHandlers(modality, null);\n}\nfunction $507fabe10e71c6fb$export$98e20ec92f614cfe() {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n let [modality, setModality] = (0, $28AnR$useState)($507fabe10e71c6fb$var$currentModality);\n (0, $28AnR$useEffect)(()=>{\n let handler = ()=>{\n setModality($507fabe10e71c6fb$var$currentModality);\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return ()=>{\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n }, []);\n return (0, $28AnR$useIsSSR)() ? null : modality;\n}\nconst $507fabe10e71c6fb$var$nonTextInputTypes = new Set([\n 'checkbox',\n 'radio',\n 'range',\n 'color',\n 'file',\n 'image',\n 'button',\n 'submit',\n 'reset'\n]);\n/**\n * If this is attached to text input component, return if the event is a focus event (Tab/Escape keys pressed) so that\n * focus visible style can be properly set.\n */ function $507fabe10e71c6fb$var$isKeyboardFocusEvent(isTextInput, modality, e) {\n let document1 = (0, $28AnR$getOwnerDocument)(e === null || e === void 0 ? void 0 : e.target);\n const IHTMLInputElement = typeof window !== 'undefined' ? (0, $28AnR$getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLInputElement : HTMLInputElement;\n const IHTMLTextAreaElement = typeof window !== 'undefined' ? (0, $28AnR$getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLTextAreaElement : HTMLTextAreaElement;\n const IHTMLElement = typeof window !== 'undefined' ? (0, $28AnR$getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).HTMLElement : HTMLElement;\n const IKeyboardEvent = typeof window !== 'undefined' ? (0, $28AnR$getOwnerWindow)(e === null || e === void 0 ? void 0 : e.target).KeyboardEvent : KeyboardEvent;\n // For keyboard events that occur on a non-input element that will move focus into input element (aka ArrowLeft going from Datepicker button to the main input group)\n // we need to rely on the user passing isTextInput into here. This way we can skip toggling focus visiblity for said input element\n isTextInput = isTextInput || document1.activeElement instanceof IHTMLInputElement && !$507fabe10e71c6fb$var$nonTextInputTypes.has(document1.activeElement.type) || document1.activeElement instanceof IHTMLTextAreaElement || document1.activeElement instanceof IHTMLElement && document1.activeElement.isContentEditable;\n return !(isTextInput && modality === 'keyboard' && e instanceof IKeyboardEvent && !$507fabe10e71c6fb$var$FOCUS_VISIBLE_INPUT_KEYS[e.key]);\n}\nfunction $507fabe10e71c6fb$export$ffd9e5021c1fb2d6(props = {}) {\n let { isTextInput: isTextInput, autoFocus: autoFocus } = props;\n let [isFocusVisibleState, setFocusVisible] = (0, $28AnR$useState)(autoFocus || $507fabe10e71c6fb$export$b9b3dfddab17db27());\n $507fabe10e71c6fb$export$ec71b4b83ac08ec3((isFocusVisible)=>{\n setFocusVisible(isFocusVisible);\n }, [\n isTextInput\n ], {\n isTextInput: isTextInput\n });\n return {\n isFocusVisible: isFocusVisibleState\n };\n}\nfunction $507fabe10e71c6fb$export$ec71b4b83ac08ec3(fn, deps, opts) {\n $507fabe10e71c6fb$var$setupGlobalFocusEvents();\n (0, $28AnR$useEffect)(()=>{\n let handler = (modality, e)=>{\n // We want to early return for any keyboard events that occur inside text inputs EXCEPT for Tab and Escape\n if (!$507fabe10e71c6fb$var$isKeyboardFocusEvent(!!(opts === null || opts === void 0 ? void 0 : opts.isTextInput), modality, e)) return;\n fn($507fabe10e71c6fb$export$b9b3dfddab17db27());\n };\n $507fabe10e71c6fb$var$changeHandlers.add(handler);\n return ()=>{\n $507fabe10e71c6fb$var$changeHandlers.delete(handler);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n}\n\n\nexport {$507fabe10e71c6fb$export$d90243b58daecda7 as hasSetupGlobalListeners, $507fabe10e71c6fb$export$2f1888112f558a7d as addWindowFocusTracking, $507fabe10e71c6fb$export$b9b3dfddab17db27 as isFocusVisible, $507fabe10e71c6fb$export$630ff653c5ada6a9 as getInteractionModality, $507fabe10e71c6fb$export$8397ddfc504fdb9a as setInteractionModality, $507fabe10e71c6fb$export$98e20ec92f614cfe as useInteractionModality, $507fabe10e71c6fb$export$ffd9e5021c1fb2d6 as useFocusVisible, $507fabe10e71c6fb$export$ec71b4b83ac08ec3 as useFocusVisibleListener};\n//# sourceMappingURL=useFocusVisible.module.js.map\n","import {getInteractionModality as $507fabe10e71c6fb$export$630ff653c5ada6a9} from \"./useFocusVisible.mjs\";\nimport {getOwnerDocument as $k50bp$getOwnerDocument, getActiveElement as $k50bp$getActiveElement, runAfterTransition as $k50bp$runAfterTransition, focusWithoutScrolling as $k50bp$focusWithoutScrolling} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the 'License');\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $3ad3f6e1647bc98d$export$80f3e147d781571c(element) {\n // If the user is interacting with a virtual cursor, e.g. screen reader, then\n // wait until after any animated transitions that are currently occurring on\n // the page before shifting focus. This avoids issues with VoiceOver on iOS\n // causing the page to scroll when moving focus if the element is transitioning\n // from off the screen.\n const ownerDocument = (0, $k50bp$getOwnerDocument)(element);\n const activeElement = (0, $k50bp$getActiveElement)(ownerDocument);\n if ((0, $507fabe10e71c6fb$export$630ff653c5ada6a9)() === 'virtual') {\n let lastFocusedElement = activeElement;\n (0, $k50bp$runAfterTransition)(()=>{\n // If focus did not move and the element is still in the document, focus it.\n if ((0, $k50bp$getActiveElement)(ownerDocument) === lastFocusedElement && element.isConnected) (0, $k50bp$focusWithoutScrolling)(element);\n });\n } else (0, $k50bp$focusWithoutScrolling)(element);\n}\n\n\nexport {$3ad3f6e1647bc98d$export$80f3e147d781571c as focusSafely};\n//# sourceMappingURL=focusSafely.module.js.map\n","import {useSyntheticBlurEvent as $8a9cb279dc87e130$export$715c682d09d639cc} from \"./utils.mjs\";\nimport {useCallback as $hf0lj$useCallback} from \"react\";\nimport {getOwnerDocument as $hf0lj$getOwnerDocument, getActiveElement as $hf0lj$getActiveElement, getEventTarget as $hf0lj$getEventTarget} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\nfunction $a1ea59d68270f0dd$export$f8168d8dd8fd66e6(props) {\n let { isDisabled: isDisabled, onFocus: onFocusProp, onBlur: onBlurProp, onFocusChange: onFocusChange } = props;\n const onBlur = (0, $hf0lj$useCallback)((e)=>{\n if (e.target === e.currentTarget) {\n if (onBlurProp) onBlurProp(e);\n if (onFocusChange) onFocusChange(false);\n return true;\n }\n }, [\n onBlurProp,\n onFocusChange\n ]);\n const onSyntheticFocus = (0, $8a9cb279dc87e130$export$715c682d09d639cc)(onBlur);\n const onFocus = (0, $hf0lj$useCallback)((e)=>{\n // Double check that document.activeElement actually matches e.target in case a previously chained\n // focus handler already moved focus somewhere else.\n const ownerDocument = (0, $hf0lj$getOwnerDocument)(e.target);\n const activeElement = ownerDocument ? (0, $hf0lj$getActiveElement)(ownerDocument) : (0, $hf0lj$getActiveElement)();\n if (e.target === e.currentTarget && activeElement === (0, $hf0lj$getEventTarget)(e.nativeEvent)) {\n if (onFocusProp) onFocusProp(e);\n if (onFocusChange) onFocusChange(true);\n onSyntheticFocus(e);\n }\n }, [\n onFocusChange,\n onFocusProp,\n onSyntheticFocus\n ]);\n return {\n focusProps: {\n onFocus: !isDisabled && (onFocusProp || onFocusChange || onBlurProp) ? onFocus : undefined,\n onBlur: !isDisabled && (onBlurProp || onFocusChange) ? onBlur : undefined\n }\n };\n}\n\n\nexport {$a1ea59d68270f0dd$export$f8168d8dd8fd66e6 as useFocus};\n//# sourceMappingURL=useFocus.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ function $93925083ecbb358c$export$48d1ea6320830260(handler) {\n if (!handler) return undefined;\n let shouldStopPropagation = true;\n return (e)=>{\n let event = {\n ...e,\n preventDefault () {\n e.preventDefault();\n },\n isDefaultPrevented () {\n return e.isDefaultPrevented();\n },\n stopPropagation () {\n if (shouldStopPropagation && process.env.NODE_ENV !== 'production') console.error('stopPropagation is now the default behavior for events in React Spectrum. You can use continuePropagation() to revert this behavior.');\n else shouldStopPropagation = true;\n },\n continuePropagation () {\n shouldStopPropagation = false;\n },\n isPropagationStopped () {\n return shouldStopPropagation;\n }\n };\n handler(event);\n if (shouldStopPropagation) e.stopPropagation();\n };\n}\n\n\nexport {$93925083ecbb358c$export$48d1ea6320830260 as createEventHandler};\n//# sourceMappingURL=createEventHandler.module.js.map\n","import {createEventHandler as $93925083ecbb358c$export$48d1ea6320830260} from \"./createEventHandler.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $46d819fcbaf35654$export$8f71654801c2f7cd(props) {\n return {\n keyboardProps: props.isDisabled ? {} : {\n onKeyDown: (0, $93925083ecbb358c$export$48d1ea6320830260)(props.onKeyDown),\n onKeyUp: (0, $93925083ecbb358c$export$48d1ea6320830260)(props.onKeyUp)\n }\n };\n}\n\n\nexport {$46d819fcbaf35654$export$8f71654801c2f7cd as useKeyboard};\n//# sourceMappingURL=useKeyboard.module.js.map\n","import {focusSafely as $3ad3f6e1647bc98d$export$80f3e147d781571c} from \"./focusSafely.mjs\";\nimport {useFocus as $a1ea59d68270f0dd$export$f8168d8dd8fd66e6} from \"./useFocus.mjs\";\nimport {useKeyboard as $46d819fcbaf35654$export$8f71654801c2f7cd} from \"./useKeyboard.mjs\";\nimport {useSyncRef as $fcPuG$useSyncRef, useObjectRef as $fcPuG$useObjectRef, mergeProps as $fcPuG$mergeProps, getOwnerWindow as $fcPuG$getOwnerWindow, isFocusable as $fcPuG$isFocusable, mergeRefs as $fcPuG$mergeRefs} from \"@react-aria/utils\";\nimport $fcPuG$react, {useContext as $fcPuG$useContext, useRef as $fcPuG$useRef, useEffect as $fcPuG$useEffect, forwardRef as $fcPuG$forwardRef} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nlet $f645667febf57a63$export$f9762fab77588ecb = /*#__PURE__*/ (0, $fcPuG$react).createContext(null);\nfunction $f645667febf57a63$var$useFocusableContext(ref) {\n let context = (0, $fcPuG$useContext)($f645667febf57a63$export$f9762fab77588ecb) || {};\n (0, $fcPuG$useSyncRef)(context, ref);\n // eslint-disable-next-line\n let { ref: _, ...otherProps } = context;\n return otherProps;\n}\nconst $f645667febf57a63$export$13f3202a3e5ddd5 = /*#__PURE__*/ (0, $fcPuG$react).forwardRef(function FocusableProvider(props, ref) {\n let { children: children, ...otherProps } = props;\n let objRef = (0, $fcPuG$useObjectRef)(ref);\n let context = {\n ...otherProps,\n ref: objRef\n };\n return /*#__PURE__*/ (0, $fcPuG$react).createElement($f645667febf57a63$export$f9762fab77588ecb.Provider, {\n value: context\n }, children);\n});\nfunction $f645667febf57a63$export$4c014de7c8940b4c(props, domRef) {\n let { focusProps: focusProps } = (0, $a1ea59d68270f0dd$export$f8168d8dd8fd66e6)(props);\n let { keyboardProps: keyboardProps } = (0, $46d819fcbaf35654$export$8f71654801c2f7cd)(props);\n let interactions = (0, $fcPuG$mergeProps)(focusProps, keyboardProps);\n let domProps = $f645667febf57a63$var$useFocusableContext(domRef);\n let interactionProps = props.isDisabled ? {} : domProps;\n let autoFocusRef = (0, $fcPuG$useRef)(props.autoFocus);\n (0, $fcPuG$useEffect)(()=>{\n if (autoFocusRef.current && domRef.current) (0, $3ad3f6e1647bc98d$export$80f3e147d781571c)(domRef.current);\n autoFocusRef.current = false;\n }, [\n domRef\n ]);\n // Always set a tabIndex so that Safari allows focusing native buttons and inputs.\n let tabIndex = props.excludeFromTabOrder ? -1 : 0;\n if (props.isDisabled) tabIndex = undefined;\n return {\n focusableProps: (0, $fcPuG$mergeProps)({\n ...interactions,\n tabIndex: tabIndex\n }, interactionProps)\n };\n}\nconst $f645667febf57a63$export$35a3bebf7ef2d934 = /*#__PURE__*/ (0, $fcPuG$forwardRef)(({ children: children, ...props }, ref)=>{\n ref = (0, $fcPuG$useObjectRef)(ref);\n let { focusableProps: focusableProps } = $f645667febf57a63$export$4c014de7c8940b4c(props, ref);\n let child = (0, $fcPuG$react).Children.only(children);\n (0, $fcPuG$useEffect)(()=>{\n if (process.env.NODE_ENV === 'production') return;\n let el = ref.current;\n if (!el || !(el instanceof (0, $fcPuG$getOwnerWindow)(el).Element)) {\n console.error('<Focusable> child must forward its ref to a DOM element.');\n return;\n }\n if (!props.isDisabled && !(0, $fcPuG$isFocusable)(el)) {\n console.warn('<Focusable> child must be focusable. Please ensure the tabIndex prop is passed through.');\n return;\n }\n if (el.localName !== 'button' && el.localName !== 'input' && el.localName !== 'select' && el.localName !== 'textarea' && el.localName !== 'a' && el.localName !== 'area' && el.localName !== 'summary' && el.localName !== 'img' && el.localName !== 'svg') {\n let role = el.getAttribute('role');\n if (!role) console.warn('<Focusable> child must have an interactive ARIA role.');\n else if (// https://w3c.github.io/aria/#widget_roles\n role !== 'application' && role !== 'button' && role !== 'checkbox' && role !== 'combobox' && role !== 'gridcell' && role !== 'link' && role !== 'menuitem' && role !== 'menuitemcheckbox' && role !== 'menuitemradio' && role !== 'option' && role !== 'radio' && role !== 'searchbox' && role !== 'separator' && role !== 'slider' && role !== 'spinbutton' && role !== 'switch' && role !== 'tab' && role !== 'tabpanel' && role !== 'textbox' && role !== 'treeitem' && // aria-describedby is also announced on these roles\n role !== 'img' && role !== 'meter' && role !== 'progressbar') console.warn(`<Focusable> child must have an interactive ARIA role. Got \"${role}\".`);\n }\n }, [\n ref,\n props.isDisabled\n ]);\n // @ts-ignore\n let childRef = parseInt((0, $fcPuG$react).version, 10) < 19 ? child.ref : child.props.ref;\n return /*#__PURE__*/ (0, $fcPuG$react).cloneElement(child, {\n ...(0, $fcPuG$mergeProps)(focusableProps, child.props),\n // @ts-ignore\n ref: (0, $fcPuG$mergeRefs)(childRef, ref)\n });\n});\n\n\nexport {$f645667febf57a63$export$f9762fab77588ecb as FocusableContext, $f645667febf57a63$export$13f3202a3e5ddd5 as FocusableProvider, $f645667febf57a63$export$4c014de7c8940b4c as useFocusable, $f645667febf57a63$export$35a3bebf7ef2d934 as Focusable};\n//# sourceMappingURL=useFocusable.module.js.map\n","import {createSyntheticEvent as $8a9cb279dc87e130$export$525bc4921d56d4a, setEventTarget as $8a9cb279dc87e130$export$c2b7abe5d61ec696, useSyntheticBlurEvent as $8a9cb279dc87e130$export$715c682d09d639cc} from \"./utils.mjs\";\nimport {useRef as $3b9Q0$useRef, useCallback as $3b9Q0$useCallback} from \"react\";\nimport {useGlobalListeners as $3b9Q0$useGlobalListeners, getOwnerDocument as $3b9Q0$getOwnerDocument, getActiveElement as $3b9Q0$getActiveElement, getEventTarget as $3b9Q0$getEventTarget, nodeContains as $3b9Q0$nodeContains} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // Portions of the code in this file are based on code from react.\n// Original licensing for the following can be found in the\n// NOTICE file in the root directory of this source tree.\n// See https://github.com/facebook/react/tree/cc7c1aece46a6b69b41958d731e0fd27c94bfc6c/packages/react-interactions\n\n\n\nfunction $9ab94262bd0047c7$export$420e68273165f4ec(props) {\n let { isDisabled: isDisabled, onBlurWithin: onBlurWithin, onFocusWithin: onFocusWithin, onFocusWithinChange: onFocusWithinChange } = props;\n let state = (0, $3b9Q0$useRef)({\n isFocusWithin: false\n });\n let { addGlobalListener: addGlobalListener, removeAllGlobalListeners: removeAllGlobalListeners } = (0, $3b9Q0$useGlobalListeners)();\n let onBlur = (0, $3b9Q0$useCallback)((e)=>{\n // Ignore events bubbling through portals.\n if (!e.currentTarget.contains(e.target)) return;\n // We don't want to trigger onBlurWithin and then immediately onFocusWithin again\n // when moving focus inside the element. Only trigger if the currentTarget doesn't\n // include the relatedTarget (where focus is moving).\n if (state.current.isFocusWithin && !e.currentTarget.contains(e.relatedTarget)) {\n state.current.isFocusWithin = false;\n removeAllGlobalListeners();\n if (onBlurWithin) onBlurWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(false);\n }\n }, [\n onBlurWithin,\n onFocusWithinChange,\n state,\n removeAllGlobalListeners\n ]);\n let onSyntheticFocus = (0, $8a9cb279dc87e130$export$715c682d09d639cc)(onBlur);\n let onFocus = (0, $3b9Q0$useCallback)((e)=>{\n // Ignore events bubbling through portals.\n if (!e.currentTarget.contains(e.target)) return;\n // Double check that document.activeElement actually matches e.target in case a previously chained\n // focus handler already moved focus somewhere else.\n const ownerDocument = (0, $3b9Q0$getOwnerDocument)(e.target);\n const activeElement = (0, $3b9Q0$getActiveElement)(ownerDocument);\n if (!state.current.isFocusWithin && activeElement === (0, $3b9Q0$getEventTarget)(e.nativeEvent)) {\n if (onFocusWithin) onFocusWithin(e);\n if (onFocusWithinChange) onFocusWithinChange(true);\n state.current.isFocusWithin = true;\n onSyntheticFocus(e);\n // Browsers don't fire blur events when elements are removed from the DOM.\n // However, if a focus event occurs outside the element we're tracking, we\n // can manually fire onBlur.\n let currentTarget = e.currentTarget;\n addGlobalListener(ownerDocument, 'focus', (e)=>{\n if (state.current.isFocusWithin && !(0, $3b9Q0$nodeContains)(currentTarget, e.target)) {\n let nativeEvent = new ownerDocument.defaultView.FocusEvent('blur', {\n relatedTarget: e.target\n });\n (0, $8a9cb279dc87e130$export$c2b7abe5d61ec696)(nativeEvent, currentTarget);\n let event = (0, $8a9cb279dc87e130$export$525bc4921d56d4a)(nativeEvent);\n onBlur(event);\n }\n }, {\n capture: true\n });\n }\n }, [\n onFocusWithin,\n onFocusWithinChange,\n onSyntheticFocus,\n addGlobalListener,\n onBlur\n ]);\n if (isDisabled) return {\n focusWithinProps: {\n // These cannot be null, that would conflict in mergeProps\n onFocus: undefined,\n onBlur: undefined\n }\n };\n return {\n focusWithinProps: {\n onFocus: onFocus,\n onBlur: onBlur\n }\n };\n}\n\n\nexport {$9ab94262bd0047c7$export$420e68273165f4ec as useFocusWithin};\n//# sourceMappingURL=useFocusWithin.module.js.map\n","import {useLayoutEffect as $cgawC$useLayoutEffect, getActiveElement as $cgawC$getActiveElement, getOwnerDocument as $cgawC$getOwnerDocument, getEventTarget as $cgawC$getEventTarget, isAndroid as $cgawC$isAndroid, isChrome as $cgawC$isChrome, isTabbable as $cgawC$isTabbable, isFocusable as $cgawC$isFocusable, createShadowTreeWalker as $cgawC$createShadowTreeWalker} from \"@react-aria/utils\";\nimport {getInteractionModality as $cgawC$getInteractionModality, focusSafely as $cgawC$focusSafely} from \"@react-aria/interactions\";\nimport $cgawC$react, {useRef as $cgawC$useRef, useContext as $cgawC$useContext, useMemo as $cgawC$useMemo, useEffect as $cgawC$useEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $9bf71ea28793e738$var$FocusContext = /*#__PURE__*/ (0, $cgawC$react).createContext(null);\nconst $9bf71ea28793e738$var$RESTORE_FOCUS_EVENT = 'react-aria-focus-scope-restore';\nlet $9bf71ea28793e738$var$activeScope = null;\nfunction $9bf71ea28793e738$export$20e40289641fbbb6(props) {\n let { children: children, contain: contain, restoreFocus: restoreFocus, autoFocus: autoFocus } = props;\n let startRef = (0, $cgawC$useRef)(null);\n let endRef = (0, $cgawC$useRef)(null);\n let scopeRef = (0, $cgawC$useRef)([]);\n let { parentNode: parentNode } = (0, $cgawC$useContext)($9bf71ea28793e738$var$FocusContext) || {};\n // Create a tree node here so we can add children to it even before it is added to the tree.\n let node = (0, $cgawC$useMemo)(()=>new $9bf71ea28793e738$var$TreeNode({\n scopeRef: scopeRef\n }), [\n scopeRef\n ]);\n (0, $cgawC$useLayoutEffect)(()=>{\n // If a new scope mounts outside the active scope, (e.g. DialogContainer launched from a menu),\n // use the active scope as the parent instead of the parent from context. Layout effects run bottom\n // up, so if the parent is not yet added to the tree, don't do this. Only the outer-most FocusScope\n // that is being added should get the activeScope as its parent.\n let parent = parentNode || $9bf71ea28793e738$export$d06fae2ee68b101e.root;\n if ($9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(parent.scopeRef) && $9bf71ea28793e738$var$activeScope && !$9bf71ea28793e738$var$isAncestorScope($9bf71ea28793e738$var$activeScope, parent.scopeRef)) {\n let activeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode($9bf71ea28793e738$var$activeScope);\n if (activeNode) parent = activeNode;\n }\n // Add the node to the parent, and to the tree.\n parent.addChild(node);\n $9bf71ea28793e738$export$d06fae2ee68b101e.addNode(node);\n }, [\n node,\n parentNode\n ]);\n (0, $cgawC$useLayoutEffect)(()=>{\n let node = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);\n if (node) node.contain = !!contain;\n }, [\n contain\n ]);\n (0, $cgawC$useLayoutEffect)(()=>{\n var _startRef_current;\n // Find all rendered nodes between the sentinels and add them to the scope.\n let node = (_startRef_current = startRef.current) === null || _startRef_current === void 0 ? void 0 : _startRef_current.nextSibling;\n let nodes = [];\n let stopPropagation = (e)=>e.stopPropagation();\n while(node && node !== endRef.current){\n nodes.push(node);\n // Stop custom restore focus event from propagating to parent focus scopes.\n node.addEventListener($9bf71ea28793e738$var$RESTORE_FOCUS_EVENT, stopPropagation);\n node = node.nextSibling;\n }\n scopeRef.current = nodes;\n return ()=>{\n for (let node of nodes)node.removeEventListener($9bf71ea28793e738$var$RESTORE_FOCUS_EVENT, stopPropagation);\n };\n }, [\n children\n ]);\n $9bf71ea28793e738$var$useActiveScopeTracker(scopeRef, restoreFocus, contain);\n $9bf71ea28793e738$var$useFocusContainment(scopeRef, contain);\n $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain);\n $9bf71ea28793e738$var$useAutoFocus(scopeRef, autoFocus);\n // This needs to be an effect so that activeScope is updated after the FocusScope tree is complete.\n // It cannot be a useLayoutEffect because the parent of this node hasn't been attached in the tree yet.\n (0, $cgawC$useEffect)(()=>{\n const activeElement = (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined));\n let scope = null;\n if ($9bf71ea28793e738$var$isElementInScope(activeElement, scopeRef.current)) {\n // We need to traverse the focusScope tree and find the bottom most scope that\n // contains the active element and set that as the activeScope.\n for (let node of $9bf71ea28793e738$export$d06fae2ee68b101e.traverse())if (node.scopeRef && $9bf71ea28793e738$var$isElementInScope(activeElement, node.scopeRef.current)) scope = node;\n if (scope === $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef)) $9bf71ea28793e738$var$activeScope = scope.scopeRef;\n }\n }, [\n scopeRef\n ]);\n // This layout effect cleanup is so that the tree node is removed synchronously with react before the RAF\n // in useRestoreFocus cleanup runs.\n (0, $cgawC$useLayoutEffect)(()=>{\n return ()=>{\n var _focusScopeTree_getTreeNode_parent, _focusScopeTree_getTreeNode;\n var _focusScopeTree_getTreeNode_parent_scopeRef;\n // Scope may have been re-parented.\n let parentScope = (_focusScopeTree_getTreeNode_parent_scopeRef = (_focusScopeTree_getTreeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef)) === null || _focusScopeTree_getTreeNode === void 0 ? void 0 : (_focusScopeTree_getTreeNode_parent = _focusScopeTree_getTreeNode.parent) === null || _focusScopeTree_getTreeNode_parent === void 0 ? void 0 : _focusScopeTree_getTreeNode_parent.scopeRef) !== null && _focusScopeTree_getTreeNode_parent_scopeRef !== void 0 ? _focusScopeTree_getTreeNode_parent_scopeRef : null;\n if ((scopeRef === $9bf71ea28793e738$var$activeScope || $9bf71ea28793e738$var$isAncestorScope(scopeRef, $9bf71ea28793e738$var$activeScope)) && (!parentScope || $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(parentScope))) $9bf71ea28793e738$var$activeScope = parentScope;\n $9bf71ea28793e738$export$d06fae2ee68b101e.removeTreeNode(scopeRef);\n };\n }, [\n scopeRef\n ]);\n let focusManager = (0, $cgawC$useMemo)(()=>$9bf71ea28793e738$var$createFocusManagerForScope(scopeRef), []);\n let value = (0, $cgawC$useMemo)(()=>({\n focusManager: focusManager,\n parentNode: node\n }), [\n node,\n focusManager\n ]);\n return /*#__PURE__*/ (0, $cgawC$react).createElement($9bf71ea28793e738$var$FocusContext.Provider, {\n value: value\n }, /*#__PURE__*/ (0, $cgawC$react).createElement(\"span\", {\n \"data-focus-scope-start\": true,\n hidden: true,\n ref: startRef\n }), children, /*#__PURE__*/ (0, $cgawC$react).createElement(\"span\", {\n \"data-focus-scope-end\": true,\n hidden: true,\n ref: endRef\n }));\n}\nfunction $9bf71ea28793e738$export$10c5169755ce7bd7() {\n var _useContext;\n return (_useContext = (0, $cgawC$useContext)($9bf71ea28793e738$var$FocusContext)) === null || _useContext === void 0 ? void 0 : _useContext.focusManager;\n}\nfunction $9bf71ea28793e738$var$createFocusManagerForScope(scopeRef) {\n return {\n focusNext (opts = {}) {\n let scope = scopeRef.current;\n let { from: from, tabbable: tabbable, wrap: wrap, accept: accept } = opts;\n var _scope_;\n let node = from || (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)((_scope_ = scope[0]) !== null && _scope_ !== void 0 ? _scope_ : undefined));\n let sentinel = scope[0].previousElementSibling;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable,\n accept: accept\n }, scope);\n walker.currentNode = $9bf71ea28793e738$var$isElementInScope(node, scope) ? node : sentinel;\n let nextNode = walker.nextNode();\n if (!nextNode && wrap) {\n walker.currentNode = sentinel;\n nextNode = walker.nextNode();\n }\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusPrevious (opts = {}) {\n let scope = scopeRef.current;\n let { from: from, tabbable: tabbable, wrap: wrap, accept: accept } = opts;\n var _scope_;\n let node = from || (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)((_scope_ = scope[0]) !== null && _scope_ !== void 0 ? _scope_ : undefined));\n let sentinel = scope[scope.length - 1].nextElementSibling;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable,\n accept: accept\n }, scope);\n walker.currentNode = $9bf71ea28793e738$var$isElementInScope(node, scope) ? node : sentinel;\n let previousNode = walker.previousNode();\n if (!previousNode && wrap) {\n walker.currentNode = sentinel;\n previousNode = walker.previousNode();\n }\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode;\n },\n focusFirst (opts = {}) {\n let scope = scopeRef.current;\n let { tabbable: tabbable, accept: accept } = opts;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable,\n accept: accept\n }, scope);\n walker.currentNode = scope[0].previousElementSibling;\n let nextNode = walker.nextNode();\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusLast (opts = {}) {\n let scope = scopeRef.current;\n let { tabbable: tabbable, accept: accept } = opts;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable,\n accept: accept\n }, scope);\n walker.currentNode = scope[scope.length - 1].nextElementSibling;\n let previousNode = walker.previousNode();\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode;\n }\n };\n}\nfunction $9bf71ea28793e738$var$getScopeRoot(scope) {\n return scope[0].parentElement;\n}\nfunction $9bf71ea28793e738$var$shouldContainFocus(scopeRef) {\n let scope = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode($9bf71ea28793e738$var$activeScope);\n while(scope && scope.scopeRef !== scopeRef){\n if (scope.contain) return false;\n scope = scope.parent;\n }\n return true;\n}\nfunction $9bf71ea28793e738$var$isTabbableRadio(element) {\n if (element.checked) return true;\n let radios = [];\n if (!element.form) radios = [\n ...(0, $cgawC$getOwnerDocument)(element).querySelectorAll(`input[type=\"radio\"][name=\"${CSS.escape(element.name)}\"]`)\n ].filter((radio)=>!radio.form);\n else {\n var _element_form_elements, _element_form;\n let radioList = (_element_form = element.form) === null || _element_form === void 0 ? void 0 : (_element_form_elements = _element_form.elements) === null || _element_form_elements === void 0 ? void 0 : _element_form_elements.namedItem(element.name);\n radios = [\n ...radioList !== null && radioList !== void 0 ? radioList : []\n ];\n }\n if (!radios) return false;\n let anyChecked = radios.some((radio)=>radio.checked);\n return !anyChecked;\n}\nfunction $9bf71ea28793e738$var$useFocusContainment(scopeRef, contain) {\n let focusedNode = (0, $cgawC$useRef)(undefined);\n let raf = (0, $cgawC$useRef)(undefined);\n (0, $cgawC$useLayoutEffect)(()=>{\n let scope = scopeRef.current;\n if (!contain) {\n // if contain was changed, then we should cancel any ongoing waits to pull focus back into containment\n if (raf.current) {\n cancelAnimationFrame(raf.current);\n raf.current = undefined;\n }\n return;\n }\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scope ? scope[0] : undefined);\n // Handle the Tab key to contain focus within the scope\n let onKeyDown = (e)=>{\n if (e.key !== 'Tab' || e.altKey || e.ctrlKey || e.metaKey || !$9bf71ea28793e738$var$shouldContainFocus(scopeRef) || e.isComposing) return;\n let focusedElement = (0, $cgawC$getActiveElement)(ownerDocument);\n let scope = scopeRef.current;\n if (!scope || !$9bf71ea28793e738$var$isElementInScope(focusedElement, scope)) return;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: true\n }, scope);\n if (!focusedElement) return;\n walker.currentNode = focusedElement;\n let nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n if (!nextElement) {\n walker.currentNode = e.shiftKey ? scope[scope.length - 1].nextElementSibling : scope[0].previousElementSibling;\n nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n }\n e.preventDefault();\n if (nextElement) $9bf71ea28793e738$var$focusElement(nextElement, true);\n };\n let onFocus = (e)=>{\n // If focusing an element in a child scope of the currently active scope, the child becomes active.\n // Moving out of the active scope to an ancestor is not allowed.\n if ((!$9bf71ea28793e738$var$activeScope || $9bf71ea28793e738$var$isAncestorScope($9bf71ea28793e738$var$activeScope, scopeRef)) && $9bf71ea28793e738$var$isElementInScope((0, $cgawC$getEventTarget)(e), scopeRef.current)) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n focusedNode.current = (0, $cgawC$getEventTarget)(e);\n } else if ($9bf71ea28793e738$var$shouldContainFocus(scopeRef) && !$9bf71ea28793e738$var$isElementInChildScope((0, $cgawC$getEventTarget)(e), scopeRef)) {\n // If a focus event occurs outside the active scope (e.g. user tabs from browser location bar),\n // restore focus to the previously focused node or the first tabbable element in the active scope.\n if (focusedNode.current) focusedNode.current.focus();\n else if ($9bf71ea28793e738$var$activeScope && $9bf71ea28793e738$var$activeScope.current) $9bf71ea28793e738$var$focusFirstInScope($9bf71ea28793e738$var$activeScope.current);\n } else if ($9bf71ea28793e738$var$shouldContainFocus(scopeRef)) focusedNode.current = (0, $cgawC$getEventTarget)(e);\n };\n let onBlur = (e)=>{\n // Firefox doesn't shift focus back to the Dialog properly without this\n if (raf.current) cancelAnimationFrame(raf.current);\n raf.current = requestAnimationFrame(()=>{\n // Patches infinite focus coersion loop for Android Talkback where the user isn't able to move the virtual cursor\n // if within a containing focus scope. Bug filed against Chrome: https://issuetracker.google.com/issues/384844019.\n // Note that this means focus can leave focus containing modals due to this, but it is isolated to Chrome Talkback.\n let modality = (0, $cgawC$getInteractionModality)();\n let shouldSkipFocusRestore = (modality === 'virtual' || modality === null) && (0, $cgawC$isAndroid)() && (0, $cgawC$isChrome)();\n // Use document.activeElement instead of e.relatedTarget so we can tell if user clicked into iframe\n let activeElement = (0, $cgawC$getActiveElement)(ownerDocument);\n if (!shouldSkipFocusRestore && activeElement && $9bf71ea28793e738$var$shouldContainFocus(scopeRef) && !$9bf71ea28793e738$var$isElementInChildScope(activeElement, scopeRef)) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n let target = (0, $cgawC$getEventTarget)(e);\n if (target && target.isConnected) {\n var _focusedNode_current;\n focusedNode.current = target;\n (_focusedNode_current = focusedNode.current) === null || _focusedNode_current === void 0 ? void 0 : _focusedNode_current.focus();\n } else if ($9bf71ea28793e738$var$activeScope.current) $9bf71ea28793e738$var$focusFirstInScope($9bf71ea28793e738$var$activeScope.current);\n }\n });\n };\n ownerDocument.addEventListener('keydown', onKeyDown, false);\n ownerDocument.addEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.addEventListener('focusin', onFocus, false));\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.addEventListener('focusout', onBlur, false));\n return ()=>{\n ownerDocument.removeEventListener('keydown', onKeyDown, false);\n ownerDocument.removeEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.removeEventListener('focusin', onFocus, false));\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.removeEventListener('focusout', onBlur, false));\n };\n }, [\n scopeRef,\n contain\n ]);\n // This is a useLayoutEffect so it is guaranteed to run before our async synthetic blur\n (0, $cgawC$useLayoutEffect)(()=>{\n return ()=>{\n if (raf.current) cancelAnimationFrame(raf.current);\n };\n }, [\n raf\n ]);\n}\nfunction $9bf71ea28793e738$var$isElementInAnyScope(element) {\n return $9bf71ea28793e738$var$isElementInChildScope(element);\n}\nfunction $9bf71ea28793e738$var$isElementInScope(element, scope) {\n if (!element) return false;\n if (!scope) return false;\n return scope.some((node)=>node.contains(element));\n}\nfunction $9bf71ea28793e738$var$isElementInChildScope(element, scope = null) {\n // If the element is within a top layer element (e.g. toasts), always allow moving focus there.\n if (element instanceof Element && element.closest('[data-react-aria-top-layer]')) return true;\n // node.contains in isElementInScope covers child scopes that are also DOM children,\n // but does not cover child scopes in portals.\n for (let { scopeRef: s } of $9bf71ea28793e738$export$d06fae2ee68b101e.traverse($9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scope))){\n if (s && $9bf71ea28793e738$var$isElementInScope(element, s.current)) return true;\n }\n return false;\n}\nfunction $9bf71ea28793e738$export$1258395f99bf9cbf(element) {\n return $9bf71ea28793e738$var$isElementInChildScope(element, $9bf71ea28793e738$var$activeScope);\n}\nfunction $9bf71ea28793e738$var$isAncestorScope(ancestor, scope) {\n var _focusScopeTree_getTreeNode;\n let parent = (_focusScopeTree_getTreeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scope)) === null || _focusScopeTree_getTreeNode === void 0 ? void 0 : _focusScopeTree_getTreeNode.parent;\n while(parent){\n if (parent.scopeRef === ancestor) return true;\n parent = parent.parent;\n }\n return false;\n}\nfunction $9bf71ea28793e738$var$focusElement(element, scroll = false) {\n if (element != null && !scroll) try {\n (0, $cgawC$focusSafely)(element);\n } catch {\n // ignore\n }\n else if (element != null) try {\n element.focus();\n } catch {\n // ignore\n }\n}\nfunction $9bf71ea28793e738$var$getFirstInScope(scope, tabbable = true) {\n let sentinel = scope[0].previousElementSibling;\n let scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: tabbable\n }, scope);\n walker.currentNode = sentinel;\n let nextNode = walker.nextNode();\n // If the scope does not contain a tabbable element, use the first focusable element.\n if (tabbable && !nextNode) {\n scopeRoot = $9bf71ea28793e738$var$getScopeRoot(scope);\n walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(scopeRoot, {\n tabbable: false\n }, scope);\n walker.currentNode = sentinel;\n nextNode = walker.nextNode();\n }\n return nextNode;\n}\nfunction $9bf71ea28793e738$var$focusFirstInScope(scope, tabbable = true) {\n $9bf71ea28793e738$var$focusElement($9bf71ea28793e738$var$getFirstInScope(scope, tabbable));\n}\nfunction $9bf71ea28793e738$var$useAutoFocus(scopeRef, autoFocus) {\n const autoFocusRef = (0, $cgawC$react).useRef(autoFocus);\n (0, $cgawC$useEffect)(()=>{\n if (autoFocusRef.current) {\n $9bf71ea28793e738$var$activeScope = scopeRef;\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined);\n if (!$9bf71ea28793e738$var$isElementInScope((0, $cgawC$getActiveElement)(ownerDocument), $9bf71ea28793e738$var$activeScope.current) && scopeRef.current) $9bf71ea28793e738$var$focusFirstInScope(scopeRef.current);\n }\n autoFocusRef.current = false;\n }, [\n scopeRef\n ]);\n}\nfunction $9bf71ea28793e738$var$useActiveScopeTracker(scopeRef, restore, contain) {\n // tracks the active scope, in case restore and contain are both false.\n // if either are true, this is tracked in useRestoreFocus or useFocusContainment.\n (0, $cgawC$useLayoutEffect)(()=>{\n if (restore || contain) return;\n let scope = scopeRef.current;\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scope ? scope[0] : undefined);\n let onFocus = (e)=>{\n let target = (0, $cgawC$getEventTarget)(e);\n if ($9bf71ea28793e738$var$isElementInScope(target, scopeRef.current)) $9bf71ea28793e738$var$activeScope = scopeRef;\n else if (!$9bf71ea28793e738$var$isElementInAnyScope(target)) $9bf71ea28793e738$var$activeScope = null;\n };\n ownerDocument.addEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.addEventListener('focusin', onFocus, false));\n return ()=>{\n ownerDocument.removeEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.removeEventListener('focusin', onFocus, false));\n };\n }, [\n scopeRef,\n restore,\n contain\n ]);\n}\nfunction $9bf71ea28793e738$var$shouldRestoreFocus(scopeRef) {\n let scope = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode($9bf71ea28793e738$var$activeScope);\n while(scope && scope.scopeRef !== scopeRef){\n if (scope.nodeToRestore) return false;\n scope = scope.parent;\n }\n return (scope === null || scope === void 0 ? void 0 : scope.scopeRef) === scopeRef;\n}\nfunction $9bf71ea28793e738$var$useRestoreFocus(scopeRef, restoreFocus, contain) {\n // create a ref during render instead of useLayoutEffect so the active element is saved before a child with autoFocus=true mounts.\n // eslint-disable-next-line no-restricted-globals\n const nodeToRestoreRef = (0, $cgawC$useRef)(typeof document !== 'undefined' ? (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined)) : null);\n // restoring scopes should all track if they are active regardless of contain, but contain already tracks it plus logic to contain the focus\n // restoring-non-containing scopes should only care if they become active so they can perform the restore\n (0, $cgawC$useLayoutEffect)(()=>{\n let scope = scopeRef.current;\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scope ? scope[0] : undefined);\n if (!restoreFocus || contain) return;\n let onFocus = ()=>{\n // If focusing an element in a child scope of the currently active scope, the child becomes active.\n // Moving out of the active scope to an ancestor is not allowed.\n if ((!$9bf71ea28793e738$var$activeScope || $9bf71ea28793e738$var$isAncestorScope($9bf71ea28793e738$var$activeScope, scopeRef)) && $9bf71ea28793e738$var$isElementInScope((0, $cgawC$getActiveElement)(ownerDocument), scopeRef.current)) $9bf71ea28793e738$var$activeScope = scopeRef;\n };\n ownerDocument.addEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.addEventListener('focusin', onFocus, false));\n return ()=>{\n ownerDocument.removeEventListener('focusin', onFocus, false);\n scope === null || scope === void 0 ? void 0 : scope.forEach((element)=>element.removeEventListener('focusin', onFocus, false));\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n scopeRef,\n contain\n ]);\n (0, $cgawC$useLayoutEffect)(()=>{\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined);\n if (!restoreFocus) return;\n // Handle the Tab key so that tabbing out of the scope goes to the next element\n // after the node that had focus when the scope mounted. This is important when\n // using portals for overlays, so that focus goes to the expected element when\n // tabbing out of the overlay.\n let onKeyDown = (e)=>{\n if (e.key !== 'Tab' || e.altKey || e.ctrlKey || e.metaKey || !$9bf71ea28793e738$var$shouldContainFocus(scopeRef) || e.isComposing) return;\n let focusedElement = ownerDocument.activeElement;\n if (!$9bf71ea28793e738$var$isElementInChildScope(focusedElement, scopeRef) || !$9bf71ea28793e738$var$shouldRestoreFocus(scopeRef)) return;\n let treeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);\n if (!treeNode) return;\n let nodeToRestore = treeNode.nodeToRestore;\n // Create a DOM tree walker that matches all tabbable elements\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(ownerDocument.body, {\n tabbable: true\n });\n // Find the next tabbable element after the currently focused element\n walker.currentNode = focusedElement;\n let nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n if (!nodeToRestore || !nodeToRestore.isConnected || nodeToRestore === ownerDocument.body) {\n nodeToRestore = undefined;\n treeNode.nodeToRestore = undefined;\n }\n // If there is no next element, or it is outside the current scope, move focus to the\n // next element after the node to restore to instead.\n if ((!nextElement || !$9bf71ea28793e738$var$isElementInChildScope(nextElement, scopeRef)) && nodeToRestore) {\n walker.currentNode = nodeToRestore;\n // Skip over elements within the scope, in case the scope immediately follows the node to restore.\n do nextElement = e.shiftKey ? walker.previousNode() : walker.nextNode();\n while ($9bf71ea28793e738$var$isElementInChildScope(nextElement, scopeRef));\n e.preventDefault();\n e.stopPropagation();\n if (nextElement) $9bf71ea28793e738$var$focusElement(nextElement, true);\n else // If there is no next element and the nodeToRestore isn't within a FocusScope (i.e. we are leaving the top level focus scope)\n // then move focus to the body.\n // Otherwise restore focus to the nodeToRestore (e.g menu within a popover -> tabbing to close the menu should move focus to menu trigger)\n if (!$9bf71ea28793e738$var$isElementInAnyScope(nodeToRestore)) focusedElement.blur();\n else $9bf71ea28793e738$var$focusElement(nodeToRestore, true);\n }\n };\n if (!contain) ownerDocument.addEventListener('keydown', onKeyDown, true);\n return ()=>{\n if (!contain) ownerDocument.removeEventListener('keydown', onKeyDown, true);\n };\n }, [\n scopeRef,\n restoreFocus,\n contain\n ]);\n // useLayoutEffect instead of useEffect so the active element is saved synchronously instead of asynchronously.\n (0, $cgawC$useLayoutEffect)(()=>{\n const ownerDocument = (0, $cgawC$getOwnerDocument)(scopeRef.current ? scopeRef.current[0] : undefined);\n if (!restoreFocus) return;\n let treeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);\n if (!treeNode) return;\n var _nodeToRestoreRef_current;\n treeNode.nodeToRestore = (_nodeToRestoreRef_current = nodeToRestoreRef.current) !== null && _nodeToRestoreRef_current !== void 0 ? _nodeToRestoreRef_current : undefined;\n return ()=>{\n let treeNode = $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(scopeRef);\n if (!treeNode) return;\n let nodeToRestore = treeNode.nodeToRestore;\n // if we already lost focus to the body and this was the active scope, then we should attempt to restore\n let activeElement = (0, $cgawC$getActiveElement)(ownerDocument);\n if (restoreFocus && nodeToRestore && (activeElement && $9bf71ea28793e738$var$isElementInChildScope(activeElement, scopeRef) || activeElement === ownerDocument.body && $9bf71ea28793e738$var$shouldRestoreFocus(scopeRef))) {\n // freeze the focusScopeTree so it persists after the raf, otherwise during unmount nodes are removed from it\n let clonedTree = $9bf71ea28793e738$export$d06fae2ee68b101e.clone();\n requestAnimationFrame(()=>{\n // Only restore focus if we've lost focus to the body, the alternative is that focus has been purposefully moved elsewhere\n if (ownerDocument.activeElement === ownerDocument.body) {\n // look up the tree starting with our scope to find a nodeToRestore still in the DOM\n let treeNode = clonedTree.getTreeNode(scopeRef);\n while(treeNode){\n if (treeNode.nodeToRestore && treeNode.nodeToRestore.isConnected) {\n $9bf71ea28793e738$var$restoreFocusToElement(treeNode.nodeToRestore);\n return;\n }\n treeNode = treeNode.parent;\n }\n // If no nodeToRestore was found, focus the first element in the nearest\n // ancestor scope that is still in the tree.\n treeNode = clonedTree.getTreeNode(scopeRef);\n while(treeNode){\n if (treeNode.scopeRef && treeNode.scopeRef.current && $9bf71ea28793e738$export$d06fae2ee68b101e.getTreeNode(treeNode.scopeRef)) {\n let node = $9bf71ea28793e738$var$getFirstInScope(treeNode.scopeRef.current, true);\n $9bf71ea28793e738$var$restoreFocusToElement(node);\n return;\n }\n treeNode = treeNode.parent;\n }\n }\n });\n }\n };\n }, [\n scopeRef,\n restoreFocus\n ]);\n}\nfunction $9bf71ea28793e738$var$restoreFocusToElement(node) {\n // Dispatch a custom event that parent elements can intercept to customize focus restoration.\n // For example, virtualized collection components reuse DOM elements, so the original element\n // might still exist in the DOM but representing a different item.\n if (node.dispatchEvent(new CustomEvent($9bf71ea28793e738$var$RESTORE_FOCUS_EVENT, {\n bubbles: true,\n cancelable: true\n }))) $9bf71ea28793e738$var$focusElement(node);\n}\nfunction $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, opts, scope) {\n let filter = (opts === null || opts === void 0 ? void 0 : opts.tabbable) ? (0, $cgawC$isTabbable) : (0, $cgawC$isFocusable);\n // Ensure that root is an Element or fall back appropriately\n let rootElement = (root === null || root === void 0 ? void 0 : root.nodeType) === Node.ELEMENT_NODE ? root : null;\n // Determine the document to use\n let doc = (0, $cgawC$getOwnerDocument)(rootElement);\n // Create a TreeWalker, ensuring the root is an Element or Document\n let walker = (0, $cgawC$createShadowTreeWalker)(doc, root || doc, NodeFilter.SHOW_ELEMENT, {\n acceptNode (node) {\n var _opts_from;\n // Skip nodes inside the starting node.\n if (opts === null || opts === void 0 ? void 0 : (_opts_from = opts.from) === null || _opts_from === void 0 ? void 0 : _opts_from.contains(node)) return NodeFilter.FILTER_REJECT;\n if ((opts === null || opts === void 0 ? void 0 : opts.tabbable) && node.tagName === 'INPUT' && node.getAttribute('type') === 'radio') {\n // If the radio is in a form, we can get all the other radios by name\n if (!$9bf71ea28793e738$var$isTabbableRadio(node)) return NodeFilter.FILTER_REJECT;\n // If the radio is in the same group as the current node and none are selected, we can skip it\n if (walker.currentNode.tagName === 'INPUT' && walker.currentNode.type === 'radio' && walker.currentNode.name === node.name) return NodeFilter.FILTER_REJECT;\n }\n if (filter(node) && (!scope || $9bf71ea28793e738$var$isElementInScope(node, scope)) && (!(opts === null || opts === void 0 ? void 0 : opts.accept) || opts.accept(node))) return NodeFilter.FILTER_ACCEPT;\n return NodeFilter.FILTER_SKIP;\n }\n });\n if (opts === null || opts === void 0 ? void 0 : opts.from) walker.currentNode = opts.from;\n return walker;\n}\nfunction $9bf71ea28793e738$export$c5251b9e124bf29(ref, defaultOptions = {}) {\n return {\n focusNext (opts = {}) {\n let root = ref.current;\n if (!root) return null;\n let { from: from, tabbable: tabbable = defaultOptions.tabbable, wrap: wrap = defaultOptions.wrap, accept: accept = defaultOptions.accept } = opts;\n let node = from || (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)(root));\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n if (root.contains(node)) walker.currentNode = node;\n let nextNode = walker.nextNode();\n if (!nextNode && wrap) {\n walker.currentNode = root;\n nextNode = walker.nextNode();\n }\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusPrevious (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return null;\n let { from: from, tabbable: tabbable = defaultOptions.tabbable, wrap: wrap = defaultOptions.wrap, accept: accept = defaultOptions.accept } = opts;\n let node = from || (0, $cgawC$getActiveElement)((0, $cgawC$getOwnerDocument)(root));\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n if (root.contains(node)) walker.currentNode = node;\n else {\n let next = $9bf71ea28793e738$var$last(walker);\n if (next) $9bf71ea28793e738$var$focusElement(next, true);\n return next !== null && next !== void 0 ? next : null;\n }\n let previousNode = walker.previousNode();\n if (!previousNode && wrap) {\n walker.currentNode = root;\n let lastNode = $9bf71ea28793e738$var$last(walker);\n if (!lastNode) // couldn't wrap\n return null;\n previousNode = lastNode;\n }\n if (previousNode) $9bf71ea28793e738$var$focusElement(previousNode, true);\n return previousNode !== null && previousNode !== void 0 ? previousNode : null;\n },\n focusFirst (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return null;\n let { tabbable: tabbable = defaultOptions.tabbable, accept: accept = defaultOptions.accept } = opts;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n let nextNode = walker.nextNode();\n if (nextNode) $9bf71ea28793e738$var$focusElement(nextNode, true);\n return nextNode;\n },\n focusLast (opts = defaultOptions) {\n let root = ref.current;\n if (!root) return null;\n let { tabbable: tabbable = defaultOptions.tabbable, accept: accept = defaultOptions.accept } = opts;\n let walker = $9bf71ea28793e738$export$2d6ec8fc375ceafa(root, {\n tabbable: tabbable,\n accept: accept\n });\n let next = $9bf71ea28793e738$var$last(walker);\n if (next) $9bf71ea28793e738$var$focusElement(next, true);\n return next !== null && next !== void 0 ? next : null;\n }\n };\n}\nfunction $9bf71ea28793e738$var$last(walker) {\n let next = undefined;\n let last;\n do {\n last = walker.lastChild();\n if (last) next = last;\n }while (last);\n return next;\n}\nclass $9bf71ea28793e738$var$Tree {\n get size() {\n return this.fastMap.size;\n }\n getTreeNode(data) {\n return this.fastMap.get(data);\n }\n addTreeNode(scopeRef, parent, nodeToRestore) {\n let parentNode = this.fastMap.get(parent !== null && parent !== void 0 ? parent : null);\n if (!parentNode) return;\n let node = new $9bf71ea28793e738$var$TreeNode({\n scopeRef: scopeRef\n });\n parentNode.addChild(node);\n node.parent = parentNode;\n this.fastMap.set(scopeRef, node);\n if (nodeToRestore) node.nodeToRestore = nodeToRestore;\n }\n addNode(node) {\n this.fastMap.set(node.scopeRef, node);\n }\n removeTreeNode(scopeRef) {\n // never remove the root\n if (scopeRef === null) return;\n let node = this.fastMap.get(scopeRef);\n if (!node) return;\n let parentNode = node.parent;\n // when we remove a scope, check if any sibling scopes are trying to restore focus to something inside the scope we're removing\n // if we are, then replace the siblings restore with the restore from the scope we're removing\n for (let current of this.traverse())if (current !== node && node.nodeToRestore && current.nodeToRestore && node.scopeRef && node.scopeRef.current && $9bf71ea28793e738$var$isElementInScope(current.nodeToRestore, node.scopeRef.current)) current.nodeToRestore = node.nodeToRestore;\n let children = node.children;\n if (parentNode) {\n parentNode.removeChild(node);\n if (children.size > 0) children.forEach((child)=>parentNode && parentNode.addChild(child));\n }\n this.fastMap.delete(node.scopeRef);\n }\n // Pre Order Depth First\n *traverse(node = this.root) {\n if (node.scopeRef != null) yield node;\n if (node.children.size > 0) for (let child of node.children)yield* this.traverse(child);\n }\n clone() {\n var _node_parent;\n let newTree = new $9bf71ea28793e738$var$Tree();\n var _node_parent_scopeRef;\n for (let node of this.traverse())newTree.addTreeNode(node.scopeRef, (_node_parent_scopeRef = (_node_parent = node.parent) === null || _node_parent === void 0 ? void 0 : _node_parent.scopeRef) !== null && _node_parent_scopeRef !== void 0 ? _node_parent_scopeRef : null, node.nodeToRestore);\n return newTree;\n }\n constructor(){\n this.fastMap = new Map();\n this.root = new $9bf71ea28793e738$var$TreeNode({\n scopeRef: null\n });\n this.fastMap.set(null, this.root);\n }\n}\nclass $9bf71ea28793e738$var$TreeNode {\n addChild(node) {\n this.children.add(node);\n node.parent = this;\n }\n removeChild(node) {\n this.children.delete(node);\n node.parent = undefined;\n }\n constructor(props){\n this.children = new Set();\n this.contain = false;\n this.scopeRef = props.scopeRef;\n }\n}\nlet $9bf71ea28793e738$export$d06fae2ee68b101e = new $9bf71ea28793e738$var$Tree();\n\n\nexport {$9bf71ea28793e738$export$20e40289641fbbb6 as FocusScope, $9bf71ea28793e738$export$d06fae2ee68b101e as focusScopeTree, $9bf71ea28793e738$export$10c5169755ce7bd7 as useFocusManager, $9bf71ea28793e738$export$2d6ec8fc375ceafa as getFocusableTreeWalker, $9bf71ea28793e738$export$1258395f99bf9cbf as isElementInChildOfActiveScope, $9bf71ea28793e738$export$c5251b9e124bf29 as createFocusManager};\n//# sourceMappingURL=FocusScope.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // https://en.wikipedia.org/wiki/Right-to-left\nconst $148a7a147e38ea7f$var$RTL_SCRIPTS = new Set([\n 'Arab',\n 'Syrc',\n 'Samr',\n 'Mand',\n 'Thaa',\n 'Mend',\n 'Nkoo',\n 'Adlm',\n 'Rohg',\n 'Hebr'\n]);\nconst $148a7a147e38ea7f$var$RTL_LANGS = new Set([\n 'ae',\n 'ar',\n 'arc',\n 'bcc',\n 'bqi',\n 'ckb',\n 'dv',\n 'fa',\n 'glk',\n 'he',\n 'ku',\n 'mzn',\n 'nqo',\n 'pnb',\n 'ps',\n 'sd',\n 'ug',\n 'ur',\n 'yi'\n]);\nfunction $148a7a147e38ea7f$export$702d680b21cbd764(localeString) {\n // If the Intl.Locale API is available, use it to get the locale's text direction.\n if (Intl.Locale) {\n let locale = new Intl.Locale(localeString).maximize();\n // Use the text info object to get the direction if possible.\n // @ts-ignore - this was implemented as a property by some browsers before it was standardized as a function.\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/getTextInfo\n let textInfo = typeof locale.getTextInfo === 'function' ? locale.getTextInfo() : locale.textInfo;\n if (textInfo) return textInfo.direction === 'rtl';\n // Fallback: guess using the script.\n // This is more accurate than guessing by language, since languages can be written in multiple scripts.\n if (locale.script) return $148a7a147e38ea7f$var$RTL_SCRIPTS.has(locale.script);\n }\n // If not, just guess by the language (first part of the locale)\n let lang = localeString.split('-')[0];\n return $148a7a147e38ea7f$var$RTL_LANGS.has(lang);\n}\n\n\nexport {$148a7a147e38ea7f$export$702d680b21cbd764 as isRTL};\n//# sourceMappingURL=utils.module.js.map\n","import {isRTL as $148a7a147e38ea7f$export$702d680b21cbd764} from \"./utils.mjs\";\nimport {useState as $ffhGL$useState, useEffect as $ffhGL$useEffect} from \"react\";\nimport {useIsSSR as $ffhGL$useIsSSR} from \"@react-aria/ssr\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n// Locale passed from server by PackageLocalizationProvider.\nconst $1e5a04cdaf7d1af8$var$localeSymbol = Symbol.for('react-aria.i18n.locale');\nfunction $1e5a04cdaf7d1af8$export$f09106e7c6677ec5() {\n let locale = typeof window !== 'undefined' && window[$1e5a04cdaf7d1af8$var$localeSymbol] || typeof navigator !== 'undefined' && (navigator.language || navigator.userLanguage) || 'en-US';\n try {\n Intl.DateTimeFormat.supportedLocalesOf([\n locale\n ]);\n } catch {\n locale = 'en-US';\n }\n return {\n locale: locale,\n direction: (0, $148a7a147e38ea7f$export$702d680b21cbd764)(locale) ? 'rtl' : 'ltr'\n };\n}\nlet $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\nlet $1e5a04cdaf7d1af8$var$listeners = new Set();\nfunction $1e5a04cdaf7d1af8$var$updateLocale() {\n $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\n for (let listener of $1e5a04cdaf7d1af8$var$listeners)listener($1e5a04cdaf7d1af8$var$currentLocale);\n}\nfunction $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a() {\n let isSSR = (0, $ffhGL$useIsSSR)();\n let [defaultLocale, setDefaultLocale] = (0, $ffhGL$useState)($1e5a04cdaf7d1af8$var$currentLocale);\n (0, $ffhGL$useEffect)(()=>{\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.addEventListener('languagechange', $1e5a04cdaf7d1af8$var$updateLocale);\n $1e5a04cdaf7d1af8$var$listeners.add(setDefaultLocale);\n return ()=>{\n $1e5a04cdaf7d1af8$var$listeners.delete(setDefaultLocale);\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.removeEventListener('languagechange', $1e5a04cdaf7d1af8$var$updateLocale);\n };\n }, []);\n // We cannot determine the browser's language on the server, so default to\n // en-US. This will be updated after hydration on the client to the correct value.\n if (isSSR) return {\n locale: 'en-US',\n direction: 'ltr'\n };\n return defaultLocale;\n}\n\n\nexport {$1e5a04cdaf7d1af8$export$f09106e7c6677ec5 as getDefaultLocale, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a as useDefaultLocale};\n//# sourceMappingURL=useDefaultLocale.module.js.map\n","import {isRTL as $148a7a147e38ea7f$export$702d680b21cbd764} from \"./utils.mjs\";\nimport {useDefaultLocale as $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a} from \"./useDefaultLocale.mjs\";\nimport $h9FiU$react, {useContext as $h9FiU$useContext} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $18f2051aff69b9bf$var$I18nContext = /*#__PURE__*/ (0, $h9FiU$react).createContext(null);\nfunction $18f2051aff69b9bf$export$a54013f0d02a8f82(props) {\n let { locale: locale, children: children } = props;\n let defaultLocale = (0, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a)();\n let value = (0, $h9FiU$react).useMemo(()=>{\n if (!locale) return defaultLocale;\n return {\n locale: locale,\n direction: (0, $148a7a147e38ea7f$export$702d680b21cbd764)(locale) ? 'rtl' : 'ltr'\n };\n }, [\n defaultLocale,\n locale\n ]);\n return /*#__PURE__*/ (0, $h9FiU$react).createElement($18f2051aff69b9bf$var$I18nContext.Provider, {\n value: value\n }, children);\n}\nfunction $18f2051aff69b9bf$export$43bb16f9c6d9e3f7() {\n let defaultLocale = (0, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a)();\n let context = (0, $h9FiU$useContext)($18f2051aff69b9bf$var$I18nContext);\n return context || defaultLocale;\n}\n\n\nexport {$18f2051aff69b9bf$export$a54013f0d02a8f82 as I18nProvider, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7 as useLocale};\n//# sourceMappingURL=context.module.js.map\n","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n 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;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nvar ownKeys = function(o) {\n ownKeys = Object.getOwnPropertyNames || function (o) {\n var ar = [];\n for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;\n return ar;\n };\n return ownKeys(o);\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== \"default\") __createBinding(result, mod, k[i]);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport function __rewriteRelativeImportExtension(path, preserveJsx) {\n if (typeof path === \"string\" && /^\\.\\.?\\//.test(path)) {\n return path.replace(/\\.(tsx)$|((?:\\.d)?)((?:\\.[^./]+?)?)\\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {\n return tsx ? preserveJsx ? \".jsx\" : \".js\" : d && (!ext || !cm) ? m : (d + ext + \".\" + cm.toLowerCase() + \"js\");\n });\n }\n return path;\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __esDecorate,\n __runInitializers,\n __propKey,\n __setFunctionName,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n __rewriteRelativeImportExtension,\n};\n","import {useLocale as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7} from \"./context.mjs\";\nimport {LocalizedStringDictionary as $6ksNp$LocalizedStringDictionary, LocalizedStringFormatter as $6ksNp$LocalizedStringFormatter} from \"@internationalized/string\";\nimport {useMemo as $6ksNp$useMemo} from \"react\";\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $fca6afa0e843324b$var$cache = new WeakMap();\nfunction $fca6afa0e843324b$var$getCachedDictionary(strings) {\n let dictionary = $fca6afa0e843324b$var$cache.get(strings);\n if (!dictionary) {\n dictionary = new (0, $6ksNp$LocalizedStringDictionary)(strings);\n $fca6afa0e843324b$var$cache.set(strings, dictionary);\n }\n return dictionary;\n}\nfunction $fca6afa0e843324b$export$87b761675e8eaa10(strings, packageName) {\n return packageName && (0, $6ksNp$LocalizedStringDictionary).getGlobalDictionaryForPackage(packageName) || $fca6afa0e843324b$var$getCachedDictionary(strings);\n}\nfunction $fca6afa0e843324b$export$f12b703ca79dfbb1(strings, packageName) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n let dictionary = $fca6afa0e843324b$export$87b761675e8eaa10(strings, packageName);\n return (0, $6ksNp$useMemo)(()=>new (0, $6ksNp$LocalizedStringFormatter)(locale, dictionary), [\n locale,\n dictionary\n ]);\n}\n\n\nexport {$fca6afa0e843324b$export$87b761675e8eaa10 as useLocalizedStringDictionary, $fca6afa0e843324b$export$f12b703ca79dfbb1 as useLocalizedStringFormatter};\n//# sourceMappingURL=useLocalizedStringFormatter.module.js.map\n","import {useLocale as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7} from \"./context.mjs\";\nimport {DateFormatter as $6wxND$DateFormatter} from \"@internationalized/date\";\nimport {useDeepMemo as $6wxND$useDeepMemo} from \"@react-aria/utils\";\nimport {useMemo as $6wxND$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $896ba0a80a8f4d36$export$85fd5fdf27bacc79(options) {\n // Reuse last options object if it is shallowly equal, which allows the useMemo result to also be reused.\n options = (0, $6wxND$useDeepMemo)(options !== null && options !== void 0 ? options : {}, $896ba0a80a8f4d36$var$isEqual);\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n return (0, $6wxND$useMemo)(()=>new (0, $6wxND$DateFormatter)(locale, options), [\n locale,\n options\n ]);\n}\nfunction $896ba0a80a8f4d36$var$isEqual(a, b) {\n if (a === b) return true;\n let aKeys = Object.keys(a);\n let bKeys = Object.keys(b);\n if (aKeys.length !== bKeys.length) return false;\n for (let key of aKeys){\n if (b[key] !== a[key]) return false;\n }\n return true;\n}\n\n\nexport {$896ba0a80a8f4d36$export$85fd5fdf27bacc79 as useDateFormatter};\n//# sourceMappingURL=useDateFormatter.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ let $488c6ddbf4ef74c2$var$formatterCache = new Map();\nlet $488c6ddbf4ef74c2$var$supportsSignDisplay = false;\ntry {\n $488c6ddbf4ef74c2$var$supportsSignDisplay = new Intl.NumberFormat('de-DE', {\n signDisplay: 'exceptZero'\n }).resolvedOptions().signDisplay === 'exceptZero';\n// eslint-disable-next-line no-empty\n} catch {}\nlet $488c6ddbf4ef74c2$var$supportsUnit = false;\ntry {\n $488c6ddbf4ef74c2$var$supportsUnit = new Intl.NumberFormat('de-DE', {\n style: 'unit',\n unit: 'degree'\n }).resolvedOptions().style === 'unit';\n// eslint-disable-next-line no-empty\n} catch {}\n// Polyfill for units since Safari doesn't support them yet. See https://bugs.webkit.org/show_bug.cgi?id=215438.\n// Currently only polyfilling the unit degree in narrow format for ColorSlider in our supported locales.\n// Values were determined by switching to each locale manually in Chrome.\nconst $488c6ddbf4ef74c2$var$UNITS = {\n degree: {\n narrow: {\n default: \"\\xb0\",\n 'ja-JP': \" \\u5EA6\",\n 'zh-TW': \"\\u5EA6\",\n 'sl-SI': \" \\xb0\"\n }\n }\n};\nclass $488c6ddbf4ef74c2$export$cc77c4ff7e8673c5 {\n /** Formats a number value as a string, according to the locale and options provided to the constructor. */ format(value) {\n let res = '';\n if (!$488c6ddbf4ef74c2$var$supportsSignDisplay && this.options.signDisplay != null) res = $488c6ddbf4ef74c2$export$711b50b3c525e0f2(this.numberFormatter, this.options.signDisplay, value);\n else res = this.numberFormatter.format(value);\n if (this.options.style === 'unit' && !$488c6ddbf4ef74c2$var$supportsUnit) {\n var _UNITS_unit;\n let { unit: unit, unitDisplay: unitDisplay = 'short', locale: locale } = this.resolvedOptions();\n if (!unit) return res;\n let values = (_UNITS_unit = $488c6ddbf4ef74c2$var$UNITS[unit]) === null || _UNITS_unit === void 0 ? void 0 : _UNITS_unit[unitDisplay];\n res += values[locale] || values.default;\n }\n return res;\n }\n /** Formats a number to an array of parts such as separators, digits, punctuation, and more. */ formatToParts(value) {\n // TODO: implement signDisplay for formatToParts\n return this.numberFormatter.formatToParts(value);\n }\n /** Formats a number range as a string. */ formatRange(start, end) {\n if (typeof this.numberFormatter.formatRange === 'function') return this.numberFormatter.formatRange(start, end);\n if (end < start) throw new RangeError('End date must be >= start date');\n // Very basic fallback for old browsers.\n return `${this.format(start)} \\u{2013} ${this.format(end)}`;\n }\n /** Formats a number range as an array of parts. */ formatRangeToParts(start, end) {\n if (typeof this.numberFormatter.formatRangeToParts === 'function') return this.numberFormatter.formatRangeToParts(start, end);\n if (end < start) throw new RangeError('End date must be >= start date');\n let startParts = this.numberFormatter.formatToParts(start);\n let endParts = this.numberFormatter.formatToParts(end);\n return [\n ...startParts.map((p)=>({\n ...p,\n source: 'startRange'\n })),\n {\n type: 'literal',\n value: \" \\u2013 \",\n source: 'shared'\n },\n ...endParts.map((p)=>({\n ...p,\n source: 'endRange'\n }))\n ];\n }\n /** Returns the resolved formatting options based on the values passed to the constructor. */ resolvedOptions() {\n let options = this.numberFormatter.resolvedOptions();\n if (!$488c6ddbf4ef74c2$var$supportsSignDisplay && this.options.signDisplay != null) options = {\n ...options,\n signDisplay: this.options.signDisplay\n };\n if (!$488c6ddbf4ef74c2$var$supportsUnit && this.options.style === 'unit') options = {\n ...options,\n style: 'unit',\n unit: this.options.unit,\n unitDisplay: this.options.unitDisplay\n };\n return options;\n }\n constructor(locale, options = {}){\n this.numberFormatter = $488c6ddbf4ef74c2$var$getCachedNumberFormatter(locale, options);\n this.options = options;\n }\n}\nfunction $488c6ddbf4ef74c2$var$getCachedNumberFormatter(locale, options = {}) {\n let { numberingSystem: numberingSystem } = options;\n if (numberingSystem && locale.includes('-nu-')) {\n if (!locale.includes('-u-')) locale += '-u-';\n locale += `-nu-${numberingSystem}`;\n }\n if (options.style === 'unit' && !$488c6ddbf4ef74c2$var$supportsUnit) {\n var _UNITS_unit;\n let { unit: unit, unitDisplay: unitDisplay = 'short' } = options;\n if (!unit) throw new Error('unit option must be provided with style: \"unit\"');\n if (!((_UNITS_unit = $488c6ddbf4ef74c2$var$UNITS[unit]) === null || _UNITS_unit === void 0 ? void 0 : _UNITS_unit[unitDisplay])) throw new Error(`Unsupported unit ${unit} with unitDisplay = ${unitDisplay}`);\n options = {\n ...options,\n style: 'decimal'\n };\n }\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b)=>a[0] < b[0] ? -1 : 1).join() : '');\n if ($488c6ddbf4ef74c2$var$formatterCache.has(cacheKey)) return $488c6ddbf4ef74c2$var$formatterCache.get(cacheKey);\n let numberFormatter = new Intl.NumberFormat(locale, options);\n $488c6ddbf4ef74c2$var$formatterCache.set(cacheKey, numberFormatter);\n return numberFormatter;\n}\nfunction $488c6ddbf4ef74c2$export$711b50b3c525e0f2(numberFormat, signDisplay, num) {\n if (signDisplay === 'auto') return numberFormat.format(num);\n else if (signDisplay === 'never') return numberFormat.format(Math.abs(num));\n else {\n let needsPositiveSign = false;\n if (signDisplay === 'always') needsPositiveSign = num > 0 || Object.is(num, 0);\n else if (signDisplay === 'exceptZero') {\n if (Object.is(num, -0) || Object.is(num, 0)) num = Math.abs(num);\n else needsPositiveSign = num > 0;\n }\n if (needsPositiveSign) {\n let negative = numberFormat.format(-num);\n let noSign = numberFormat.format(num);\n // ignore RTL/LTR marker character\n let minus = negative.replace(noSign, '').replace(/\\u200e|\\u061C/, '');\n if ([\n ...minus\n ].length !== 1) console.warn('@react-aria/i18n polyfill for NumberFormat signDisplay: Unsupported case');\n let positive = negative.replace(noSign, '!!!').replace(minus, '+').replace('!!!', noSign);\n return positive;\n } else return numberFormat.format(num);\n }\n}\n\n\nexport {$488c6ddbf4ef74c2$export$cc77c4ff7e8673c5 as NumberFormatter, $488c6ddbf4ef74c2$export$711b50b3c525e0f2 as numberFormatSignDisplayPolyfill};\n//# sourceMappingURL=NumberFormatter.module.js.map\n","import {NumberFormatter as $488c6ddbf4ef74c2$export$cc77c4ff7e8673c5} from \"./NumberFormatter.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nconst $6c7bd7858deea686$var$CURRENCY_SIGN_REGEX = new RegExp('^.*\\\\(.*\\\\).*$');\nconst $6c7bd7858deea686$var$NUMBERING_SYSTEMS = [\n 'latn',\n 'arab',\n 'hanidec',\n 'deva',\n 'beng',\n 'fullwide'\n];\nclass $6c7bd7858deea686$export$cd11ab140839f11d {\n /**\n * Parses the given string to a number. Returns NaN if a valid number could not be parsed.\n */ parse(value) {\n return $6c7bd7858deea686$var$getNumberParserImpl(this.locale, this.options, value).parse(value);\n }\n /**\n * Returns whether the given string could potentially be a valid number. This should be used to\n * validate user input as the user types. If a `minValue` or `maxValue` is provided, the validity\n * of the minus/plus sign characters can be checked.\n */ isValidPartialNumber(value, minValue, maxValue) {\n return $6c7bd7858deea686$var$getNumberParserImpl(this.locale, this.options, value).isValidPartialNumber(value, minValue, maxValue);\n }\n /**\n * Returns a numbering system for which the given string is valid in the current locale.\n * If no numbering system could be detected, the default numbering system for the current\n * locale is returned.\n */ getNumberingSystem(value) {\n return $6c7bd7858deea686$var$getNumberParserImpl(this.locale, this.options, value).options.numberingSystem;\n }\n constructor(locale, options = {}){\n this.locale = locale;\n this.options = options;\n }\n}\nconst $6c7bd7858deea686$var$numberParserCache = new Map();\nfunction $6c7bd7858deea686$var$getNumberParserImpl(locale, options, value) {\n // First try the default numbering system for the provided locale\n let defaultParser = $6c7bd7858deea686$var$getCachedNumberParser(locale, options);\n // If that doesn't match, and the locale doesn't include a hard coded numbering system,\n // try each of the other supported numbering systems until we find one that matches.\n if (!locale.includes('-nu-') && !defaultParser.isValidPartialNumber(value)) {\n for (let numberingSystem of $6c7bd7858deea686$var$NUMBERING_SYSTEMS)if (numberingSystem !== defaultParser.options.numberingSystem) {\n let parser = $6c7bd7858deea686$var$getCachedNumberParser(locale + (locale.includes('-u-') ? '-nu-' : '-u-nu-') + numberingSystem, options);\n if (parser.isValidPartialNumber(value)) return parser;\n }\n }\n return defaultParser;\n}\nfunction $6c7bd7858deea686$var$getCachedNumberParser(locale, options) {\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b)=>a[0] < b[0] ? -1 : 1).join() : '');\n let parser = $6c7bd7858deea686$var$numberParserCache.get(cacheKey);\n if (!parser) {\n parser = new $6c7bd7858deea686$var$NumberParserImpl(locale, options);\n $6c7bd7858deea686$var$numberParserCache.set(cacheKey, parser);\n }\n return parser;\n}\n// The actual number parser implementation. Instances of this class are cached\n// based on the locale, options, and detected numbering system.\nclass $6c7bd7858deea686$var$NumberParserImpl {\n parse(value) {\n // to parse the number, we need to remove anything that isn't actually part of the number, for example we want '-10.40' not '-10.40 USD'\n let fullySanitizedValue = this.sanitize(value);\n if (this.symbols.group) // Remove group characters, and replace decimal points and numerals with ASCII values.\n fullySanitizedValue = $6c7bd7858deea686$var$replaceAll(fullySanitizedValue, this.symbols.group, '');\n if (this.symbols.decimal) fullySanitizedValue = fullySanitizedValue.replace(this.symbols.decimal, '.');\n if (this.symbols.minusSign) fullySanitizedValue = fullySanitizedValue.replace(this.symbols.minusSign, '-');\n fullySanitizedValue = fullySanitizedValue.replace(this.symbols.numeral, this.symbols.index);\n if (this.options.style === 'percent') {\n // javascript is bad at dividing by 100 and maintaining the same significant figures, so perform it on the string before parsing\n let isNegative = fullySanitizedValue.indexOf('-');\n fullySanitizedValue = fullySanitizedValue.replace('-', '');\n fullySanitizedValue = fullySanitizedValue.replace('+', '');\n let index = fullySanitizedValue.indexOf('.');\n if (index === -1) index = fullySanitizedValue.length;\n fullySanitizedValue = fullySanitizedValue.replace('.', '');\n if (index - 2 === 0) fullySanitizedValue = `0.${fullySanitizedValue}`;\n else if (index - 2 === -1) fullySanitizedValue = `0.0${fullySanitizedValue}`;\n else if (index - 2 === -2) fullySanitizedValue = '0.00';\n else fullySanitizedValue = `${fullySanitizedValue.slice(0, index - 2)}.${fullySanitizedValue.slice(index - 2)}`;\n if (isNegative > -1) fullySanitizedValue = `-${fullySanitizedValue}`;\n }\n let newValue = fullySanitizedValue ? +fullySanitizedValue : NaN;\n if (isNaN(newValue)) return NaN;\n if (this.options.style === 'percent') {\n var _this_options_minimumFractionDigits, _this_options_maximumFractionDigits;\n // extra step for rounding percents to what our formatter would output\n let options = {\n ...this.options,\n style: 'decimal',\n minimumFractionDigits: Math.min(((_this_options_minimumFractionDigits = this.options.minimumFractionDigits) !== null && _this_options_minimumFractionDigits !== void 0 ? _this_options_minimumFractionDigits : 0) + 2, 20),\n maximumFractionDigits: Math.min(((_this_options_maximumFractionDigits = this.options.maximumFractionDigits) !== null && _this_options_maximumFractionDigits !== void 0 ? _this_options_maximumFractionDigits : 0) + 2, 20)\n };\n return new $6c7bd7858deea686$export$cd11ab140839f11d(this.locale, options).parse(new (0, $488c6ddbf4ef74c2$export$cc77c4ff7e8673c5)(this.locale, options).format(newValue));\n }\n // accounting will always be stripped to a positive number, so if it's accounting and has a () around everything, then we need to make it negative again\n if (this.options.currencySign === 'accounting' && $6c7bd7858deea686$var$CURRENCY_SIGN_REGEX.test(value)) newValue = -1 * newValue;\n return newValue;\n }\n sanitize(value) {\n // Remove literals and whitespace, which are allowed anywhere in the string\n value = value.replace(this.symbols.literals, '');\n // Replace the ASCII minus sign with the minus sign used in the current locale\n // so that both are allowed in case the user's keyboard doesn't have the locale's minus sign.\n if (this.symbols.minusSign) value = value.replace('-', this.symbols.minusSign);\n // In arab numeral system, their decimal character is 1643, but most keyboards don't type that\n // instead they use the , (44) character or apparently the (1548) character.\n if (this.options.numberingSystem === 'arab') {\n if (this.symbols.decimal) {\n value = value.replace(',', this.symbols.decimal);\n value = value.replace(String.fromCharCode(1548), this.symbols.decimal);\n }\n if (this.symbols.group) value = $6c7bd7858deea686$var$replaceAll(value, '.', this.symbols.group);\n }\n // fr-FR group character is narrow non-breaking space, char code 8239 (U+202F), but that's not a key on the french keyboard,\n // so allow space and non-breaking space as a group char as well\n if (this.options.locale === 'fr-FR' && this.symbols.group) {\n value = $6c7bd7858deea686$var$replaceAll(value, ' ', this.symbols.group);\n value = $6c7bd7858deea686$var$replaceAll(value, /\\u00A0/g, this.symbols.group);\n }\n return value;\n }\n isValidPartialNumber(value, minValue = -Infinity, maxValue = Infinity) {\n value = this.sanitize(value);\n // Remove minus or plus sign, which must be at the start of the string.\n if (this.symbols.minusSign && value.startsWith(this.symbols.minusSign) && minValue < 0) value = value.slice(this.symbols.minusSign.length);\n else if (this.symbols.plusSign && value.startsWith(this.symbols.plusSign) && maxValue > 0) value = value.slice(this.symbols.plusSign.length);\n // Numbers cannot start with a group separator\n if (this.symbols.group && value.startsWith(this.symbols.group)) return false;\n // Numbers that can't have any decimal values fail if a decimal character is typed\n if (this.symbols.decimal && value.indexOf(this.symbols.decimal) > -1 && this.options.maximumFractionDigits === 0) return false;\n // Remove numerals, groups, and decimals\n if (this.symbols.group) value = $6c7bd7858deea686$var$replaceAll(value, this.symbols.group, '');\n value = value.replace(this.symbols.numeral, '');\n if (this.symbols.decimal) value = value.replace(this.symbols.decimal, '');\n // The number is valid if there are no remaining characters\n return value.length === 0;\n }\n constructor(locale, options = {}){\n this.locale = locale;\n // see https://tc39.es/ecma402/#sec-setnfdigitoptions, when using roundingIncrement, the maximumFractionDigits and minimumFractionDigits must be equal\n // by default, they are 0 and 3 respectively, so we set them to 0 if neither are set\n if (options.roundingIncrement !== 1 && options.roundingIncrement != null) {\n if (options.maximumFractionDigits == null && options.minimumFractionDigits == null) {\n options.maximumFractionDigits = 0;\n options.minimumFractionDigits = 0;\n } else if (options.maximumFractionDigits == null) options.maximumFractionDigits = options.minimumFractionDigits;\n else if (options.minimumFractionDigits == null) options.minimumFractionDigits = options.maximumFractionDigits;\n // if both are specified, let the normal Range Error be thrown\n }\n this.formatter = new Intl.NumberFormat(locale, options);\n this.options = this.formatter.resolvedOptions();\n this.symbols = $6c7bd7858deea686$var$getSymbols(locale, this.formatter, this.options, options);\n var _this_options_minimumFractionDigits, _this_options_maximumFractionDigits;\n if (this.options.style === 'percent' && (((_this_options_minimumFractionDigits = this.options.minimumFractionDigits) !== null && _this_options_minimumFractionDigits !== void 0 ? _this_options_minimumFractionDigits : 0) > 18 || ((_this_options_maximumFractionDigits = this.options.maximumFractionDigits) !== null && _this_options_maximumFractionDigits !== void 0 ? _this_options_maximumFractionDigits : 0) > 18)) console.warn('NumberParser cannot handle percentages with greater than 18 decimal places, please reduce the number in your options.');\n }\n}\nconst $6c7bd7858deea686$var$nonLiteralParts = new Set([\n 'decimal',\n 'fraction',\n 'integer',\n 'minusSign',\n 'plusSign',\n 'group'\n]);\n// This list is derived from https://www.unicode.org/cldr/charts/43/supplemental/language_plural_rules.html#comparison and includes\n// all unique numbers which we need to check in order to determine all the plural forms for a given locale.\n// See: https://github.com/adobe/react-spectrum/pull/5134/files#r1337037855 for used script\nconst $6c7bd7858deea686$var$pluralNumbers = [\n 0,\n 4,\n 2,\n 1,\n 11,\n 20,\n 3,\n 7,\n 100,\n 21,\n 0.1,\n 1.1\n];\nfunction $6c7bd7858deea686$var$getSymbols(locale, formatter, intlOptions, originalOptions) {\n var _allParts_find, _posAllParts_find, _decimalParts_find, _allParts_find1;\n // formatter needs access to all decimal places in order to generate the correct literal strings for the plural set\n let symbolFormatter = new Intl.NumberFormat(locale, {\n ...intlOptions,\n // Resets so we get the full range of symbols\n minimumSignificantDigits: 1,\n maximumSignificantDigits: 21,\n roundingIncrement: 1,\n roundingPriority: 'auto',\n roundingMode: 'halfExpand'\n });\n // Note: some locale's don't add a group symbol until there is a ten thousands place\n let allParts = symbolFormatter.formatToParts(-10000.111);\n let posAllParts = symbolFormatter.formatToParts(10000.111);\n let pluralParts = $6c7bd7858deea686$var$pluralNumbers.map((n)=>symbolFormatter.formatToParts(n));\n var _allParts_find_value;\n let minusSign = (_allParts_find_value = (_allParts_find = allParts.find((p)=>p.type === 'minusSign')) === null || _allParts_find === void 0 ? void 0 : _allParts_find.value) !== null && _allParts_find_value !== void 0 ? _allParts_find_value : '-';\n let plusSign = (_posAllParts_find = posAllParts.find((p)=>p.type === 'plusSign')) === null || _posAllParts_find === void 0 ? void 0 : _posAllParts_find.value;\n // Safari does not support the signDisplay option, but our number parser polyfills it.\n // If no plus sign was returned, but the original options contained signDisplay, default to the '+' character.\n if (!plusSign && ((originalOptions === null || originalOptions === void 0 ? void 0 : originalOptions.signDisplay) === 'exceptZero' || (originalOptions === null || originalOptions === void 0 ? void 0 : originalOptions.signDisplay) === 'always')) plusSign = '+';\n // If maximumSignificantDigits is 1 (the minimum) then we won't get decimal characters out of the above formatters\n // Percent also defaults to 0 fractionDigits, so we need to make a new one that isn't percent to get an accurate decimal\n let decimalParts = new Intl.NumberFormat(locale, {\n ...intlOptions,\n minimumFractionDigits: 2,\n maximumFractionDigits: 2\n }).formatToParts(0.001);\n let decimal = (_decimalParts_find = decimalParts.find((p)=>p.type === 'decimal')) === null || _decimalParts_find === void 0 ? void 0 : _decimalParts_find.value;\n let group = (_allParts_find1 = allParts.find((p)=>p.type === 'group')) === null || _allParts_find1 === void 0 ? void 0 : _allParts_find1.value;\n // this set is also for a regex, it's all literals that might be in the string we want to eventually parse that\n // don't contribute to the numerical value\n let allPartsLiterals = allParts.filter((p)=>!$6c7bd7858deea686$var$nonLiteralParts.has(p.type)).map((p)=>$6c7bd7858deea686$var$escapeRegex(p.value));\n let pluralPartsLiterals = pluralParts.flatMap((p)=>p.filter((p)=>!$6c7bd7858deea686$var$nonLiteralParts.has(p.type)).map((p)=>$6c7bd7858deea686$var$escapeRegex(p.value)));\n let sortedLiterals = [\n ...new Set([\n ...allPartsLiterals,\n ...pluralPartsLiterals\n ])\n ].sort((a, b)=>b.length - a.length);\n let literals = sortedLiterals.length === 0 ? new RegExp('[\\\\p{White_Space}]', 'gu') : new RegExp(`${sortedLiterals.join('|')}|[\\\\p{White_Space}]`, 'gu');\n // These are for replacing non-latn characters with the latn equivalent\n let numerals = [\n ...new Intl.NumberFormat(intlOptions.locale, {\n useGrouping: false\n }).format(9876543210)\n ].reverse();\n let indexes = new Map(numerals.map((d, i)=>[\n d,\n i\n ]));\n let numeral = new RegExp(`[${numerals.join('')}]`, 'g');\n let index = (d)=>String(indexes.get(d));\n return {\n minusSign: minusSign,\n plusSign: plusSign,\n decimal: decimal,\n group: group,\n literals: literals,\n numeral: numeral,\n index: index\n };\n}\nfunction $6c7bd7858deea686$var$replaceAll(str, find, replace) {\n if (str.replaceAll) return str.replaceAll(find, replace);\n return str.split(find).join(replace);\n}\nfunction $6c7bd7858deea686$var$escapeRegex(string) {\n return string.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&');\n}\n\n\nexport {$6c7bd7858deea686$export$cd11ab140839f11d as NumberParser};\n//# sourceMappingURL=NumberParser.module.js.map\n","import {useLocale as $18f2051aff69b9bf$export$43bb16f9c6d9e3f7} from \"./context.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nlet $325a3faab7a68acd$var$cache = new Map();\nfunction $325a3faab7a68acd$export$a16aca283550c30d(options) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b)=>a[0] < b[0] ? -1 : 1).join() : '');\n if ($325a3faab7a68acd$var$cache.has(cacheKey)) return $325a3faab7a68acd$var$cache.get(cacheKey);\n let formatter = new Intl.Collator(locale, options);\n $325a3faab7a68acd$var$cache.set(cacheKey, formatter);\n return formatter;\n}\n\n\nexport {$325a3faab7a68acd$export$a16aca283550c30d as useCollator};\n//# sourceMappingURL=useCollator.module.js.map\n","import {useCollator as $325a3faab7a68acd$export$a16aca283550c30d} from \"./useCollator.mjs\";\nimport {useCallback as $21ck9$useCallback, useMemo as $21ck9$useMemo} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $bb77f239b46e8c72$export$3274cf84b703fff(options) {\n let collator = (0, $325a3faab7a68acd$export$a16aca283550c30d)({\n usage: 'search',\n ...options\n });\n // TODO(later): these methods don't currently support the ignorePunctuation option.\n let startsWith = (0, $21ck9$useCallback)((string, substring)=>{\n if (substring.length === 0) return true;\n // Normalize both strings so we can slice safely\n // TODO: take into account the ignorePunctuation option as well...\n string = string.normalize('NFC');\n substring = substring.normalize('NFC');\n return collator.compare(string.slice(0, substring.length), substring) === 0;\n }, [\n collator\n ]);\n let endsWith = (0, $21ck9$useCallback)((string, substring)=>{\n if (substring.length === 0) return true;\n string = string.normalize('NFC');\n substring = substring.normalize('NFC');\n return collator.compare(string.slice(-substring.length), substring) === 0;\n }, [\n collator\n ]);\n let contains = (0, $21ck9$useCallback)((string, substring)=>{\n if (substring.length === 0) return true;\n string = string.normalize('NFC');\n substring = substring.normalize('NFC');\n let scan = 0;\n let sliceLen = substring.length;\n for(; scan + sliceLen <= string.length; scan++){\n let slice = string.slice(scan, scan + sliceLen);\n if (collator.compare(substring, slice) === 0) return true;\n }\n return false;\n }, [\n collator\n ]);\n return (0, $21ck9$useMemo)(()=>({\n startsWith: startsWith,\n endsWith: endsWith,\n contains: contains\n }), [\n startsWith,\n endsWith,\n contains\n ]);\n}\n\n\nexport {$bb77f239b46e8c72$export$3274cf84b703fff as useFilter};\n//# sourceMappingURL=useFilter.module.js.map\n","import {createFocusManager as $7CEvq$createFocusManager, getFocusableTreeWalker as $7CEvq$getFocusableTreeWalker} from \"@react-aria/focus\";\nimport {mergeProps as $7CEvq$mergeProps} from \"@react-aria/utils\";\nimport {useLocale as $7CEvq$useLocale} from \"@react-aria/i18n\";\nimport {useMemo as $7CEvq$useMemo} from \"react\";\nimport {usePress as $7CEvq$usePress} from \"@react-aria/interactions\";\n\n\n\n\n\n\nfunction $3dfb0f96be0d6a08$export$4a931266a3838b86(state, ref, disableArrowNavigation) {\n let { direction: direction } = (0, $7CEvq$useLocale)();\n let focusManager = (0, $7CEvq$useMemo)(()=>(0, $7CEvq$createFocusManager)(ref), [\n ref\n ]);\n // Open the popover on alt + arrow down\n let onKeyDown = (e)=>{\n if (!e.currentTarget.contains(e.target)) return;\n if (e.altKey && (e.key === 'ArrowDown' || e.key === 'ArrowUp') && 'setOpen' in state) {\n e.preventDefault();\n e.stopPropagation();\n state.setOpen(true);\n }\n if (disableArrowNavigation) return;\n switch(e.key){\n case 'ArrowLeft':\n e.preventDefault();\n e.stopPropagation();\n if (direction === 'rtl') {\n if (ref.current) {\n let target = e.target;\n let prev = $3dfb0f96be0d6a08$var$findNextSegment(ref.current, target.getBoundingClientRect().left, -1);\n if (prev) prev.focus();\n }\n } else focusManager.focusPrevious();\n break;\n case 'ArrowRight':\n e.preventDefault();\n e.stopPropagation();\n if (direction === 'rtl') {\n if (ref.current) {\n let target = e.target;\n let next = $3dfb0f96be0d6a08$var$findNextSegment(ref.current, target.getBoundingClientRect().left, 1);\n if (next) next.focus();\n }\n } else focusManager.focusNext();\n break;\n }\n };\n // Focus the first placeholder segment from the end on mouse down/touch up in the field.\n let focusLast = ()=>{\n var _window_event;\n if (!ref.current) return;\n // Try to find the segment prior to the element that was clicked on.\n let target = (_window_event = window.event) === null || _window_event === void 0 ? void 0 : _window_event.target;\n let walker = (0, $7CEvq$getFocusableTreeWalker)(ref.current, {\n tabbable: true\n });\n if (target) {\n walker.currentNode = target;\n target = walker.previousNode();\n }\n // If no target found, find the last element from the end.\n if (!target) {\n let last;\n do {\n last = walker.lastChild();\n if (last) target = last;\n }while (last);\n }\n // Now go backwards until we find an element that is not a placeholder.\n while(target === null || target === void 0 ? void 0 : target.hasAttribute('data-placeholder')){\n let prev = walker.previousNode();\n if (prev && prev.hasAttribute('data-placeholder')) target = prev;\n else break;\n }\n if (target) target.focus();\n };\n let { pressProps: pressProps } = (0, $7CEvq$usePress)({\n preventFocusOnPress: true,\n allowTextSelectionOnPress: true,\n onPressStart (e) {\n if (e.pointerType === 'mouse') focusLast();\n },\n onPress (e) {\n if (e.pointerType === 'touch' || e.pointerType === 'pen') focusLast();\n }\n });\n return (0, $7CEvq$mergeProps)(pressProps, {\n onKeyDown: onKeyDown\n });\n}\nfunction $3dfb0f96be0d6a08$var$findNextSegment(group, fromX, direction) {\n let walker = (0, $7CEvq$getFocusableTreeWalker)(group, {\n tabbable: true\n });\n let node = walker.nextNode();\n let closest = null;\n let closestDistance = Infinity;\n while(node){\n let x = node.getBoundingClientRect().left;\n let distance = x - fromX;\n let absoluteDistance = Math.abs(distance);\n if (Math.sign(distance) === direction && absoluteDistance < closestDistance) {\n closest = node;\n closestDistance = absoluteDistance;\n }\n node = walker.nextNode();\n }\n return closest;\n}\n\n\nexport {$3dfb0f96be0d6a08$export$4a931266a3838b86 as useDatePickerGroup};\n//# sourceMappingURL=useDatePickerGroup.module.js.map\n","import {useId as $83Elw$useId, useLabels as $83Elw$useLabels} from \"@react-aria/utils\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $d191a55c9702f145$export$8467354a121f1b9f(props) {\n let { id: id, label: label, 'aria-labelledby': ariaLabelledby, 'aria-label': ariaLabel, labelElementType: labelElementType = 'label' } = props;\n id = (0, $83Elw$useId)(id);\n let labelId = (0, $83Elw$useId)();\n let labelProps = {};\n if (label) {\n ariaLabelledby = ariaLabelledby ? `${labelId} ${ariaLabelledby}` : labelId;\n labelProps = {\n id: labelId,\n htmlFor: labelElementType === 'label' ? id : undefined\n };\n } else if (!ariaLabelledby && !ariaLabel && process.env.NODE_ENV !== 'production') console.warn('If you do not provide a visible label, you must specify an aria-label or aria-labelledby attribute for accessibility');\n let fieldProps = (0, $83Elw$useLabels)({\n id: id,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledby\n });\n return {\n labelProps: labelProps,\n fieldProps: fieldProps\n };\n}\n\n\nexport {$d191a55c9702f145$export$8467354a121f1b9f as useLabel};\n//# sourceMappingURL=useLabel.module.js.map\n","import {useLabel as $d191a55c9702f145$export$8467354a121f1b9f} from \"./useLabel.mjs\";\nimport {useSlotId as $2kC82$useSlotId, mergeProps as $2kC82$mergeProps} from \"@react-aria/utils\";\n\n/*\n * Copyright 2021 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $2baaea4c71418dea$export$294aa081a6c6f55d(props) {\n let { description: description, errorMessage: errorMessage, isInvalid: isInvalid, validationState: validationState } = props;\n let { labelProps: labelProps, fieldProps: fieldProps } = (0, $d191a55c9702f145$export$8467354a121f1b9f)(props);\n let descriptionId = (0, $2kC82$useSlotId)([\n Boolean(description),\n Boolean(errorMessage),\n isInvalid,\n validationState\n ]);\n let errorMessageId = (0, $2kC82$useSlotId)([\n Boolean(description),\n Boolean(errorMessage),\n isInvalid,\n validationState\n ]);\n fieldProps = (0, $2kC82$mergeProps)(fieldProps, {\n 'aria-describedby': [\n descriptionId,\n // Use aria-describedby for error message because aria-errormessage is unsupported using VoiceOver or NVDA. See https://github.com/adobe/react-spectrum/issues/1346#issuecomment-740136268\n errorMessageId,\n props['aria-describedby']\n ].filter(Boolean).join(' ') || undefined\n });\n return {\n labelProps: labelProps,\n fieldProps: fieldProps,\n descriptionProps: {\n id: descriptionId\n },\n errorMessageProps: {\n id: errorMessageId\n }\n };\n}\n\n\nexport {$2baaea4c71418dea$export$294aa081a6c6f55d as useField};\n//# sourceMappingURL=useField.module.js.map\n","import {setInteractionModality as $9Gacy$setInteractionModality} from \"@react-aria/interactions\";\nimport {useRef as $9Gacy$useRef, useEffect as $9Gacy$useEffect} from \"react\";\nimport {useLayoutEffect as $9Gacy$useLayoutEffect, useEffectEvent as $9Gacy$useEffectEvent} from \"@react-aria/utils\";\n\n/*\n * Copyright 2023 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $e93e671b31057976$export$b8473d3665f3a75a(props, state, ref) {\n let { validationBehavior: validationBehavior, focus: focus } = props;\n // This is a useLayoutEffect so that it runs before the useEffect in useFormValidationState, which commits the validation change.\n (0, $9Gacy$useLayoutEffect)(()=>{\n if (validationBehavior === 'native' && (ref === null || ref === void 0 ? void 0 : ref.current) && !ref.current.disabled) {\n let errorMessage = state.realtimeValidation.isInvalid ? state.realtimeValidation.validationErrors.join(' ') || 'Invalid value.' : '';\n ref.current.setCustomValidity(errorMessage);\n // Prevent default tooltip for validation message.\n // https://bugzilla.mozilla.org/show_bug.cgi?id=605277\n if (!ref.current.hasAttribute('title')) ref.current.title = '';\n if (!state.realtimeValidation.isInvalid) state.updateValidation($e93e671b31057976$var$getNativeValidity(ref.current));\n }\n });\n let isIgnoredReset = (0, $9Gacy$useRef)(false);\n let onReset = (0, $9Gacy$useEffectEvent)(()=>{\n if (!isIgnoredReset.current) state.resetValidation();\n });\n let onInvalid = (0, $9Gacy$useEffectEvent)((e)=>{\n var _ref_current;\n // Only commit validation if we are not already displaying one.\n // This avoids clearing server errors that the user didn't actually fix.\n if (!state.displayValidation.isInvalid) state.commitValidation();\n // Auto focus the first invalid input in a form, unless the error already had its default prevented.\n let form = ref === null || ref === void 0 ? void 0 : (_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.form;\n if (!e.defaultPrevented && ref && form && $e93e671b31057976$var$getFirstInvalidInput(form) === ref.current) {\n var _ref_current1;\n if (focus) focus();\n else (_ref_current1 = ref.current) === null || _ref_current1 === void 0 ? void 0 : _ref_current1.focus();\n // Always show focus ring.\n (0, $9Gacy$setInteractionModality)('keyboard');\n }\n // Prevent default browser error UI from appearing.\n e.preventDefault();\n });\n let onChange = (0, $9Gacy$useEffectEvent)(()=>{\n state.commitValidation();\n });\n (0, $9Gacy$useEffect)(()=>{\n let input = ref === null || ref === void 0 ? void 0 : ref.current;\n if (!input) return;\n let form = input.form;\n let reset = form === null || form === void 0 ? void 0 : form.reset;\n if (form) // Try to detect React's automatic form reset behavior so we don't clear\n // validation errors that are returned by server actions.\n // To do this, we ignore programmatic form resets that occur outside a user event.\n // This is best-effort. There may be false positives, e.g. setTimeout.\n form.reset = ()=>{\n // React uses MessageChannel for scheduling, so ignore 'message' events.\n isIgnoredReset.current = !window.event || window.event.type === 'message' && window.event.target instanceof MessagePort;\n reset === null || reset === void 0 ? void 0 : reset.call(form);\n isIgnoredReset.current = false;\n };\n input.addEventListener('invalid', onInvalid);\n input.addEventListener('change', onChange);\n form === null || form === void 0 ? void 0 : form.addEventListener('reset', onReset);\n return ()=>{\n input.removeEventListener('invalid', onInvalid);\n input.removeEventListener('change', onChange);\n form === null || form === void 0 ? void 0 : form.removeEventListener('reset', onReset);\n if (form) // @ts-ignore\n form.reset = reset;\n };\n }, [\n ref,\n onInvalid,\n onChange,\n onReset,\n validationBehavior\n ]);\n}\nfunction $e93e671b31057976$var$getValidity(input) {\n // The native ValidityState object is live, meaning each property is a getter that returns the current state.\n // We need to create a snapshot of the validity state at the time this function is called to avoid unpredictable React renders.\n let validity = input.validity;\n return {\n badInput: validity.badInput,\n customError: validity.customError,\n patternMismatch: validity.patternMismatch,\n rangeOverflow: validity.rangeOverflow,\n rangeUnderflow: validity.rangeUnderflow,\n stepMismatch: validity.stepMismatch,\n tooLong: validity.tooLong,\n tooShort: validity.tooShort,\n typeMismatch: validity.typeMismatch,\n valueMissing: validity.valueMissing,\n valid: validity.valid\n };\n}\nfunction $e93e671b31057976$var$getNativeValidity(input) {\n return {\n isInvalid: !input.validity.valid,\n validationDetails: $e93e671b31057976$var$getValidity(input),\n validationErrors: input.validationMessage ? [\n input.validationMessage\n ] : []\n };\n}\nfunction $e93e671b31057976$var$getFirstInvalidInput(form) {\n for(let i = 0; i < form.elements.length; i++){\n let element = form.elements[i];\n if (!element.validity.valid) return element;\n }\n return null;\n}\n\n\nexport {$e93e671b31057976$export$b8473d3665f3a75a as useFormValidation};\n//# sourceMappingURL=useFormValidation.module.js.map\n","import $7Gzdi$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {useDatePickerGroup as $3dfb0f96be0d6a08$export$4a931266a3838b86} from \"./useDatePickerGroup.mjs\";\nimport {createFocusManager as $7Gzdi$createFocusManager} from \"@react-aria/focus\";\nimport {useDescription as $7Gzdi$useDescription, mergeProps as $7Gzdi$mergeProps, useFormReset as $7Gzdi$useFormReset, filterDOMProps as $7Gzdi$filterDOMProps} from \"@react-aria/utils\";\nimport {useRef as $7Gzdi$useRef, useMemo as $7Gzdi$useMemo, useEffect as $7Gzdi$useEffect} from \"react\";\nimport {useField as $7Gzdi$useField} from \"@react-aria/label\";\nimport {useFocusWithin as $7Gzdi$useFocusWithin} from \"@react-aria/interactions\";\nimport {useFormValidation as $7Gzdi$useFormValidation} from \"@react-aria/form\";\nimport {useLocalizedStringFormatter as $7Gzdi$useLocalizedStringFormatter} from \"@react-aria/i18n\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\nconst $16f0b7bb276bc17e$export$653eddfc964b0f8a = new WeakMap();\nconst $16f0b7bb276bc17e$export$300019f83c56d282 = '__role_' + Date.now();\nconst $16f0b7bb276bc17e$export$7b3062cd49e80452 = '__focusManager_' + Date.now();\nfunction $16f0b7bb276bc17e$export$5591b0b878c1a989(props, state, ref) {\n var _state_value;\n let { isInvalid: isInvalid, validationErrors: validationErrors, validationDetails: validationDetails } = state.displayValidation;\n let { labelProps: labelProps, fieldProps: fieldProps, descriptionProps: descriptionProps, errorMessageProps: errorMessageProps } = (0, $7Gzdi$useField)({\n ...props,\n labelElementType: 'span',\n isInvalid: isInvalid,\n errorMessage: props.errorMessage || validationErrors\n });\n let valueOnFocus = (0, $7Gzdi$useRef)(null);\n let { focusWithinProps: focusWithinProps } = (0, $7Gzdi$useFocusWithin)({\n ...props,\n onFocusWithin (e) {\n var _props_onFocus;\n valueOnFocus.current = state.value;\n (_props_onFocus = props.onFocus) === null || _props_onFocus === void 0 ? void 0 : _props_onFocus.call(props, e);\n },\n onBlurWithin: (e)=>{\n var _props_onBlur;\n state.confirmPlaceholder();\n if (state.value !== valueOnFocus.current) state.commitValidation();\n (_props_onBlur = props.onBlur) === null || _props_onBlur === void 0 ? void 0 : _props_onBlur.call(props, e);\n },\n onFocusWithinChange: props.onFocusChange\n });\n let stringFormatter = (0, $7Gzdi$useLocalizedStringFormatter)((0, ($parcel$interopDefault($7Gzdi$intlStringsmodulejs))), '@react-aria/datepicker');\n let message = state.maxGranularity === 'hour' ? 'selectedTimeDescription' : 'selectedDateDescription';\n let field = state.maxGranularity === 'hour' ? 'time' : 'date';\n let description = state.value ? stringFormatter.format(message, {\n [field]: state.formatValue({\n month: 'long'\n })\n }) : '';\n let descProps = (0, $7Gzdi$useDescription)(description);\n // If within a date picker or date range picker, the date field will have role=\"presentation\" and an aria-describedby\n // will be passed in that references the value (e.g. entire range). Otherwise, add the field's value description.\n let describedBy = props[$16f0b7bb276bc17e$export$300019f83c56d282] === 'presentation' ? fieldProps['aria-describedby'] : [\n descProps['aria-describedby'],\n fieldProps['aria-describedby']\n ].filter(Boolean).join(' ') || undefined;\n let propsFocusManager = props[$16f0b7bb276bc17e$export$7b3062cd49e80452];\n let focusManager = (0, $7Gzdi$useMemo)(()=>propsFocusManager || (0, $7Gzdi$createFocusManager)(ref), [\n propsFocusManager,\n ref\n ]);\n let groupProps = (0, $3dfb0f96be0d6a08$export$4a931266a3838b86)(state, ref, props[$16f0b7bb276bc17e$export$300019f83c56d282] === 'presentation');\n // Pass labels and other information to segments.\n $16f0b7bb276bc17e$export$653eddfc964b0f8a.set(state, {\n ariaLabel: props['aria-label'],\n ariaLabelledBy: [\n labelProps.id,\n props['aria-labelledby']\n ].filter(Boolean).join(' ') || undefined,\n ariaDescribedBy: describedBy,\n focusManager: focusManager\n });\n let autoFocusRef = (0, $7Gzdi$useRef)(props.autoFocus);\n // When used within a date picker or date range picker, the field gets role=\"presentation\"\n // rather than role=\"group\". Since the date picker/date range picker already has a role=\"group\"\n // with a label and description, and the segments are already labeled by this as well, this\n // avoids very verbose duplicate announcements.\n let fieldDOMProps;\n if (props[$16f0b7bb276bc17e$export$300019f83c56d282] === 'presentation') fieldDOMProps = {\n role: 'presentation'\n };\n else fieldDOMProps = (0, $7Gzdi$mergeProps)(fieldProps, {\n role: 'group',\n 'aria-disabled': props.isDisabled || undefined,\n 'aria-describedby': describedBy\n });\n (0, $7Gzdi$useEffect)(()=>{\n if (autoFocusRef.current) focusManager.focusFirst();\n autoFocusRef.current = false;\n }, [\n focusManager\n ]);\n (0, $7Gzdi$useFormReset)(props.inputRef, state.defaultValue, state.setValue);\n (0, $7Gzdi$useFormValidation)({\n ...props,\n focus () {\n focusManager.focusFirst();\n }\n }, state, props.inputRef);\n let inputProps = {\n type: 'hidden',\n name: props.name,\n form: props.form,\n value: ((_state_value = state.value) === null || _state_value === void 0 ? void 0 : _state_value.toString()) || '',\n disabled: props.isDisabled\n };\n if (props.validationBehavior === 'native') {\n // Use a hidden <input type=\"text\"> rather than <input type=\"hidden\">\n // so that an empty value blocks HTML form submission when the field is required.\n inputProps.type = 'text';\n inputProps.hidden = true;\n inputProps.required = props.isRequired;\n // Ignore react warning.\n inputProps.onChange = ()=>{};\n }\n let domProps = (0, $7Gzdi$filterDOMProps)(props);\n return {\n labelProps: {\n ...labelProps,\n onClick: ()=>{\n focusManager.focusFirst();\n }\n },\n fieldProps: (0, $7Gzdi$mergeProps)(domProps, fieldDOMProps, groupProps, focusWithinProps, {\n onKeyDown (e) {\n if (props.onKeyDown) props.onKeyDown(e);\n },\n onKeyUp (e) {\n if (props.onKeyUp) props.onKeyUp(e);\n },\n style: {\n unicodeBidi: 'isolate'\n }\n }),\n inputProps: inputProps,\n descriptionProps: descriptionProps,\n errorMessageProps: errorMessageProps,\n isInvalid: isInvalid,\n validationErrors: validationErrors,\n validationDetails: validationDetails\n };\n}\nfunction $16f0b7bb276bc17e$export$4c842f6a241dc825(props, state, ref) {\n var _state_timeValue;\n let res = $16f0b7bb276bc17e$export$5591b0b878c1a989(props, state, ref);\n res.inputProps.value = ((_state_timeValue = state.timeValue) === null || _state_timeValue === void 0 ? void 0 : _state_timeValue.toString()) || '';\n return res;\n}\n\n\nexport {$16f0b7bb276bc17e$export$653eddfc964b0f8a as hookData, $16f0b7bb276bc17e$export$300019f83c56d282 as roleSymbol, $16f0b7bb276bc17e$export$7b3062cd49e80452 as focusManagerSymbol, $16f0b7bb276bc17e$export$5591b0b878c1a989 as useDateField, $16f0b7bb276bc17e$export$4c842f6a241dc825 as useTimeField};\n//# sourceMappingURL=useDateField.module.js.map\n","import $4lVjK$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {roleSymbol as $16f0b7bb276bc17e$export$300019f83c56d282} from \"./useDateField.mjs\";\nimport {useDatePickerGroup as $3dfb0f96be0d6a08$export$4a931266a3838b86} from \"./useDatePickerGroup.mjs\";\nimport {createFocusManager as $4lVjK$createFocusManager} from \"@react-aria/focus\";\nimport {useId as $4lVjK$useId, useDescription as $4lVjK$useDescription, filterDOMProps as $4lVjK$filterDOMProps, mergeProps as $4lVjK$mergeProps} from \"@react-aria/utils\";\nimport {privateValidationStateProp as $4lVjK$privateValidationStateProp} from \"@react-stately/form\";\nimport {useField as $4lVjK$useField} from \"@react-aria/label\";\nimport {useFocusWithin as $4lVjK$useFocusWithin} from \"@react-aria/interactions\";\nimport {useLocalizedStringFormatter as $4lVjK$useLocalizedStringFormatter, useLocale as $4lVjK$useLocale} from \"@react-aria/i18n\";\nimport {useMemo as $4lVjK$useMemo, useRef as $4lVjK$useRef} from \"react\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\n\n\nfunction $6057a3d2a53a12fd$export$42df105a73306d51(props, state, ref) {\n let buttonId = (0, $4lVjK$useId)();\n let dialogId = (0, $4lVjK$useId)();\n let fieldId = (0, $4lVjK$useId)();\n let stringFormatter = (0, $4lVjK$useLocalizedStringFormatter)((0, ($parcel$interopDefault($4lVjK$intlStringsmodulejs))), '@react-aria/datepicker');\n let { isInvalid: isInvalid, validationErrors: validationErrors, validationDetails: validationDetails } = state.displayValidation;\n let { labelProps: labelProps, fieldProps: fieldProps, descriptionProps: descriptionProps, errorMessageProps: errorMessageProps } = (0, $4lVjK$useField)({\n ...props,\n labelElementType: 'span',\n isInvalid: isInvalid,\n errorMessage: props.errorMessage || validationErrors\n });\n let groupProps = (0, $3dfb0f96be0d6a08$export$4a931266a3838b86)(state, ref);\n let labelledBy = fieldProps['aria-labelledby'] || fieldProps.id;\n let { locale: locale } = (0, $4lVjK$useLocale)();\n let date = state.formatValue(locale, {\n month: 'long'\n });\n let description = date ? stringFormatter.format('selectedDateDescription', {\n date: date\n }) : '';\n let descProps = (0, $4lVjK$useDescription)(description);\n let ariaDescribedBy = [\n descProps['aria-describedby'],\n fieldProps['aria-describedby']\n ].filter(Boolean).join(' ') || undefined;\n let domProps = (0, $4lVjK$filterDOMProps)(props);\n let focusManager = (0, $4lVjK$useMemo)(()=>(0, $4lVjK$createFocusManager)(ref), [\n ref\n ]);\n let isFocused = (0, $4lVjK$useRef)(false);\n let { focusWithinProps: focusWithinProps } = (0, $4lVjK$useFocusWithin)({\n ...props,\n isDisabled: state.isOpen,\n onBlurWithin: (e)=>{\n // Ignore when focus moves into the popover.\n let dialog = document.getElementById(dialogId);\n if (!(dialog === null || dialog === void 0 ? void 0 : dialog.contains(e.relatedTarget))) {\n var _props_onBlur, _props_onFocusChange;\n isFocused.current = false;\n (_props_onBlur = props.onBlur) === null || _props_onBlur === void 0 ? void 0 : _props_onBlur.call(props, e);\n (_props_onFocusChange = props.onFocusChange) === null || _props_onFocusChange === void 0 ? void 0 : _props_onFocusChange.call(props, false);\n }\n },\n onFocusWithin: (e)=>{\n if (!isFocused.current) {\n var _props_onFocus, _props_onFocusChange;\n isFocused.current = true;\n (_props_onFocus = props.onFocus) === null || _props_onFocus === void 0 ? void 0 : _props_onFocus.call(props, e);\n (_props_onFocusChange = props.onFocusChange) === null || _props_onFocusChange === void 0 ? void 0 : _props_onFocusChange.call(props, true);\n }\n }\n });\n return {\n groupProps: (0, $4lVjK$mergeProps)(domProps, groupProps, fieldProps, descProps, focusWithinProps, {\n role: 'group',\n 'aria-disabled': props.isDisabled || null,\n 'aria-labelledby': labelledBy,\n 'aria-describedby': ariaDescribedBy,\n onKeyDown (e) {\n if (state.isOpen) return;\n if (props.onKeyDown) props.onKeyDown(e);\n },\n onKeyUp (e) {\n if (state.isOpen) return;\n if (props.onKeyUp) props.onKeyUp(e);\n }\n }),\n labelProps: {\n ...labelProps,\n onClick: ()=>{\n focusManager.focusFirst();\n }\n },\n fieldProps: {\n ...fieldProps,\n id: fieldId,\n [(0, $16f0b7bb276bc17e$export$300019f83c56d282)]: 'presentation',\n 'aria-describedby': ariaDescribedBy,\n value: state.value,\n defaultValue: state.defaultValue,\n onChange: state.setValue,\n placeholderValue: props.placeholderValue,\n hideTimeZone: props.hideTimeZone,\n hourCycle: props.hourCycle,\n shouldForceLeadingZeros: props.shouldForceLeadingZeros,\n granularity: props.granularity,\n isDisabled: props.isDisabled,\n isReadOnly: props.isReadOnly,\n isRequired: props.isRequired,\n validationBehavior: props.validationBehavior,\n // DatePicker owns the validation state for the date field.\n [(0, $4lVjK$privateValidationStateProp)]: state,\n autoFocus: props.autoFocus,\n name: props.name,\n form: props.form\n },\n descriptionProps: descriptionProps,\n errorMessageProps: errorMessageProps,\n buttonProps: {\n ...descProps,\n id: buttonId,\n 'aria-haspopup': 'dialog',\n 'aria-label': stringFormatter.format('calendar'),\n 'aria-labelledby': `${buttonId} ${labelledBy}`,\n 'aria-describedby': ariaDescribedBy,\n 'aria-expanded': state.isOpen,\n isDisabled: props.isDisabled || props.isReadOnly,\n onPress: ()=>state.setOpen(true)\n },\n dialogProps: {\n id: dialogId,\n 'aria-labelledby': `${buttonId} ${labelledBy}`\n },\n calendarProps: {\n autoFocus: true,\n value: state.dateValue,\n onChange: state.setDateValue,\n minValue: props.minValue,\n maxValue: props.maxValue,\n isDisabled: props.isDisabled,\n isReadOnly: props.isReadOnly,\n isDateUnavailable: props.isDateUnavailable,\n defaultFocusedValue: state.dateValue ? undefined : props.placeholderValue,\n isInvalid: state.isInvalid,\n errorMessage: typeof props.errorMessage === 'function' ? props.errorMessage(state.displayValidation) : props.errorMessage || state.displayValidation.validationErrors.join(' ')\n },\n isInvalid: isInvalid,\n validationErrors: validationErrors,\n validationDetails: validationDetails\n };\n}\n\n\nexport {$6057a3d2a53a12fd$export$42df105a73306d51 as useDatePicker};\n//# sourceMappingURL=useDatePicker.module.js.map\n","import $jR5iF$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {useLocale as $jR5iF$useLocale, useLocalizedStringDictionary as $jR5iF$useLocalizedStringDictionary} from \"@react-aria/i18n\";\nimport {useMemo as $jR5iF$useMemo} from \"react\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // @ts-ignore\n\n\n\nfunction $3aeceb3a64eb8358$export$d42c60378c8168f8() {\n let { locale: locale } = (0, $jR5iF$useLocale)();\n let dictionary = (0, $jR5iF$useLocalizedStringDictionary)((0, ($parcel$interopDefault($jR5iF$intlStringsmodulejs))), '@react-aria/datepicker');\n return (0, $jR5iF$useMemo)(()=>{\n // Try to use Intl.DisplayNames if possible. It may be supported in browsers, but not support the dateTimeField\n // type as that was only added in v2. https://github.com/tc39/intl-displaynames-v2\n try {\n return new Intl.DisplayNames(locale, {\n type: 'dateTimeField'\n });\n } catch {\n return new $3aeceb3a64eb8358$var$DisplayNamesPolyfill(locale, dictionary);\n }\n }, [\n locale,\n dictionary\n ]);\n}\nclass $3aeceb3a64eb8358$var$DisplayNamesPolyfill {\n of(field) {\n return this.dictionary.getStringForLocale(field, this.locale);\n }\n constructor(locale, dictionary){\n this.locale = locale;\n this.dictionary = dictionary;\n }\n}\n\n\nexport {$3aeceb3a64eb8358$export$d42c60378c8168f8 as useDisplayNames};\n//# sourceMappingURL=useDisplayNames.module.js.map\n","var $ed6aae4e5f766f1e$exports = {};\n$ed6aae4e5f766f1e$exports = {\n \"Empty\": `\\u{641}\\u{627}\\u{631}\\u{63A}`\n};\n\n\nexport {$ed6aae4e5f766f1e$exports as default};\n//# sourceMappingURL=ar-AE.module.js.map\n","var $38854e2b175151fa$exports = {};\n$38854e2b175151fa$exports = {\n \"Empty\": `\\u{418}\\u{437}\\u{43F}\\u{440}\\u{430}\\u{437}\\u{43D}\\u{438}`\n};\n\n\nexport {$38854e2b175151fa$exports as default};\n//# sourceMappingURL=bg-BG.module.js.map\n","var $15b25ab20f3945b2$exports = {};\n$15b25ab20f3945b2$exports = {\n \"Empty\": `Pr\\xe1zdn\\xe9`\n};\n\n\nexport {$15b25ab20f3945b2$exports as default};\n//# sourceMappingURL=cs-CZ.module.js.map\n","var $692a4298b6b649a2$exports = {};\n$692a4298b6b649a2$exports = {\n \"Empty\": `Tom`\n};\n\n\nexport {$692a4298b6b649a2$exports as default};\n//# sourceMappingURL=da-DK.module.js.map\n","var $1c6e1539193f1243$exports = {};\n$1c6e1539193f1243$exports = {\n \"Empty\": `Leer`\n};\n\n\nexport {$1c6e1539193f1243$exports as default};\n//# sourceMappingURL=de-DE.module.js.map\n","var $1e8678632c464b6d$exports = {};\n$1e8678632c464b6d$exports = {\n \"Empty\": `\\u{386}\\u{3B4}\\u{3B5}\\u{3B9}\\u{3BF}`\n};\n\n\nexport {$1e8678632c464b6d$exports as default};\n//# sourceMappingURL=el-GR.module.js.map\n","var $4adc85d9bf5b9eed$exports = {};\n$4adc85d9bf5b9eed$exports = {\n \"Empty\": `Empty`\n};\n\n\nexport {$4adc85d9bf5b9eed$exports as default};\n//# sourceMappingURL=en-US.module.js.map\n","var $41c4b2bb61dafbca$exports = {};\n$41c4b2bb61dafbca$exports = {\n \"Empty\": `Vac\\xedo`\n};\n\n\nexport {$41c4b2bb61dafbca$exports as default};\n//# sourceMappingURL=es-ES.module.js.map\n","var $405f8b24f5dd2a60$exports = {};\n$405f8b24f5dd2a60$exports = {\n \"Empty\": `T\\xfchjenda`\n};\n\n\nexport {$405f8b24f5dd2a60$exports as default};\n//# sourceMappingURL=et-EE.module.js.map\n","var $7efe3ed02b9b9dd4$exports = {};\n$7efe3ed02b9b9dd4$exports = {\n \"Empty\": `Tyhj\\xe4`\n};\n\n\nexport {$7efe3ed02b9b9dd4$exports as default};\n//# sourceMappingURL=fi-FI.module.js.map\n","var $99fc4c101d92daf3$exports = {};\n$99fc4c101d92daf3$exports = {\n \"Empty\": `Vide`\n};\n\n\nexport {$99fc4c101d92daf3$exports as default};\n//# sourceMappingURL=fr-FR.module.js.map\n","var $f9e155e6e8cacaa2$exports = {};\n$f9e155e6e8cacaa2$exports = {\n \"Empty\": `\\u{5E8}\\u{5D9}\\u{5E7}`\n};\n\n\nexport {$f9e155e6e8cacaa2$exports as default};\n//# sourceMappingURL=he-IL.module.js.map\n","var $c31b5e8e9a249fd5$exports = {};\n$c31b5e8e9a249fd5$exports = {\n \"Empty\": `Prazno`\n};\n\n\nexport {$c31b5e8e9a249fd5$exports as default};\n//# sourceMappingURL=hr-HR.module.js.map\n","var $9c5435bc17499bd9$exports = {};\n$9c5435bc17499bd9$exports = {\n \"Empty\": `\\xdcres`\n};\n\n\nexport {$9c5435bc17499bd9$exports as default};\n//# sourceMappingURL=hu-HU.module.js.map\n","var $6d1fc8e84d8165e1$exports = {};\n$6d1fc8e84d8165e1$exports = {\n \"Empty\": `Vuoto`\n};\n\n\nexport {$6d1fc8e84d8165e1$exports as default};\n//# sourceMappingURL=it-IT.module.js.map\n","var $46ea6b3641b83e71$exports = {};\n$46ea6b3641b83e71$exports = {\n \"Empty\": `\\u{7A7A}`\n};\n\n\nexport {$46ea6b3641b83e71$exports as default};\n//# sourceMappingURL=ja-JP.module.js.map\n","var $0e3cc9a288289dc5$exports = {};\n$0e3cc9a288289dc5$exports = {\n \"Empty\": `\\u{BE44}\\u{C5B4} \\u{C788}\\u{C74C}`\n};\n\n\nexport {$0e3cc9a288289dc5$exports as default};\n//# sourceMappingURL=ko-KR.module.js.map\n","var $4ff2bb25c0089ffb$exports = {};\n$4ff2bb25c0089ffb$exports = {\n \"Empty\": `Tu\\u{161}\\u{10D}ias`\n};\n\n\nexport {$4ff2bb25c0089ffb$exports as default};\n//# sourceMappingURL=lt-LT.module.js.map\n","var $6cf33cd4c010a2fb$exports = {};\n$6cf33cd4c010a2fb$exports = {\n \"Empty\": `Tuk\\u{161}s`\n};\n\n\nexport {$6cf33cd4c010a2fb$exports as default};\n//# sourceMappingURL=lv-LV.module.js.map\n","var $5a9f8486f8b8837e$exports = {};\n$5a9f8486f8b8837e$exports = {\n \"Empty\": `Tom`\n};\n\n\nexport {$5a9f8486f8b8837e$exports as default};\n//# sourceMappingURL=nb-NO.module.js.map\n","var $583f94d807f6ecea$exports = {};\n$583f94d807f6ecea$exports = {\n \"Empty\": `Leeg`\n};\n\n\nexport {$583f94d807f6ecea$exports as default};\n//# sourceMappingURL=nl-NL.module.js.map\n","var $cc4dcfeea2b4050d$exports = {};\n$cc4dcfeea2b4050d$exports = {\n \"Empty\": `Pusty`\n};\n\n\nexport {$cc4dcfeea2b4050d$exports as default};\n//# sourceMappingURL=pl-PL.module.js.map\n","var $68ac2954d56e12b4$exports = {};\n$68ac2954d56e12b4$exports = {\n \"Empty\": `Vazio`\n};\n\n\nexport {$68ac2954d56e12b4$exports as default};\n//# sourceMappingURL=pt-BR.module.js.map\n","var $fdb0616f309780b0$exports = {};\n$fdb0616f309780b0$exports = {\n \"Empty\": `Vazio`\n};\n\n\nexport {$fdb0616f309780b0$exports as default};\n//# sourceMappingURL=pt-PT.module.js.map\n","var $fe1eccf4ee1d6f52$exports = {};\n$fe1eccf4ee1d6f52$exports = {\n \"Empty\": `Gol`\n};\n\n\nexport {$fe1eccf4ee1d6f52$exports as default};\n//# sourceMappingURL=ro-RO.module.js.map\n","var $a38b6c4e18725976$exports = {};\n$a38b6c4e18725976$exports = {\n \"Empty\": `\\u{41D}\\u{435} \\u{437}\\u{430}\\u{43F}\\u{43E}\\u{43B}\\u{43D}\\u{435}\\u{43D}\\u{43E}`\n};\n\n\nexport {$a38b6c4e18725976$exports as default};\n//# sourceMappingURL=ru-RU.module.js.map\n","var $6c14ae2b766b652c$exports = {};\n$6c14ae2b766b652c$exports = {\n \"Empty\": `Pr\\xe1zdne`\n};\n\n\nexport {$6c14ae2b766b652c$exports as default};\n//# sourceMappingURL=sk-SK.module.js.map\n","var $8f1c9692e16dc5eb$exports = {};\n$8f1c9692e16dc5eb$exports = {\n \"Empty\": `Prazen`\n};\n\n\nexport {$8f1c9692e16dc5eb$exports as default};\n//# sourceMappingURL=sl-SI.module.js.map\n","var $d2aa7abea627cafa$exports = {};\n$d2aa7abea627cafa$exports = {\n \"Empty\": `Prazno`\n};\n\n\nexport {$d2aa7abea627cafa$exports as default};\n//# sourceMappingURL=sr-SP.module.js.map\n","var $676b82e4b56408e6$exports = {};\n$676b82e4b56408e6$exports = {\n \"Empty\": `Tomt`\n};\n\n\nexport {$676b82e4b56408e6$exports as default};\n//# sourceMappingURL=sv-SE.module.js.map\n","var $14c9042552d7ce08$exports = {};\n$14c9042552d7ce08$exports = {\n \"Empty\": `Bo\\u{15F}`\n};\n\n\nexport {$14c9042552d7ce08$exports as default};\n//# sourceMappingURL=tr-TR.module.js.map\n","var $393254ebcb66c9f5$exports = {};\n$393254ebcb66c9f5$exports = {\n \"Empty\": `\\u{41F}\\u{443}\\u{441}\\u{442}\\u{43E}`\n};\n\n\nexport {$393254ebcb66c9f5$exports as default};\n//# sourceMappingURL=uk-UA.module.js.map\n","var $d49d621f310cf6ce$exports = {};\n$d49d621f310cf6ce$exports = {\n \"Empty\": `\\u{7A7A}`\n};\n\n\nexport {$d49d621f310cf6ce$exports as default};\n//# sourceMappingURL=zh-CN.module.js.map\n","var $94b60c866ca5dfe6$exports = {};\n$94b60c866ca5dfe6$exports = {\n \"Empty\": `\\u{7A7A}\\u{767D}`\n};\n\n\nexport {$94b60c866ca5dfe6$exports as default};\n//# sourceMappingURL=zh-TW.module.js.map\n","import $894vb$arAEmodulejs from \"./ar-AE.mjs\";\nimport $894vb$bgBGmodulejs from \"./bg-BG.mjs\";\nimport $894vb$csCZmodulejs from \"./cs-CZ.mjs\";\nimport $894vb$daDKmodulejs from \"./da-DK.mjs\";\nimport $894vb$deDEmodulejs from \"./de-DE.mjs\";\nimport $894vb$elGRmodulejs from \"./el-GR.mjs\";\nimport $894vb$enUSmodulejs from \"./en-US.mjs\";\nimport $894vb$esESmodulejs from \"./es-ES.mjs\";\nimport $894vb$etEEmodulejs from \"./et-EE.mjs\";\nimport $894vb$fiFImodulejs from \"./fi-FI.mjs\";\nimport $894vb$frFRmodulejs from \"./fr-FR.mjs\";\nimport $894vb$heILmodulejs from \"./he-IL.mjs\";\nimport $894vb$hrHRmodulejs from \"./hr-HR.mjs\";\nimport $894vb$huHUmodulejs from \"./hu-HU.mjs\";\nimport $894vb$itITmodulejs from \"./it-IT.mjs\";\nimport $894vb$jaJPmodulejs from \"./ja-JP.mjs\";\nimport $894vb$koKRmodulejs from \"./ko-KR.mjs\";\nimport $894vb$ltLTmodulejs from \"./lt-LT.mjs\";\nimport $894vb$lvLVmodulejs from \"./lv-LV.mjs\";\nimport $894vb$nbNOmodulejs from \"./nb-NO.mjs\";\nimport $894vb$nlNLmodulejs from \"./nl-NL.mjs\";\nimport $894vb$plPLmodulejs from \"./pl-PL.mjs\";\nimport $894vb$ptBRmodulejs from \"./pt-BR.mjs\";\nimport $894vb$ptPTmodulejs from \"./pt-PT.mjs\";\nimport $894vb$roROmodulejs from \"./ro-RO.mjs\";\nimport $894vb$ruRUmodulejs from \"./ru-RU.mjs\";\nimport $894vb$skSKmodulejs from \"./sk-SK.mjs\";\nimport $894vb$slSImodulejs from \"./sl-SI.mjs\";\nimport $894vb$srSPmodulejs from \"./sr-SP.mjs\";\nimport $894vb$svSEmodulejs from \"./sv-SE.mjs\";\nimport $894vb$trTRmodulejs from \"./tr-TR.mjs\";\nimport $894vb$ukUAmodulejs from \"./uk-UA.mjs\";\nimport $894vb$zhCNmodulejs from \"./zh-CN.mjs\";\nimport $894vb$zhTWmodulejs from \"./zh-TW.mjs\";\n\nvar $a99895ee3dc79e61$exports = {};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$a99895ee3dc79e61$exports = {\n \"ar-AE\": $894vb$arAEmodulejs,\n \"bg-BG\": $894vb$bgBGmodulejs,\n \"cs-CZ\": $894vb$csCZmodulejs,\n \"da-DK\": $894vb$daDKmodulejs,\n \"de-DE\": $894vb$deDEmodulejs,\n \"el-GR\": $894vb$elGRmodulejs,\n \"en-US\": $894vb$enUSmodulejs,\n \"es-ES\": $894vb$esESmodulejs,\n \"et-EE\": $894vb$etEEmodulejs,\n \"fi-FI\": $894vb$fiFImodulejs,\n \"fr-FR\": $894vb$frFRmodulejs,\n \"he-IL\": $894vb$heILmodulejs,\n \"hr-HR\": $894vb$hrHRmodulejs,\n \"hu-HU\": $894vb$huHUmodulejs,\n \"it-IT\": $894vb$itITmodulejs,\n \"ja-JP\": $894vb$jaJPmodulejs,\n \"ko-KR\": $894vb$koKRmodulejs,\n \"lt-LT\": $894vb$ltLTmodulejs,\n \"lv-LV\": $894vb$lvLVmodulejs,\n \"nb-NO\": $894vb$nbNOmodulejs,\n \"nl-NL\": $894vb$nlNLmodulejs,\n \"pl-PL\": $894vb$plPLmodulejs,\n \"pt-BR\": $894vb$ptBRmodulejs,\n \"pt-PT\": $894vb$ptPTmodulejs,\n \"ro-RO\": $894vb$roROmodulejs,\n \"ru-RU\": $894vb$ruRUmodulejs,\n \"sk-SK\": $894vb$skSKmodulejs,\n \"sl-SI\": $894vb$slSImodulejs,\n \"sr-SP\": $894vb$srSPmodulejs,\n \"sv-SE\": $894vb$svSEmodulejs,\n \"tr-TR\": $894vb$trTRmodulejs,\n \"uk-UA\": $894vb$ukUAmodulejs,\n \"zh-CN\": $894vb$zhCNmodulejs,\n \"zh-TW\": $894vb$zhTWmodulejs\n};\n\n\nexport {$a99895ee3dc79e61$exports as default};\n//# sourceMappingURL=intlStrings.module.js.map\n","/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /* Inspired by https://github.com/AlmeroSteyn/react-aria-live */ const $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY = 7000;\nlet $319e236875307eab$var$liveAnnouncer = null;\nfunction $319e236875307eab$export$a9b970dcc4ae71a9(message, assertiveness = 'assertive', timeout = $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY) {\n if (!$319e236875307eab$var$liveAnnouncer) {\n $319e236875307eab$var$liveAnnouncer = new $319e236875307eab$var$LiveAnnouncer();\n // wait for the live announcer regions to be added to the dom, then announce\n // otherwise Safari won't announce the message if it's added too quickly\n // found most times less than 100ms were not consistent when announcing with Safari\n // IS_REACT_ACT_ENVIRONMENT is used by React 18. Previous versions checked for the `jest` global.\n // https://github.com/reactwg/react-18/discussions/102\n // if we're in a test environment, announce without waiting\n // @ts-ignore\n if (!(typeof IS_REACT_ACT_ENVIRONMENT === 'boolean' ? IS_REACT_ACT_ENVIRONMENT : typeof jest !== 'undefined')) setTimeout(()=>{\n if ($319e236875307eab$var$liveAnnouncer === null || $319e236875307eab$var$liveAnnouncer === void 0 ? void 0 : $319e236875307eab$var$liveAnnouncer.isAttached()) $319e236875307eab$var$liveAnnouncer === null || $319e236875307eab$var$liveAnnouncer === void 0 ? void 0 : $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);\n }, 100);\n else $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);\n } else $319e236875307eab$var$liveAnnouncer.announce(message, assertiveness, timeout);\n}\nfunction $319e236875307eab$export$d10ae4f68404609a(assertiveness) {\n if ($319e236875307eab$var$liveAnnouncer) $319e236875307eab$var$liveAnnouncer.clear(assertiveness);\n}\nfunction $319e236875307eab$export$d8686216b8b81b2f() {\n if ($319e236875307eab$var$liveAnnouncer) {\n $319e236875307eab$var$liveAnnouncer.destroy();\n $319e236875307eab$var$liveAnnouncer = null;\n }\n}\n// LiveAnnouncer is implemented using vanilla DOM, not React. That's because as of React 18\n// ReactDOM.render is deprecated, and the replacement, ReactDOM.createRoot is moved into a\n// subpath import `react-dom/client`. That makes it hard for us to support multiple React versions.\n// As a global API, we can't use portals without introducing a breaking API change. LiveAnnouncer\n// is simple enough to implement without React, so that's what we do here.\n// See this discussion for more details: https://github.com/reactwg/react-18/discussions/125#discussioncomment-2382638\nclass $319e236875307eab$var$LiveAnnouncer {\n isAttached() {\n var _this_node;\n return (_this_node = this.node) === null || _this_node === void 0 ? void 0 : _this_node.isConnected;\n }\n createLog(ariaLive) {\n let node = document.createElement('div');\n node.setAttribute('role', 'log');\n node.setAttribute('aria-live', ariaLive);\n node.setAttribute('aria-relevant', 'additions');\n return node;\n }\n destroy() {\n if (!this.node) return;\n document.body.removeChild(this.node);\n this.node = null;\n }\n announce(message, assertiveness = 'assertive', timeout = $319e236875307eab$var$LIVEREGION_TIMEOUT_DELAY) {\n var _this_assertiveLog, _this_politeLog;\n if (!this.node) return;\n let node = document.createElement('div');\n if (typeof message === 'object') {\n // To read an aria-labelledby, the element must have an appropriate role, such as img.\n node.setAttribute('role', 'img');\n node.setAttribute('aria-labelledby', message['aria-labelledby']);\n } else node.textContent = message;\n if (assertiveness === 'assertive') (_this_assertiveLog = this.assertiveLog) === null || _this_assertiveLog === void 0 ? void 0 : _this_assertiveLog.appendChild(node);\n else (_this_politeLog = this.politeLog) === null || _this_politeLog === void 0 ? void 0 : _this_politeLog.appendChild(node);\n if (message !== '') setTimeout(()=>{\n node.remove();\n }, timeout);\n }\n clear(assertiveness) {\n if (!this.node) return;\n if ((!assertiveness || assertiveness === 'assertive') && this.assertiveLog) this.assertiveLog.innerHTML = '';\n if ((!assertiveness || assertiveness === 'polite') && this.politeLog) this.politeLog.innerHTML = '';\n }\n constructor(){\n this.node = null;\n this.assertiveLog = null;\n this.politeLog = null;\n if (typeof document !== 'undefined') {\n this.node = document.createElement('div');\n this.node.dataset.liveAnnouncer = 'true';\n // copied from VisuallyHidden\n Object.assign(this.node.style, {\n border: 0,\n clip: 'rect(0 0 0 0)',\n clipPath: 'inset(50%)',\n height: '1px',\n margin: '-1px',\n overflow: 'hidden',\n padding: 0,\n position: 'absolute',\n width: '1px',\n whiteSpace: 'nowrap'\n });\n this.assertiveLog = this.createLog('assertive');\n this.node.appendChild(this.assertiveLog);\n this.politeLog = this.createLog('polite');\n this.node.appendChild(this.politeLog);\n document.body.prepend(this.node);\n }\n }\n}\n\n\nexport {$319e236875307eab$export$a9b970dcc4ae71a9 as announce, $319e236875307eab$export$d10ae4f68404609a as clearAnnouncer, $319e236875307eab$export$d8686216b8b81b2f as destroyAnnouncer};\n//# sourceMappingURL=LiveAnnouncer.module.js.map\n","import $5rwhf$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {clearAnnouncer as $5rwhf$clearAnnouncer, announce as $5rwhf$announce} from \"@react-aria/live-announcer\";\nimport {useRef as $5rwhf$useRef, useEffect as $5rwhf$useEffect} from \"react\";\nimport {useEffectEvent as $5rwhf$useEffectEvent, useGlobalListeners as $5rwhf$useGlobalListeners} from \"@react-aria/utils\";\nimport {useLocalizedStringFormatter as $5rwhf$useLocalizedStringFormatter} from \"@react-aria/i18n\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $d2e8511e6f209edf$export$e908e06f4b8e3402(props) {\n const _async = (0, $5rwhf$useRef)(undefined);\n let { value: value, textValue: textValue, minValue: minValue, maxValue: maxValue, isDisabled: isDisabled, isReadOnly: isReadOnly, isRequired: isRequired, onIncrement: onIncrement, onIncrementPage: onIncrementPage, onDecrement: onDecrement, onDecrementPage: onDecrementPage, onDecrementToMin: onDecrementToMin, onIncrementToMax: onIncrementToMax } = props;\n const stringFormatter = (0, $5rwhf$useLocalizedStringFormatter)((0, ($parcel$interopDefault($5rwhf$intlStringsmodulejs))), '@react-aria/spinbutton');\n const clearAsync = ()=>clearTimeout(_async.current);\n (0, $5rwhf$useEffect)(()=>{\n return ()=>clearAsync();\n }, []);\n let onKeyDown = (e)=>{\n if (e.ctrlKey || e.metaKey || e.shiftKey || e.altKey || isReadOnly || e.nativeEvent.isComposing) return;\n switch(e.key){\n case 'PageUp':\n if (onIncrementPage) {\n e.preventDefault();\n onIncrementPage === null || onIncrementPage === void 0 ? void 0 : onIncrementPage();\n break;\n }\n // fallthrough!\n case 'ArrowUp':\n case 'Up':\n if (onIncrement) {\n e.preventDefault();\n onIncrement === null || onIncrement === void 0 ? void 0 : onIncrement();\n }\n break;\n case 'PageDown':\n if (onDecrementPage) {\n e.preventDefault();\n onDecrementPage === null || onDecrementPage === void 0 ? void 0 : onDecrementPage();\n break;\n }\n // fallthrough\n case 'ArrowDown':\n case 'Down':\n if (onDecrement) {\n e.preventDefault();\n onDecrement === null || onDecrement === void 0 ? void 0 : onDecrement();\n }\n break;\n case 'Home':\n if (onDecrementToMin) {\n e.preventDefault();\n onDecrementToMin === null || onDecrementToMin === void 0 ? void 0 : onDecrementToMin();\n }\n break;\n case 'End':\n if (onIncrementToMax) {\n e.preventDefault();\n onIncrementToMax === null || onIncrementToMax === void 0 ? void 0 : onIncrementToMax();\n }\n break;\n }\n };\n let isFocused = (0, $5rwhf$useRef)(false);\n let onFocus = ()=>{\n isFocused.current = true;\n };\n let onBlur = ()=>{\n isFocused.current = false;\n };\n // Replace Unicode hyphen-minus (U+002D) with minus sign (U+2212).\n // This ensures that macOS VoiceOver announces it as \"minus\" even with other characters between the minus sign\n // and the number (e.g. currency symbol). Otherwise it announces nothing because it assumes the character is a hyphen.\n // In addition, replace the empty string with the word \"Empty\" so that iOS VoiceOver does not read \"50%\" for an empty field.\n let ariaTextValue = textValue === '' ? stringFormatter.format('Empty') : (textValue || `${value}`).replace('-', '\\u2212');\n (0, $5rwhf$useEffect)(()=>{\n if (isFocused.current) {\n (0, $5rwhf$clearAnnouncer)('assertive');\n (0, $5rwhf$announce)(ariaTextValue, 'assertive');\n }\n }, [\n ariaTextValue\n ]);\n const onIncrementPressStart = (0, $5rwhf$useEffectEvent)((initialStepDelay)=>{\n clearAsync();\n onIncrement === null || onIncrement === void 0 ? void 0 : onIncrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(()=>{\n if (maxValue === undefined || isNaN(maxValue) || value === undefined || isNaN(value) || value < maxValue) onIncrementPressStart(60);\n }, initialStepDelay);\n });\n const onDecrementPressStart = (0, $5rwhf$useEffectEvent)((initialStepDelay)=>{\n clearAsync();\n onDecrement === null || onDecrement === void 0 ? void 0 : onDecrement();\n // Start spinning after initial delay\n _async.current = window.setTimeout(()=>{\n if (minValue === undefined || isNaN(minValue) || value === undefined || isNaN(value) || value > minValue) onDecrementPressStart(60);\n }, initialStepDelay);\n });\n let cancelContextMenu = (e)=>{\n e.preventDefault();\n };\n let { addGlobalListener: addGlobalListener, removeAllGlobalListeners: removeAllGlobalListeners } = (0, $5rwhf$useGlobalListeners)();\n return {\n spinButtonProps: {\n role: 'spinbutton',\n 'aria-valuenow': value !== undefined && !isNaN(value) ? value : undefined,\n 'aria-valuetext': ariaTextValue,\n 'aria-valuemin': minValue,\n 'aria-valuemax': maxValue,\n 'aria-disabled': isDisabled || undefined,\n 'aria-readonly': isReadOnly || undefined,\n 'aria-required': isRequired || undefined,\n onKeyDown: onKeyDown,\n onFocus: onFocus,\n onBlur: onBlur\n },\n incrementButtonProps: {\n onPressStart: ()=>{\n onIncrementPressStart(400);\n addGlobalListener(window, 'contextmenu', cancelContextMenu);\n },\n onPressEnd: ()=>{\n clearAsync();\n removeAllGlobalListeners();\n },\n onFocus: onFocus,\n onBlur: onBlur\n },\n decrementButtonProps: {\n onPressStart: ()=>{\n onDecrementPressStart(400);\n addGlobalListener(window, 'contextmenu', cancelContextMenu);\n },\n onPressEnd: ()=>{\n clearAsync();\n removeAllGlobalListeners();\n },\n onFocus: onFocus,\n onBlur: onBlur\n }\n };\n}\n\n\nexport {$d2e8511e6f209edf$export$e908e06f4b8e3402 as useSpinButton};\n//# sourceMappingURL=useSpinButton.module.js.map\n","import {hookData as $16f0b7bb276bc17e$export$653eddfc964b0f8a} from \"./useDateField.mjs\";\nimport {useDisplayNames as $3aeceb3a64eb8358$export$d42c60378c8168f8} from \"./useDisplayNames.mjs\";\nimport {toCalendar as $4d1jn$toCalendar, CalendarDate as $4d1jn$CalendarDate} from \"@internationalized/date\";\nimport {isMac as $4d1jn$isMac, scrollIntoViewport as $4d1jn$scrollIntoViewport, getScrollParent as $4d1jn$getScrollParent, useEvent as $4d1jn$useEvent, useLayoutEffect as $4d1jn$useLayoutEffect, isIOS as $4d1jn$isIOS, useId as $4d1jn$useId, useLabels as $4d1jn$useLabels, mergeProps as $4d1jn$mergeProps} from \"@react-aria/utils\";\nimport {NumberParser as $4d1jn$NumberParser} from \"@internationalized/number\";\nimport $4d1jn$react, {useRef as $4d1jn$useRef, useMemo as $4d1jn$useMemo} from \"react\";\nimport {useLocale as $4d1jn$useLocale, useDateFormatter as $4d1jn$useDateFormatter, useFilter as $4d1jn$useFilter} from \"@react-aria/i18n\";\nimport {useSpinButton as $4d1jn$useSpinButton} from \"@react-aria/spinbutton\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\n\nfunction $32489daedd52963e$export$1315d136e6f7581(segment, state, ref) {\n let enteredKeys = (0, $4d1jn$useRef)('');\n let { locale: locale, direction: direction } = (0, $4d1jn$useLocale)();\n let displayNames = (0, $3aeceb3a64eb8358$export$d42c60378c8168f8)();\n let { ariaLabel: ariaLabel, ariaLabelledBy: ariaLabelledBy, ariaDescribedBy: ariaDescribedBy, focusManager: focusManager } = (0, $16f0b7bb276bc17e$export$653eddfc964b0f8a).get(state);\n let textValue = segment.isPlaceholder ? '' : segment.text;\n let options = (0, $4d1jn$useMemo)(()=>state.dateFormatter.resolvedOptions(), [\n state.dateFormatter\n ]);\n let monthDateFormatter = (0, $4d1jn$useDateFormatter)({\n month: 'long',\n timeZone: options.timeZone\n });\n let hourDateFormatter = (0, $4d1jn$useDateFormatter)({\n hour: 'numeric',\n hour12: options.hour12,\n timeZone: options.timeZone\n });\n if (segment.type === 'month' && !segment.isPlaceholder) {\n let monthTextValue = monthDateFormatter.format(state.dateValue);\n textValue = monthTextValue !== textValue ? `${textValue} \\u{2013} ${monthTextValue}` : monthTextValue;\n } else if (segment.type === 'hour' && !segment.isPlaceholder) textValue = hourDateFormatter.format(state.dateValue);\n let { spinButtonProps: spinButtonProps } = (0, $4d1jn$useSpinButton)({\n // The ARIA spec says aria-valuenow is optional if there's no value, but aXe seems to require it.\n // This doesn't seem to have any negative effects with real AT since we also use aria-valuetext.\n // https://github.com/dequelabs/axe-core/issues/3505\n value: segment.value,\n textValue: textValue,\n minValue: segment.minValue,\n maxValue: segment.maxValue,\n isDisabled: state.isDisabled,\n isReadOnly: state.isReadOnly || !segment.isEditable,\n isRequired: state.isRequired,\n onIncrement: ()=>{\n enteredKeys.current = '';\n state.increment(segment.type);\n },\n onDecrement: ()=>{\n enteredKeys.current = '';\n state.decrement(segment.type);\n },\n onIncrementPage: ()=>{\n enteredKeys.current = '';\n state.incrementPage(segment.type);\n },\n onDecrementPage: ()=>{\n enteredKeys.current = '';\n state.decrementPage(segment.type);\n },\n onIncrementToMax: ()=>{\n enteredKeys.current = '';\n if (segment.maxValue !== undefined) state.setSegment(segment.type, segment.maxValue);\n },\n onDecrementToMin: ()=>{\n enteredKeys.current = '';\n if (segment.minValue !== undefined) state.setSegment(segment.type, segment.minValue);\n }\n });\n let parser = (0, $4d1jn$useMemo)(()=>new (0, $4d1jn$NumberParser)(locale, {\n maximumFractionDigits: 0\n }), [\n locale\n ]);\n let backspace = ()=>{\n if (segment.text === segment.placeholder) focusManager.focusPrevious();\n if (parser.isValidPartialNumber(segment.text) && !state.isReadOnly && !segment.isPlaceholder) {\n let newValue = segment.text.slice(0, -1);\n let parsed = parser.parse(newValue);\n newValue = parsed === 0 ? '' : newValue;\n if (newValue.length === 0 || parsed === 0) state.clearSegment(segment.type);\n else state.setSegment(segment.type, parsed);\n enteredKeys.current = newValue;\n } else if (segment.type === 'dayPeriod') state.clearSegment(segment.type);\n };\n let onKeyDown = (e)=>{\n // Firefox does not fire selectstart for Ctrl/Cmd + A\n // https://bugzilla.mozilla.org/show_bug.cgi?id=1742153\n if (e.key === 'a' && ((0, $4d1jn$isMac)() ? e.metaKey : e.ctrlKey)) e.preventDefault();\n if (e.ctrlKey || e.metaKey || e.shiftKey || e.altKey) return;\n switch(e.key){\n case 'Backspace':\n case 'Delete':\n // Safari on iOS does not fire beforeinput for the backspace key because the cursor is at the start.\n e.preventDefault();\n e.stopPropagation();\n backspace();\n break;\n }\n };\n // Safari dayPeriod option doesn't work...\n let { startsWith: startsWith } = (0, $4d1jn$useFilter)({\n sensitivity: 'base'\n });\n let amPmFormatter = (0, $4d1jn$useDateFormatter)({\n hour: 'numeric',\n hour12: true\n });\n let am = (0, $4d1jn$useMemo)(()=>{\n let date = new Date();\n date.setHours(0);\n return amPmFormatter.formatToParts(date).find((part)=>part.type === 'dayPeriod').value;\n }, [\n amPmFormatter\n ]);\n let pm = (0, $4d1jn$useMemo)(()=>{\n let date = new Date();\n date.setHours(12);\n return amPmFormatter.formatToParts(date).find((part)=>part.type === 'dayPeriod').value;\n }, [\n amPmFormatter\n ]);\n // Get a list of formatted era names so users can type the first character to choose one.\n let eraFormatter = (0, $4d1jn$useDateFormatter)({\n year: 'numeric',\n era: 'narrow',\n timeZone: 'UTC'\n });\n let eras = (0, $4d1jn$useMemo)(()=>{\n if (segment.type !== 'era') return [];\n let date = (0, $4d1jn$toCalendar)(new (0, $4d1jn$CalendarDate)(1, 1, 1), state.calendar);\n let eras = state.calendar.getEras().map((era)=>{\n let eraDate = date.set({\n year: 1,\n month: 1,\n day: 1,\n era: era\n }).toDate('UTC');\n let parts = eraFormatter.formatToParts(eraDate);\n let formatted = parts.find((p)=>p.type === 'era').value;\n return {\n era: era,\n formatted: formatted\n };\n });\n // Remove the common prefix from formatted values. This is so that in calendars with eras like\n // ERA0 and ERA1 (e.g. Ethiopic), users can press \"0\" and \"1\" to select an era. In other cases,\n // the first letter is used.\n let prefixLength = $32489daedd52963e$var$commonPrefixLength(eras.map((era)=>era.formatted));\n if (prefixLength) for (let era of eras)era.formatted = era.formatted.slice(prefixLength);\n return eras;\n }, [\n eraFormatter,\n state.calendar,\n segment.type\n ]);\n let onInput = (key)=>{\n if (state.isDisabled || state.isReadOnly) return;\n let newValue = enteredKeys.current + key;\n switch(segment.type){\n case 'dayPeriod':\n if (startsWith(am, key)) state.setSegment('dayPeriod', 0);\n else if (startsWith(pm, key)) state.setSegment('dayPeriod', 12);\n else break;\n focusManager.focusNext();\n break;\n case 'era':\n {\n let matched = eras.find((e)=>startsWith(e.formatted, key));\n if (matched) {\n state.setSegment('era', matched.era);\n focusManager.focusNext();\n }\n break;\n }\n case 'day':\n case 'hour':\n case 'minute':\n case 'second':\n case 'month':\n case 'year':\n {\n if (!parser.isValidPartialNumber(newValue)) return;\n let numberValue = parser.parse(newValue);\n let segmentValue = numberValue;\n let allowsZero = segment.minValue === 0;\n if (segment.type === 'hour' && state.dateFormatter.resolvedOptions().hour12) {\n switch(state.dateFormatter.resolvedOptions().hourCycle){\n case 'h11':\n if (numberValue > 11) segmentValue = parser.parse(key);\n break;\n case 'h12':\n allowsZero = false;\n if (numberValue > 12) segmentValue = parser.parse(key);\n break;\n }\n if (segment.value !== undefined && segment.value >= 12 && numberValue > 1) numberValue += 12;\n } else if (segment.maxValue !== undefined && numberValue > segment.maxValue) segmentValue = parser.parse(key);\n if (isNaN(numberValue)) return;\n let shouldSetValue = segmentValue !== 0 || allowsZero;\n if (shouldSetValue) state.setSegment(segment.type, segmentValue);\n if (segment.maxValue !== undefined && (Number(numberValue + '0') > segment.maxValue || newValue.length >= String(segment.maxValue).length)) {\n enteredKeys.current = '';\n if (shouldSetValue) focusManager.focusNext();\n } else if (shouldSetValue) // Don't accept leading zeros except for fields that accept 0 as a entire value (aka 00 for minutes/seconds/etc)\n enteredKeys.current = newValue;\n break;\n }\n }\n };\n let onFocus = ()=>{\n enteredKeys.current = '';\n if (ref.current) (0, $4d1jn$scrollIntoViewport)(ref.current, {\n containingElement: (0, $4d1jn$getScrollParent)(ref.current)\n });\n // Collapse selection to start or Chrome won't fire input events.\n let selection = window.getSelection();\n selection === null || selection === void 0 ? void 0 : selection.collapse(ref.current);\n };\n let documentRef = (0, $4d1jn$useRef)(typeof document !== 'undefined' ? document : null);\n (0, $4d1jn$useEvent)(documentRef, 'selectionchange', ()=>{\n var _ref_current;\n // Enforce that the selection is collapsed when inside a date segment.\n // Otherwise, when tapping on a segment in Android Chrome and then entering text,\n // composition events will be fired that break the DOM structure and crash the page.\n let selection = window.getSelection();\n if ((selection === null || selection === void 0 ? void 0 : selection.anchorNode) && ((_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.contains(selection === null || selection === void 0 ? void 0 : selection.anchorNode))) selection.collapse(ref.current);\n });\n let compositionRef = (0, $4d1jn$useRef)('');\n (0, $4d1jn$useEvent)(ref, 'beforeinput', (e)=>{\n if (!ref.current) return;\n e.preventDefault();\n switch(e.inputType){\n case 'deleteContentBackward':\n case 'deleteContentForward':\n if (parser.isValidPartialNumber(segment.text) && !state.isReadOnly) backspace();\n break;\n case 'insertCompositionText':\n // insertCompositionText cannot be canceled.\n // Record the current state of the element so we can restore it in the `input` event below.\n compositionRef.current = ref.current.textContent;\n // Safari gets stuck in a composition state unless we also assign to the value here.\n // eslint-disable-next-line no-self-assign\n ref.current.textContent = ref.current.textContent;\n break;\n default:\n if (e.data != null) onInput(e.data);\n break;\n }\n });\n (0, $4d1jn$useEvent)(ref, 'input', (e)=>{\n let { inputType: inputType, data: data } = e;\n switch(inputType){\n case 'insertCompositionText':\n // Reset the DOM to how it was in the beforeinput event.\n if (ref.current) ref.current.textContent = compositionRef.current;\n // Android sometimes fires key presses of letters as composition events. Need to handle am/pm keys here too.\n // Can also happen e.g. with Pinyin keyboard on iOS.\n if (data != null && (startsWith(am, data) || startsWith(pm, data))) onInput(data);\n break;\n }\n });\n (0, $4d1jn$useLayoutEffect)(()=>{\n let element = ref.current;\n return ()=>{\n // If the focused segment is removed, focus the previous one, or the next one if there was no previous one.\n if (document.activeElement === element) {\n let prev = focusManager.focusPrevious();\n if (!prev) focusManager.focusNext();\n }\n };\n }, [\n ref,\n focusManager\n ]);\n // spinbuttons cannot be focused with VoiceOver on iOS.\n let touchPropOverrides = (0, $4d1jn$isIOS)() || segment.type === 'timeZoneName' ? {\n role: 'textbox',\n 'aria-valuemax': null,\n 'aria-valuemin': null,\n 'aria-valuetext': null,\n 'aria-valuenow': null\n } : {};\n // Only apply aria-describedby to the first segment, unless the field is invalid. This avoids it being\n // read every time the user navigates to a new segment.\n let firstSegment = (0, $4d1jn$useMemo)(()=>state.segments.find((s)=>s.isEditable), [\n state.segments\n ]);\n if (segment !== firstSegment && !state.isInvalid) ariaDescribedBy = undefined;\n let id = (0, $4d1jn$useId)();\n let isEditable = !state.isDisabled && !state.isReadOnly && segment.isEditable;\n // Prepend the label passed from the field to each segment name.\n // This is needed because VoiceOver on iOS does not announce groups.\n let name = segment.type === 'literal' ? '' : displayNames.of(segment.type);\n let labelProps = (0, $4d1jn$useLabels)({\n 'aria-label': `${name}${ariaLabel ? `, ${ariaLabel}` : ''}${ariaLabelledBy ? ', ' : ''}`,\n 'aria-labelledby': ariaLabelledBy\n });\n // Literal segments should not be visible to screen readers. We don't really need any of the above,\n // but the rules of hooks mean hooks cannot be conditional so we have to put this condition here.\n if (segment.type === 'literal') return {\n segmentProps: {\n 'aria-hidden': true\n }\n };\n let segmentStyle = {\n caretColor: 'transparent'\n };\n if (direction === 'rtl') {\n // While the bidirectional algorithm seems to work properly on inline elements with actual values, it returns different results for placeholder strings.\n // To ensure placeholder render in correct format, we apply the CSS equivalent of LRE (left-to-right embedding). See https://www.unicode.org/reports/tr9/#Explicit_Directional_Embeddings.\n // However, we apply this to both placeholders and date segments with an actual value because the date segments will shift around when deleting otherwise.\n segmentStyle.unicodeBidi = 'embed';\n let format = options[segment.type];\n if (format === 'numeric' || format === '2-digit') segmentStyle.direction = 'ltr';\n }\n return {\n segmentProps: (0, $4d1jn$mergeProps)(spinButtonProps, labelProps, {\n id: id,\n ...touchPropOverrides,\n 'aria-invalid': state.isInvalid ? 'true' : undefined,\n 'aria-describedby': ariaDescribedBy,\n 'aria-readonly': state.isReadOnly || !segment.isEditable ? 'true' : undefined,\n 'data-placeholder': segment.isPlaceholder || undefined,\n contentEditable: isEditable,\n suppressContentEditableWarning: isEditable,\n spellCheck: isEditable ? 'false' : undefined,\n autoCorrect: isEditable ? 'off' : undefined,\n // Capitalization was changed in React 17...\n [parseInt((0, $4d1jn$react).version, 10) >= 17 ? 'enterKeyHint' : 'enterkeyhint']: isEditable ? 'next' : undefined,\n inputMode: state.isDisabled || segment.type === 'dayPeriod' || segment.type === 'era' || !isEditable ? undefined : 'numeric',\n tabIndex: state.isDisabled ? undefined : 0,\n onKeyDown: onKeyDown,\n onFocus: onFocus,\n style: segmentStyle,\n // Prevent pointer events from reaching useDatePickerGroup, and allow native browser behavior to focus the segment.\n onPointerDown (e) {\n e.stopPropagation();\n },\n onMouseDown (e) {\n e.stopPropagation();\n }\n })\n };\n}\nfunction $32489daedd52963e$var$commonPrefixLength(strings) {\n // Sort the strings, and compare the characters in the first and last to find the common prefix.\n strings.sort();\n let first = strings[0];\n let last = strings[strings.length - 1];\n for(let i = 0; i < first.length; i++){\n if (first[i] !== last[i]) return i;\n }\n return 0;\n}\n\n\nexport {$32489daedd52963e$export$1315d136e6f7581 as useDateSegment};\n//# sourceMappingURL=useDateSegment.module.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue(arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(null, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { useRef } from 'react';\nimport classNames from 'classnames';\nimport { useDateSegment } from '@react-aria/datepicker';\nimport { DateSegment, DateFieldState } from '@react-stately/datepicker';\n\nimport './FieldSegment.scss';\n\ntype TimeSegmentProps = {\n segment: DateSegment;\n state: DateFieldState;\n 'aria-describedby'?: string;\n};\n\nexport const FieldSegment = ({ segment, state, ...rest }: TimeSegmentProps) => {\n const ref = useRef<HTMLDivElement>(null);\n const { segmentProps } = useDateSegment(segment, state, ref);\n\n return (\n <div\n {...segmentProps}\n ref={ref}\n className={classNames('eds-date-and-time-field__segment', {\n 'eds-date-and-time-field__segment--placeholder': segment.isPlaceholder,\n 'eds-date-and-time-field__segment--dot-separator':\n segment.text === '.' || segment.text === ':',\n })}\n tabIndex={state.isDisabled ? -1 : segmentProps.tabIndex}\n {...rest}\n >\n {segment.text}\n </div>\n );\n};\n","import {\n ZonedDateTime,\n CalendarDateTime,\n Time,\n parseAbsolute,\n DateValue,\n getLocalTimeZone,\n CalendarDate,\n toCalendarDateTime,\n toCalendarDate,\n toZoned,\n toTime,\n today,\n now,\n startOfWeek,\n startOfYear,\n} from '@internationalized/date';\nimport { MappedDateValue, TimeValue } from '@react-types/datepicker';\nimport { Calendar, GregorianCalendar } from '@internationalized/date';\n\nconst nativeDateToDateTime = (\n date: Date,\n timeZone?: string,\n offset?: number,\n) => {\n if (timeZone) {\n if (offset) {\n return new ZonedDateTime(\n date.getFullYear(),\n date.getMonth() + 1,\n date.getDate(),\n timeZone,\n offset,\n date.getHours(),\n date.getMinutes(),\n date.getSeconds(),\n date.getMilliseconds(),\n );\n }\n return parseAbsolute(date.toISOString(), timeZone);\n }\n\n return new CalendarDateTime(\n date.getFullYear(),\n date.getMonth() + 1,\n date.getDate(),\n date.getHours(),\n date.getMinutes(),\n date.getSeconds(),\n date.getMilliseconds(),\n );\n};\n\n/**\n * Tar inn et JS Date-objekt og returnerer et av DateValue-objektene fra @internationalized/date-pakken\n * @param {Date | null} date JS Date-objekt som ønskes konvertert til et DateValue-objekt\n * @param {boolean} noTimeOnlyDate Hvis tidspunktet er irrelevant kan denne settes til true, da får man et CalendarDate-objekt uten tidspunkt tilbake\n * @param {string} timeZone Tidssonen på IANA-formatet som tidpunktet skal konverteres til. Utelates denne får man et tidspunkt uten tidssone. Kan brukes med og uten en UTC-offset Vær obs på annen oppførsel med offset, les mer på beskrivelsen av offset\n * @param {number} offset UTC-offset i millisekunder, må brukes med en tidssone. Ved å legge på en offset lager du en variant av en tidssone. Det betyr at tidspunktet ikke endres (time, minutt, sekund uendret), men tidssonen, med tilhørende offset, tidspunktet er i endres.\n * @returns {CalendarDateTime | ZonedDateTime | CalendarDate | null} et av DateValue-objektene med verdier fra date eller null\n */\nexport function nativeDateToDateValue(\n date: Date | null,\n noTimeOnlyDate = false,\n timeZone?: string,\n offset?: number,\n) {\n if (date === null) return null;\n\n if (noTimeOnlyDate)\n return new CalendarDate(\n date.getFullYear(),\n date.getMonth() + 1,\n date.getDate(),\n );\n\n return nativeDateToDateTime(date, timeZone, offset);\n}\n\n/**\n * Tar inn et JS Date-objekt og returnerer et av TimeValue-objektene fra @internationalized/date-pakken\n * @param {Date | null} date JS Date-objekt som ønskes konvertert til et TimeValue-objekt\n * @param {boolean} noDateOnlyTime Hvis datoen er irrelevant kan denne settes til true, da får man et Time-objekt uten dato tilbake\n * @param {string} timeZone Tidssonen på IANA-formatet som tidpunktet skal konverteres til. Utelates denne får man et tidspunkt uten tidssone. Kan brukes med og uten en UTC-offset Vær obs på annen oppførsel med offset, les mer på beskrivelsen av offset\n * @param {number} offset UTC-offset i millisekunder, må brukes med en tidssone. Ved å legge på en offset lager du en variant av en tidssone. Det betyr at tidspunktet ikke endres (time, minutt, sekund uendret), men tidssonen, med tilhørende offset, tidspunktet er i endres.\n * @returns {Time | CalendarDateTime | ZonedDateTime | null} et av TimeValue-objektene med verdier fra date eller null\n */\nexport function nativeDateToTimeValue(\n date: Date | null,\n noDateOnlyTime = false,\n timeZone?: string,\n offset?: number,\n) {\n if (date === null) return null;\n\n if (noDateOnlyTime)\n return new Time(\n date.getHours(),\n date.getMinutes(),\n date.getSeconds(),\n date.getMilliseconds(),\n );\n\n return nativeDateToDateTime(date, timeZone, offset);\n}\n\n/**\n * Tar inn et av Date- eller TimeValue-objektene fra \\@internationalized/date-pakken og returnerer et JS Date-objekt\n * @param {DateValue | TimeValue | null} value En dato eller et tidspunkt på Date- eller TimeValue-formatet som ønskes konvertert til et JS Date-objekt\n * @param {string} timeZoneForCalendarDateTime Tidssonen value er i. Fungerer kun med typen er CalendarDateTime\n * @returns {Date | null} et Date-objekt med verdier fra time eller null\n */\nexport function timeOrDateValueToNativeDate(\n value: TimeValue | DateValue | null,\n timeZoneForCalendarDateTime?: string,\n) {\n if (value === null) return null;\n\n // type is Time\n if (!('day' in value)) {\n const date = new Date();\n date.setHours(value.hour);\n date.setMinutes(value.minute);\n date.setSeconds(value.second);\n date.setMilliseconds(value.millisecond);\n return date;\n }\n\n // type is CalendarDate\n if (!('hour' in value)) {\n return value.toDate(timeZoneForCalendarDateTime ?? getLocalTimeZone());\n }\n\n // type is CalendarDateTime\n if (!('timeZone' in value)) {\n if (timeZoneForCalendarDateTime)\n return value.toDate(timeZoneForCalendarDateTime);\n\n return value.toDate(getLocalTimeZone());\n }\n\n // type is ZonedDateTime\n return value.toDate();\n}\n\nexport const createCalendar = (identifier = 'gregory'): Calendar => {\n switch (identifier) {\n case 'gregory':\n return new GregorianCalendar();\n default:\n throw new Error(`Unsupported calendar ${identifier}`);\n }\n};\n\nexport const ariaLabelIfNorwegian = (\n norwegianAriaLabel: string,\n locale: string,\n propsCollection: any,\n) => {\n if (locale.toLowerCase() !== 'no-no') return propsCollection['aria-label'];\n return norwegianAriaLabel;\n};\n\nexport const lastMillisecondOfDay = (dateValue: DateValue) =>\n toCalendarDateTime(dateValue.add({ days: 1 })).add({\n milliseconds: -1,\n });\n\nexport const convertValueToType = ({\n value,\n type,\n timezone = 'Europe/Oslo',\n}: {\n value: DateValue | TimeValue | null;\n type: 'CalendarDate' | 'CalendarDateTime' | 'ZonedDateTime' | 'Time';\n timezone?: string;\n}) => {\n if (value === null) return null;\n switch (type) {\n case 'CalendarDate':\n if (!('day' in value)) return today(timezone);\n return toCalendarDate(value);\n\n case 'CalendarDateTime':\n if (!('day' in value)) return toCalendarDateTime(today(timezone), value);\n return toCalendarDateTime(value);\n\n case 'ZonedDateTime':\n if (!('day' in value))\n return toZoned(toCalendarDateTime(today(timezone), value), timezone);\n return toZoned(value, timezone);\n\n case 'Time':\n if (!('hour' in value)) return toTime(now(timezone));\n if (!('day' in value)) return value;\n return toTime(value);\n\n default:\n return value;\n }\n};\n\nexport const modulo = (a: number, b: number) => ((a % b) + b) % b;\n\nexport const focusSegment = (\n ref: React.RefObject<HTMLDivElement>,\n segment: 'first' | 'last',\n) => {\n if (ref.current) {\n const segments = ref.current.querySelectorAll(\n '.eds-date-and-time-field__segment',\n );\n const firstSegment = segments[0] as HTMLElement;\n const lastSegment = segments[segments.length - 1] as HTMLElement;\n switch (segment) {\n case 'first':\n return firstSegment.focus();\n case 'last':\n return lastSegment.focus();\n }\n }\n};\n\n/** Based on code from https://stackoverflow.com/questions/6117814/get-week-of-year-in-javascript-like-in-php */\nexport function getWeekNumberForDate(date: DateValue | null) {\n if (date === null) return -1;\n const calendarDate = convertValueToType({\n value: date,\n type: 'CalendarDate',\n }) as CalendarDate;\n const firstDayOfWeek = startOfWeek(calendarDate, 'no-NO');\n const thursdayOfWeek = firstDayOfWeek.add({ days: 3 });\n const firstDayOfYearForThursday = startOfYear(thursdayOfWeek);\n const weekNumber = Math.ceil(\n (thursdayOfWeek.compare(firstDayOfYearForThursday) + 1) / 7,\n );\n return weekNumber;\n}\n\nexport type ForcedReturnType =\n | 'CalendarDate'\n | 'CalendarDateTime'\n | 'ZonedDateTime'\n | undefined;\n\nexport function handleOnChange<DateType extends DateValue>({\n value,\n selectedDate,\n forcedReturnType,\n onChange,\n}: {\n value: MappedDateValue<DateType> | null;\n selectedDate: DateType | null;\n forcedReturnType: ForcedReturnType;\n onChange?:\n | ((value: MappedDateValue<DateType> | null) => void)\n | ((value: DateValue | null) => void);\n}) {\n if (forcedReturnType !== undefined || !selectedDate) {\n return onChange?.(\n convertValueToType({\n value,\n type: forcedReturnType ?? 'ZonedDateTime',\n timezone:\n value !== null && 'timezone' in value\n ? (value.timezone as string)\n : undefined,\n }) as MappedDateValue<typeof forcedReturnType> | null,\n );\n }\n\n onChange?.(value);\n}\n","import React, { ReactNode, useEffect, useRef } from 'react';\n\nimport {\n DateFieldStateOptions,\n useDateFieldState,\n} from '@react-stately/datepicker';\nimport { useDateField } from '@react-aria/datepicker';\nimport { I18nProvider, useLocale } from '@react-aria/i18n';\nimport classNames from 'classnames';\n\nimport type {\n DateValue,\n AriaDatePickerProps,\n MappedDateValue,\n Granularity,\n} from '@react-types/datepicker';\n\nimport { BaseFormControl, BaseFormControlProps } from '@entur/form';\nimport {\n ConditionalWrapper,\n mergeRefs,\n useRandomId,\n VariantType,\n} from '@entur/utils';\n\nimport { FieldSegment } from '../shared/FieldSegment';\nimport {\n createCalendar,\n ForcedReturnType,\n handleOnChange,\n lastMillisecondOfDay,\n} from '../shared/utils';\n\nimport './DateField.scss';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\nexport type ExtendedDateFieldProps<DateType extends DateValue> = Omit<\n AriaDatePickerProps<DateType>,\n | keyof BaseDateFieldProps<DateType>\n | 'value'\n | 'hideTimeZone'\n | 'placeholder'\n | 'placeholderValue'\n | 'defaultValue'\n | 'minValue'\n | 'maxValue'\n> &\n Partial<\n Omit<\n BaseFormControlProps,\n | keyof BaseDateFieldProps<DateType>\n | 'children'\n | 'defaultValue'\n | 'value'\n | 'isFilled'\n | 'size'\n >\n >;\n\nexport type BaseDateFieldProps<DateType extends DateValue> = {\n /** Den valgte tiden. Tid i '@internationalized/date'-pakkens format */\n selectedDate: DateType | null;\n /** Kalles når dato endres. Tid i '@internationalized/date'-pakkens format */\n onChange?: (value: MappedDateValue<DateType> | null) => void;\n /** Ledetekst til DateField */\n label: string;\n /** BCP47-språkkoden til locale-en du ønsker å bruke.\n * @default Brukerenhetens selvvalgte locale\n */\n locale?: string;\n /** Viser den gjeldende tidssonen hvis en er valgt\n * @default false\n */\n showTimeZone?: boolean;\n /** Brukes for å vise tid i datovelgeren. Velg minste enhet som skal vises.\n * Hvis du vil vise tid vil \"minute\" vise minutt og ikke sekund, mens \"second\" viser\n * sekunder også.\n * @default \"day\"\n */\n granularity?: Granularity;\n /** Viser tidspunkt i tillegg til dato.\n * OBS: selectedDate må være av typen CalendarDateTime eller ZonedDateTime\n */\n showTime?: boolean;\n /** Tidligste gyldige datovalg.\n * Eks: today(getLocalTimeZone()) == i dag i lokal tidssone.\n *\n * OBS: Hvis du bruker dato med tid vil tidspunktet også tas hensyn til.\n * Gyldig fra og med den tiden som legges inn som minDate.\n * Dato uten tid vil være gyldig hele minDate-dagen */\n minDate?: DateValue;\n /** Seneste gyldige datovalg.\n * Eks: today(getLocalTimeZone()).add({days: 1}) == i morgen i lokal tidssone\n *\n * OBS: Hvis du bruker dato med tid vil tidspunktet også tas hensyn til.\n * Gyldig til og med den tiden som legges inn som maxDate.\n * Dato uten tid vil være gyldig hele maxDate-dagen */\n maxDate?: DateValue;\n /** Funksjon som tar inn en dato og sier om den er utilgjengelig.\n * Eks. (date) => isWeekend(date, 'no-NO') == helgedager er ikke tilgjengelig */\n isDateUnavailable?: (date: DateValue) => boolean;\n /** Tvinger typen på onChange til den gitte typen.\n * Dette er nyttig når utgangsverdien din er 'null', men du ønsker at\n * DatePicker alltid skal returnere f.eks ZonedDateTime.\n *\n * Som standard returnerer onChange DateValue basert på selectedDate,\n * eller CalendarDate hvis selectedDate er 'null'.\n *\n * @default undefined\n */\n forcedReturnType?: ForcedReturnType;\n /** Varselmelding, som vil komme under TimePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n /** Varselmelding som forteller om ugyldig dato\n * @default \"Ugyldig dato\"\n */\n validationFeedback?: string;\n /** Valideringsvariant for melding om ugyldig dato\n * @default \"negative\"\n */\n validationVariant?: VariantType | typeof error | typeof info;\n /** Callback-funksjon for når valideringen til datovelgeren endrer seg */\n onValidate?: (isValid?: boolean) => void;\n labelTooltip?: React.ReactNode;\n labelProps?: React.DOMAttributes<Element>;\n fieldProps?: DateFieldProps<DateType>;\n dateFieldRef?: React.Ref<HTMLDivElement>;\n disabled?: boolean;\n readOnly?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n style?: React.CSSProperties;\n};\n\nexport type DateFieldProps<DateType extends DateValue> =\n BaseDateFieldProps<DateType> & ExtendedDateFieldProps<DateType>;\n\nexport const DateField = <DateType extends DateValue>({\n selectedDate,\n onChange,\n label,\n locale: customLocale,\n showTimeZone,\n showTime,\n granularity = showTime ? 'minute' : 'day',\n disabled,\n readOnly,\n isDisabled,\n variant,\n feedback,\n validationVariant = 'negative',\n validationFeedback = 'Ugyldig dato',\n labelTooltip,\n minDate,\n maxDate,\n forcedReturnType,\n style,\n className,\n labelProps: parentLabelProps,\n append,\n prepend,\n onValidate,\n dateFieldRef: ref,\n ...rest\n}: DateFieldProps<DateType>) => {\n const { locale } = useLocale();\n\n const _props: DateFieldStateOptions<DateType> = {\n ...rest,\n label,\n locale: customLocale ?? locale,\n createCalendar,\n value: selectedDate,\n onChange: value =>\n handleOnChange<DateType>({\n value,\n selectedDate,\n forcedReturnType,\n onChange,\n }),\n hideTimeZone: !showTimeZone,\n granularity,\n minValue: minDate,\n // this weird logic makes sure the entire day is included if no time is provided in maxDate\n maxValue:\n 'hour' in (maxDate ?? {})\n ? maxDate\n : maxDate !== undefined\n ? lastMillisecondOfDay(maxDate)\n : undefined,\n isDisabled: isDisabled || disabled || readOnly,\n shouldForceLeadingZeros: true,\n };\n\n const state = useDateFieldState(_props);\n\n const dateFieldRef = useRef(null);\n const { labelProps, fieldProps } = useDateField(_props, state, dateFieldRef);\n\n useEffect(() => onValidate?.(!state.isInvalid), [state.isInvalid]);\n\n const id = useRandomId('datefield');\n\n return (\n <ConditionalWrapper\n condition={customLocale !== undefined}\n wrapper={(child: ReactNode) => (\n <I18nProvider locale={customLocale}>{child}</I18nProvider>\n )}\n >\n <BaseFormControl\n append={append}\n ariaAlertOnFeedback\n className={classNames('eds-datefield', className, {\n 'eds-datefield--has-tooltip': labelTooltip !== undefined,\n })}\n disabled={isDisabled || disabled}\n readOnly={readOnly}\n disableLabelAnimation\n feedback={\n feedback ??\n (state.validationState === 'invalid' ? validationFeedback : undefined)\n }\n label={label}\n labelId={id}\n labelProps={parentLabelProps ?? labelProps}\n labelTooltip={labelTooltip}\n prepend={prepend}\n ref={mergeRefs(ref, dateFieldRef)}\n style={style}\n variant={variant ?? (state.isInvalid ? validationVariant : undefined)}\n {...fieldProps}\n >\n {state.segments.map((segment, i) => (\n <FieldSegment segment={segment} state={state} key={i} />\n ))}\n </BaseFormControl>\n </ConditionalWrapper>\n );\n};\n","var $39324ace0d945f59$exports = {};\n$39324ace0d945f59$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{625}\\u{644}\\u{649} ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} \\u{627}\\u{644}\\u{645}\\u{62D}\\u{62F}\\u{62F}`,\n \"finishRangeSelectionPrompt\": `\\u{627}\\u{646}\\u{642}\\u{631} \\u{644}\\u{625}\\u{646}\\u{647}\\u{627}\\u{621} \\u{639}\\u{645}\\u{644}\\u{64A}\\u{629} \\u{62A}\\u{62D}\\u{62F}\\u{64A}\\u{62F} \\u{646}\\u{637}\\u{627}\\u{642} \\u{627}\\u{644}\\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E}`,\n \"maximumDate\": `\\u{622}\\u{62E}\\u{631} \\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E} \\u{645}\\u{62A}\\u{627}\\u{62D}`,\n \"minimumDate\": `\\u{623}\\u{648}\\u{644} \\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E} \\u{645}\\u{62A}\\u{627}\\u{62D}`,\n \"next\": `\\u{627}\\u{644}\\u{62A}\\u{627}\\u{644}\\u{64A}`,\n \"previous\": `\\u{627}\\u{644}\\u{633}\\u{627}\\u{628}\\u{642}`,\n \"selectedDateDescription\": (args)=>`\\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E} \\u{645}\\u{62D}\\u{62F}\\u{62F}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{627}\\u{644}\\u{645}\\u{62F}\\u{649} \\u{627}\\u{644}\\u{632}\\u{645}\\u{646}\\u{64A} \\u{627}\\u{644}\\u{645}\\u{62D}\\u{62F}\\u{62F}: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{627}\\u{646}\\u{642}\\u{631} \\u{644}\\u{628}\\u{62F}\\u{621} \\u{639}\\u{645}\\u{644}\\u{64A}\\u{629} \\u{62A}\\u{62D}\\u{62F}\\u{64A}\\u{62F} \\u{646}\\u{637}\\u{627}\\u{642} \\u{627}\\u{644}\\u{62A}\\u{627}\\u{631}\\u{64A}\\u{62E}`,\n \"todayDate\": (args)=>`\\u{627}\\u{644}\\u{64A}\\u{648}\\u{645}\\u{60C} ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{627}\\u{644}\\u{64A}\\u{648}\\u{645}\\u{60C} ${args.date} \\u{645}\\u{62D}\\u{62F}\\u{62F}`\n};\n\n\nexport {$39324ace0d945f59$exports as default};\n//# sourceMappingURL=ar-AE.module.js.map\n","var $1830a539e98c7baf$exports = {};\n$1830a539e98c7baf$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{434}\\u{43E} ${args.endDate}`,\n \"dateSelected\": (args)=>`\\u{418}\\u{437}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43E} \\u{435} ${args.date}`,\n \"finishRangeSelectionPrompt\": `\\u{41D}\\u{430}\\u{442}\\u{438}\\u{441}\\u{43D}\\u{435}\\u{442}\\u{435}, \\u{437}\\u{430} \\u{434}\\u{430} \\u{434}\\u{43E}\\u{432}\\u{44A}\\u{440}\\u{448}\\u{438}\\u{442}\\u{435} \\u{438}\\u{437}\\u{431}\\u{43E}\\u{440}\\u{430} \\u{43D}\\u{430} \\u{432}\\u{440}\\u{435}\\u{43C}\\u{435}\\u{432}\\u{438} \\u{438}\\u{43D}\\u{442}\\u{435}\\u{440}\\u{432}\\u{430}\\u{43B}`,\n \"maximumDate\": `\\u{41F}\\u{43E}\\u{441}\\u{43B}\\u{435}\\u{434}\\u{43D}\\u{430} \\u{43D}\\u{430}\\u{43B}\\u{438}\\u{447}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}`,\n \"minimumDate\": `\\u{41F}\\u{44A}\\u{440}\\u{432}\\u{430} \\u{43D}\\u{430}\\u{43B}\\u{438}\\u{447}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}`,\n \"next\": `\\u{41D}\\u{430}\\u{43F}\\u{440}\\u{435}\\u{434}`,\n \"previous\": `\\u{41D}\\u{430}\\u{437}\\u{430}\\u{434}`,\n \"selectedDateDescription\": (args)=>`\\u{418}\\u{437}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{418}\\u{437}\\u{431}\\u{440}\\u{430}\\u{43D} \\u{434}\\u{438}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{41D}\\u{430}\\u{442}\\u{438}\\u{441}\\u{43D}\\u{435}\\u{442}\\u{435}, \\u{437}\\u{430} \\u{434}\\u{430} \\u{43F}\\u{440}\\u{438}\\u{441}\\u{442}\\u{44A}\\u{43F}\\u{438}\\u{442}\\u{435} \\u{43A}\\u{44A}\\u{43C} \\u{438}\\u{437}\\u{431}\\u{43E}\\u{440}\\u{430} \\u{43D}\\u{430} \\u{432}\\u{440}\\u{435}\\u{43C}\\u{435}\\u{432}\\u{438} \\u{438}\\u{43D}\\u{442}\\u{435}\\u{440}\\u{432}\\u{430}\\u{43B}`,\n \"todayDate\": (args)=>`\\u{414}\\u{43D}\\u{435}\\u{441}, ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{414}\\u{43D}\\u{435}\\u{441}, ${args.date} \\u{441}\\u{430} \\u{438}\\u{437}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{438}`\n};\n\n\nexport {$1830a539e98c7baf$exports as default};\n//# sourceMappingURL=bg-BG.module.js.map\n","var $f4b92528965aab97$exports = {};\n$f4b92528965aab97$exports = {\n \"dateRange\": (args)=>`${args.startDate} a\\u{17E} ${args.endDate}`,\n \"dateSelected\": (args)=>`Vybr\\xe1no ${args.date}`,\n \"finishRangeSelectionPrompt\": `Kliknut\\xedm dokon\\u{10D}\\xedte v\\xfdb\\u{11B}r rozsahu dat`,\n \"maximumDate\": `Posledn\\xed dostupn\\xe9 datum`,\n \"minimumDate\": `Prvn\\xed dostupn\\xe9 datum`,\n \"next\": `Dal\\u{161}\\xed`,\n \"previous\": `P\\u{159}edchoz\\xed`,\n \"selectedDateDescription\": (args)=>`Vybran\\xe9 datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Vybran\\xe9 obdob\\xed: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Kliknut\\xedm zah\\xe1j\\xedte v\\xfdb\\u{11B}r rozsahu dat`,\n \"todayDate\": (args)=>`Dnes, ${args.date}`,\n \"todayDateSelected\": (args)=>`Dnes, vybr\\xe1no ${args.date}`\n};\n\n\nexport {$f4b92528965aab97$exports as default};\n//# sourceMappingURL=cs-CZ.module.js.map\n","var $1cd578ef0547c8f1$exports = {};\n$1cd578ef0547c8f1$exports = {\n \"dateRange\": (args)=>`${args.startDate} til ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} valgt`,\n \"finishRangeSelectionPrompt\": `Klik for at fuldf\\xf8re valg af datoomr\\xe5de`,\n \"maximumDate\": `Sidste ledige dato`,\n \"minimumDate\": `F\\xf8rste ledige dato`,\n \"next\": `N\\xe6ste`,\n \"previous\": `Forrige`,\n \"selectedDateDescription\": (args)=>`Valgt dato: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valgt interval: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Klik for at starte valg af datoomr\\xe5de`,\n \"todayDate\": (args)=>`I dag, ${args.date}`,\n \"todayDateSelected\": (args)=>`I dag, ${args.date} valgt`\n};\n\n\nexport {$1cd578ef0547c8f1$exports as default};\n//# sourceMappingURL=da-DK.module.js.map\n","var $db55a8973925d619$exports = {};\n$db55a8973925d619$exports = {\n \"dateRange\": (args)=>`${args.startDate} bis ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} ausgew\\xe4hlt`,\n \"finishRangeSelectionPrompt\": `Klicken, um die Auswahl des Datumsbereichs zu beenden`,\n \"maximumDate\": `Letztes verf\\xfcgbares Datum`,\n \"minimumDate\": `Erstes verf\\xfcgbares Datum`,\n \"next\": `Weiter`,\n \"previous\": `Zur\\xfcck`,\n \"selectedDateDescription\": (args)=>`Ausgew\\xe4hltes Datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Ausgew\\xe4hlter Bereich: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Klicken, um die Auswahl des Datumsbereichs zu beginnen`,\n \"todayDate\": (args)=>`Heute, ${args.date}`,\n \"todayDateSelected\": (args)=>`Heute, ${args.date} ausgew\\xe4hlt`\n};\n\n\nexport {$db55a8973925d619$exports as default};\n//# sourceMappingURL=de-DE.module.js.map\n","var $ec6937d58566d443$exports = {};\n$ec6937d58566d443$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{3AD}\\u{3C9}\\u{3C2} ${args.endDate}`,\n \"dateSelected\": (args)=>`\\u{395}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3AD}\\u{3C7}\\u{3B8}\\u{3B7}\\u{3BA}\\u{3B5} ${args.date}`,\n \"finishRangeSelectionPrompt\": `\\u{39A}\\u{3AC}\\u{3BD}\\u{3C4}\\u{3B5} \\u{3BA}\\u{3BB}\\u{3B9}\\u{3BA} \\u{3B3}\\u{3B9}\\u{3B1} \\u{3BD}\\u{3B1} \\u{3BF}\\u{3BB}\\u{3BF}\\u{3BA}\\u{3BB}\\u{3B7}\\u{3C1}\\u{3CE}\\u{3C3}\\u{3B5}\\u{3C4}\\u{3B5} \\u{3C4}\\u{3B7}\\u{3BD} \\u{3B5}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3BF}\\u{3B3}\\u{3AE} \\u{3B5}\\u{3CD}\\u{3C1}\\u{3BF}\\u{3C5}\\u{3C2} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3B9}\\u{3CE}\\u{3BD}`,\n \"maximumDate\": `\\u{3A4}\\u{3B5}\\u{3BB}\\u{3B5}\\u{3C5}\\u{3C4}\\u{3B1}\\u{3AF}\\u{3B1} \\u{3B4}\\u{3B9}\\u{3B1}\\u{3B8}\\u{3AD}\\u{3C3}\\u{3B9}\\u{3BC}\\u{3B7} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1}`,\n \"minimumDate\": `\\u{3A0}\\u{3C1}\\u{3CE}\\u{3C4}\\u{3B7} \\u{3B4}\\u{3B9}\\u{3B1}\\u{3B8}\\u{3AD}\\u{3C3}\\u{3B9}\\u{3BC}\\u{3B7} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1}`,\n \"next\": `\\u{395}\\u{3C0}\\u{3CC}\\u{3BC}\\u{3B5}\\u{3BD}\\u{3BF}`,\n \"previous\": `\\u{3A0}\\u{3C1}\\u{3BF}\\u{3B7}\\u{3B3}\\u{3BF}\\u{3CD}\\u{3BC}\\u{3B5}\\u{3BD}\\u{3BF}`,\n \"selectedDateDescription\": (args)=>`\\u{395}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3B5}\\u{3B3}\\u{3BC}\\u{3AD}\\u{3BD}\\u{3B7} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3AF}\\u{3B1}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{395}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3B5}\\u{3B3}\\u{3BC}\\u{3AD}\\u{3BD}\\u{3BF} \\u{3B5}\\u{3CD}\\u{3C1}\\u{3BF}\\u{3C2}: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{39A}\\u{3AC}\\u{3BD}\\u{3C4}\\u{3B5} \\u{3BA}\\u{3BB}\\u{3B9}\\u{3BA} \\u{3B3}\\u{3B9}\\u{3B1} \\u{3BD}\\u{3B1} \\u{3BE}\\u{3B5}\\u{3BA}\\u{3B9}\\u{3BD}\\u{3AE}\\u{3C3}\\u{3B5}\\u{3C4}\\u{3B5} \\u{3C4}\\u{3B7}\\u{3BD} \\u{3B5}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3BF}\\u{3B3}\\u{3AE} \\u{3B5}\\u{3CD}\\u{3C1}\\u{3BF}\\u{3C5}\\u{3C2} \\u{3B7}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3BF}\\u{3BC}\\u{3B7}\\u{3BD}\\u{3B9}\\u{3CE}\\u{3BD}`,\n \"todayDate\": (args)=>`\\u{3A3}\\u{3AE}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3B1}, ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{3A3}\\u{3AE}\\u{3BC}\\u{3B5}\\u{3C1}\\u{3B1}, \\u{3B5}\\u{3C0}\\u{3B9}\\u{3BB}\\u{3AD}\\u{3C7}\\u{3C4}\\u{3B7}\\u{3BA}\\u{3B5} ${args.date}`\n};\n\n\nexport {$ec6937d58566d443$exports as default};\n//# sourceMappingURL=el-GR.module.js.map\n","var $1f5cea0742dc284a$exports = {};\n$1f5cea0742dc284a$exports = {\n \"previous\": `Previous`,\n \"next\": `Next`,\n \"selectedDateDescription\": (args)=>`Selected Date: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Selected Range: ${args.dateRange}`,\n \"todayDate\": (args)=>`Today, ${args.date}`,\n \"todayDateSelected\": (args)=>`Today, ${args.date} selected`,\n \"dateSelected\": (args)=>`${args.date} selected`,\n \"startRangeSelectionPrompt\": `Click to start selecting date range`,\n \"finishRangeSelectionPrompt\": `Click to finish selecting date range`,\n \"minimumDate\": `First available date`,\n \"maximumDate\": `Last available date`,\n \"dateRange\": (args)=>`${args.startDate} to ${args.endDate}`\n};\n\n\nexport {$1f5cea0742dc284a$exports as default};\n//# sourceMappingURL=en-US.module.js.map\n","var $2ca7ea366384817b$exports = {};\n$2ca7ea366384817b$exports = {\n \"dateRange\": (args)=>`${args.startDate} a ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} seleccionado`,\n \"finishRangeSelectionPrompt\": `Haga clic para terminar de seleccionar rango de fechas`,\n \"maximumDate\": `\\xdaltima fecha disponible`,\n \"minimumDate\": `Primera fecha disponible`,\n \"next\": `Siguiente`,\n \"previous\": `Anterior`,\n \"selectedDateDescription\": (args)=>`Fecha seleccionada: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Intervalo seleccionado: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Haga clic para comenzar a seleccionar un rango de fechas`,\n \"todayDate\": (args)=>`Hoy, ${args.date}`,\n \"todayDateSelected\": (args)=>`Hoy, ${args.date} seleccionado`\n};\n\n\nexport {$2ca7ea366384817b$exports as default};\n//# sourceMappingURL=es-ES.module.js.map\n","var $97874a7fe9cd091f$exports = {};\n$97874a7fe9cd091f$exports = {\n \"dateRange\": (args)=>`${args.startDate} kuni ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} valitud`,\n \"finishRangeSelectionPrompt\": `Kl\\xf5psake kuup\\xe4evavahemiku valimise l\\xf5petamiseks`,\n \"maximumDate\": `Viimane saadaolev kuup\\xe4ev`,\n \"minimumDate\": `Esimene saadaolev kuup\\xe4ev`,\n \"next\": `J\\xe4rgmine`,\n \"previous\": `Eelmine`,\n \"selectedDateDescription\": (args)=>`Valitud kuup\\xe4ev: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valitud vahemik: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Kl\\xf5psake kuup\\xe4evavahemiku valimiseks`,\n \"todayDate\": (args)=>`T\\xe4na, ${args.date}`,\n \"todayDateSelected\": (args)=>`T\\xe4na, ${args.date} valitud`\n};\n\n\nexport {$97874a7fe9cd091f$exports as default};\n//# sourceMappingURL=et-EE.module.js.map\n","var $5d376b7fce1a45b2$exports = {};\n$5d376b7fce1a45b2$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{2013} ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} valittu`,\n \"finishRangeSelectionPrompt\": `Lopeta p\\xe4iv\\xe4m\\xe4\\xe4r\\xe4alueen valinta napsauttamalla t\\xe4t\\xe4.`,\n \"maximumDate\": `Viimeinen varattavissa oleva p\\xe4iv\\xe4m\\xe4\\xe4r\\xe4`,\n \"minimumDate\": `Ensimm\\xe4inen varattavissa oleva p\\xe4iv\\xe4m\\xe4\\xe4r\\xe4`,\n \"next\": `Seuraava`,\n \"previous\": `Edellinen`,\n \"selectedDateDescription\": (args)=>`Valittu p\\xe4iv\\xe4m\\xe4\\xe4r\\xe4: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valittu aikav\\xe4li: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Aloita p\\xe4iv\\xe4m\\xe4\\xe4r\\xe4alueen valinta napsauttamalla t\\xe4t\\xe4.`,\n \"todayDate\": (args)=>`T\\xe4n\\xe4\\xe4n, ${args.date}`,\n \"todayDateSelected\": (args)=>`T\\xe4n\\xe4\\xe4n, ${args.date} valittu`\n};\n\n\nexport {$5d376b7fce1a45b2$exports as default};\n//# sourceMappingURL=fi-FI.module.js.map\n","var $3bf722b362aaf54d$exports = {};\n$3bf722b362aaf54d$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\xe0 ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} s\\xe9lectionn\\xe9`,\n \"finishRangeSelectionPrompt\": `Cliquer pour finir de s\\xe9lectionner la plage de dates`,\n \"maximumDate\": `Derni\\xe8re date disponible`,\n \"minimumDate\": `Premi\\xe8re date disponible`,\n \"next\": `Suivant`,\n \"previous\": `Pr\\xe9c\\xe9dent`,\n \"selectedDateDescription\": (args)=>`Date s\\xe9lectionn\\xe9e\\xa0: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Plage s\\xe9lectionn\\xe9e\\xa0: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Cliquer pour commencer \\xe0 s\\xe9lectionner la plage de dates`,\n \"todayDate\": (args)=>`Aujourd'hui, ${args.date}`,\n \"todayDateSelected\": (args)=>`Aujourd\\u{2019}hui, ${args.date} s\\xe9lectionn\\xe9`\n};\n\n\nexport {$3bf722b362aaf54d$exports as default};\n//# sourceMappingURL=fr-FR.module.js.map\n","var $38c43f8322316031$exports = {};\n$38c43f8322316031$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{5E2}\\u{5D3} ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} \\u{5E0}\\u{5D1}\\u{5D7}\\u{5E8}`,\n \"finishRangeSelectionPrompt\": `\\u{5D7}\\u{5E5} \\u{5DB}\\u{5D3}\\u{5D9} \\u{5DC}\\u{5E1}\\u{5D9}\\u{5D9}\\u{5DD} \\u{5D0}\\u{5EA} \\u{5D1}\\u{5D7}\\u{5D9}\\u{5E8}\\u{5EA} \\u{5D8}\\u{5D5}\\u{5D5}\\u{5D7} \\u{5D4}\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DB}\\u{5D9}\\u{5DD}`,\n \"maximumDate\": `\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5E4}\\u{5E0}\\u{5D5}\\u{5D9} \\u{5D0}\\u{5D7}\\u{5E8}\\u{5D5}\\u{5DF}`,\n \"minimumDate\": `\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5E4}\\u{5E0}\\u{5D5}\\u{5D9} \\u{5E8}\\u{5D0}\\u{5E9}\\u{5D5}\\u{5DF}`,\n \"next\": `\\u{5D4}\\u{5D1}\\u{5D0}`,\n \"previous\": `\\u{5D4}\\u{5E7}\\u{5D5}\\u{5D3}\\u{5DD}`,\n \"selectedDateDescription\": (args)=>`\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DA} \\u{5E0}\\u{5D1}\\u{5D7}\\u{5E8}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{5D8}\\u{5D5}\\u{5D5}\\u{5D7} \\u{5E0}\\u{5D1}\\u{5D7}\\u{5E8}: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{5DC}\\u{5D7}\\u{5E5} \\u{5DB}\\u{5D3}\\u{5D9} \\u{5DC}\\u{5D4}\\u{5EA}\\u{5D7}\\u{5D9}\\u{5DC} \\u{5D1}\\u{5D1}\\u{5D7}\\u{5D9}\\u{5E8}\\u{5EA} \\u{5D8}\\u{5D5}\\u{5D5}\\u{5D7} \\u{5D4}\\u{5EA}\\u{5D0}\\u{5E8}\\u{5D9}\\u{5DB}\\u{5D9}\\u{5DD}`,\n \"todayDate\": (args)=>`\\u{5D4}\\u{5D9}\\u{5D5}\\u{5DD}, ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{5D4}\\u{5D9}\\u{5D5}\\u{5DD}, ${args.date} \\u{5E0}\\u{5D1}\\u{5D7}\\u{5E8}`\n};\n\n\nexport {$38c43f8322316031$exports as default};\n//# sourceMappingURL=he-IL.module.js.map\n","var $c90e0f32b44630bf$exports = {};\n$c90e0f32b44630bf$exports = {\n \"dateRange\": (args)=>`${args.startDate} do ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} odabran`,\n \"finishRangeSelectionPrompt\": `Kliknite da dovr\\u{161}ite raspon odabranih datuma`,\n \"maximumDate\": `Posljednji raspolo\\u{17E}ivi datum`,\n \"minimumDate\": `Prvi raspolo\\u{17E}ivi datum`,\n \"next\": `Sljede\\u{107}i`,\n \"previous\": `Prethodni`,\n \"selectedDateDescription\": (args)=>`Odabrani datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Odabrani raspon: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Kliknite da zapo\\u{10D}nete raspon odabranih datuma`,\n \"todayDate\": (args)=>`Danas, ${args.date}`,\n \"todayDateSelected\": (args)=>`Danas, odabran ${args.date}`\n};\n\n\nexport {$c90e0f32b44630bf$exports as default};\n//# sourceMappingURL=hr-HR.module.js.map\n","var $715875e6e7a338f4$exports = {};\n$715875e6e7a338f4$exports = {\n \"dateRange\": (args)=>`${args.startDate}\\u{2013}${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} kiv\\xe1lasztva`,\n \"finishRangeSelectionPrompt\": `Kattintson a d\\xe1tumtartom\\xe1ny kijel\\xf6l\\xe9s\\xe9nek befejez\\xe9s\\xe9hez`,\n \"maximumDate\": `Utols\\xf3 el\\xe9rhet\\u{151} d\\xe1tum`,\n \"minimumDate\": `Az els\\u{151} el\\xe9rhet\\u{151} d\\xe1tum`,\n \"next\": `K\\xf6vetkez\\u{151}`,\n \"previous\": `El\\u{151}z\\u{151}`,\n \"selectedDateDescription\": (args)=>`Kijel\\xf6lt d\\xe1tum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Kijel\\xf6lt tartom\\xe1ny: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Kattintson a d\\xe1tumtartom\\xe1ny kijel\\xf6l\\xe9s\\xe9nek ind\\xedt\\xe1s\\xe1hoz`,\n \"todayDate\": (args)=>`Ma, ${args.date}`,\n \"todayDateSelected\": (args)=>`Ma, ${args.date} kijel\\xf6lve`\n};\n\n\nexport {$715875e6e7a338f4$exports as default};\n//# sourceMappingURL=hu-HU.module.js.map\n","var $37d77c66e34daccf$exports = {};\n$37d77c66e34daccf$exports = {\n \"dateRange\": (args)=>`Da ${args.startDate} a ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} selezionata`,\n \"finishRangeSelectionPrompt\": `Fai clic per completare la selezione dell\\u{2019}intervallo di date`,\n \"maximumDate\": `Ultima data disponibile`,\n \"minimumDate\": `Prima data disponibile`,\n \"next\": `Successivo`,\n \"previous\": `Precedente`,\n \"selectedDateDescription\": (args)=>`Data selezionata: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Intervallo selezionato: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Fai clic per selezionare l\\u{2019}intervallo di date`,\n \"todayDate\": (args)=>`Oggi, ${args.date}`,\n \"todayDateSelected\": (args)=>`Oggi, ${args.date} selezionata`\n};\n\n\nexport {$37d77c66e34daccf$exports as default};\n//# sourceMappingURL=it-IT.module.js.map\n","var $542f39aee29303c3$exports = {};\n$542f39aee29303c3$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{304B}\\u{3089} ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} \\u{3092}\\u{9078}\\u{629E}`,\n \"finishRangeSelectionPrompt\": `\\u{30AF}\\u{30EA}\\u{30C3}\\u{30AF}\\u{3057}\\u{3066}\\u{65E5}\\u{4ED8}\\u{7BC4}\\u{56F2}\\u{306E}\\u{9078}\\u{629E}\\u{3092}\\u{7D42}\\u{4E86}`,\n \"maximumDate\": `\\u{6700}\\u{7D42}\\u{5229}\\u{7528}\\u{53EF}\\u{80FD}\\u{65E5}`,\n \"minimumDate\": `\\u{6700}\\u{521D}\\u{306E}\\u{5229}\\u{7528}\\u{53EF}\\u{80FD}\\u{65E5}`,\n \"next\": `\\u{6B21}\\u{3078}`,\n \"previous\": `\\u{524D}\\u{3078}`,\n \"selectedDateDescription\": (args)=>`\\u{9078}\\u{629E}\\u{3057}\\u{305F}\\u{65E5}\\u{4ED8} : ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{9078}\\u{629E}\\u{7BC4}\\u{56F2} : ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{30AF}\\u{30EA}\\u{30C3}\\u{30AF}\\u{3057}\\u{3066}\\u{65E5}\\u{4ED8}\\u{7BC4}\\u{56F2}\\u{306E}\\u{9078}\\u{629E}\\u{3092}\\u{958B}\\u{59CB}`,\n \"todayDate\": (args)=>`\\u{672C}\\u{65E5}\\u{3001}${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{672C}\\u{65E5}\\u{3001}${args.date} \\u{3092}\\u{9078}\\u{629E}`\n};\n\n\nexport {$542f39aee29303c3$exports as default};\n//# sourceMappingURL=ja-JP.module.js.map\n","var $22a5f0623ea73e4f$exports = {};\n$22a5f0623ea73e4f$exports = {\n \"dateRange\": (args)=>`${args.startDate} ~ ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} \\u{C120}\\u{D0DD}\\u{B428}`,\n \"finishRangeSelectionPrompt\": `\\u{B0A0}\\u{C9DC} \\u{BC94}\\u{C704} \\u{C120}\\u{D0DD}\\u{C744} \\u{C644}\\u{B8CC}\\u{D558}\\u{B824}\\u{BA74} \\u{D074}\\u{B9AD}\\u{D558}\\u{C2ED}\\u{C2DC}\\u{C624}.`,\n \"maximumDate\": `\\u{B9C8}\\u{C9C0}\\u{B9C9}\\u{C73C}\\u{B85C} \\u{C0AC}\\u{C6A9} \\u{AC00}\\u{B2A5}\\u{D55C} \\u{C77C}\\u{C790}`,\n \"minimumDate\": `\\u{CC98}\\u{C74C}\\u{C73C}\\u{B85C} \\u{C0AC}\\u{C6A9} \\u{AC00}\\u{B2A5}\\u{D55C} \\u{C77C}\\u{C790}`,\n \"next\": `\\u{B2E4}\\u{C74C}`,\n \"previous\": `\\u{C774}\\u{C804}`,\n \"selectedDateDescription\": (args)=>`\\u{C120}\\u{D0DD} \\u{C77C}\\u{C790}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{C120}\\u{D0DD} \\u{BC94}\\u{C704}: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{B0A0}\\u{C9DC} \\u{BC94}\\u{C704} \\u{C120}\\u{D0DD}\\u{C744} \\u{C2DC}\\u{C791}\\u{D558}\\u{B824}\\u{BA74} \\u{D074}\\u{B9AD}\\u{D558}\\u{C2ED}\\u{C2DC}\\u{C624}.`,\n \"todayDate\": (args)=>`\\u{C624}\\u{B298}, ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{C624}\\u{B298}, ${args.date} \\u{C120}\\u{D0DD}\\u{B428}`\n};\n\n\nexport {$22a5f0623ea73e4f$exports as default};\n//# sourceMappingURL=ko-KR.module.js.map\n","var $522380d13d62cba0$exports = {};\n$522380d13d62cba0$exports = {\n \"dateRange\": (args)=>`Nuo ${args.startDate} iki ${args.endDate}`,\n \"dateSelected\": (args)=>`Pasirinkta ${args.date}`,\n \"finishRangeSelectionPrompt\": `Spustel\\u{117}kite, kad baigtum\\u{117}te pasirinkti dat\\u{173} interval\\u{105}`,\n \"maximumDate\": `Paskutin\\u{117} galima data`,\n \"minimumDate\": `Pirmoji galima data`,\n \"next\": `Paskesnis`,\n \"previous\": `Ankstesnis`,\n \"selectedDateDescription\": (args)=>`Pasirinkta data: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Pasirinktas intervalas: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Spustel\\u{117}kite, kad prad\\u{117}tum\\u{117}te pasirinkti dat\\u{173} interval\\u{105}`,\n \"todayDate\": (args)=>`\\u{160}iandien, ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{160}iandien, pasirinkta ${args.date}`\n};\n\n\nexport {$522380d13d62cba0$exports as default};\n//# sourceMappingURL=lt-LT.module.js.map\n","var $8a7bc830b2fe6485$exports = {};\n$8a7bc830b2fe6485$exports = {\n \"dateRange\": (args)=>`No ${args.startDate} l\\u{12B}dz ${args.endDate}`,\n \"dateSelected\": (args)=>`Atlas\\u{12B}ts: ${args.date}`,\n \"finishRangeSelectionPrompt\": `Noklik\\u{161}\\u{137}iniet, lai pabeigtu datumu diapazona atlasi`,\n \"maximumDate\": `P\\u{113}d\\u{113}jais pieejamais datums`,\n \"minimumDate\": `Pirmais pieejamais datums`,\n \"next\": `T\\u{101}l\\u{101}k`,\n \"previous\": `Atpaka\\u{13C}`,\n \"selectedDateDescription\": (args)=>`Atlas\\u{12B}tais datums: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Atlas\\u{12B}tais diapazons: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Noklik\\u{161}\\u{137}iniet, lai s\\u{101}ktu datumu diapazona atlasi`,\n \"todayDate\": (args)=>`\\u{160}odien, ${args.date}`,\n \"todayDateSelected\": (args)=>`Atlas\\u{12B}ta \\u{161}odiena, ${args.date}`\n};\n\n\nexport {$8a7bc830b2fe6485$exports as default};\n//# sourceMappingURL=lv-LV.module.js.map\n","var $9fac9c044470683b$exports = {};\n$9fac9c044470683b$exports = {\n \"dateRange\": (args)=>`${args.startDate} til ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} valgt`,\n \"finishRangeSelectionPrompt\": `Klikk for \\xe5 fullf\\xf8re valg av datoomr\\xe5de`,\n \"maximumDate\": `Siste tilgjengelige dato`,\n \"minimumDate\": `F\\xf8rste tilgjengelige dato`,\n \"next\": `Neste`,\n \"previous\": `Forrige`,\n \"selectedDateDescription\": (args)=>`Valgt dato: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valgt omr\\xe5de: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Klikk for \\xe5 starte valg av datoomr\\xe5de`,\n \"todayDate\": (args)=>`I dag, ${args.date}`,\n \"todayDateSelected\": (args)=>`I dag, ${args.date} valgt`\n};\n\n\nexport {$9fac9c044470683b$exports as default};\n//# sourceMappingURL=nb-NO.module.js.map\n","var $b127d3569efb1449$exports = {};\n$b127d3569efb1449$exports = {\n \"dateRange\": (args)=>`${args.startDate} tot ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} geselecteerd`,\n \"finishRangeSelectionPrompt\": `Klik om de selectie van het datumbereik te voltooien`,\n \"maximumDate\": `Laatste beschikbare datum`,\n \"minimumDate\": `Eerste beschikbare datum`,\n \"next\": `Volgende`,\n \"previous\": `Vorige`,\n \"selectedDateDescription\": (args)=>`Geselecteerde datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Geselecteerd bereik: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Klik om het datumbereik te selecteren`,\n \"todayDate\": (args)=>`Vandaag, ${args.date}`,\n \"todayDateSelected\": (args)=>`Vandaag, ${args.date} geselecteerd`\n};\n\n\nexport {$b127d3569efb1449$exports as default};\n//# sourceMappingURL=nl-NL.module.js.map\n","var $51404a4090633490$exports = {};\n$51404a4090633490$exports = {\n \"dateRange\": (args)=>`${args.startDate} do ${args.endDate}`,\n \"dateSelected\": (args)=>`Wybrano ${args.date}`,\n \"finishRangeSelectionPrompt\": `Kliknij, aby zako\\u{144}czy\\u{107} wyb\\xf3r zakresu dat`,\n \"maximumDate\": `Ostatnia dost\\u{119}pna data`,\n \"minimumDate\": `Pierwsza dost\\u{119}pna data`,\n \"next\": `Dalej`,\n \"previous\": `Wstecz`,\n \"selectedDateDescription\": (args)=>`Wybrana data: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Wybrany zakres: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Kliknij, aby rozpocz\\u{105}\\u{107} wyb\\xf3r zakresu dat`,\n \"todayDate\": (args)=>`Dzisiaj, ${args.date}`,\n \"todayDateSelected\": (args)=>`Dzisiaj wybrano ${args.date}`\n};\n\n\nexport {$51404a4090633490$exports as default};\n//# sourceMappingURL=pl-PL.module.js.map\n","var $e5e6a3fe3b4527df$exports = {};\n$e5e6a3fe3b4527df$exports = {\n \"dateRange\": (args)=>`${args.startDate} a ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} selecionado`,\n \"finishRangeSelectionPrompt\": `Clique para concluir a sele\\xe7\\xe3o do intervalo de datas`,\n \"maximumDate\": `\\xdaltima data dispon\\xedvel`,\n \"minimumDate\": `Primeira data dispon\\xedvel`,\n \"next\": `Pr\\xf3ximo`,\n \"previous\": `Anterior`,\n \"selectedDateDescription\": (args)=>`Data selecionada: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Intervalo selecionado: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Clique para iniciar a sele\\xe7\\xe3o do intervalo de datas`,\n \"todayDate\": (args)=>`Hoje, ${args.date}`,\n \"todayDateSelected\": (args)=>`Hoje, ${args.date} selecionado`\n};\n\n\nexport {$e5e6a3fe3b4527df$exports as default};\n//# sourceMappingURL=pt-BR.module.js.map\n","var $c519dcadcbb1ee47$exports = {};\n$c519dcadcbb1ee47$exports = {\n \"dateRange\": (args)=>`${args.startDate} a ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} selecionado`,\n \"finishRangeSelectionPrompt\": `Clique para terminar de selecionar o intervalo de datas`,\n \"maximumDate\": `\\xdaltima data dispon\\xedvel`,\n \"minimumDate\": `Primeira data dispon\\xedvel`,\n \"next\": `Pr\\xf3ximo`,\n \"previous\": `Anterior`,\n \"selectedDateDescription\": (args)=>`Data selecionada: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Intervalo selecionado: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Clique para come\\xe7ar a selecionar o intervalo de datas`,\n \"todayDate\": (args)=>`Hoje, ${args.date}`,\n \"todayDateSelected\": (args)=>`Hoje, ${args.date} selecionado`\n};\n\n\nexport {$c519dcadcbb1ee47$exports as default};\n//# sourceMappingURL=pt-PT.module.js.map\n","var $e5aa0186ca7889c6$exports = {};\n$e5aa0186ca7889c6$exports = {\n \"dateRange\": (args)=>`De la ${args.startDate} p\\xe2n\\u{103} la ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} selectat\\u{103}`,\n \"finishRangeSelectionPrompt\": `Ap\\u{103}sa\\u{163}i pentru a finaliza selec\\u{163}ia razei pentru dat\\u{103}`,\n \"maximumDate\": `Ultima dat\\u{103} disponibil\\u{103}`,\n \"minimumDate\": `Prima dat\\u{103} disponibil\\u{103}`,\n \"next\": `Urm\\u{103}torul`,\n \"previous\": `\\xcenainte`,\n \"selectedDateDescription\": (args)=>`Dat\\u{103} selectat\\u{103}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Interval selectat: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Ap\\u{103}sa\\u{163}i pentru a \\xeencepe selec\\u{163}ia razei pentru dat\\u{103}`,\n \"todayDate\": (args)=>`Ast\\u{103}zi, ${args.date}`,\n \"todayDateSelected\": (args)=>`Azi, ${args.date} selectat\\u{103}`\n};\n\n\nexport {$e5aa0186ca7889c6$exports as default};\n//# sourceMappingURL=ro-RO.module.js.map\n","var $5b907f5fa3eee652$exports = {};\n$5b907f5fa3eee652$exports = {\n \"dateRange\": (args)=>`\\u{421} ${args.startDate} \\u{43F}\\u{43E} ${args.endDate}`,\n \"dateSelected\": (args)=>`\\u{412}\\u{44B}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43E} ${args.date}`,\n \"finishRangeSelectionPrompt\": `\\u{429}\\u{435}\\u{43B}\\u{43A}\\u{43D}\\u{438}\\u{442}\\u{435}, \\u{447}\\u{442}\\u{43E}\\u{431}\\u{44B} \\u{437}\\u{430}\\u{432}\\u{435}\\u{440}\\u{448}\\u{438}\\u{442}\\u{44C} \\u{432}\\u{44B}\\u{431}\\u{43E}\\u{440} \\u{434}\\u{438}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}`,\n \"maximumDate\": `\\u{41F}\\u{43E}\\u{441}\\u{43B}\\u{435}\\u{434}\\u{43D}\\u{44F}\\u{44F} \\u{434}\\u{43E}\\u{441}\\u{442}\\u{443}\\u{43F}\\u{43D}\\u{430}\\u{44F} \\u{434}\\u{430}\\u{442}\\u{430}`,\n \"minimumDate\": `\\u{41F}\\u{435}\\u{440}\\u{432}\\u{430}\\u{44F} \\u{434}\\u{43E}\\u{441}\\u{442}\\u{443}\\u{43F}\\u{43D}\\u{430}\\u{44F} \\u{434}\\u{430}\\u{442}\\u{430}`,\n \"next\": `\\u{414}\\u{430}\\u{43B}\\u{435}\\u{435}`,\n \"previous\": `\\u{41D}\\u{430}\\u{437}\\u{430}\\u{434}`,\n \"selectedDateDescription\": (args)=>`\\u{412}\\u{44B}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43D}\\u{430}\\u{44F} \\u{434}\\u{430}\\u{442}\\u{430}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{412}\\u{44B}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43D}\\u{44B}\\u{439} \\u{434}\\u{438}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{429}\\u{435}\\u{43B}\\u{43A}\\u{43D}\\u{438}\\u{442}\\u{435}, \\u{447}\\u{442}\\u{43E}\\u{431}\\u{44B} \\u{43D}\\u{430}\\u{447}\\u{430}\\u{442}\\u{44C} \\u{432}\\u{44B}\\u{431}\\u{43E}\\u{440} \\u{434}\\u{438}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}`,\n \"todayDate\": (args)=>`\\u{421}\\u{435}\\u{433}\\u{43E}\\u{434}\\u{43D}\\u{44F}, ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{421}\\u{435}\\u{433}\\u{43E}\\u{434}\\u{43D}\\u{44F}, \\u{432}\\u{44B}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43E} ${args.date}`\n};\n\n\nexport {$5b907f5fa3eee652$exports as default};\n//# sourceMappingURL=ru-RU.module.js.map\n","var $1b4c51359c99cf79$exports = {};\n$1b4c51359c99cf79$exports = {\n \"dateRange\": (args)=>`Od ${args.startDate} do ${args.endDate}`,\n \"dateSelected\": (args)=>`Vybrat\\xfd d\\xe1tum ${args.date}`,\n \"finishRangeSelectionPrompt\": `Kliknut\\xedm dokon\\u{10D}\\xedte v\\xfdber rozsahu d\\xe1tumov`,\n \"maximumDate\": `Posledn\\xfd dostupn\\xfd d\\xe1tum`,\n \"minimumDate\": `Prv\\xfd dostupn\\xfd d\\xe1tum`,\n \"next\": `Nasleduj\\xface`,\n \"previous\": `Predch\\xe1dzaj\\xface`,\n \"selectedDateDescription\": (args)=>`Vybrat\\xfd d\\xe1tum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Vybrat\\xfd rozsah: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Kliknut\\xedm spust\\xedte v\\xfdber rozsahu d\\xe1tumov`,\n \"todayDate\": (args)=>`Dnes ${args.date}`,\n \"todayDateSelected\": (args)=>`Vybrat\\xfd dne\\u{161}n\\xfd d\\xe1tum ${args.date}`\n};\n\n\nexport {$1b4c51359c99cf79$exports as default};\n//# sourceMappingURL=sk-SK.module.js.map\n","var $02e4e6a4608cc6f3$exports = {};\n$02e4e6a4608cc6f3$exports = {\n \"dateRange\": (args)=>`${args.startDate} do ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} izbrano`,\n \"finishRangeSelectionPrompt\": `Kliknite za dokon\\u{10D}anje izbire datumskega obsega`,\n \"maximumDate\": `Zadnji razpolo\\u{17E}ljivi datum`,\n \"minimumDate\": `Prvi razpolo\\u{17E}ljivi datum`,\n \"next\": `Naprej`,\n \"previous\": `Nazaj`,\n \"selectedDateDescription\": (args)=>`Izbrani datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Izbrano obmo\\u{10D}je: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Kliknite za za\\u{10D}etek izbire datumskega obsega`,\n \"todayDate\": (args)=>`Danes, ${args.date}`,\n \"todayDateSelected\": (args)=>`Danes, ${args.date} izbrano`\n};\n\n\nexport {$02e4e6a4608cc6f3$exports as default};\n//# sourceMappingURL=sl-SI.module.js.map\n","var $6dd2fbaad93b6878$exports = {};\n$6dd2fbaad93b6878$exports = {\n \"dateRange\": (args)=>`${args.startDate} do ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} izabran`,\n \"finishRangeSelectionPrompt\": `Kliknite da dovr\\u{161}ite opseg izabranih datuma`,\n \"maximumDate\": `Zadnji raspolo\\u{17E}ivi datum`,\n \"minimumDate\": `Prvi raspolo\\u{17E}ivi datum`,\n \"next\": `Slede\\u{107}i`,\n \"previous\": `Prethodni`,\n \"selectedDateDescription\": (args)=>`Izabrani datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Izabrani period: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Kliknite da zapo\\u{10D}nete opseg izabranih datuma`,\n \"todayDate\": (args)=>`Danas, ${args.date}`,\n \"todayDateSelected\": (args)=>`Danas, izabran ${args.date}`\n};\n\n\nexport {$6dd2fbaad93b6878$exports as default};\n//# sourceMappingURL=sr-SP.module.js.map\n","var $33ea59bfe6e804e0$exports = {};\n$33ea59bfe6e804e0$exports = {\n \"dateRange\": (args)=>`${args.startDate} till ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} har valts`,\n \"finishRangeSelectionPrompt\": `Klicka f\\xf6r att avsluta val av datumintervall`,\n \"maximumDate\": `Sista tillg\\xe4ngliga datum`,\n \"minimumDate\": `F\\xf6rsta tillg\\xe4ngliga datum`,\n \"next\": `N\\xe4sta`,\n \"previous\": `F\\xf6reg\\xe5ende`,\n \"selectedDateDescription\": (args)=>`Valt datum: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Valt intervall: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Klicka f\\xf6r att v\\xe4lja datumintervall`,\n \"todayDate\": (args)=>`Idag, ${args.date}`,\n \"todayDateSelected\": (args)=>`Idag, ${args.date} har valts`\n};\n\n\nexport {$33ea59bfe6e804e0$exports as default};\n//# sourceMappingURL=sv-SE.module.js.map\n","var $4603b0d0246969b2$exports = {};\n$4603b0d0246969b2$exports = {\n \"dateRange\": (args)=>`${args.startDate} - ${args.endDate}`,\n \"dateSelected\": (args)=>`${args.date} se\\xe7ildi`,\n \"finishRangeSelectionPrompt\": `Tarih aral\\u{131}\\u{11F}\\u{131} se\\xe7imini tamamlamak i\\xe7in t\\u{131}klay\\u{131}n`,\n \"maximumDate\": `Son m\\xfcsait tarih`,\n \"minimumDate\": `\\u{130}lk m\\xfcsait tarih`,\n \"next\": `Sonraki`,\n \"previous\": `\\xd6nceki`,\n \"selectedDateDescription\": (args)=>`Se\\xe7ilen Tarih: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`Se\\xe7ilen Aral\\u{131}k: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `Tarih aral\\u{131}\\u{11F}\\u{131} se\\xe7imini ba\\u{15F}latmak i\\xe7in t\\u{131}klay\\u{131}n`,\n \"todayDate\": (args)=>`Bug\\xfcn, ${args.date}`,\n \"todayDateSelected\": (args)=>`Bug\\xfcn, ${args.date} se\\xe7ildi`\n};\n\n\nexport {$4603b0d0246969b2$exports as default};\n//# sourceMappingURL=tr-TR.module.js.map\n","var $82649816f530bb1b$exports = {};\n$82649816f530bb1b$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{2014} ${args.endDate}`,\n \"dateSelected\": (args)=>`\\u{412}\\u{438}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43E} ${args.date}`,\n \"finishRangeSelectionPrompt\": `\\u{41D}\\u{430}\\u{442}\\u{438}\\u{441}\\u{43D}\\u{456}\\u{442}\\u{44C}, \\u{449}\\u{43E}\\u{431} \\u{437}\\u{430}\\u{432}\\u{435}\\u{440}\\u{448}\\u{438}\\u{442}\\u{438} \\u{432}\\u{438}\\u{431}\\u{456}\\u{440} \\u{434}\\u{456}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}\\u{443} \\u{434}\\u{430}\\u{442}`,\n \"maximumDate\": `\\u{41E}\\u{441}\\u{442}\\u{430}\\u{43D}\\u{43D}\\u{44F} \\u{434}\\u{43E}\\u{441}\\u{442}\\u{443}\\u{43F}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}`,\n \"minimumDate\": `\\u{41F}\\u{435}\\u{440}\\u{448}\\u{430} \\u{434}\\u{43E}\\u{441}\\u{442}\\u{443}\\u{43F}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}`,\n \"next\": `\\u{41D}\\u{430}\\u{441}\\u{442}\\u{443}\\u{43F}\\u{43D}\\u{438}\\u{439}`,\n \"previous\": `\\u{41F}\\u{43E}\\u{43F}\\u{435}\\u{440}\\u{435}\\u{434}\\u{43D}\\u{456}\\u{439}`,\n \"selectedDateDescription\": (args)=>`\\u{412}\\u{438}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{430} \\u{434}\\u{430}\\u{442}\\u{430}: ${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{412}\\u{438}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{438}\\u{439} \\u{434}\\u{456}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}: ${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{41D}\\u{430}\\u{442}\\u{438}\\u{441}\\u{43D}\\u{456}\\u{442}\\u{44C}, \\u{449}\\u{43E}\\u{431} \\u{43F}\\u{43E}\\u{447}\\u{430}\\u{442}\\u{438} \\u{432}\\u{438}\\u{431}\\u{456}\\u{440} \\u{434}\\u{456}\\u{430}\\u{43F}\\u{430}\\u{437}\\u{43E}\\u{43D}\\u{443} \\u{434}\\u{430}\\u{442}`,\n \"todayDate\": (args)=>`\\u{421}\\u{44C}\\u{43E}\\u{433}\\u{43E}\\u{434}\\u{43D}\\u{456}, ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{421}\\u{44C}\\u{43E}\\u{433}\\u{43E}\\u{434}\\u{43D}\\u{456}, \\u{432}\\u{438}\\u{431}\\u{440}\\u{430}\\u{43D}\\u{43E} ${args.date}`\n};\n\n\nexport {$82649816f530bb1b$exports as default};\n//# sourceMappingURL=uk-UA.module.js.map\n","var $628e140a43dfb330$exports = {};\n$628e140a43dfb330$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{81F3} ${args.endDate}`,\n \"dateSelected\": (args)=>`\\u{5DF2}\\u{9009}\\u{62E9} ${args.date}`,\n \"finishRangeSelectionPrompt\": `\\u{5355}\\u{51FB}\\u{4EE5}\\u{5B8C}\\u{6210}\\u{9009}\\u{62E9}\\u{65E5}\\u{671F}\\u{8303}\\u{56F4}`,\n \"maximumDate\": `\\u{6700}\\u{540E}\\u{4E00}\\u{4E2A}\\u{53EF}\\u{7528}\\u{65E5}\\u{671F}`,\n \"minimumDate\": `\\u{7B2C}\\u{4E00}\\u{4E2A}\\u{53EF}\\u{7528}\\u{65E5}\\u{671F}`,\n \"next\": `\\u{4E0B}\\u{4E00}\\u{9875}`,\n \"previous\": `\\u{4E0A}\\u{4E00}\\u{9875}`,\n \"selectedDateDescription\": (args)=>`\\u{9009}\\u{5B9A}\\u{7684}\\u{65E5}\\u{671F}\\u{FF1A}${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{9009}\\u{5B9A}\\u{7684}\\u{8303}\\u{56F4}\\u{FF1A}${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{5355}\\u{51FB}\\u{4EE5}\\u{5F00}\\u{59CB}\\u{9009}\\u{62E9}\\u{65E5}\\u{671F}\\u{8303}\\u{56F4}`,\n \"todayDate\": (args)=>`\\u{4ECA}\\u{5929}\\u{FF0C}\\u{5373} ${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{5DF2}\\u{9009}\\u{62E9}\\u{4ECA}\\u{5929}\\u{FF0C}\\u{5373} ${args.date}`\n};\n\n\nexport {$628e140a43dfb330$exports as default};\n//# sourceMappingURL=zh-CN.module.js.map\n","var $745937250cd4679c$exports = {};\n$745937250cd4679c$exports = {\n \"dateRange\": (args)=>`${args.startDate} \\u{81F3} ${args.endDate}`,\n \"dateSelected\": (args)=>`\\u{5DF2}\\u{9078}\\u{53D6} ${args.date}`,\n \"finishRangeSelectionPrompt\": `\\u{6309}\\u{4E00}\\u{4E0B}\\u{4EE5}\\u{5B8C}\\u{6210}\\u{9078}\\u{53D6}\\u{65E5}\\u{671F}\\u{7BC4}\\u{570D}`,\n \"maximumDate\": `\\u{6700}\\u{5F8C}\\u{4E00}\\u{500B}\\u{53EF}\\u{7528}\\u{65E5}\\u{671F}`,\n \"minimumDate\": `\\u{7B2C}\\u{4E00}\\u{500B}\\u{53EF}\\u{7528}\\u{65E5}\\u{671F}`,\n \"next\": `\\u{4E0B}\\u{4E00}\\u{9801}`,\n \"previous\": `\\u{4E0A}\\u{4E00}\\u{9801}`,\n \"selectedDateDescription\": (args)=>`\\u{9078}\\u{5B9A}\\u{7684}\\u{65E5}\\u{671F}\\u{FF1A}${args.date}`,\n \"selectedRangeDescription\": (args)=>`\\u{9078}\\u{5B9A}\\u{7684}\\u{7BC4}\\u{570D}\\u{FF1A}${args.dateRange}`,\n \"startRangeSelectionPrompt\": `\\u{6309}\\u{4E00}\\u{4E0B}\\u{4EE5}\\u{958B}\\u{59CB}\\u{9078}\\u{53D6}\\u{65E5}\\u{671F}\\u{7BC4}\\u{570D}`,\n \"todayDate\": (args)=>`\\u{4ECA}\\u{5929}\\u{FF0C}${args.date}`,\n \"todayDateSelected\": (args)=>`\\u{5DF2}\\u{9078}\\u{53D6}\\u{4ECA}\\u{5929}\\u{FF0C}${args.date}`\n};\n\n\nexport {$745937250cd4679c$exports as default};\n//# sourceMappingURL=zh-TW.module.js.map\n","import $RBMho$arAEmodulejs from \"./ar-AE.mjs\";\nimport $RBMho$bgBGmodulejs from \"./bg-BG.mjs\";\nimport $RBMho$csCZmodulejs from \"./cs-CZ.mjs\";\nimport $RBMho$daDKmodulejs from \"./da-DK.mjs\";\nimport $RBMho$deDEmodulejs from \"./de-DE.mjs\";\nimport $RBMho$elGRmodulejs from \"./el-GR.mjs\";\nimport $RBMho$enUSmodulejs from \"./en-US.mjs\";\nimport $RBMho$esESmodulejs from \"./es-ES.mjs\";\nimport $RBMho$etEEmodulejs from \"./et-EE.mjs\";\nimport $RBMho$fiFImodulejs from \"./fi-FI.mjs\";\nimport $RBMho$frFRmodulejs from \"./fr-FR.mjs\";\nimport $RBMho$heILmodulejs from \"./he-IL.mjs\";\nimport $RBMho$hrHRmodulejs from \"./hr-HR.mjs\";\nimport $RBMho$huHUmodulejs from \"./hu-HU.mjs\";\nimport $RBMho$itITmodulejs from \"./it-IT.mjs\";\nimport $RBMho$jaJPmodulejs from \"./ja-JP.mjs\";\nimport $RBMho$koKRmodulejs from \"./ko-KR.mjs\";\nimport $RBMho$ltLTmodulejs from \"./lt-LT.mjs\";\nimport $RBMho$lvLVmodulejs from \"./lv-LV.mjs\";\nimport $RBMho$nbNOmodulejs from \"./nb-NO.mjs\";\nimport $RBMho$nlNLmodulejs from \"./nl-NL.mjs\";\nimport $RBMho$plPLmodulejs from \"./pl-PL.mjs\";\nimport $RBMho$ptBRmodulejs from \"./pt-BR.mjs\";\nimport $RBMho$ptPTmodulejs from \"./pt-PT.mjs\";\nimport $RBMho$roROmodulejs from \"./ro-RO.mjs\";\nimport $RBMho$ruRUmodulejs from \"./ru-RU.mjs\";\nimport $RBMho$skSKmodulejs from \"./sk-SK.mjs\";\nimport $RBMho$slSImodulejs from \"./sl-SI.mjs\";\nimport $RBMho$srSPmodulejs from \"./sr-SP.mjs\";\nimport $RBMho$svSEmodulejs from \"./sv-SE.mjs\";\nimport $RBMho$trTRmodulejs from \"./tr-TR.mjs\";\nimport $RBMho$ukUAmodulejs from \"./uk-UA.mjs\";\nimport $RBMho$zhCNmodulejs from \"./zh-CN.mjs\";\nimport $RBMho$zhTWmodulejs from \"./zh-TW.mjs\";\n\nvar $3904726b442bd9b2$exports = {};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n$3904726b442bd9b2$exports = {\n \"ar-AE\": $RBMho$arAEmodulejs,\n \"bg-BG\": $RBMho$bgBGmodulejs,\n \"cs-CZ\": $RBMho$csCZmodulejs,\n \"da-DK\": $RBMho$daDKmodulejs,\n \"de-DE\": $RBMho$deDEmodulejs,\n \"el-GR\": $RBMho$elGRmodulejs,\n \"en-US\": $RBMho$enUSmodulejs,\n \"es-ES\": $RBMho$esESmodulejs,\n \"et-EE\": $RBMho$etEEmodulejs,\n \"fi-FI\": $RBMho$fiFImodulejs,\n \"fr-FR\": $RBMho$frFRmodulejs,\n \"he-IL\": $RBMho$heILmodulejs,\n \"hr-HR\": $RBMho$hrHRmodulejs,\n \"hu-HU\": $RBMho$huHUmodulejs,\n \"it-IT\": $RBMho$itITmodulejs,\n \"ja-JP\": $RBMho$jaJPmodulejs,\n \"ko-KR\": $RBMho$koKRmodulejs,\n \"lt-LT\": $RBMho$ltLTmodulejs,\n \"lv-LV\": $RBMho$lvLVmodulejs,\n \"nb-NO\": $RBMho$nbNOmodulejs,\n \"nl-NL\": $RBMho$nlNLmodulejs,\n \"pl-PL\": $RBMho$plPLmodulejs,\n \"pt-BR\": $RBMho$ptBRmodulejs,\n \"pt-PT\": $RBMho$ptPTmodulejs,\n \"ro-RO\": $RBMho$roROmodulejs,\n \"ru-RU\": $RBMho$ruRUmodulejs,\n \"sk-SK\": $RBMho$skSKmodulejs,\n \"sl-SI\": $RBMho$slSImodulejs,\n \"sr-SP\": $RBMho$srSPmodulejs,\n \"sv-SE\": $RBMho$svSEmodulejs,\n \"tr-TR\": $RBMho$trTRmodulejs,\n \"uk-UA\": $RBMho$ukUAmodulejs,\n \"zh-CN\": $RBMho$zhCNmodulejs,\n \"zh-TW\": $RBMho$zhTWmodulejs\n};\n\n\nexport {$3904726b442bd9b2$exports as default};\n//# sourceMappingURL=intlStrings.module.js.map\n","import $3HATx$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {isSameDay as $3HATx$isSameDay, startOfMonth as $3HATx$startOfMonth, endOfMonth as $3HATx$endOfMonth} from \"@internationalized/date\";\nimport {useLocalizedStringFormatter as $3HATx$useLocalizedStringFormatter, useDateFormatter as $3HATx$useDateFormatter} from \"@react-aria/i18n\";\nimport {useMemo as $3HATx$useMemo} from \"react\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nconst $a074e1e2d0f0a665$export$653eddfc964b0f8a = new WeakMap();\nfunction $a074e1e2d0f0a665$export$134cbb7fb09a9522(date) {\n return (date === null || date === void 0 ? void 0 : date.calendar.identifier) === 'gregory' && date.era === 'BC' ? 'short' : undefined;\n}\nfunction $a074e1e2d0f0a665$export$b6df97c887c38e1a(state) {\n let stringFormatter = (0, $3HATx$useLocalizedStringFormatter)((0, ($parcel$interopDefault($3HATx$intlStringsmodulejs))), '@react-aria/calendar');\n let start, end;\n var _state_value;\n if ('highlightedRange' in state) ({ start: start, end: end } = state.highlightedRange || {});\n else start = end = (_state_value = state.value) !== null && _state_value !== void 0 ? _state_value : undefined;\n let dateFormatter = (0, $3HATx$useDateFormatter)({\n weekday: 'long',\n month: 'long',\n year: 'numeric',\n day: 'numeric',\n era: $a074e1e2d0f0a665$export$134cbb7fb09a9522(start) || $a074e1e2d0f0a665$export$134cbb7fb09a9522(end),\n timeZone: state.timeZone\n });\n let anchorDate = 'anchorDate' in state ? state.anchorDate : null;\n return (0, $3HATx$useMemo)(()=>{\n // No message if currently selecting a range, or there is nothing highlighted.\n if (!anchorDate && start && end) {\n // Use a single date message if the start and end dates are the same day,\n // otherwise include both dates.\n if ((0, $3HATx$isSameDay)(start, end)) {\n let date = dateFormatter.format(start.toDate(state.timeZone));\n return stringFormatter.format('selectedDateDescription', {\n date: date\n });\n } else {\n let dateRange = $a074e1e2d0f0a665$var$formatRange(dateFormatter, stringFormatter, start, end, state.timeZone);\n return stringFormatter.format('selectedRangeDescription', {\n dateRange: dateRange\n });\n }\n }\n return '';\n }, [\n start,\n end,\n anchorDate,\n state.timeZone,\n stringFormatter,\n dateFormatter\n ]);\n}\nfunction $a074e1e2d0f0a665$export$31afe65d91ef6e8(startDate, endDate, timeZone, isAria) {\n let stringFormatter = (0, $3HATx$useLocalizedStringFormatter)((0, ($parcel$interopDefault($3HATx$intlStringsmodulejs))), '@react-aria/calendar');\n let era = $a074e1e2d0f0a665$export$134cbb7fb09a9522(startDate) || $a074e1e2d0f0a665$export$134cbb7fb09a9522(endDate);\n let monthFormatter = (0, $3HATx$useDateFormatter)({\n month: 'long',\n year: 'numeric',\n era: era,\n calendar: startDate.calendar.identifier,\n timeZone: timeZone\n });\n let dateFormatter = (0, $3HATx$useDateFormatter)({\n month: 'long',\n year: 'numeric',\n day: 'numeric',\n era: era,\n calendar: startDate.calendar.identifier,\n timeZone: timeZone\n });\n return (0, $3HATx$useMemo)(()=>{\n // Special case for month granularity. Format as a single month if only a\n // single month is visible, otherwise format as a range of months.\n if ((0, $3HATx$isSameDay)(startDate, (0, $3HATx$startOfMonth)(startDate))) {\n let startMonth = startDate;\n let endMonth = endDate;\n if (startDate.calendar.getFormattableMonth) startMonth = startDate.calendar.getFormattableMonth(startDate);\n if (endDate.calendar.getFormattableMonth) endMonth = endDate.calendar.getFormattableMonth(endDate);\n if ((0, $3HATx$isSameDay)(endDate, (0, $3HATx$endOfMonth)(startDate))) return monthFormatter.format(startMonth.toDate(timeZone));\n else if ((0, $3HATx$isSameDay)(endDate, (0, $3HATx$endOfMonth)(endDate))) return isAria ? $a074e1e2d0f0a665$var$formatRange(monthFormatter, stringFormatter, startMonth, endMonth, timeZone) : monthFormatter.formatRange(startMonth.toDate(timeZone), endMonth.toDate(timeZone));\n }\n return isAria ? $a074e1e2d0f0a665$var$formatRange(dateFormatter, stringFormatter, startDate, endDate, timeZone) : dateFormatter.formatRange(startDate.toDate(timeZone), endDate.toDate(timeZone));\n }, [\n startDate,\n endDate,\n monthFormatter,\n dateFormatter,\n stringFormatter,\n timeZone,\n isAria\n ]);\n}\nfunction $a074e1e2d0f0a665$var$formatRange(dateFormatter, stringFormatter, start, end, timeZone) {\n let parts = dateFormatter.formatRangeToParts(start.toDate(timeZone), end.toDate(timeZone));\n // Find the separator between the start and end date. This is determined\n // by finding the last shared literal before the end range.\n let separatorIndex = -1;\n for(let i = 0; i < parts.length; i++){\n let part = parts[i];\n if (part.source === 'shared' && part.type === 'literal') separatorIndex = i;\n else if (part.source === 'endRange') break;\n }\n // Now we can combine the parts into start and end strings.\n let startValue = '';\n let endValue = '';\n for(let i = 0; i < parts.length; i++){\n if (i < separatorIndex) startValue += parts[i].value;\n else if (i > separatorIndex) endValue += parts[i].value;\n }\n return stringFormatter.format('dateRange', {\n startDate: startValue,\n endDate: endValue\n });\n}\n\n\nexport {$a074e1e2d0f0a665$export$653eddfc964b0f8a as hookData, $a074e1e2d0f0a665$export$134cbb7fb09a9522 as getEraFormat, $a074e1e2d0f0a665$export$b6df97c887c38e1a as useSelectedDateDescription, $a074e1e2d0f0a665$export$31afe65d91ef6e8 as useVisibleRangeDescription};\n//# sourceMappingURL=utils.module.js.map\n","import {hookData as $a074e1e2d0f0a665$export$653eddfc964b0f8a, useSelectedDateDescription as $a074e1e2d0f0a665$export$b6df97c887c38e1a, useVisibleRangeDescription as $a074e1e2d0f0a665$export$31afe65d91ef6e8} from \"./utils.mjs\";\nimport $g2t6q$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {announce as $g2t6q$announce} from \"@react-aria/live-announcer\";\nimport {filterDOMProps as $g2t6q$filterDOMProps, useUpdateEffect as $g2t6q$useUpdateEffect, useSlotId as $g2t6q$useSlotId, useLabels as $g2t6q$useLabels, mergeProps as $g2t6q$mergeProps} from \"@react-aria/utils\";\nimport {useLocalizedStringFormatter as $g2t6q$useLocalizedStringFormatter} from \"@react-aria/i18n\";\nimport {useState as $g2t6q$useState} from \"react\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\nfunction $c4acc1de3ab169cf$export$d652b3ea2d672d5b(props, state) {\n let stringFormatter = (0, $g2t6q$useLocalizedStringFormatter)((0, ($parcel$interopDefault($g2t6q$intlStringsmodulejs))), '@react-aria/calendar');\n let domProps = (0, $g2t6q$filterDOMProps)(props);\n let title = (0, $a074e1e2d0f0a665$export$31afe65d91ef6e8)(state.visibleRange.start, state.visibleRange.end, state.timeZone, false);\n let visibleRangeDescription = (0, $a074e1e2d0f0a665$export$31afe65d91ef6e8)(state.visibleRange.start, state.visibleRange.end, state.timeZone, true);\n // Announce when the visible date range changes\n (0, $g2t6q$useUpdateEffect)(()=>{\n // only when pressing the Previous or Next button\n if (!state.isFocused) (0, $g2t6q$announce)(visibleRangeDescription);\n }, [\n visibleRangeDescription\n ]);\n // Announce when the selected value changes\n let selectedDateDescription = (0, $a074e1e2d0f0a665$export$b6df97c887c38e1a)(state);\n (0, $g2t6q$useUpdateEffect)(()=>{\n if (selectedDateDescription) (0, $g2t6q$announce)(selectedDateDescription, 'polite', 4000);\n // handle an update to the caption that describes the currently selected range, to announce the new value\n }, [\n selectedDateDescription\n ]);\n let errorMessageId = (0, $g2t6q$useSlotId)([\n Boolean(props.errorMessage),\n props.isInvalid,\n props.validationState\n ]);\n // Pass the label to the child grid elements.\n (0, $a074e1e2d0f0a665$export$653eddfc964b0f8a).set(state, {\n ariaLabel: props['aria-label'],\n ariaLabelledBy: props['aria-labelledby'],\n errorMessageId: errorMessageId,\n selectedDateDescription: selectedDateDescription\n });\n // If the next or previous buttons become disabled while they are focused, move focus to the calendar body.\n let [nextFocused, setNextFocused] = (0, $g2t6q$useState)(false);\n let nextDisabled = props.isDisabled || state.isNextVisibleRangeInvalid();\n if (nextDisabled && nextFocused) {\n setNextFocused(false);\n state.setFocused(true);\n }\n let [previousFocused, setPreviousFocused] = (0, $g2t6q$useState)(false);\n let previousDisabled = props.isDisabled || state.isPreviousVisibleRangeInvalid();\n if (previousDisabled && previousFocused) {\n setPreviousFocused(false);\n state.setFocused(true);\n }\n let labelProps = (0, $g2t6q$useLabels)({\n id: props['id'],\n 'aria-label': [\n props['aria-label'],\n visibleRangeDescription\n ].filter(Boolean).join(', '),\n 'aria-labelledby': props['aria-labelledby']\n });\n return {\n calendarProps: (0, $g2t6q$mergeProps)(domProps, labelProps, {\n role: 'application',\n 'aria-details': props['aria-details'] || undefined,\n 'aria-describedby': props['aria-describedby'] || undefined\n }),\n nextButtonProps: {\n onPress: ()=>state.focusNextPage(),\n 'aria-label': stringFormatter.format('next'),\n isDisabled: nextDisabled,\n onFocusChange: setNextFocused\n },\n prevButtonProps: {\n onPress: ()=>state.focusPreviousPage(),\n 'aria-label': stringFormatter.format('previous'),\n isDisabled: previousDisabled,\n onFocusChange: setPreviousFocused\n },\n errorMessageProps: {\n id: errorMessageId\n },\n title: title\n };\n}\n\n\nexport {$c4acc1de3ab169cf$export$d652b3ea2d672d5b as useCalendarBase};\n//# sourceMappingURL=useCalendarBase.module.js.map\n","import {useCalendarBase as $c4acc1de3ab169cf$export$d652b3ea2d672d5b} from \"./useCalendarBase.mjs\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $9942cad8a072a530$export$3ee915f8151bd4f1(props, state) {\n return (0, $c4acc1de3ab169cf$export$d652b3ea2d672d5b)(props, state);\n}\n\n\nexport {$9942cad8a072a530$export$3ee915f8151bd4f1 as useCalendar};\n//# sourceMappingURL=useCalendar.module.js.map\n","import {hookData as $a074e1e2d0f0a665$export$653eddfc964b0f8a, useVisibleRangeDescription as $a074e1e2d0f0a665$export$31afe65d91ef6e8} from \"./utils.mjs\";\nimport {startOfWeek as $NQfxu$startOfWeek, today as $NQfxu$today, getWeeksInMonth as $NQfxu$getWeeksInMonth} from \"@internationalized/date\";\nimport {useMemo as $NQfxu$useMemo} from \"react\";\nimport {useLabels as $NQfxu$useLabels, mergeProps as $NQfxu$mergeProps} from \"@react-aria/utils\";\nimport {useLocale as $NQfxu$useLocale, useDateFormatter as $NQfxu$useDateFormatter} from \"@react-aria/i18n\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\nfunction $e3031d1f8c9d64eb$export$cb95147730a423f5(props, state) {\n let { startDate: startDate = state.visibleRange.start, endDate: endDate = state.visibleRange.end, firstDayOfWeek: firstDayOfWeek } = props;\n let { direction: direction } = (0, $NQfxu$useLocale)();\n let onKeyDown = (e)=>{\n switch(e.key){\n case 'Enter':\n case ' ':\n e.preventDefault();\n state.selectFocusedDate();\n break;\n case 'PageUp':\n e.preventDefault();\n e.stopPropagation();\n state.focusPreviousSection(e.shiftKey);\n break;\n case 'PageDown':\n e.preventDefault();\n e.stopPropagation();\n state.focusNextSection(e.shiftKey);\n break;\n case 'End':\n e.preventDefault();\n e.stopPropagation();\n state.focusSectionEnd();\n break;\n case 'Home':\n e.preventDefault();\n e.stopPropagation();\n state.focusSectionStart();\n break;\n case 'ArrowLeft':\n e.preventDefault();\n e.stopPropagation();\n if (direction === 'rtl') state.focusNextDay();\n else state.focusPreviousDay();\n break;\n case 'ArrowUp':\n e.preventDefault();\n e.stopPropagation();\n state.focusPreviousRow();\n break;\n case 'ArrowRight':\n e.preventDefault();\n e.stopPropagation();\n if (direction === 'rtl') state.focusPreviousDay();\n else state.focusNextDay();\n break;\n case 'ArrowDown':\n e.preventDefault();\n e.stopPropagation();\n state.focusNextRow();\n break;\n case 'Escape':\n // Cancel the selection.\n if ('setAnchorDate' in state) {\n e.preventDefault();\n state.setAnchorDate(null);\n }\n break;\n }\n };\n let visibleRangeDescription = (0, $a074e1e2d0f0a665$export$31afe65d91ef6e8)(startDate, endDate, state.timeZone, true);\n let { ariaLabel: ariaLabel, ariaLabelledBy: ariaLabelledBy } = (0, $a074e1e2d0f0a665$export$653eddfc964b0f8a).get(state);\n let labelProps = (0, $NQfxu$useLabels)({\n 'aria-label': [\n ariaLabel,\n visibleRangeDescription\n ].filter(Boolean).join(', '),\n 'aria-labelledby': ariaLabelledBy\n });\n let dayFormatter = (0, $NQfxu$useDateFormatter)({\n weekday: props.weekdayStyle || 'narrow',\n timeZone: state.timeZone\n });\n let { locale: locale } = (0, $NQfxu$useLocale)();\n let weekDays = (0, $NQfxu$useMemo)(()=>{\n let weekStart = (0, $NQfxu$startOfWeek)((0, $NQfxu$today)(state.timeZone), locale, firstDayOfWeek);\n return [\n ...new Array(7).keys()\n ].map((index)=>{\n let date = weekStart.add({\n days: index\n });\n let dateDay = date.toDate(state.timeZone);\n return dayFormatter.format(dateDay);\n });\n }, [\n locale,\n state.timeZone,\n dayFormatter,\n firstDayOfWeek\n ]);\n let weeksInMonth = (0, $NQfxu$getWeeksInMonth)(startDate, locale, firstDayOfWeek);\n return {\n gridProps: (0, $NQfxu$mergeProps)(labelProps, {\n role: 'grid',\n 'aria-readonly': state.isReadOnly || undefined,\n 'aria-disabled': state.isDisabled || undefined,\n 'aria-multiselectable': 'highlightedRange' in state || undefined,\n onKeyDown: onKeyDown,\n onFocus: ()=>state.setFocused(true),\n onBlur: ()=>state.setFocused(false)\n }),\n headerProps: {\n // Column headers are hidden to screen readers to make navigating with a touch screen reader easier.\n // The day names are already included in the label of each cell, so there's no need to announce them twice.\n 'aria-hidden': true\n },\n weekDays: weekDays,\n weeksInMonth: weeksInMonth\n };\n}\n\n\nexport {$e3031d1f8c9d64eb$export$cb95147730a423f5 as useCalendarGrid};\n//# sourceMappingURL=useCalendarGrid.module.js.map\n","import {getEraFormat as $a074e1e2d0f0a665$export$134cbb7fb09a9522, hookData as $a074e1e2d0f0a665$export$653eddfc964b0f8a} from \"./utils.mjs\";\nimport $dm6hl$intlStringsmodulejs from \"./intlStrings.mjs\";\nimport {isSameDay as $dm6hl$isSameDay, isEqualDay as $dm6hl$isEqualDay, isToday as $dm6hl$isToday} from \"@internationalized/date\";\nimport {useDeepMemo as $dm6hl$useDeepMemo, useDescription as $dm6hl$useDescription, focusWithoutScrolling as $dm6hl$focusWithoutScrolling, scrollIntoViewport as $dm6hl$scrollIntoViewport, getScrollParent as $dm6hl$getScrollParent, mergeProps as $dm6hl$mergeProps} from \"@react-aria/utils\";\nimport {usePress as $dm6hl$usePress, getInteractionModality as $dm6hl$getInteractionModality} from \"@react-aria/interactions\";\nimport {useLocalizedStringFormatter as $dm6hl$useLocalizedStringFormatter, useDateFormatter as $dm6hl$useDateFormatter} from \"@react-aria/i18n\";\nimport {useMemo as $dm6hl$useMemo, useRef as $dm6hl$useRef, useEffect as $dm6hl$useEffect} from \"react\";\n\n\nfunction $parcel$interopDefault(a) {\n return a && a.__esModule ? a.default : a;\n}\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\n\n\n\nfunction $36a0ac60f04457c5$export$136073280381448e(props, state, ref) {\n let { date: date, isDisabled: isDisabled } = props;\n let { errorMessageId: errorMessageId, selectedDateDescription: selectedDateDescription } = (0, $a074e1e2d0f0a665$export$653eddfc964b0f8a).get(state);\n let stringFormatter = (0, $dm6hl$useLocalizedStringFormatter)((0, ($parcel$interopDefault($dm6hl$intlStringsmodulejs))), '@react-aria/calendar');\n let dateFormatter = (0, $dm6hl$useDateFormatter)({\n weekday: 'long',\n day: 'numeric',\n month: 'long',\n year: 'numeric',\n era: (0, $a074e1e2d0f0a665$export$134cbb7fb09a9522)(date),\n timeZone: state.timeZone\n });\n let isSelected = state.isSelected(date);\n let isFocused = state.isCellFocused(date) && !props.isOutsideMonth;\n isDisabled = isDisabled || state.isCellDisabled(date);\n let isUnavailable = state.isCellUnavailable(date);\n let isSelectable = !isDisabled && !isUnavailable;\n let isInvalid = state.isValueInvalid && Boolean('highlightedRange' in state ? !state.anchorDate && state.highlightedRange && date.compare(state.highlightedRange.start) >= 0 && date.compare(state.highlightedRange.end) <= 0 : state.value && (0, $dm6hl$isSameDay)(state.value, date));\n if (isInvalid) isSelected = true;\n // For performance, reuse the same date object as before if the new date prop is the same.\n // This allows subsequent useMemo results to be reused.\n date = (0, $dm6hl$useDeepMemo)(date, (0, $dm6hl$isEqualDay));\n let nativeDate = (0, $dm6hl$useMemo)(()=>date.toDate(state.timeZone), [\n date,\n state.timeZone\n ]);\n // aria-label should be localize Day of week, Month, Day and Year without Time.\n let isDateToday = (0, $dm6hl$isToday)(date, state.timeZone);\n let label = (0, $dm6hl$useMemo)(()=>{\n let label = '';\n // If this is a range calendar, add a description of the full selected range\n // to the first and last selected date.\n if ('highlightedRange' in state && state.value && !state.anchorDate && ((0, $dm6hl$isSameDay)(date, state.value.start) || (0, $dm6hl$isSameDay)(date, state.value.end))) label = selectedDateDescription + ', ';\n label += dateFormatter.format(nativeDate);\n if (isDateToday) // If date is today, set appropriate string depending on selected state:\n label = stringFormatter.format(isSelected ? 'todayDateSelected' : 'todayDate', {\n date: label\n });\n else if (isSelected) // If date is selected but not today:\n label = stringFormatter.format('dateSelected', {\n date: label\n });\n if (state.minValue && (0, $dm6hl$isSameDay)(date, state.minValue)) label += ', ' + stringFormatter.format('minimumDate');\n else if (state.maxValue && (0, $dm6hl$isSameDay)(date, state.maxValue)) label += ', ' + stringFormatter.format('maximumDate');\n return label;\n }, [\n dateFormatter,\n nativeDate,\n stringFormatter,\n isSelected,\n isDateToday,\n date,\n state,\n selectedDateDescription\n ]);\n // When a cell is focused and this is a range calendar, add a prompt to help\n // screenreader users know that they are in a range selection mode.\n let rangeSelectionPrompt = '';\n if ('anchorDate' in state && isFocused && !state.isReadOnly && isSelectable) {\n // If selection has started add \"click to finish selecting range\"\n if (state.anchorDate) rangeSelectionPrompt = stringFormatter.format('finishRangeSelectionPrompt');\n else rangeSelectionPrompt = stringFormatter.format('startRangeSelectionPrompt');\n }\n let descriptionProps = (0, $dm6hl$useDescription)(rangeSelectionPrompt);\n let isAnchorPressed = (0, $dm6hl$useRef)(false);\n let isRangeBoundaryPressed = (0, $dm6hl$useRef)(false);\n let touchDragTimerRef = (0, $dm6hl$useRef)(undefined);\n let { pressProps: pressProps, isPressed: isPressed } = (0, $dm6hl$usePress)({\n // When dragging to select a range, we don't want dragging over the original anchor\n // again to trigger onPressStart. Cancel presses immediately when the pointer exits.\n shouldCancelOnPointerExit: 'anchorDate' in state && !!state.anchorDate,\n preventFocusOnPress: true,\n isDisabled: !isSelectable || state.isReadOnly,\n onPressStart (e) {\n if (state.isReadOnly) {\n state.setFocusedDate(date);\n return;\n }\n if ('highlightedRange' in state && !state.anchorDate && (e.pointerType === 'mouse' || e.pointerType === 'touch')) {\n // Allow dragging the start or end date of a range to modify it\n // rather than starting a new selection.\n // Don't allow dragging when invalid, or weird jumping behavior may occur as date ranges\n // are constrained to available dates. The user will need to select a new range in this case.\n if (state.highlightedRange && !isInvalid) {\n if ((0, $dm6hl$isSameDay)(date, state.highlightedRange.start)) {\n state.setAnchorDate(state.highlightedRange.end);\n state.setFocusedDate(date);\n state.setDragging(true);\n isRangeBoundaryPressed.current = true;\n return;\n } else if ((0, $dm6hl$isSameDay)(date, state.highlightedRange.end)) {\n state.setAnchorDate(state.highlightedRange.start);\n state.setFocusedDate(date);\n state.setDragging(true);\n isRangeBoundaryPressed.current = true;\n return;\n }\n }\n let startDragging = ()=>{\n state.setDragging(true);\n touchDragTimerRef.current = undefined;\n state.selectDate(date);\n state.setFocusedDate(date);\n isAnchorPressed.current = true;\n };\n // Start selection on mouse/touch down so users can drag to select a range.\n // On touch, delay dragging to determine if the user really meant to scroll.\n if (e.pointerType === 'touch') touchDragTimerRef.current = setTimeout(startDragging, 200);\n else startDragging();\n }\n },\n onPressEnd () {\n isRangeBoundaryPressed.current = false;\n isAnchorPressed.current = false;\n clearTimeout(touchDragTimerRef.current);\n touchDragTimerRef.current = undefined;\n },\n onPress () {\n // For non-range selection, always select on press up.\n if (!('anchorDate' in state) && !state.isReadOnly) {\n state.selectDate(date);\n state.setFocusedDate(date);\n }\n },\n onPressUp (e) {\n if (state.isReadOnly) return;\n // If the user tapped quickly, the date won't be selected yet and the\n // timer will still be in progress. In this case, select the date on touch up.\n // Timer is cleared in onPressEnd.\n if ('anchorDate' in state && touchDragTimerRef.current) {\n state.selectDate(date);\n state.setFocusedDate(date);\n }\n if ('anchorDate' in state) {\n if (isRangeBoundaryPressed.current) // When clicking on the start or end date of an already selected range,\n // start a new selection on press up to also allow dragging the date to\n // change the existing range.\n state.setAnchorDate(date);\n else if (state.anchorDate && !isAnchorPressed.current) {\n // When releasing a drag or pressing the end date of a range, select it.\n state.selectDate(date);\n state.setFocusedDate(date);\n } else if (e.pointerType === 'keyboard' && !state.anchorDate) {\n // For range selection, auto-advance the focused date by one if using keyboard.\n // This gives an indication that you're selecting a range rather than a single date.\n // For mouse, this is unnecessary because users will see the indication on hover. For screen readers,\n // there will be an announcement to \"click to finish selecting range\" (above).\n state.selectDate(date);\n let nextDay = date.add({\n days: 1\n });\n if (state.isInvalid(nextDay)) nextDay = date.subtract({\n days: 1\n });\n if (!state.isInvalid(nextDay)) state.setFocusedDate(nextDay);\n } else if (e.pointerType === 'virtual') {\n // For screen readers, just select the date on click.\n state.selectDate(date);\n state.setFocusedDate(date);\n }\n }\n }\n });\n let tabIndex = undefined;\n if (!isDisabled) tabIndex = (0, $dm6hl$isSameDay)(date, state.focusedDate) ? 0 : -1;\n // Focus the button in the DOM when the state updates.\n (0, $dm6hl$useEffect)(()=>{\n if (isFocused && ref.current) {\n (0, $dm6hl$focusWithoutScrolling)(ref.current);\n // Scroll into view if navigating with a keyboard, otherwise\n // try not to shift the view under the user's mouse/finger.\n // If in a overlay, scrollIntoViewport will only cause scrolling\n // up to the overlay scroll body to prevent overlay shifting.\n // Also only scroll into view if the cell actually got focused.\n // There are some cases where the cell might be disabled or inside,\n // an inert container and we don't want to scroll then.\n if ((0, $dm6hl$getInteractionModality)() !== 'pointer' && document.activeElement === ref.current) (0, $dm6hl$scrollIntoViewport)(ref.current, {\n containingElement: (0, $dm6hl$getScrollParent)(ref.current)\n });\n }\n }, [\n isFocused,\n ref\n ]);\n let cellDateFormatter = (0, $dm6hl$useDateFormatter)({\n day: 'numeric',\n timeZone: state.timeZone,\n calendar: date.calendar.identifier\n });\n let formattedDate = (0, $dm6hl$useMemo)(()=>cellDateFormatter.formatToParts(nativeDate).find((part)=>part.type === 'day').value, [\n cellDateFormatter,\n nativeDate\n ]);\n return {\n cellProps: {\n role: 'gridcell',\n 'aria-disabled': !isSelectable || undefined,\n 'aria-selected': isSelected || undefined,\n 'aria-invalid': isInvalid || undefined\n },\n buttonProps: (0, $dm6hl$mergeProps)(pressProps, {\n onFocus () {\n if (!isDisabled) state.setFocusedDate(date);\n },\n tabIndex: tabIndex,\n role: 'button',\n 'aria-disabled': !isSelectable || undefined,\n 'aria-label': label,\n 'aria-invalid': isInvalid || undefined,\n 'aria-describedby': [\n isInvalid ? errorMessageId : undefined,\n descriptionProps['aria-describedby']\n ].filter(Boolean).join(' ') || undefined,\n onPointerEnter (e) {\n // Highlight the date on hover or drag over a date when selecting a range.\n if ('highlightDate' in state && (e.pointerType !== 'touch' || state.isDragging) && isSelectable) state.highlightDate(date);\n },\n onPointerDown (e) {\n // This is necessary on touch devices to allow dragging\n // outside the original pressed element.\n // (JSDOM does not support this)\n if ('releasePointerCapture' in e.target) e.target.releasePointerCapture(e.pointerId);\n },\n onContextMenu (e) {\n // Prevent context menu on long press.\n e.preventDefault();\n }\n }),\n isPressed: isPressed,\n isFocused: isFocused,\n isSelected: isSelected,\n isDisabled: isDisabled,\n isUnavailable: isUnavailable,\n isOutsideVisibleRange: date.compare(state.visibleRange.start) < 0 || date.compare(state.visibleRange.end) > 0,\n isInvalid: isInvalid,\n formattedDate: formattedDate\n };\n}\n\n\nexport {$36a0ac60f04457c5$export$136073280381448e as useCalendarCell};\n//# sourceMappingURL=useCalendarCell.module.js.map\n","import {startOfYear as $k1D4u$startOfYear, startOfMonth as $k1D4u$startOfMonth, startOfWeek as $k1D4u$startOfWeek, maxDate as $k1D4u$maxDate, toCalendarDate as $k1D4u$toCalendarDate, minDate as $k1D4u$minDate} from \"@internationalized/date\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $f62d864046160412$export$eac50920cf2fd59a(date, minValue, maxValue) {\n return minValue != null && date.compare(minValue) < 0 || maxValue != null && date.compare(maxValue) > 0;\n}\nfunction $f62d864046160412$export$f4a51ff076cc9a09(date, duration, locale, minValue, maxValue) {\n let halfDuration = {};\n for(let key in duration){\n halfDuration[key] = Math.floor(duration[key] / 2);\n if (halfDuration[key] > 0 && duration[key] % 2 === 0) halfDuration[key]--;\n }\n let aligned = $f62d864046160412$export$144a00ba6044eb9(date, duration, locale).subtract(halfDuration);\n return $f62d864046160412$export$5bb865b12696a77d(date, aligned, duration, locale, minValue, maxValue);\n}\nfunction $f62d864046160412$export$144a00ba6044eb9(date, duration, locale, minValue, maxValue) {\n // align to the start of the largest unit\n let aligned = date;\n if (duration.years) aligned = (0, $k1D4u$startOfYear)(date);\n else if (duration.months) aligned = (0, $k1D4u$startOfMonth)(date);\n else if (duration.weeks) aligned = (0, $k1D4u$startOfWeek)(date, locale);\n return $f62d864046160412$export$5bb865b12696a77d(date, aligned, duration, locale, minValue, maxValue);\n}\nfunction $f62d864046160412$export$530edbfc915b2b04(date, duration, locale, minValue, maxValue) {\n let d = {\n ...duration\n };\n // subtract 1 from the smallest unit\n if (d.days) d.days--;\n else if (d.weeks) d.weeks--;\n else if (d.months) d.months--;\n else if (d.years) d.years--;\n let aligned = $f62d864046160412$export$144a00ba6044eb9(date, duration, locale).subtract(d);\n return $f62d864046160412$export$5bb865b12696a77d(date, aligned, duration, locale, minValue, maxValue);\n}\nfunction $f62d864046160412$export$5bb865b12696a77d(date, aligned, duration, locale, minValue, maxValue) {\n if (minValue && date.compare(minValue) >= 0) {\n let newDate = (0, $k1D4u$maxDate)(aligned, $f62d864046160412$export$144a00ba6044eb9((0, $k1D4u$toCalendarDate)(minValue), duration, locale));\n if (newDate) aligned = newDate;\n }\n if (maxValue && date.compare(maxValue) <= 0) {\n let newDate = (0, $k1D4u$minDate)(aligned, $f62d864046160412$export$530edbfc915b2b04((0, $k1D4u$toCalendarDate)(maxValue), duration, locale));\n if (newDate) aligned = newDate;\n }\n return aligned;\n}\nfunction $f62d864046160412$export$4f5203c0d889109e(date, minValue, maxValue) {\n if (minValue) {\n let newDate = (0, $k1D4u$maxDate)(date, (0, $k1D4u$toCalendarDate)(minValue));\n if (newDate) date = newDate;\n }\n if (maxValue) {\n let newDate = (0, $k1D4u$minDate)(date, (0, $k1D4u$toCalendarDate)(maxValue));\n if (newDate) date = newDate;\n }\n return date;\n}\nfunction $f62d864046160412$export$a1d3911297b952d7(date, minValue, isDateUnavailable) {\n if (!isDateUnavailable) return date;\n while(date.compare(minValue) >= 0 && isDateUnavailable(date))date = date.subtract({\n days: 1\n });\n if (date.compare(minValue) >= 0) return date;\n return null;\n}\n\n\nexport {$f62d864046160412$export$eac50920cf2fd59a as isInvalid, $f62d864046160412$export$f4a51ff076cc9a09 as alignCenter, $f62d864046160412$export$144a00ba6044eb9 as alignStart, $f62d864046160412$export$5bb865b12696a77d as constrainStart, $f62d864046160412$export$530edbfc915b2b04 as alignEnd, $f62d864046160412$export$4f5203c0d889109e as constrainValue, $f62d864046160412$export$a1d3911297b952d7 as previousAvailableDate};\n//# sourceMappingURL=utils.module.js.map\n","import {alignCenter as $f62d864046160412$export$f4a51ff076cc9a09, alignEnd as $f62d864046160412$export$530edbfc915b2b04, alignStart as $f62d864046160412$export$144a00ba6044eb9, constrainStart as $f62d864046160412$export$5bb865b12696a77d, constrainValue as $f62d864046160412$export$4f5203c0d889109e, isInvalid as $f62d864046160412$export$eac50920cf2fd59a, previousAvailableDate as $f62d864046160412$export$a1d3911297b952d7} from \"./utils.mjs\";\nimport {DateFormatter as $7G4ZY$DateFormatter, toCalendar as $7G4ZY$toCalendar, toCalendarDate as $7G4ZY$toCalendarDate, today as $7G4ZY$today, isEqualCalendar as $7G4ZY$isEqualCalendar, GregorianCalendar as $7G4ZY$GregorianCalendar, startOfWeek as $7G4ZY$startOfWeek, startOfMonth as $7G4ZY$startOfMonth, endOfWeek as $7G4ZY$endOfWeek, endOfMonth as $7G4ZY$endOfMonth, isSameDay as $7G4ZY$isSameDay, getDayOfWeek as $7G4ZY$getDayOfWeek} from \"@internationalized/date\";\nimport {useControlledState as $7G4ZY$useControlledState} from \"@react-stately/utils\";\nimport {useMemo as $7G4ZY$useMemo, useState as $7G4ZY$useState} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\n\nfunction $131cf43a05231e1e$export$6d095e787d2b5e1f(props) {\n let defaultFormatter = (0, $7G4ZY$useMemo)(()=>new (0, $7G4ZY$DateFormatter)(props.locale), [\n props.locale\n ]);\n let resolvedOptions = (0, $7G4ZY$useMemo)(()=>defaultFormatter.resolvedOptions(), [\n defaultFormatter\n ]);\n let { locale: locale, createCalendar: createCalendar, visibleDuration: visibleDuration = {\n months: 1\n }, minValue: minValue, maxValue: maxValue, selectionAlignment: selectionAlignment, isDateUnavailable: isDateUnavailable, pageBehavior: pageBehavior = 'visible', firstDayOfWeek: firstDayOfWeek } = props;\n let calendar = (0, $7G4ZY$useMemo)(()=>createCalendar(resolvedOptions.calendar), [\n createCalendar,\n resolvedOptions.calendar\n ]);\n var _props_defaultValue;\n let [value, setControlledValue] = (0, $7G4ZY$useControlledState)(props.value, (_props_defaultValue = props.defaultValue) !== null && _props_defaultValue !== void 0 ? _props_defaultValue : null, props.onChange);\n let calendarDateValue = (0, $7G4ZY$useMemo)(()=>value ? (0, $7G4ZY$toCalendar)((0, $7G4ZY$toCalendarDate)(value), calendar) : null, [\n value,\n calendar\n ]);\n let timeZone = (0, $7G4ZY$useMemo)(()=>value && 'timeZone' in value ? value.timeZone : resolvedOptions.timeZone, [\n value,\n resolvedOptions.timeZone\n ]);\n let focusedCalendarDate = (0, $7G4ZY$useMemo)(()=>props.focusedValue ? (0, $f62d864046160412$export$4f5203c0d889109e)((0, $7G4ZY$toCalendar)((0, $7G4ZY$toCalendarDate)(props.focusedValue), calendar), minValue, maxValue) : undefined, [\n props.focusedValue,\n calendar,\n minValue,\n maxValue\n ]);\n let defaultFocusedCalendarDate = (0, $7G4ZY$useMemo)(()=>(0, $f62d864046160412$export$4f5203c0d889109e)(props.defaultFocusedValue ? (0, $7G4ZY$toCalendar)((0, $7G4ZY$toCalendarDate)(props.defaultFocusedValue), calendar) : calendarDateValue || (0, $7G4ZY$toCalendar)((0, $7G4ZY$today)(timeZone), calendar), minValue, maxValue), [\n props.defaultFocusedValue,\n calendarDateValue,\n timeZone,\n calendar,\n minValue,\n maxValue\n ]);\n let [focusedDate, setFocusedDate] = (0, $7G4ZY$useControlledState)(focusedCalendarDate, defaultFocusedCalendarDate, props.onFocusChange);\n let [startDate, setStartDate] = (0, $7G4ZY$useState)(()=>{\n switch(selectionAlignment){\n case 'start':\n return (0, $f62d864046160412$export$144a00ba6044eb9)(focusedDate, visibleDuration, locale, minValue, maxValue);\n case 'end':\n return (0, $f62d864046160412$export$530edbfc915b2b04)(focusedDate, visibleDuration, locale, minValue, maxValue);\n case 'center':\n default:\n return (0, $f62d864046160412$export$f4a51ff076cc9a09)(focusedDate, visibleDuration, locale, minValue, maxValue);\n }\n });\n let [isFocused, setFocused] = (0, $7G4ZY$useState)(props.autoFocus || false);\n let endDate = (0, $7G4ZY$useMemo)(()=>{\n let duration = {\n ...visibleDuration\n };\n if (duration.days) duration.days--;\n else duration.days = -1;\n return startDate.add(duration);\n }, [\n startDate,\n visibleDuration\n ]);\n // Reset focused date and visible range when calendar changes.\n let [lastCalendar, setLastCalendar] = (0, $7G4ZY$useState)(calendar);\n if (!(0, $7G4ZY$isEqualCalendar)(calendar, lastCalendar)) {\n let newFocusedDate = (0, $7G4ZY$toCalendar)(focusedDate, calendar);\n setStartDate((0, $f62d864046160412$export$f4a51ff076cc9a09)(newFocusedDate, visibleDuration, locale, minValue, maxValue));\n setFocusedDate(newFocusedDate);\n setLastCalendar(calendar);\n }\n if ((0, $f62d864046160412$export$eac50920cf2fd59a)(focusedDate, minValue, maxValue)) // If the focused date was moved to an invalid value, it can't be focused, so constrain it.\n setFocusedDate((0, $f62d864046160412$export$4f5203c0d889109e)(focusedDate, minValue, maxValue));\n else if (focusedDate.compare(startDate) < 0) setStartDate((0, $f62d864046160412$export$530edbfc915b2b04)(focusedDate, visibleDuration, locale, minValue, maxValue));\n else if (focusedDate.compare(endDate) > 0) setStartDate((0, $f62d864046160412$export$144a00ba6044eb9)(focusedDate, visibleDuration, locale, minValue, maxValue));\n // Sets focus to a specific cell date\n function focusCell(date) {\n date = (0, $f62d864046160412$export$4f5203c0d889109e)(date, minValue, maxValue);\n setFocusedDate(date);\n }\n function setValue(newValue) {\n if (!props.isDisabled && !props.isReadOnly) {\n let localValue = newValue;\n if (localValue === null) {\n setControlledValue(null);\n return;\n }\n localValue = (0, $f62d864046160412$export$4f5203c0d889109e)(localValue, minValue, maxValue);\n localValue = (0, $f62d864046160412$export$a1d3911297b952d7)(localValue, startDate, isDateUnavailable);\n if (!localValue) return;\n // The display calendar should not have any effect on the emitted value.\n // Emit dates in the same calendar as the original value, if any, otherwise gregorian.\n localValue = (0, $7G4ZY$toCalendar)(localValue, (value === null || value === void 0 ? void 0 : value.calendar) || new (0, $7G4ZY$GregorianCalendar)());\n // Preserve time if the input value had one.\n if (value && 'hour' in value) setControlledValue(value.set(localValue));\n else setControlledValue(localValue);\n }\n }\n let isUnavailable = (0, $7G4ZY$useMemo)(()=>{\n if (!calendarDateValue) return false;\n if (isDateUnavailable && isDateUnavailable(calendarDateValue)) return true;\n return (0, $f62d864046160412$export$eac50920cf2fd59a)(calendarDateValue, minValue, maxValue);\n }, [\n calendarDateValue,\n isDateUnavailable,\n minValue,\n maxValue\n ]);\n let isValueInvalid = props.isInvalid || props.validationState === 'invalid' || isUnavailable;\n let validationState = isValueInvalid ? 'invalid' : null;\n let pageDuration = (0, $7G4ZY$useMemo)(()=>{\n if (pageBehavior === 'visible') return visibleDuration;\n return $131cf43a05231e1e$var$unitDuration(visibleDuration);\n }, [\n pageBehavior,\n visibleDuration\n ]);\n var _props_isDisabled, _props_isReadOnly;\n return {\n isDisabled: (_props_isDisabled = props.isDisabled) !== null && _props_isDisabled !== void 0 ? _props_isDisabled : false,\n isReadOnly: (_props_isReadOnly = props.isReadOnly) !== null && _props_isReadOnly !== void 0 ? _props_isReadOnly : false,\n value: calendarDateValue,\n setValue: setValue,\n visibleRange: {\n start: startDate,\n end: endDate\n },\n minValue: minValue,\n maxValue: maxValue,\n focusedDate: focusedDate,\n timeZone: timeZone,\n validationState: validationState,\n isValueInvalid: isValueInvalid,\n setFocusedDate (date) {\n focusCell(date);\n setFocused(true);\n },\n focusNextDay () {\n focusCell(focusedDate.add({\n days: 1\n }));\n },\n focusPreviousDay () {\n focusCell(focusedDate.subtract({\n days: 1\n }));\n },\n focusNextRow () {\n if (visibleDuration.days) this.focusNextPage();\n else if (visibleDuration.weeks || visibleDuration.months || visibleDuration.years) focusCell(focusedDate.add({\n weeks: 1\n }));\n },\n focusPreviousRow () {\n if (visibleDuration.days) this.focusPreviousPage();\n else if (visibleDuration.weeks || visibleDuration.months || visibleDuration.years) focusCell(focusedDate.subtract({\n weeks: 1\n }));\n },\n focusNextPage () {\n let start = startDate.add(pageDuration);\n setFocusedDate((0, $f62d864046160412$export$4f5203c0d889109e)(focusedDate.add(pageDuration), minValue, maxValue));\n setStartDate((0, $f62d864046160412$export$144a00ba6044eb9)((0, $f62d864046160412$export$5bb865b12696a77d)(focusedDate, start, pageDuration, locale, minValue, maxValue), pageDuration, locale));\n },\n focusPreviousPage () {\n let start = startDate.subtract(pageDuration);\n setFocusedDate((0, $f62d864046160412$export$4f5203c0d889109e)(focusedDate.subtract(pageDuration), minValue, maxValue));\n setStartDate((0, $f62d864046160412$export$144a00ba6044eb9)((0, $f62d864046160412$export$5bb865b12696a77d)(focusedDate, start, pageDuration, locale, minValue, maxValue), pageDuration, locale));\n },\n focusSectionStart () {\n if (visibleDuration.days) focusCell(startDate);\n else if (visibleDuration.weeks) focusCell((0, $7G4ZY$startOfWeek)(focusedDate, locale));\n else if (visibleDuration.months || visibleDuration.years) focusCell((0, $7G4ZY$startOfMonth)(focusedDate));\n },\n focusSectionEnd () {\n if (visibleDuration.days) focusCell(endDate);\n else if (visibleDuration.weeks) focusCell((0, $7G4ZY$endOfWeek)(focusedDate, locale));\n else if (visibleDuration.months || visibleDuration.years) focusCell((0, $7G4ZY$endOfMonth)(focusedDate));\n },\n focusNextSection (larger) {\n if (!larger && !visibleDuration.days) {\n focusCell(focusedDate.add($131cf43a05231e1e$var$unitDuration(visibleDuration)));\n return;\n }\n if (visibleDuration.days) this.focusNextPage();\n else if (visibleDuration.weeks) focusCell(focusedDate.add({\n months: 1\n }));\n else if (visibleDuration.months || visibleDuration.years) focusCell(focusedDate.add({\n years: 1\n }));\n },\n focusPreviousSection (larger) {\n if (!larger && !visibleDuration.days) {\n focusCell(focusedDate.subtract($131cf43a05231e1e$var$unitDuration(visibleDuration)));\n return;\n }\n if (visibleDuration.days) this.focusPreviousPage();\n else if (visibleDuration.weeks) focusCell(focusedDate.subtract({\n months: 1\n }));\n else if (visibleDuration.months || visibleDuration.years) focusCell(focusedDate.subtract({\n years: 1\n }));\n },\n selectFocusedDate () {\n if (!(isDateUnavailable && isDateUnavailable(focusedDate))) setValue(focusedDate);\n },\n selectDate (date) {\n setValue(date);\n },\n isFocused: isFocused,\n setFocused: setFocused,\n isInvalid (date) {\n return (0, $f62d864046160412$export$eac50920cf2fd59a)(date, minValue, maxValue);\n },\n isSelected (date) {\n return calendarDateValue != null && (0, $7G4ZY$isSameDay)(date, calendarDateValue) && !this.isCellDisabled(date) && !this.isCellUnavailable(date);\n },\n isCellFocused (date) {\n return isFocused && focusedDate && (0, $7G4ZY$isSameDay)(date, focusedDate);\n },\n isCellDisabled (date) {\n return props.isDisabled || date.compare(startDate) < 0 || date.compare(endDate) > 0 || this.isInvalid(date);\n },\n isCellUnavailable (date) {\n return props.isDateUnavailable ? props.isDateUnavailable(date) : false;\n },\n isPreviousVisibleRangeInvalid () {\n let prev = startDate.subtract({\n days: 1\n });\n return (0, $7G4ZY$isSameDay)(prev, startDate) || this.isInvalid(prev);\n },\n isNextVisibleRangeInvalid () {\n // Adding may return the same date if we reached the end of time\n // according to the calendar system (e.g. 9999-12-31).\n let next = endDate.add({\n days: 1\n });\n return (0, $7G4ZY$isSameDay)(next, endDate) || this.isInvalid(next);\n },\n getDatesInWeek (weekIndex, from = startDate) {\n let date = from.add({\n weeks: weekIndex\n });\n let dates = [];\n date = (0, $7G4ZY$startOfWeek)(date, locale, firstDayOfWeek);\n // startOfWeek will clamp dates within the calendar system's valid range, which may\n // start in the middle of a week. In this case, add null placeholders.\n let dayOfWeek = (0, $7G4ZY$getDayOfWeek)(date, locale, firstDayOfWeek);\n for(let i = 0; i < dayOfWeek; i++)dates.push(null);\n while(dates.length < 7){\n dates.push(date);\n let nextDate = date.add({\n days: 1\n });\n if ((0, $7G4ZY$isSameDay)(date, nextDate)) break;\n date = nextDate;\n }\n // Add null placeholders if at the end of the calendar system.\n while(dates.length < 7)dates.push(null);\n return dates;\n }\n };\n}\nfunction $131cf43a05231e1e$var$unitDuration(duration) {\n let unit = {\n ...duration\n };\n for(let key in duration)unit[key] = 1;\n return unit;\n}\n\n\nexport {$131cf43a05231e1e$export$6d095e787d2b5e1f as useCalendarState};\n//# sourceMappingURL=useCalendarState.module.js.map\n","import {mergeProps as $bwqiF$mergeProps, filterDOMProps as $bwqiF$filterDOMProps} from \"@react-aria/utils\";\nimport {usePress as $bwqiF$usePress, useFocusable as $bwqiF$useFocusable} from \"@react-aria/interactions\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $701a24aa0da5b062$export$ea18c227d4417cc3(props, ref) {\n let { elementType: elementType = 'button', isDisabled: isDisabled, onPress: onPress, onPressStart: onPressStart, onPressEnd: onPressEnd, onPressUp: onPressUp, onPressChange: onPressChange, preventFocusOnPress: preventFocusOnPress, allowFocusWhenDisabled: // @ts-ignore - undocumented\n allowFocusWhenDisabled, onClick: onClick, href: href, target: target, rel: rel, type: type = 'button' } = props;\n let additionalProps;\n if (elementType === 'button') additionalProps = {\n type: type,\n disabled: isDisabled,\n form: props.form,\n formAction: props.formAction,\n formEncType: props.formEncType,\n formMethod: props.formMethod,\n formNoValidate: props.formNoValidate,\n formTarget: props.formTarget,\n name: props.name,\n value: props.value\n };\n else additionalProps = {\n role: 'button',\n href: elementType === 'a' && !isDisabled ? href : undefined,\n target: elementType === 'a' ? target : undefined,\n type: elementType === 'input' ? type : undefined,\n disabled: elementType === 'input' ? isDisabled : undefined,\n 'aria-disabled': !isDisabled || elementType === 'input' ? undefined : isDisabled,\n rel: elementType === 'a' ? rel : undefined\n };\n let { pressProps: pressProps, isPressed: isPressed } = (0, $bwqiF$usePress)({\n onPressStart: onPressStart,\n onPressEnd: onPressEnd,\n onPressChange: onPressChange,\n onPress: onPress,\n onPressUp: onPressUp,\n onClick: onClick,\n isDisabled: isDisabled,\n preventFocusOnPress: preventFocusOnPress,\n ref: ref\n });\n let { focusableProps: focusableProps } = (0, $bwqiF$useFocusable)(props, ref);\n if (allowFocusWhenDisabled) focusableProps.tabIndex = isDisabled ? -1 : focusableProps.tabIndex;\n let buttonProps = (0, $bwqiF$mergeProps)(focusableProps, pressProps, (0, $bwqiF$filterDOMProps)(props, {\n labelable: true\n }));\n return {\n isPressed: isPressed,\n buttonProps: (0, $bwqiF$mergeProps)(additionalProps, buttonProps, {\n 'aria-haspopup': props['aria-haspopup'],\n 'aria-expanded': props['aria-expanded'],\n 'aria-controls': props['aria-controls'],\n 'aria-pressed': props['aria-pressed'],\n 'aria-current': props['aria-current']\n })\n };\n}\n\n\nexport {$701a24aa0da5b062$export$ea18c227d4417cc3 as useButton};\n//# sourceMappingURL=useButton.module.js.map\n","import React, { useRef } from 'react';\n\nimport { useButton } from '@react-aria/button';\n\nimport { IconButton } from '@entur/button';\n\ntype CalendarButtonProps = {\n children: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n [key: string]: any;\n};\n\nexport const CalendarButton = ({\n children,\n className,\n style,\n ...props\n}: CalendarButtonProps) => {\n const ref = useRef(null);\n const { buttonProps } = useButton(props, ref);\n\n return (\n <IconButton {...buttonProps} ref={ref} className={className} style={style}>\n {children}\n </IconButton>\n );\n};\n","import React, { useRef } from 'react';\n\nimport { useCalendarCell } from '@react-aria/calendar';\nimport { CalendarState } from '@react-stately/calendar';\nimport {\n CalendarDate,\n getLocalTimeZone,\n isEqualDay,\n now,\n} from '@internationalized/date';\nimport classNames from 'classnames';\n\ntype CalendarCellProps = {\n state: CalendarState;\n date: CalendarDate;\n weekNumberString: string;\n onSelectedCellClick?: () => void;\n onCellClick?: () => void;\n classNameForDate?: (date: CalendarDate) => string;\n ariaLabelForDate?: (date: CalendarDate) => string;\n};\n\nexport const CalendarCell = ({\n state,\n date,\n onSelectedCellClick = () => {\n return;\n },\n onCellClick = () => {\n return;\n },\n weekNumberString,\n classNameForDate,\n ariaLabelForDate,\n ...rest\n}: CalendarCellProps) => {\n const cellRef = useRef(null);\n\n const {\n cellProps,\n buttonProps,\n isSelected,\n isOutsideVisibleRange,\n isDisabled,\n isUnavailable,\n formattedDate,\n } = useCalendarCell({ date }, state, cellRef);\n\n const ariaLabel = `${buttonProps['aria-label']}${weekNumberString} ${\n ariaLabelForDate?.(date) ?? ''\n }`;\n\n const cellCanBeSelected = !(\n isOutsideVisibleRange ||\n isDisabled ||\n isUnavailable\n );\n\n return (\n <td {...cellProps} className=\"eds-datepicker__calendar__grid__cell__td\">\n <div\n {...buttonProps}\n aria-label={ariaLabel}\n aria-hidden={isOutsideVisibleRange}\n ref={cellRef}\n hidden={isOutsideVisibleRange}\n className={classNames('eds-datepicker__calendar__grid__cell', {\n [classNameForDate?.(date) ?? '']: !isOutsideVisibleRange,\n 'eds-datepicker__calendar__grid__cell--selected': isSelected,\n 'eds-datepicker__calendar__grid__cell--disabled':\n isDisabled || isUnavailable,\n 'eds-datepicker__calendar__grid__cell--outside-month':\n isOutsideVisibleRange,\n 'eds-datepicker__calendar__grid__cell--today': isEqualDay(\n date,\n now(state.timeZone ?? getLocalTimeZone()),\n ),\n })}\n {...rest}\n onClick={e => {\n buttonProps.onClick && buttonProps.onClick(e);\n // Used to force close calendar on select\n isSelected && onSelectedCellClick();\n cellCanBeSelected && onCellClick();\n }}\n onKeyUp={e => {\n buttonProps.onKeyUp && buttonProps.onKeyUp(e);\n if (e.key === 'Enter') {\n // Used to force close calendar on select\n isSelected && onSelectedCellClick();\n cellCanBeSelected && onCellClick();\n }\n }}\n >\n {formattedDate}\n </div>\n </td>\n );\n};\n","import React from 'react';\n\nimport { useLocale } from '@react-aria/i18n';\nimport { useCalendarGrid } from '@react-aria/calendar';\nimport { CalendarState } from '@react-stately/calendar';\nimport { getWeeksInMonth, CalendarDate } from '@internationalized/date';\n\nimport { useRandomId } from '@entur/utils';\nimport { VisuallyHidden } from '@entur/a11y';\n\nimport { getWeekNumberForDate } from '../shared/utils';\nimport { CalendarCell } from './CalendarCell';\n\ntype CalendarGridProps = {\n state: CalendarState;\n navigationDescription?: string;\n showWeekNumbers: boolean;\n weekNumberHeader: string;\n onSelectedCellClick?: () => void;\n onCellClick?: () => void;\n classNameForDate?: (date: CalendarDate) => string;\n ariaLabelForDate?: (date: CalendarDate) => string;\n};\n\nexport const CalendarGrid = ({\n state,\n navigationDescription,\n onSelectedCellClick = () => {\n return;\n },\n onCellClick = () => {\n return;\n },\n showWeekNumbers,\n weekNumberHeader,\n classNameForDate,\n ariaLabelForDate,\n ...rest\n}: CalendarGridProps) => {\n const calendarGridId = useRandomId('eds-calendar');\n const { locale } = useLocale();\n\n const { gridProps, headerProps, weekDays } = useCalendarGrid(rest, state);\n\n const weeksInMonth = getWeeksInMonth(state.visibleRange.start, locale);\n const weeksArray = Array.from(Array(weeksInMonth).keys());\n\n const weekDaysMapped = () => {\n if (locale.toLowerCase().includes('no'))\n return ['ma', 'ti', 'on', 'to', 'fr', 'lø', 'sø'];\n if (locale.toLowerCase().includes('en')) {\n if (weekDays[0] === 'M')\n return ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'];\n if (weekDays[0] === 'S')\n return ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];\n }\n return weekDays.map(day => day.toLowerCase());\n };\n\n const getNavigationDescription = () => {\n if (navigationDescription) return navigationDescription;\n if (locale.toLowerCase().includes('en'))\n return 'Use the arrow keys to navigate between dates';\n return 'Bruk piltastene til å navigere mellom datoer';\n };\n\n return (\n <>\n <table\n {...gridProps}\n cellSpacing=\"0\"\n className=\"eds-datepicker__calendar__grid\"\n >\n <thead {...headerProps}>\n <tr>\n {showWeekNumbers && (\n <th className=\"eds-datepicker__calendar__grid__weeknumber-header\">\n {weekNumberHeader}\n </th>\n )}\n {weekDaysMapped().map(day => (\n <th key={day}>{day}</th>\n ))}\n </tr>\n </thead>\n <tbody>\n {weeksArray.map(weekIndex => {\n const weekNumber = getWeekNumberForDate(\n state.getDatesInWeek(weekIndex)[0],\n );\n return (\n <tr key={weekIndex}>\n {showWeekNumbers && (\n <th\n aria-hidden\n className=\"eds-datepicker__calendar__grid__weeknumber\"\n >\n {weekNumber}\n </th>\n )}\n {state\n .getDatesInWeek(weekIndex)\n .map((date, i) =>\n date ? (\n <CalendarCell\n key={`${date.month}.${date.day}`}\n state={state}\n date={date}\n aria-describedby={calendarGridId + 'description'}\n weekNumberString={\n showWeekNumbers\n ? `, ${weekNumberHeader} ${weekNumber},`\n : ''\n }\n onSelectedCellClick={onSelectedCellClick}\n onCellClick={onCellClick}\n classNameForDate={classNameForDate}\n ariaLabelForDate={ariaLabelForDate}\n />\n ) : (\n <td key={i} />\n ),\n )}\n </tr>\n );\n })}\n </tbody>\n </table>\n <VisuallyHidden id={calendarGridId + 'description'}>\n {getNavigationDescription()}\n </VisuallyHidden>\n </>\n );\n};\n","import React, { useEffect } from 'react';\n\nimport classNames from 'classnames';\nimport { I18nProvider, useLocale } from '@react-aria/i18n';\nimport { AriaCalendarProps, useCalendar } from '@react-aria/calendar';\nimport {\n CalendarStateOptions,\n useCalendarState,\n} from '@react-stately/calendar';\nimport { CalendarDate, DateValue } from '@internationalized/date';\nimport { MappedDateValue } from '@react-types/datepicker';\n\nimport { LeftArrowIcon, RightArrowIcon } from '@entur/icons';\n\nimport {\n ariaLabelIfNorwegian,\n createCalendar,\n handleOnChange,\n} from '../shared/utils';\nimport { CalendarButton } from '../shared/CalendarButton';\nimport { CalendarGrid } from './CalendarGrid';\nimport { DateFieldProps } from './DateField';\n\nimport './Calendar.scss';\n\ntype ExtendedCalendarProps<DateType extends DateValue> = Omit<\n AriaCalendarProps<DateType>,\n | keyof BaseCalendarProps<DateType>\n | 'value'\n | 'label'\n | 'hideTimeZone'\n | 'placeholder'\n | 'placeholderValue'\n | 'defaultValue'\n | 'minValue'\n | 'maxValue'\n>;\n\ntype BaseCalendarProps<DateType extends DateValue> = {\n selectedDate: DateType | null;\n onChange?: (selectedDate: MappedDateValue<DateType> | null) => void;\n navigationDescription?: string;\n style?: React.CSSProperties;\n /** Ekstra klassenavn */\n className?: string;\n onSelectedCellClick?: () => void;\n onCellClick?: () => void;\n /** Tidligste gyldige datovalg.\n * Eks: today(getLocalTimeZone()) == i dag i lokal tidssone.\n *\n * OBS: Hvis du bruker dato med tid vil tidspunktet også tas hensyn til.\n * Gyldig fra og med den tiden som legges inn som minDate.\n * Dato uten tid vil være gyldig hele minDate-dagen */\n minDate?: DateValue;\n /** Seneste gyldige datovalg.\n * Eks: today(getLocalTimeZone()).add({days: 1}) == i morgen i lokal tidssone\n *\n * OBS: Hvis du bruker dato med tid vil tidspunktet også tas hensyn til.\n * Gyldig til og med den tiden som legges inn som maxDate.\n * Dato uten tid vil være gyldig hele maxDate-dagen */\n maxDate?: DateValue;\n /** Slå på visning av ukenummere i kalenderen. Overskriften for ukenummer-kolonnen\n * kan endres med prop-en 'weekNumberHeader'\n * @default false */\n showWeekNumbers?: boolean;\n /** Overskrift som vises for ukenummer-kolonnen. Vises kun hvis 'showWeekNumbers' er true.\n * @default 'uke' */\n weekNumberHeader?: string;\n /** Brukes for å legge til klassenavn på spesifikke datoer i kalenderen.\n * Tar inn en dato og skal returnere klassenavnet som skal legges til den datoen.\n * @default undefined\n * @example (date) => isWeekend(date, 'no-NO') ? 'weekend' : ''\n *\n * OBS: hvis stylingen er meningsbærende bør du bruke ariaLabelForDate i tillegg for å beskrive\n * meningen til skjermlesere o.l.\n */\n classNameForDate?: (date: CalendarDate) => string;\n /** Legger til teksten som returneres på datoen i kalenderen sin aria-label.\n * Bør brukes sammen med classNameForDate hvis styling-endringene gjort der er meningsbærende.\n * @default undefined\n * @example (date) => isWeekend(date, 'no-NO') ? 'helgedag' : ''\n */\n ariaLabelForDate?: (date: CalendarDate) => string;\n /** Callback-funksjon for når valideringen til datovelgeren endrer seg */\n onValidate?: (isValid?: boolean) => void;\n disabled?: boolean;\n locale?: string;\n calendarRef?: React.MutableRefObject<HTMLDivElement | null>;\n forcedReturnType?: DateFieldProps<DateType>['forcedReturnType'];\n};\n\nexport type CalendarProps<DateType extends DateValue> =\n BaseCalendarProps<DateType> & ExtendedCalendarProps<DateType>;\n\nexport const Calendar = <DateType extends DateValue>({\n locale: localOverride,\n ...rest\n}: CalendarProps<DateType>) => {\n const props = { isDisabled: rest.disabled, ...rest };\n const { locale } = useLocale();\n return (\n <I18nProvider locale={localOverride ?? locale}>\n <CalendarBase {...props} />\n </I18nProvider>\n );\n};\n\nconst CalendarBase = <DateType extends DateValue>({\n selectedDate,\n onChange,\n minDate,\n maxDate,\n showWeekNumbers = false,\n weekNumberHeader = 'uke',\n forcedReturnType,\n style,\n className,\n navigationDescription,\n onSelectedCellClick = () => {\n return;\n },\n onCellClick = () => {\n return;\n },\n classNameForDate,\n ariaLabelForDate,\n calendarRef,\n ...rest\n}: CalendarProps<DateType>) => {\n const { locale } = useLocale();\n\n const _props: CalendarStateOptions<DateType> = {\n ...rest,\n value: selectedDate,\n onChange: value =>\n handleOnChange<DateType>({\n value,\n selectedDate,\n forcedReturnType,\n onChange,\n }),\n locale,\n createCalendar,\n minValue: minDate,\n maxValue: maxDate,\n };\n\n const state = useCalendarState(_props);\n const { calendarProps, prevButtonProps, nextButtonProps, title } =\n useCalendar(_props, state);\n\n useEffect(\n () => rest.onValidate?.(!state.isValueInvalid),\n [state.isValueInvalid],\n );\n\n return (\n <div\n {...calendarProps}\n ref={calendarRef}\n className={classNames('eds-datepicker__calendar', className)}\n style={style}\n >\n <div className=\"eds-datepicker__calendar__header\">\n <CalendarButton\n {...prevButtonProps}\n aria-label={ariaLabelIfNorwegian(\n 'Forrige måned',\n locale,\n prevButtonProps,\n )}\n >\n <LeftArrowIcon size={20} />\n </CalendarButton>\n <h2>{title}</h2>\n <CalendarButton\n {...nextButtonProps}\n aria-label={ariaLabelIfNorwegian(\n 'Neste måned',\n locale,\n nextButtonProps,\n )}\n >\n <RightArrowIcon size={20} />\n </CalendarButton>\n </div>\n <CalendarGrid\n {...rest}\n state={state}\n navigationDescription={navigationDescription}\n onSelectedCellClick={onSelectedCellClick}\n onCellClick={onCellClick}\n classNameForDate={classNameForDate}\n ariaLabelForDate={ariaLabelForDate}\n showWeekNumbers={showWeekNumbers}\n weekNumberHeader={weekNumberHeader}\n />\n </div>\n );\n};\n","/**\n * Custom positioning reference element.\n * @see https://floating-ui.com/docs/virtual-elements\n */\n\nconst sides = ['top', 'right', 'bottom', 'left'];\nconst alignments = ['start', 'end'];\nconst placements = /*#__PURE__*/sides.reduce((acc, side) => acc.concat(side, side + \"-\" + alignments[0], side + \"-\" + alignments[1]), []);\nconst min = Math.min;\nconst max = Math.max;\nconst round = Math.round;\nconst floor = Math.floor;\nconst createCoords = v => ({\n x: v,\n y: v\n});\nconst oppositeSideMap = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nconst oppositeAlignmentMap = {\n start: 'end',\n end: 'start'\n};\nfunction clamp(start, value, end) {\n return max(start, min(value, end));\n}\nfunction evaluate(value, param) {\n return typeof value === 'function' ? value(param) : value;\n}\nfunction getSide(placement) {\n return placement.split('-')[0];\n}\nfunction getAlignment(placement) {\n return placement.split('-')[1];\n}\nfunction getOppositeAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}\nfunction getAxisLength(axis) {\n return axis === 'y' ? 'height' : 'width';\n}\nconst yAxisSides = /*#__PURE__*/new Set(['top', 'bottom']);\nfunction getSideAxis(placement) {\n return yAxisSides.has(getSide(placement)) ? 'y' : 'x';\n}\nfunction getAlignmentAxis(placement) {\n return getOppositeAxis(getSideAxis(placement));\n}\nfunction getAlignmentSides(placement, rects, rtl) {\n if (rtl === void 0) {\n rtl = false;\n }\n const alignment = getAlignment(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const length = getAxisLength(alignmentAxis);\n let mainAlignmentSide = alignmentAxis === 'x' ? alignment === (rtl ? 'end' : 'start') ? 'right' : 'left' : alignment === 'start' ? 'bottom' : 'top';\n if (rects.reference[length] > rects.floating[length]) {\n mainAlignmentSide = getOppositePlacement(mainAlignmentSide);\n }\n return [mainAlignmentSide, getOppositePlacement(mainAlignmentSide)];\n}\nfunction getExpandedPlacements(placement) {\n const oppositePlacement = getOppositePlacement(placement);\n return [getOppositeAlignmentPlacement(placement), oppositePlacement, getOppositeAlignmentPlacement(oppositePlacement)];\n}\nfunction getOppositeAlignmentPlacement(placement) {\n return placement.replace(/start|end/g, alignment => oppositeAlignmentMap[alignment]);\n}\nconst lrPlacement = ['left', 'right'];\nconst rlPlacement = ['right', 'left'];\nconst tbPlacement = ['top', 'bottom'];\nconst btPlacement = ['bottom', 'top'];\nfunction getSideList(side, isStart, rtl) {\n switch (side) {\n case 'top':\n case 'bottom':\n if (rtl) return isStart ? rlPlacement : lrPlacement;\n return isStart ? lrPlacement : rlPlacement;\n case 'left':\n case 'right':\n return isStart ? tbPlacement : btPlacement;\n default:\n return [];\n }\n}\nfunction getOppositeAxisPlacements(placement, flipAlignment, direction, rtl) {\n const alignment = getAlignment(placement);\n let list = getSideList(getSide(placement), direction === 'start', rtl);\n if (alignment) {\n list = list.map(side => side + \"-\" + alignment);\n if (flipAlignment) {\n list = list.concat(list.map(getOppositeAlignmentPlacement));\n }\n }\n return list;\n}\nfunction getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, side => oppositeSideMap[side]);\n}\nfunction expandPaddingObject(padding) {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n ...padding\n };\n}\nfunction getPaddingObject(padding) {\n return typeof padding !== 'number' ? expandPaddingObject(padding) : {\n top: padding,\n right: padding,\n bottom: padding,\n left: padding\n };\n}\nfunction rectToClientRect(rect) {\n const {\n x,\n y,\n width,\n height\n } = rect;\n return {\n width,\n height,\n top: y,\n left: x,\n right: x + width,\n bottom: y + height,\n x,\n y\n };\n}\n\nexport { alignments, clamp, createCoords, evaluate, expandPaddingObject, floor, getAlignment, getAlignmentAxis, getAlignmentSides, getAxisLength, getExpandedPlacements, getOppositeAlignmentPlacement, getOppositeAxis, getOppositeAxisPlacements, getOppositePlacement, getPaddingObject, getSide, getSideAxis, max, min, placements, rectToClientRect, round, sides };\n","import { getSideAxis, getAlignmentAxis, getAxisLength, getSide, getAlignment, evaluate, getPaddingObject, rectToClientRect, min, clamp, placements, getAlignmentSides, getOppositeAlignmentPlacement, getOppositePlacement, getExpandedPlacements, getOppositeAxisPlacements, sides, max, getOppositeAxis } from '@floating-ui/utils';\nexport { rectToClientRect } from '@floating-ui/utils';\n\nfunction computeCoordsFromPlacement(_ref, placement, rtl) {\n let {\n reference,\n floating\n } = _ref;\n const sideAxis = getSideAxis(placement);\n const alignmentAxis = getAlignmentAxis(placement);\n const alignLength = getAxisLength(alignmentAxis);\n const side = getSide(placement);\n const isVertical = sideAxis === 'y';\n const commonX = reference.x + reference.width / 2 - floating.width / 2;\n const commonY = reference.y + reference.height / 2 - floating.height / 2;\n const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;\n let coords;\n switch (side) {\n case 'top':\n coords = {\n x: commonX,\n y: reference.y - floating.height\n };\n break;\n case 'bottom':\n coords = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n case 'right':\n coords = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n case 'left':\n coords = {\n x: reference.x - floating.width,\n y: commonY\n };\n break;\n default:\n coords = {\n x: reference.x,\n y: reference.y\n };\n }\n switch (getAlignment(placement)) {\n case 'start':\n coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n case 'end':\n coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);\n break;\n }\n return coords;\n}\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n *\n * This export does not have any `platform` interface logic. You will need to\n * write one for the platform you are using Floating UI with.\n */\nconst computePosition = async (reference, floating, config) => {\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform\n } = config;\n const validMiddleware = middleware.filter(Boolean);\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));\n let rects = await platform.getElementRects({\n reference,\n floating,\n strategy\n });\n let {\n x,\n y\n } = computeCoordsFromPlacement(rects, placement, rtl);\n let statefulPlacement = placement;\n let middlewareData = {};\n let resetCount = 0;\n for (let i = 0; i < validMiddleware.length; i++) {\n const {\n name,\n fn\n } = validMiddleware[i];\n const {\n x: nextX,\n y: nextY,\n data,\n reset\n } = await fn({\n x,\n y,\n initialPlacement: placement,\n placement: statefulPlacement,\n strategy,\n middlewareData,\n rects,\n platform,\n elements: {\n reference,\n floating\n }\n });\n x = nextX != null ? nextX : x;\n y = nextY != null ? nextY : y;\n middlewareData = {\n ...middlewareData,\n [name]: {\n ...middlewareData[name],\n ...data\n }\n };\n if (reset && resetCount <= 50) {\n resetCount++;\n if (typeof reset === 'object') {\n if (reset.placement) {\n statefulPlacement = reset.placement;\n }\n if (reset.rects) {\n rects = reset.rects === true ? await platform.getElementRects({\n reference,\n floating,\n strategy\n }) : reset.rects;\n }\n ({\n x,\n y\n } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));\n }\n i = -1;\n }\n }\n return {\n x,\n y,\n placement: statefulPlacement,\n strategy,\n middlewareData\n };\n};\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nasync function detectOverflow(state, options) {\n var _await$platform$isEle;\n if (options === void 0) {\n options = {};\n }\n const {\n x,\n y,\n platform,\n rects,\n elements,\n strategy\n } = state;\n const {\n boundary = 'clippingAncestors',\n rootBoundary = 'viewport',\n elementContext = 'floating',\n altBoundary = false,\n padding = 0\n } = evaluate(options, state);\n const paddingObject = getPaddingObject(padding);\n const altContext = elementContext === 'floating' ? 'reference' : 'floating';\n const element = elements[altBoundary ? altContext : elementContext];\n const clippingClientRect = rectToClientRect(await platform.getClippingRect({\n element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || (await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating))),\n boundary,\n rootBoundary,\n strategy\n }));\n const rect = elementContext === 'floating' ? {\n x,\n y,\n width: rects.floating.width,\n height: rects.floating.height\n } : rects.reference;\n const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));\n const offsetScale = (await (platform.isElement == null ? void 0 : platform.isElement(offsetParent))) ? (await (platform.getScale == null ? void 0 : platform.getScale(offsetParent))) || {\n x: 1,\n y: 1\n } : {\n x: 1,\n y: 1\n };\n const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({\n elements,\n rect,\n offsetParent,\n strategy\n }) : rect);\n return {\n top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,\n bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,\n left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,\n right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x\n };\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = options => ({\n name: 'arrow',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n platform,\n elements,\n middlewareData\n } = state;\n // Since `element` is required, we don't Partial<> the type.\n const {\n element,\n padding = 0\n } = evaluate(options, state) || {};\n if (element == null) {\n return {};\n }\n const paddingObject = getPaddingObject(padding);\n const coords = {\n x,\n y\n };\n const axis = getAlignmentAxis(placement);\n const length = getAxisLength(axis);\n const arrowDimensions = await platform.getDimensions(element);\n const isYAxis = axis === 'y';\n const minProp = isYAxis ? 'top' : 'left';\n const maxProp = isYAxis ? 'bottom' : 'right';\n const clientProp = isYAxis ? 'clientHeight' : 'clientWidth';\n const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];\n const startDiff = coords[axis] - rects.reference[axis];\n const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));\n let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;\n\n // DOM platform can return `window` as the `offsetParent`.\n if (!clientSize || !(await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent)))) {\n clientSize = elements.floating[clientProp] || rects.floating[length];\n }\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // If the padding is large enough that it causes the arrow to no longer be\n // centered, modify the padding so that it is centered.\n const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;\n const minPadding = min(paddingObject[minProp], largestPossiblePadding);\n const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);\n\n // Make sure the arrow doesn't overflow the floating element if the center\n // point is outside the floating element's bounds.\n const min$1 = minPadding;\n const max = clientSize - arrowDimensions[length] - maxPadding;\n const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;\n const offset = clamp(min$1, center, max);\n\n // If the reference is small enough that the arrow's padding causes it to\n // to point to nothing for an aligned placement, adjust the offset of the\n // floating element itself. To ensure `shift()` continues to take action,\n // a single reset is performed when this is true.\n const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;\n const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max : 0;\n return {\n [axis]: coords[axis] + alignmentOffset,\n data: {\n [axis]: offset,\n centerOffset: center - offset - alignmentOffset,\n ...(shouldAddOffset && {\n alignmentOffset\n })\n },\n reset: shouldAddOffset\n };\n }\n});\n\nfunction getPlacementList(alignment, autoAlignment, allowedPlacements) {\n const allowedPlacementsSortedByAlignment = alignment ? [...allowedPlacements.filter(placement => getAlignment(placement) === alignment), ...allowedPlacements.filter(placement => getAlignment(placement) !== alignment)] : allowedPlacements.filter(placement => getSide(placement) === placement);\n return allowedPlacementsSortedByAlignment.filter(placement => {\n if (alignment) {\n return getAlignment(placement) === alignment || (autoAlignment ? getOppositeAlignmentPlacement(placement) !== placement : false);\n }\n return true;\n });\n}\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'autoPlacement',\n options,\n async fn(state) {\n var _middlewareData$autoP, _middlewareData$autoP2, _placementsThatFitOnE;\n const {\n rects,\n middlewareData,\n placement,\n platform,\n elements\n } = state;\n const {\n crossAxis = false,\n alignment,\n allowedPlacements = placements,\n autoAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n const placements$1 = alignment !== undefined || allowedPlacements === placements ? getPlacementList(alignment || null, autoAlignment, allowedPlacements) : allowedPlacements;\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const currentIndex = ((_middlewareData$autoP = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP.index) || 0;\n const currentPlacement = placements$1[currentIndex];\n if (currentPlacement == null) {\n return {};\n }\n const alignmentSides = getAlignmentSides(currentPlacement, rects, await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)));\n\n // Make `computeCoords` start from the right place.\n if (placement !== currentPlacement) {\n return {\n reset: {\n placement: placements$1[0]\n }\n };\n }\n const currentOverflows = [overflow[getSide(currentPlacement)], overflow[alignmentSides[0]], overflow[alignmentSides[1]]];\n const allOverflows = [...(((_middlewareData$autoP2 = middlewareData.autoPlacement) == null ? void 0 : _middlewareData$autoP2.overflows) || []), {\n placement: currentPlacement,\n overflows: currentOverflows\n }];\n const nextPlacement = placements$1[currentIndex + 1];\n\n // There are more placements to check.\n if (nextPlacement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n const placementsSortedByMostSpace = allOverflows.map(d => {\n const alignment = getAlignment(d.placement);\n return [d.placement, alignment && crossAxis ?\n // Check along the mainAxis and main crossAxis side.\n d.overflows.slice(0, 2).reduce((acc, v) => acc + v, 0) :\n // Check only the mainAxis.\n d.overflows[0], d.overflows];\n }).sort((a, b) => a[1] - b[1]);\n const placementsThatFitOnEachSide = placementsSortedByMostSpace.filter(d => d[2].slice(0,\n // Aligned placements should not check their opposite crossAxis\n // side.\n getAlignment(d[0]) ? 2 : 3).every(v => v <= 0));\n const resetPlacement = ((_placementsThatFitOnE = placementsThatFitOnEachSide[0]) == null ? void 0 : _placementsThatFitOnE[0]) || placementsSortedByMostSpace[0][0];\n if (resetPlacement !== placement) {\n return {\n data: {\n index: currentIndex + 1,\n overflows: allOverflows\n },\n reset: {\n placement: resetPlacement\n }\n };\n }\n return {};\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'flip',\n options,\n async fn(state) {\n var _middlewareData$arrow, _middlewareData$flip;\n const {\n placement,\n middlewareData,\n rects,\n initialPlacement,\n platform,\n elements\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n fallbackStrategy = 'bestFit',\n fallbackAxisSideDirection = 'none',\n flipAlignment = true,\n ...detectOverflowOptions\n } = evaluate(options, state);\n\n // If a reset by the arrow was caused due to an alignment offset being\n // added, we should skip any logic now since `flip()` has already done its\n // work.\n // https://github.com/floating-ui/floating-ui/issues/2549#issuecomment-1719601643\n if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n const side = getSide(placement);\n const initialSideAxis = getSideAxis(initialPlacement);\n const isBasePlacement = getSide(initialPlacement) === initialPlacement;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));\n const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== 'none';\n if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {\n fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));\n }\n const placements = [initialPlacement, ...fallbackPlacements];\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const overflows = [];\n let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];\n if (checkMainAxis) {\n overflows.push(overflow[side]);\n }\n if (checkCrossAxis) {\n const sides = getAlignmentSides(placement, rects, rtl);\n overflows.push(overflow[sides[0]], overflow[sides[1]]);\n }\n overflowsData = [...overflowsData, {\n placement,\n overflows\n }];\n\n // One or more sides is overflowing.\n if (!overflows.every(side => side <= 0)) {\n var _middlewareData$flip2, _overflowsData$filter;\n const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;\n const nextPlacement = placements[nextIndex];\n if (nextPlacement) {\n const ignoreCrossAxisOverflow = checkCrossAxis === 'alignment' ? initialSideAxis !== getSideAxis(nextPlacement) : false;\n if (!ignoreCrossAxisOverflow ||\n // We leave the current main axis only if every placement on that axis\n // overflows the main axis.\n overflowsData.every(d => getSideAxis(d.placement) === initialSideAxis ? d.overflows[0] > 0 : true)) {\n // Try next placement and re-run the lifecycle.\n return {\n data: {\n index: nextIndex,\n overflows: overflowsData\n },\n reset: {\n placement: nextPlacement\n }\n };\n }\n }\n\n // First, find the candidates that fit on the mainAxis side of overflow,\n // then find the placement that fits the best on the main crossAxis side.\n let resetPlacement = (_overflowsData$filter = overflowsData.filter(d => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;\n\n // Otherwise fallback.\n if (!resetPlacement) {\n switch (fallbackStrategy) {\n case 'bestFit':\n {\n var _overflowsData$filter2;\n const placement = (_overflowsData$filter2 = overflowsData.filter(d => {\n if (hasFallbackAxisSideDirection) {\n const currentSideAxis = getSideAxis(d.placement);\n return currentSideAxis === initialSideAxis ||\n // Create a bias to the `y` side axis due to horizontal\n // reading directions favoring greater width.\n currentSideAxis === 'y';\n }\n return true;\n }).map(d => [d.placement, d.overflows.filter(overflow => overflow > 0).reduce((acc, overflow) => acc + overflow, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$filter2[0];\n if (placement) {\n resetPlacement = placement;\n }\n break;\n }\n case 'initialPlacement':\n resetPlacement = initialPlacement;\n break;\n }\n }\n if (placement !== resetPlacement) {\n return {\n reset: {\n placement: resetPlacement\n }\n };\n }\n }\n return {};\n }\n };\n};\n\nfunction getSideOffsets(overflow, rect) {\n return {\n top: overflow.top - rect.height,\n right: overflow.right - rect.width,\n bottom: overflow.bottom - rect.height,\n left: overflow.left - rect.width\n };\n}\nfunction isAnySideFullyClipped(overflow) {\n return sides.some(side => overflow[side] >= 0);\n}\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'hide',\n options,\n async fn(state) {\n const {\n rects\n } = state;\n const {\n strategy = 'referenceHidden',\n ...detectOverflowOptions\n } = evaluate(options, state);\n switch (strategy) {\n case 'referenceHidden':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n elementContext: 'reference'\n });\n const offsets = getSideOffsets(overflow, rects.reference);\n return {\n data: {\n referenceHiddenOffsets: offsets,\n referenceHidden: isAnySideFullyClipped(offsets)\n }\n };\n }\n case 'escaped':\n {\n const overflow = await detectOverflow(state, {\n ...detectOverflowOptions,\n altBoundary: true\n });\n const offsets = getSideOffsets(overflow, rects.floating);\n return {\n data: {\n escapedOffsets: offsets,\n escaped: isAnySideFullyClipped(offsets)\n }\n };\n }\n default:\n {\n return {};\n }\n }\n }\n };\n};\n\nfunction getBoundingRect(rects) {\n const minX = min(...rects.map(rect => rect.left));\n const minY = min(...rects.map(rect => rect.top));\n const maxX = max(...rects.map(rect => rect.right));\n const maxY = max(...rects.map(rect => rect.bottom));\n return {\n x: minX,\n y: minY,\n width: maxX - minX,\n height: maxY - minY\n };\n}\nfunction getRectsByLine(rects) {\n const sortedRects = rects.slice().sort((a, b) => a.y - b.y);\n const groups = [];\n let prevRect = null;\n for (let i = 0; i < sortedRects.length; i++) {\n const rect = sortedRects[i];\n if (!prevRect || rect.y - prevRect.y > prevRect.height / 2) {\n groups.push([rect]);\n } else {\n groups[groups.length - 1].push(rect);\n }\n prevRect = rect;\n }\n return groups.map(rect => rectToClientRect(getBoundingRect(rect)));\n}\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'inline',\n options,\n async fn(state) {\n const {\n placement,\n elements,\n rects,\n platform,\n strategy\n } = state;\n // A MouseEvent's client{X,Y} coords can be up to 2 pixels off a\n // ClientRect's bounds, despite the event listener being triggered. A\n // padding of 2 seems to handle this issue.\n const {\n padding = 2,\n x,\n y\n } = evaluate(options, state);\n const nativeClientRects = Array.from((await (platform.getClientRects == null ? void 0 : platform.getClientRects(elements.reference))) || []);\n const clientRects = getRectsByLine(nativeClientRects);\n const fallback = rectToClientRect(getBoundingRect(nativeClientRects));\n const paddingObject = getPaddingObject(padding);\n function getBoundingClientRect() {\n // There are two rects and they are disjoined.\n if (clientRects.length === 2 && clientRects[0].left > clientRects[1].right && x != null && y != null) {\n // Find the first rect in which the point is fully inside.\n return clientRects.find(rect => x > rect.left - paddingObject.left && x < rect.right + paddingObject.right && y > rect.top - paddingObject.top && y < rect.bottom + paddingObject.bottom) || fallback;\n }\n\n // There are 2 or more connected rects.\n if (clientRects.length >= 2) {\n if (getSideAxis(placement) === 'y') {\n const firstRect = clientRects[0];\n const lastRect = clientRects[clientRects.length - 1];\n const isTop = getSide(placement) === 'top';\n const top = firstRect.top;\n const bottom = lastRect.bottom;\n const left = isTop ? firstRect.left : lastRect.left;\n const right = isTop ? firstRect.right : lastRect.right;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n const isLeftSide = getSide(placement) === 'left';\n const maxRight = max(...clientRects.map(rect => rect.right));\n const minLeft = min(...clientRects.map(rect => rect.left));\n const measureRects = clientRects.filter(rect => isLeftSide ? rect.left === minLeft : rect.right === maxRight);\n const top = measureRects[0].top;\n const bottom = measureRects[measureRects.length - 1].bottom;\n const left = minLeft;\n const right = maxRight;\n const width = right - left;\n const height = bottom - top;\n return {\n top,\n bottom,\n left,\n right,\n width,\n height,\n x: left,\n y: top\n };\n }\n return fallback;\n }\n const resetRects = await platform.getElementRects({\n reference: {\n getBoundingClientRect\n },\n floating: elements.floating,\n strategy\n });\n if (rects.reference.x !== resetRects.reference.x || rects.reference.y !== resetRects.reference.y || rects.reference.width !== resetRects.reference.width || rects.reference.height !== resetRects.reference.height) {\n return {\n reset: {\n rects: resetRects\n }\n };\n }\n return {};\n }\n };\n};\n\nconst originSides = /*#__PURE__*/new Set(['left', 'top']);\n\n// For type backwards-compatibility, the `OffsetOptions` type was also\n// Derivable.\n\nasync function convertValueToCoords(state, options) {\n const {\n placement,\n platform,\n elements\n } = state;\n const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isVertical = getSideAxis(placement) === 'y';\n const mainAxisMulti = originSides.has(side) ? -1 : 1;\n const crossAxisMulti = rtl && isVertical ? -1 : 1;\n const rawValue = evaluate(options, state);\n\n // eslint-disable-next-line prefer-const\n let {\n mainAxis,\n crossAxis,\n alignmentAxis\n } = typeof rawValue === 'number' ? {\n mainAxis: rawValue,\n crossAxis: 0,\n alignmentAxis: null\n } : {\n mainAxis: rawValue.mainAxis || 0,\n crossAxis: rawValue.crossAxis || 0,\n alignmentAxis: rawValue.alignmentAxis\n };\n if (alignment && typeof alignmentAxis === 'number') {\n crossAxis = alignment === 'end' ? alignmentAxis * -1 : alignmentAxis;\n }\n return isVertical ? {\n x: crossAxis * crossAxisMulti,\n y: mainAxis * mainAxisMulti\n } : {\n x: mainAxis * mainAxisMulti,\n y: crossAxis * crossAxisMulti\n };\n}\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = function (options) {\n if (options === void 0) {\n options = 0;\n }\n return {\n name: 'offset',\n options,\n async fn(state) {\n var _middlewareData$offse, _middlewareData$arrow;\n const {\n x,\n y,\n placement,\n middlewareData\n } = state;\n const diffCoords = await convertValueToCoords(state, options);\n\n // If the placement is the same and the arrow caused an alignment offset\n // then we don't need to change the positioning coordinates.\n if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {\n return {};\n }\n return {\n x: x + diffCoords.x,\n y: y + diffCoords.y,\n data: {\n ...diffCoords,\n placement\n }\n };\n }\n };\n};\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'shift',\n options,\n async fn(state) {\n const {\n x,\n y,\n placement\n } = state;\n const {\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = false,\n limiter = {\n fn: _ref => {\n let {\n x,\n y\n } = _ref;\n return {\n x,\n y\n };\n }\n },\n ...detectOverflowOptions\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const crossAxis = getSideAxis(getSide(placement));\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n if (checkMainAxis) {\n const minSide = mainAxis === 'y' ? 'top' : 'left';\n const maxSide = mainAxis === 'y' ? 'bottom' : 'right';\n const min = mainAxisCoord + overflow[minSide];\n const max = mainAxisCoord - overflow[maxSide];\n mainAxisCoord = clamp(min, mainAxisCoord, max);\n }\n if (checkCrossAxis) {\n const minSide = crossAxis === 'y' ? 'top' : 'left';\n const maxSide = crossAxis === 'y' ? 'bottom' : 'right';\n const min = crossAxisCoord + overflow[minSide];\n const max = crossAxisCoord - overflow[maxSide];\n crossAxisCoord = clamp(min, crossAxisCoord, max);\n }\n const limitedCoords = limiter.fn({\n ...state,\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n });\n return {\n ...limitedCoords,\n data: {\n x: limitedCoords.x - x,\n y: limitedCoords.y - y,\n enabled: {\n [mainAxis]: checkMainAxis,\n [crossAxis]: checkCrossAxis\n }\n }\n };\n }\n };\n};\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n options,\n fn(state) {\n const {\n x,\n y,\n placement,\n rects,\n middlewareData\n } = state;\n const {\n offset = 0,\n mainAxis: checkMainAxis = true,\n crossAxis: checkCrossAxis = true\n } = evaluate(options, state);\n const coords = {\n x,\n y\n };\n const crossAxis = getSideAxis(placement);\n const mainAxis = getOppositeAxis(crossAxis);\n let mainAxisCoord = coords[mainAxis];\n let crossAxisCoord = coords[crossAxis];\n const rawOffset = evaluate(offset, state);\n const computedOffset = typeof rawOffset === 'number' ? {\n mainAxis: rawOffset,\n crossAxis: 0\n } : {\n mainAxis: 0,\n crossAxis: 0,\n ...rawOffset\n };\n if (checkMainAxis) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;\n const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;\n if (mainAxisCoord < limitMin) {\n mainAxisCoord = limitMin;\n } else if (mainAxisCoord > limitMax) {\n mainAxisCoord = limitMax;\n }\n }\n if (checkCrossAxis) {\n var _middlewareData$offse, _middlewareData$offse2;\n const len = mainAxis === 'y' ? 'width' : 'height';\n const isOriginSide = originSides.has(getSide(placement));\n const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);\n const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);\n if (crossAxisCoord < limitMin) {\n crossAxisCoord = limitMin;\n } else if (crossAxisCoord > limitMax) {\n crossAxisCoord = limitMax;\n }\n }\n return {\n [mainAxis]: mainAxisCoord,\n [crossAxis]: crossAxisCoord\n };\n }\n };\n};\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = function (options) {\n if (options === void 0) {\n options = {};\n }\n return {\n name: 'size',\n options,\n async fn(state) {\n var _state$middlewareData, _state$middlewareData2;\n const {\n placement,\n rects,\n platform,\n elements\n } = state;\n const {\n apply = () => {},\n ...detectOverflowOptions\n } = evaluate(options, state);\n const overflow = await detectOverflow(state, detectOverflowOptions);\n const side = getSide(placement);\n const alignment = getAlignment(placement);\n const isYAxis = getSideAxis(placement) === 'y';\n const {\n width,\n height\n } = rects.floating;\n let heightSide;\n let widthSide;\n if (side === 'top' || side === 'bottom') {\n heightSide = side;\n widthSide = alignment === ((await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating))) ? 'start' : 'end') ? 'left' : 'right';\n } else {\n widthSide = side;\n heightSide = alignment === 'end' ? 'top' : 'bottom';\n }\n const maximumClippingHeight = height - overflow.top - overflow.bottom;\n const maximumClippingWidth = width - overflow.left - overflow.right;\n const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);\n const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);\n const noShift = !state.middlewareData.shift;\n let availableHeight = overflowAvailableHeight;\n let availableWidth = overflowAvailableWidth;\n if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) {\n availableWidth = maximumClippingWidth;\n }\n if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) {\n availableHeight = maximumClippingHeight;\n }\n if (noShift && !alignment) {\n const xMin = max(overflow.left, 0);\n const xMax = max(overflow.right, 0);\n const yMin = max(overflow.top, 0);\n const yMax = max(overflow.bottom, 0);\n if (isYAxis) {\n availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));\n } else {\n availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));\n }\n }\n await apply({\n ...state,\n availableWidth,\n availableHeight\n });\n const nextDimensions = await platform.getDimensions(elements.floating);\n if (width !== nextDimensions.width || height !== nextDimensions.height) {\n return {\n reset: {\n rects: true\n }\n };\n }\n return {};\n }\n };\n};\n\nexport { arrow, autoPlacement, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, shift, size };\n","function hasWindow() {\n return typeof window !== 'undefined';\n}\nfunction getNodeName(node) {\n if (isNode(node)) {\n return (node.nodeName || '').toLowerCase();\n }\n // Mocked nodes in testing environments may not be instances of Node. By\n // returning `#document` an infinite loop won't occur.\n // https://github.com/floating-ui/floating-ui/issues/2317\n return '#document';\n}\nfunction getWindow(node) {\n var _node$ownerDocument;\n return (node == null || (_node$ownerDocument = node.ownerDocument) == null ? void 0 : _node$ownerDocument.defaultView) || window;\n}\nfunction getDocumentElement(node) {\n var _ref;\n return (_ref = (isNode(node) ? node.ownerDocument : node.document) || window.document) == null ? void 0 : _ref.documentElement;\n}\nfunction isNode(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Node || value instanceof getWindow(value).Node;\n}\nfunction isElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof Element || value instanceof getWindow(value).Element;\n}\nfunction isHTMLElement(value) {\n if (!hasWindow()) {\n return false;\n }\n return value instanceof HTMLElement || value instanceof getWindow(value).HTMLElement;\n}\nfunction isShadowRoot(value) {\n if (!hasWindow() || typeof ShadowRoot === 'undefined') {\n return false;\n }\n return value instanceof ShadowRoot || value instanceof getWindow(value).ShadowRoot;\n}\nconst invalidOverflowDisplayValues = /*#__PURE__*/new Set(['inline', 'contents']);\nfunction isOverflowElement(element) {\n const {\n overflow,\n overflowX,\n overflowY,\n display\n } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden|clip/.test(overflow + overflowY + overflowX) && !invalidOverflowDisplayValues.has(display);\n}\nconst tableElements = /*#__PURE__*/new Set(['table', 'td', 'th']);\nfunction isTableElement(element) {\n return tableElements.has(getNodeName(element));\n}\nconst topLayerSelectors = [':popover-open', ':modal'];\nfunction isTopLayer(element) {\n return topLayerSelectors.some(selector => {\n try {\n return element.matches(selector);\n } catch (_e) {\n return false;\n }\n });\n}\nconst transformProperties = ['transform', 'translate', 'scale', 'rotate', 'perspective'];\nconst willChangeValues = ['transform', 'translate', 'scale', 'rotate', 'perspective', 'filter'];\nconst containValues = ['paint', 'layout', 'strict', 'content'];\nfunction isContainingBlock(elementOrCss) {\n const webkit = isWebKit();\n const css = isElement(elementOrCss) ? getComputedStyle(elementOrCss) : elementOrCss;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n // https://drafts.csswg.org/css-transforms-2/#individual-transforms\n return transformProperties.some(value => css[value] ? css[value] !== 'none' : false) || (css.containerType ? css.containerType !== 'normal' : false) || !webkit && (css.backdropFilter ? css.backdropFilter !== 'none' : false) || !webkit && (css.filter ? css.filter !== 'none' : false) || willChangeValues.some(value => (css.willChange || '').includes(value)) || containValues.some(value => (css.contain || '').includes(value));\n}\nfunction getContainingBlock(element) {\n let currentNode = getParentNode(element);\n while (isHTMLElement(currentNode) && !isLastTraversableNode(currentNode)) {\n if (isContainingBlock(currentNode)) {\n return currentNode;\n } else if (isTopLayer(currentNode)) {\n return null;\n }\n currentNode = getParentNode(currentNode);\n }\n return null;\n}\nfunction isWebKit() {\n if (typeof CSS === 'undefined' || !CSS.supports) return false;\n return CSS.supports('-webkit-backdrop-filter', 'none');\n}\nconst lastTraversableNodeNames = /*#__PURE__*/new Set(['html', 'body', '#document']);\nfunction isLastTraversableNode(node) {\n return lastTraversableNodeNames.has(getNodeName(node));\n}\nfunction getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}\nfunction getNodeScroll(element) {\n if (isElement(element)) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n }\n return {\n scrollLeft: element.scrollX,\n scrollTop: element.scrollY\n };\n}\nfunction getParentNode(node) {\n if (getNodeName(node) === 'html') {\n return node;\n }\n const result =\n // Step into the shadow DOM of the parent of a slotted node.\n node.assignedSlot ||\n // DOM Element detected.\n node.parentNode ||\n // ShadowRoot detected.\n isShadowRoot(node) && node.host ||\n // Fallback.\n getDocumentElement(node);\n return isShadowRoot(result) ? result.host : result;\n}\nfunction getNearestOverflowAncestor(node) {\n const parentNode = getParentNode(node);\n if (isLastTraversableNode(parentNode)) {\n return node.ownerDocument ? node.ownerDocument.body : node.body;\n }\n if (isHTMLElement(parentNode) && isOverflowElement(parentNode)) {\n return parentNode;\n }\n return getNearestOverflowAncestor(parentNode);\n}\nfunction getOverflowAncestors(node, list, traverseIframes) {\n var _node$ownerDocument2;\n if (list === void 0) {\n list = [];\n }\n if (traverseIframes === void 0) {\n traverseIframes = true;\n }\n const scrollableAncestor = getNearestOverflowAncestor(node);\n const isBody = scrollableAncestor === ((_node$ownerDocument2 = node.ownerDocument) == null ? void 0 : _node$ownerDocument2.body);\n const win = getWindow(scrollableAncestor);\n if (isBody) {\n const frameElement = getFrameElement(win);\n return list.concat(win, win.visualViewport || [], isOverflowElement(scrollableAncestor) ? scrollableAncestor : [], frameElement && traverseIframes ? getOverflowAncestors(frameElement) : []);\n }\n return list.concat(scrollableAncestor, getOverflowAncestors(scrollableAncestor, [], traverseIframes));\n}\nfunction getFrameElement(win) {\n return win.parent && Object.getPrototypeOf(win.parent) ? win.frameElement : null;\n}\n\nexport { getComputedStyle, getContainingBlock, getDocumentElement, getFrameElement, getNearestOverflowAncestor, getNodeName, getNodeScroll, getOverflowAncestors, getParentNode, getWindow, isContainingBlock, isElement, isHTMLElement, isLastTraversableNode, isNode, isOverflowElement, isShadowRoot, isTableElement, isTopLayer, isWebKit };\n","import { rectToClientRect, arrow as arrow$1, autoPlacement as autoPlacement$1, detectOverflow as detectOverflow$1, flip as flip$1, hide as hide$1, inline as inline$1, limitShift as limitShift$1, offset as offset$1, shift as shift$1, size as size$1, computePosition as computePosition$1 } from '@floating-ui/core';\nimport { round, createCoords, max, min, floor } from '@floating-ui/utils';\nimport { getComputedStyle as getComputedStyle$1, isHTMLElement, isElement, getWindow, isWebKit, getFrameElement, getNodeScroll, getDocumentElement, isTopLayer, getNodeName, isOverflowElement, getOverflowAncestors, getParentNode, isLastTraversableNode, isContainingBlock, isTableElement, getContainingBlock } from '@floating-ui/utils/dom';\nexport { getOverflowAncestors } from '@floating-ui/utils/dom';\n\nfunction getCssDimensions(element) {\n const css = getComputedStyle$1(element);\n // In testing environments, the `width` and `height` properties are empty\n // strings for SVG elements, returning NaN. Fallback to `0` in this case.\n let width = parseFloat(css.width) || 0;\n let height = parseFloat(css.height) || 0;\n const hasOffset = isHTMLElement(element);\n const offsetWidth = hasOffset ? element.offsetWidth : width;\n const offsetHeight = hasOffset ? element.offsetHeight : height;\n const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;\n if (shouldFallback) {\n width = offsetWidth;\n height = offsetHeight;\n }\n return {\n width,\n height,\n $: shouldFallback\n };\n}\n\nfunction unwrapElement(element) {\n return !isElement(element) ? element.contextElement : element;\n}\n\nfunction getScale(element) {\n const domElement = unwrapElement(element);\n if (!isHTMLElement(domElement)) {\n return createCoords(1);\n }\n const rect = domElement.getBoundingClientRect();\n const {\n width,\n height,\n $\n } = getCssDimensions(domElement);\n let x = ($ ? round(rect.width) : rect.width) / width;\n let y = ($ ? round(rect.height) : rect.height) / height;\n\n // 0, NaN, or Infinity should always fallback to 1.\n\n if (!x || !Number.isFinite(x)) {\n x = 1;\n }\n if (!y || !Number.isFinite(y)) {\n y = 1;\n }\n return {\n x,\n y\n };\n}\n\nconst noOffsets = /*#__PURE__*/createCoords(0);\nfunction getVisualOffsets(element) {\n const win = getWindow(element);\n if (!isWebKit() || !win.visualViewport) {\n return noOffsets;\n }\n return {\n x: win.visualViewport.offsetLeft,\n y: win.visualViewport.offsetTop\n };\n}\nfunction shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {\n return false;\n }\n return isFixed;\n}\n\nfunction getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n const clientRect = element.getBoundingClientRect();\n const domElement = unwrapElement(element);\n let scale = createCoords(1);\n if (includeScale) {\n if (offsetParent) {\n if (isElement(offsetParent)) {\n scale = getScale(offsetParent);\n }\n } else {\n scale = getScale(element);\n }\n }\n const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);\n let x = (clientRect.left + visualOffsets.x) / scale.x;\n let y = (clientRect.top + visualOffsets.y) / scale.y;\n let width = clientRect.width / scale.x;\n let height = clientRect.height / scale.y;\n if (domElement) {\n const win = getWindow(domElement);\n const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;\n let currentWin = win;\n let currentIFrame = getFrameElement(currentWin);\n while (currentIFrame && offsetParent && offsetWin !== currentWin) {\n const iframeScale = getScale(currentIFrame);\n const iframeRect = currentIFrame.getBoundingClientRect();\n const css = getComputedStyle$1(currentIFrame);\n const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;\n const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;\n x *= iframeScale.x;\n y *= iframeScale.y;\n width *= iframeScale.x;\n height *= iframeScale.y;\n x += left;\n y += top;\n currentWin = getWindow(currentIFrame);\n currentIFrame = getFrameElement(currentWin);\n }\n }\n return rectToClientRect({\n width,\n height,\n x,\n y\n });\n}\n\n// If <html> has a CSS width greater than the viewport, then this will be\n// incorrect for RTL.\nfunction getWindowScrollBarX(element, rect) {\n const leftScroll = getNodeScroll(element).scrollLeft;\n if (!rect) {\n return getBoundingClientRect(getDocumentElement(element)).left + leftScroll;\n }\n return rect.left + leftScroll;\n}\n\nfunction getHTMLOffset(documentElement, scroll) {\n const htmlRect = documentElement.getBoundingClientRect();\n const x = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect);\n const y = htmlRect.top + scroll.scrollTop;\n return {\n x,\n y\n };\n}\n\nfunction convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {\n let {\n elements,\n rect,\n offsetParent,\n strategy\n } = _ref;\n const isFixed = strategy === 'fixed';\n const documentElement = getDocumentElement(offsetParent);\n const topLayer = elements ? isTopLayer(elements.floating) : false;\n if (offsetParent === documentElement || topLayer && isFixed) {\n return rect;\n }\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n let scale = createCoords(1);\n const offsets = createCoords(0);\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isHTMLElement(offsetParent)) {\n const offsetRect = getBoundingClientRect(offsetParent);\n scale = getScale(offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n }\n }\n const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);\n return {\n width: rect.width * scale.x,\n height: rect.height * scale.y,\n x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x + htmlOffset.x,\n y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y + htmlOffset.y\n };\n}\n\nfunction getClientRects(element) {\n return Array.from(element.getClientRects());\n}\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable.\nfunction getDocumentRect(element) {\n const html = getDocumentElement(element);\n const scroll = getNodeScroll(element);\n const body = element.ownerDocument.body;\n const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);\n const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);\n let x = -scroll.scrollLeft + getWindowScrollBarX(element);\n const y = -scroll.scrollTop;\n if (getComputedStyle$1(body).direction === 'rtl') {\n x += max(html.clientWidth, body.clientWidth) - width;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\n// Safety check: ensure the scrollbar space is reasonable in case this\n// calculation is affected by unusual styles.\n// Most scrollbars leave 15-18px of space.\nconst SCROLLBAR_MAX = 25;\nfunction getViewportRect(element, strategy) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n const visualViewportBased = isWebKit();\n if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n const windowScrollbarX = getWindowScrollBarX(html);\n // <html> `overflow: hidden` + `scrollbar-gutter: stable` reduces the\n // visual width of the <html> but this is not considered in the size\n // of `html.clientWidth`.\n if (windowScrollbarX <= 0) {\n const doc = html.ownerDocument;\n const body = doc.body;\n const bodyStyles = getComputedStyle(body);\n const bodyMarginInline = doc.compatMode === 'CSS1Compat' ? parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0 : 0;\n const clippingStableScrollbarWidth = Math.abs(html.clientWidth - body.clientWidth - bodyMarginInline);\n if (clippingStableScrollbarWidth <= SCROLLBAR_MAX) {\n width -= clippingStableScrollbarWidth;\n }\n } else if (windowScrollbarX <= SCROLLBAR_MAX) {\n // If the <body> scrollbar is on the left, the width needs to be extended\n // by the scrollbar amount so there isn't extra space on the right.\n width += windowScrollbarX;\n }\n return {\n width,\n height,\n x,\n y\n };\n}\n\nconst absoluteOrFixed = /*#__PURE__*/new Set(['absolute', 'fixed']);\n// Returns the inner client rect, subtracting scrollbars if present.\nfunction getInnerBoundingClientRect(element, strategy) {\n const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');\n const top = clientRect.top + element.clientTop;\n const left = clientRect.left + element.clientLeft;\n const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);\n const width = element.clientWidth * scale.x;\n const height = element.clientHeight * scale.y;\n const x = left * scale.x;\n const y = top * scale.y;\n return {\n width,\n height,\n x,\n y\n };\n}\nfunction getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {\n let rect;\n if (clippingAncestor === 'viewport') {\n rect = getViewportRect(element, strategy);\n } else if (clippingAncestor === 'document') {\n rect = getDocumentRect(getDocumentElement(element));\n } else if (isElement(clippingAncestor)) {\n rect = getInnerBoundingClientRect(clippingAncestor, strategy);\n } else {\n const visualOffsets = getVisualOffsets(element);\n rect = {\n x: clippingAncestor.x - visualOffsets.x,\n y: clippingAncestor.y - visualOffsets.y,\n width: clippingAncestor.width,\n height: clippingAncestor.height\n };\n }\n return rectToClientRect(rect);\n}\nfunction hasFixedPositionAncestor(element, stopNode) {\n const parentNode = getParentNode(element);\n if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {\n return false;\n }\n return getComputedStyle$1(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);\n}\n\n// A \"clipping ancestor\" is an `overflow` element with the characteristic of\n// clipping (or hiding) child elements. This returns all clipping ancestors\n// of the given element up the tree.\nfunction getClippingElementAncestors(element, cache) {\n const cachedResult = cache.get(element);\n if (cachedResult) {\n return cachedResult;\n }\n let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');\n let currentContainingBlockComputedStyle = null;\n const elementIsFixed = getComputedStyle$1(element).position === 'fixed';\n let currentNode = elementIsFixed ? getParentNode(element) : element;\n\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {\n const computedStyle = getComputedStyle$1(currentNode);\n const currentNodeIsContaining = isContainingBlock(currentNode);\n if (!currentNodeIsContaining && computedStyle.position === 'fixed') {\n currentContainingBlockComputedStyle = null;\n }\n const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && absoluteOrFixed.has(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);\n if (shouldDropCurrentNode) {\n // Drop non-containing blocks.\n result = result.filter(ancestor => ancestor !== currentNode);\n } else {\n // Record last containing block for next iteration.\n currentContainingBlockComputedStyle = computedStyle;\n }\n currentNode = getParentNode(currentNode);\n }\n cache.set(element, result);\n return result;\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping ancestors.\nfunction getClippingRect(_ref) {\n let {\n element,\n boundary,\n rootBoundary,\n strategy\n } = _ref;\n const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);\n const clippingAncestors = [...elementClippingAncestors, rootBoundary];\n const firstClippingAncestor = clippingAncestors[0];\n const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {\n const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));\n return {\n width: clippingRect.right - clippingRect.left,\n height: clippingRect.bottom - clippingRect.top,\n x: clippingRect.left,\n y: clippingRect.top\n };\n}\n\nfunction getDimensions(element) {\n const {\n width,\n height\n } = getCssDimensions(element);\n return {\n width,\n height\n };\n}\n\nfunction getRectRelativeToOffsetParent(element, offsetParent, strategy) {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const isFixed = strategy === 'fixed';\n const rect = getBoundingClientRect(element, true, isFixed, offsetParent);\n let scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n const offsets = createCoords(0);\n\n // If the <body> scrollbar appears on the left (e.g. RTL systems). Use\n // Firefox with layout.scrollbar.side = 3 in about:config to test this.\n function setLeftRTLScrollbarOffset() {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n if (isOffsetParentAnElement) {\n const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);\n offsets.x = offsetRect.x + offsetParent.clientLeft;\n offsets.y = offsetRect.y + offsetParent.clientTop;\n } else if (documentElement) {\n setLeftRTLScrollbarOffset();\n }\n }\n if (isFixed && !isOffsetParentAnElement && documentElement) {\n setLeftRTLScrollbarOffset();\n }\n const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);\n const x = rect.left + scroll.scrollLeft - offsets.x - htmlOffset.x;\n const y = rect.top + scroll.scrollTop - offsets.y - htmlOffset.y;\n return {\n x,\n y,\n width: rect.width,\n height: rect.height\n };\n}\n\nfunction isStaticPositioned(element) {\n return getComputedStyle$1(element).position === 'static';\n}\n\nfunction getTrueOffsetParent(element, polyfill) {\n if (!isHTMLElement(element) || getComputedStyle$1(element).position === 'fixed') {\n return null;\n }\n if (polyfill) {\n return polyfill(element);\n }\n let rawOffsetParent = element.offsetParent;\n\n // Firefox returns the <html> element as the offsetParent if it's non-static,\n // while Chrome and Safari return the <body> element. The <body> element must\n // be used to perform the correct calculations even if the <html> element is\n // non-static.\n if (getDocumentElement(element) === rawOffsetParent) {\n rawOffsetParent = rawOffsetParent.ownerDocument.body;\n }\n return rawOffsetParent;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nfunction getOffsetParent(element, polyfill) {\n const win = getWindow(element);\n if (isTopLayer(element)) {\n return win;\n }\n if (!isHTMLElement(element)) {\n let svgOffsetParent = getParentNode(element);\n while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {\n if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {\n return svgOffsetParent;\n }\n svgOffsetParent = getParentNode(svgOffsetParent);\n }\n return win;\n }\n let offsetParent = getTrueOffsetParent(element, polyfill);\n while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {\n offsetParent = getTrueOffsetParent(offsetParent, polyfill);\n }\n if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {\n return win;\n }\n return offsetParent || getContainingBlock(element) || win;\n}\n\nconst getElementRects = async function (data) {\n const getOffsetParentFn = this.getOffsetParent || getOffsetParent;\n const getDimensionsFn = this.getDimensions;\n const floatingDimensions = await getDimensionsFn(data.floating);\n return {\n reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),\n floating: {\n x: 0,\n y: 0,\n width: floatingDimensions.width,\n height: floatingDimensions.height\n }\n };\n};\n\nfunction isRTL(element) {\n return getComputedStyle$1(element).direction === 'rtl';\n}\n\nconst platform = {\n convertOffsetParentRelativeRectToViewportRelativeRect,\n getDocumentElement,\n getClippingRect,\n getOffsetParent,\n getElementRects,\n getClientRects,\n getDimensions,\n getScale,\n isElement,\n isRTL\n};\n\nfunction rectsAreEqual(a, b) {\n return a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height;\n}\n\n// https://samthor.au/2021/observing-dom/\nfunction observeMove(element, onMove) {\n let io = null;\n let timeoutId;\n const root = getDocumentElement(element);\n function cleanup() {\n var _io;\n clearTimeout(timeoutId);\n (_io = io) == null || _io.disconnect();\n io = null;\n }\n function refresh(skip, threshold) {\n if (skip === void 0) {\n skip = false;\n }\n if (threshold === void 0) {\n threshold = 1;\n }\n cleanup();\n const elementRectForRootMargin = element.getBoundingClientRect();\n const {\n left,\n top,\n width,\n height\n } = elementRectForRootMargin;\n if (!skip) {\n onMove();\n }\n if (!width || !height) {\n return;\n }\n const insetTop = floor(top);\n const insetRight = floor(root.clientWidth - (left + width));\n const insetBottom = floor(root.clientHeight - (top + height));\n const insetLeft = floor(left);\n const rootMargin = -insetTop + \"px \" + -insetRight + \"px \" + -insetBottom + \"px \" + -insetLeft + \"px\";\n const options = {\n rootMargin,\n threshold: max(0, min(1, threshold)) || 1\n };\n let isFirstUpdate = true;\n function handleObserve(entries) {\n const ratio = entries[0].intersectionRatio;\n if (ratio !== threshold) {\n if (!isFirstUpdate) {\n return refresh();\n }\n if (!ratio) {\n // If the reference is clipped, the ratio is 0. Throttle the refresh\n // to prevent an infinite loop of updates.\n timeoutId = setTimeout(() => {\n refresh(false, 1e-7);\n }, 1000);\n } else {\n refresh(false, ratio);\n }\n }\n if (ratio === 1 && !rectsAreEqual(elementRectForRootMargin, element.getBoundingClientRect())) {\n // It's possible that even though the ratio is reported as 1, the\n // element is not actually fully within the IntersectionObserver's root\n // area anymore. This can happen under performance constraints. This may\n // be a bug in the browser's IntersectionObserver implementation. To\n // work around this, we compare the element's bounding rect now with\n // what it was at the time we created the IntersectionObserver. If they\n // are not equal then the element moved, so we refresh.\n refresh();\n }\n isFirstUpdate = false;\n }\n\n // Older browsers don't support a `document` as the root and will throw an\n // error.\n try {\n io = new IntersectionObserver(handleObserve, {\n ...options,\n // Handle <iframe>s\n root: root.ownerDocument\n });\n } catch (_e) {\n io = new IntersectionObserver(handleObserve, options);\n }\n io.observe(element);\n }\n refresh(true);\n return cleanup;\n}\n\n/**\n * Automatically updates the position of the floating element when necessary.\n * Should only be called when the floating element is mounted on the DOM or\n * visible on the screen.\n * @returns cleanup function that should be invoked when the floating element is\n * removed from the DOM or hidden from the screen.\n * @see https://floating-ui.com/docs/autoUpdate\n */\nfunction autoUpdate(reference, floating, update, options) {\n if (options === void 0) {\n options = {};\n }\n const {\n ancestorScroll = true,\n ancestorResize = true,\n elementResize = typeof ResizeObserver === 'function',\n layoutShift = typeof IntersectionObserver === 'function',\n animationFrame = false\n } = options;\n const referenceEl = unwrapElement(reference);\n const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...getOverflowAncestors(floating)] : [];\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.addEventListener('scroll', update, {\n passive: true\n });\n ancestorResize && ancestor.addEventListener('resize', update);\n });\n const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;\n let reobserveFrame = -1;\n let resizeObserver = null;\n if (elementResize) {\n resizeObserver = new ResizeObserver(_ref => {\n let [firstEntry] = _ref;\n if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {\n // Prevent update loops when using the `size` middleware.\n // https://github.com/floating-ui/floating-ui/issues/1740\n resizeObserver.unobserve(floating);\n cancelAnimationFrame(reobserveFrame);\n reobserveFrame = requestAnimationFrame(() => {\n var _resizeObserver;\n (_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);\n });\n }\n update();\n });\n if (referenceEl && !animationFrame) {\n resizeObserver.observe(referenceEl);\n }\n resizeObserver.observe(floating);\n }\n let frameId;\n let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;\n if (animationFrame) {\n frameLoop();\n }\n function frameLoop() {\n const nextRefRect = getBoundingClientRect(reference);\n if (prevRefRect && !rectsAreEqual(prevRefRect, nextRefRect)) {\n update();\n }\n prevRefRect = nextRefRect;\n frameId = requestAnimationFrame(frameLoop);\n }\n update();\n return () => {\n var _resizeObserver2;\n ancestors.forEach(ancestor => {\n ancestorScroll && ancestor.removeEventListener('scroll', update);\n ancestorResize && ancestor.removeEventListener('resize', update);\n });\n cleanupIo == null || cleanupIo();\n (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();\n resizeObserver = null;\n if (animationFrame) {\n cancelAnimationFrame(frameId);\n }\n };\n}\n\n/**\n * Resolves with an object of overflow side offsets that determine how much the\n * element is overflowing a given clipping boundary on each side.\n * - positive = overflowing the boundary by that number of pixels\n * - negative = how many pixels left before it will overflow\n * - 0 = lies flush with the boundary\n * @see https://floating-ui.com/docs/detectOverflow\n */\nconst detectOverflow = detectOverflow$1;\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = offset$1;\n\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = autoPlacement$1;\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = shift$1;\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = flip$1;\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = size$1;\n\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = hide$1;\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = arrow$1;\n\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = inline$1;\n\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = limitShift$1;\n\n/**\n * Computes the `x` and `y` coordinates that will place the floating element\n * next to a given reference element.\n */\nconst computePosition = (reference, floating, options) => {\n // This caches the expensive `getClippingElementAncestors` function so that\n // multiple lifecycle resets re-use the same result. It only lives for a\n // single call. If other functions become expensive, we can add them as well.\n const cache = new Map();\n const mergedOptions = {\n platform,\n ...options\n };\n const platformWithCache = {\n ...mergedOptions.platform,\n _c: cache\n };\n return computePosition$1(reference, floating, {\n ...mergedOptions,\n platform: platformWithCache\n });\n};\n\nexport { arrow, autoPlacement, autoUpdate, computePosition, detectOverflow, flip, hide, inline, limitShift, offset, platform, shift, size };\n","import { computePosition, arrow as arrow$2, autoPlacement as autoPlacement$1, flip as flip$1, hide as hide$1, inline as inline$1, limitShift as limitShift$1, offset as offset$1, shift as shift$1, size as size$1 } from '@floating-ui/dom';\nexport { autoUpdate, computePosition, detectOverflow, getOverflowAncestors, platform } from '@floating-ui/dom';\nimport * as React from 'react';\nimport { useLayoutEffect } from 'react';\nimport * as ReactDOM from 'react-dom';\n\nvar isClient = typeof document !== 'undefined';\n\nvar noop = function noop() {};\nvar index = isClient ? useLayoutEffect : noop;\n\n// Fork of `fast-deep-equal` that only does the comparisons we need and compares\n// functions\nfunction deepEqual(a, b) {\n if (a === b) {\n return true;\n }\n if (typeof a !== typeof b) {\n return false;\n }\n if (typeof a === 'function' && a.toString() === b.toString()) {\n return true;\n }\n let length;\n let i;\n let keys;\n if (a && b && typeof a === 'object') {\n if (Array.isArray(a)) {\n length = a.length;\n if (length !== b.length) return false;\n for (i = length; i-- !== 0;) {\n if (!deepEqual(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) {\n return false;\n }\n for (i = length; i-- !== 0;) {\n if (!{}.hasOwnProperty.call(b, keys[i])) {\n return false;\n }\n }\n for (i = length; i-- !== 0;) {\n const key = keys[i];\n if (key === '_owner' && a.$$typeof) {\n continue;\n }\n if (!deepEqual(a[key], b[key])) {\n return false;\n }\n }\n return true;\n }\n return a !== a && b !== b;\n}\n\nfunction getDPR(element) {\n if (typeof window === 'undefined') {\n return 1;\n }\n const win = element.ownerDocument.defaultView || window;\n return win.devicePixelRatio || 1;\n}\n\nfunction roundByDPR(element, value) {\n const dpr = getDPR(element);\n return Math.round(value * dpr) / dpr;\n}\n\nfunction useLatestRef(value) {\n const ref = React.useRef(value);\n index(() => {\n ref.current = value;\n });\n return ref;\n}\n\n/**\n * Provides data to position a floating element.\n * @see https://floating-ui.com/docs/useFloating\n */\nfunction useFloating(options) {\n if (options === void 0) {\n options = {};\n }\n const {\n placement = 'bottom',\n strategy = 'absolute',\n middleware = [],\n platform,\n elements: {\n reference: externalReference,\n floating: externalFloating\n } = {},\n transform = true,\n whileElementsMounted,\n open\n } = options;\n const [data, setData] = React.useState({\n x: 0,\n y: 0,\n strategy,\n placement,\n middlewareData: {},\n isPositioned: false\n });\n const [latestMiddleware, setLatestMiddleware] = React.useState(middleware);\n if (!deepEqual(latestMiddleware, middleware)) {\n setLatestMiddleware(middleware);\n }\n const [_reference, _setReference] = React.useState(null);\n const [_floating, _setFloating] = React.useState(null);\n const setReference = React.useCallback(node => {\n if (node !== referenceRef.current) {\n referenceRef.current = node;\n _setReference(node);\n }\n }, []);\n const setFloating = React.useCallback(node => {\n if (node !== floatingRef.current) {\n floatingRef.current = node;\n _setFloating(node);\n }\n }, []);\n const referenceEl = externalReference || _reference;\n const floatingEl = externalFloating || _floating;\n const referenceRef = React.useRef(null);\n const floatingRef = React.useRef(null);\n const dataRef = React.useRef(data);\n const hasWhileElementsMounted = whileElementsMounted != null;\n const whileElementsMountedRef = useLatestRef(whileElementsMounted);\n const platformRef = useLatestRef(platform);\n const openRef = useLatestRef(open);\n const update = React.useCallback(() => {\n if (!referenceRef.current || !floatingRef.current) {\n return;\n }\n const config = {\n placement,\n strategy,\n middleware: latestMiddleware\n };\n if (platformRef.current) {\n config.platform = platformRef.current;\n }\n computePosition(referenceRef.current, floatingRef.current, config).then(data => {\n const fullData = {\n ...data,\n // The floating element's position may be recomputed while it's closed\n // but still mounted (such as when transitioning out). To ensure\n // `isPositioned` will be `false` initially on the next open, avoid\n // setting it to `true` when `open === false` (must be specified).\n isPositioned: openRef.current !== false\n };\n if (isMountedRef.current && !deepEqual(dataRef.current, fullData)) {\n dataRef.current = fullData;\n ReactDOM.flushSync(() => {\n setData(fullData);\n });\n }\n });\n }, [latestMiddleware, placement, strategy, platformRef, openRef]);\n index(() => {\n if (open === false && dataRef.current.isPositioned) {\n dataRef.current.isPositioned = false;\n setData(data => ({\n ...data,\n isPositioned: false\n }));\n }\n }, [open]);\n const isMountedRef = React.useRef(false);\n index(() => {\n isMountedRef.current = true;\n return () => {\n isMountedRef.current = false;\n };\n }, []);\n index(() => {\n if (referenceEl) referenceRef.current = referenceEl;\n if (floatingEl) floatingRef.current = floatingEl;\n if (referenceEl && floatingEl) {\n if (whileElementsMountedRef.current) {\n return whileElementsMountedRef.current(referenceEl, floatingEl, update);\n }\n update();\n }\n }, [referenceEl, floatingEl, update, whileElementsMountedRef, hasWhileElementsMounted]);\n const refs = React.useMemo(() => ({\n reference: referenceRef,\n floating: floatingRef,\n setReference,\n setFloating\n }), [setReference, setFloating]);\n const elements = React.useMemo(() => ({\n reference: referenceEl,\n floating: floatingEl\n }), [referenceEl, floatingEl]);\n const floatingStyles = React.useMemo(() => {\n const initialStyles = {\n position: strategy,\n left: 0,\n top: 0\n };\n if (!elements.floating) {\n return initialStyles;\n }\n const x = roundByDPR(elements.floating, data.x);\n const y = roundByDPR(elements.floating, data.y);\n if (transform) {\n return {\n ...initialStyles,\n transform: \"translate(\" + x + \"px, \" + y + \"px)\",\n ...(getDPR(elements.floating) >= 1.5 && {\n willChange: 'transform'\n })\n };\n }\n return {\n position: strategy,\n left: x,\n top: y\n };\n }, [strategy, transform, elements.floating, data.x, data.y]);\n return React.useMemo(() => ({\n ...data,\n update,\n refs,\n elements,\n floatingStyles\n }), [data, update, refs, elements, floatingStyles]);\n}\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * This wraps the core `arrow` middleware to allow React refs as the element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow$1 = options => {\n function isRef(value) {\n return {}.hasOwnProperty.call(value, 'current');\n }\n return {\n name: 'arrow',\n options,\n fn(state) {\n const {\n element,\n padding\n } = typeof options === 'function' ? options(state) : options;\n if (element && isRef(element)) {\n if (element.current != null) {\n return arrow$2({\n element: element.current,\n padding\n }).fn(state);\n }\n return {};\n }\n if (element) {\n return arrow$2({\n element,\n padding\n }).fn(state);\n }\n return {};\n }\n };\n};\n\n/**\n * Modifies the placement by translating the floating element along the\n * specified axes.\n * A number (shorthand for `mainAxis` or distance), or an axes configuration\n * object may be passed.\n * @see https://floating-ui.com/docs/offset\n */\nconst offset = (options, deps) => ({\n ...offset$1(options),\n options: [options, deps]\n});\n\n/**\n * Optimizes the visibility of the floating element by shifting it in order to\n * keep it in view when it will overflow the clipping boundary.\n * @see https://floating-ui.com/docs/shift\n */\nconst shift = (options, deps) => ({\n ...shift$1(options),\n options: [options, deps]\n});\n\n/**\n * Built-in `limiter` that will stop `shift()` at a certain point.\n */\nconst limitShift = (options, deps) => ({\n ...limitShift$1(options),\n options: [options, deps]\n});\n\n/**\n * Optimizes the visibility of the floating element by flipping the `placement`\n * in order to keep it in view when the preferred placement(s) will overflow the\n * clipping boundary. Alternative to `autoPlacement`.\n * @see https://floating-ui.com/docs/flip\n */\nconst flip = (options, deps) => ({\n ...flip$1(options),\n options: [options, deps]\n});\n\n/**\n * Provides data that allows you to change the size of the floating element —\n * for instance, prevent it from overflowing the clipping boundary or match the\n * width of the reference element.\n * @see https://floating-ui.com/docs/size\n */\nconst size = (options, deps) => ({\n ...size$1(options),\n options: [options, deps]\n});\n\n/**\n * Optimizes the visibility of the floating element by choosing the placement\n * that has the most space available automatically, without needing to specify a\n * preferred placement. Alternative to `flip`.\n * @see https://floating-ui.com/docs/autoPlacement\n */\nconst autoPlacement = (options, deps) => ({\n ...autoPlacement$1(options),\n options: [options, deps]\n});\n\n/**\n * Provides data to hide the floating element in applicable situations, such as\n * when it is not in the same clipping context as the reference element.\n * @see https://floating-ui.com/docs/hide\n */\nconst hide = (options, deps) => ({\n ...hide$1(options),\n options: [options, deps]\n});\n\n/**\n * Provides improved positioning for inline reference elements that can span\n * over multiple lines, such as hyperlinks or range selections.\n * @see https://floating-ui.com/docs/inline\n */\nconst inline = (options, deps) => ({\n ...inline$1(options),\n options: [options, deps]\n});\n\n/**\n * Provides data to position an inner element of the floating element so that it\n * appears centered to the reference element.\n * This wraps the core `arrow` middleware to allow React refs as the element.\n * @see https://floating-ui.com/docs/arrow\n */\nconst arrow = (options, deps) => ({\n ...arrow$1(options),\n options: [options, deps]\n});\n\nexport { arrow, autoPlacement, flip, hide, inline, limitShift, offset, shift, size, useFloating };\n","function _objectWithoutPropertiesLoose(r, e) {\n if (null == r) return {};\n var t = {};\n for (var n in r) if ({}.hasOwnProperty.call(r, n)) {\n if (e.includes(n)) continue;\n t[n] = r[n];\n }\n return t;\n}\nexport { _objectWithoutPropertiesLoose as default };","function _extends() {\n return _extends = Object.assign ? Object.assign.bind() : function (n) {\n for (var e = 1; e < arguments.length; e++) {\n var t = arguments[e];\n for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);\n }\n return n;\n }, _extends.apply(null, arguments);\n}\nexport { _extends as default };","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","module.exports = Function.call.bind(Object.prototype.hasOwnProperty);\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n var loggedTypeFailures = {};\n var has = require('./lib/has');\n\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) { /**/ }\n };\n}\n\n/**\n * Assert that the values match with the type specs.\n * Error messages are memorized and will only be shown once.\n *\n * @param {object} typeSpecs Map of name to a ReactPropType\n * @param {object} values Runtime values that need to be type-checked\n * @param {string} location e.g. \"prop\", \"context\", \"child context\"\n * @param {string} componentName Name of the component for error messages.\n * @param {?Function} getStack Returns the component stack.\n * @private\n */\nfunction checkPropTypes(typeSpecs, values, location, componentName, getStack) {\n if (process.env.NODE_ENV !== 'production') {\n for (var typeSpecName in typeSpecs) {\n if (has(typeSpecs, typeSpecName)) {\n var error;\n // Prop type validation may throw. In case they do, we don't want to\n // fail the render phase where it didn't fail before. So we log it.\n // After these have been cleaned up, we'll let them throw.\n try {\n // This is intentionally an invariant that gets caught. It's the same\n // behavior as without this statement except with a better message.\n if (typeof typeSpecs[typeSpecName] !== 'function') {\n var err = Error(\n (componentName || 'React class') + ': ' + location + ' type `' + typeSpecName + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + typeof typeSpecs[typeSpecName] + '`.' +\n 'This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.'\n );\n err.name = 'Invariant Violation';\n throw err;\n }\n error = typeSpecs[typeSpecName](values, typeSpecName, componentName, location, null, ReactPropTypesSecret);\n } catch (ex) {\n error = ex;\n }\n if (error && !(error instanceof Error)) {\n printWarning(\n (componentName || 'React class') + ': type specification of ' +\n location + ' `' + typeSpecName + '` is invalid; the type checker ' +\n 'function must return `null` or an `Error` but returned a ' + typeof error + '. ' +\n 'You may have forgotten to pass an argument to the type checker ' +\n 'creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and ' +\n 'shape all require an argument).'\n );\n }\n if (error instanceof Error && !(error.message in loggedTypeFailures)) {\n // Only monitor this failure once because there tends to be a lot of the\n // same error.\n loggedTypeFailures[error.message] = true;\n\n var stack = getStack ? getStack() : '';\n\n printWarning(\n 'Failed ' + location + ' type: ' + error.message + (stack != null ? stack : '')\n );\n }\n }\n }\n }\n}\n\n/**\n * Resets warning cache when testing.\n *\n * @private\n */\ncheckPropTypes.resetWarningCache = function() {\n if (process.env.NODE_ENV !== 'production') {\n loggedTypeFailures = {};\n }\n}\n\nmodule.exports = checkPropTypes;\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactIs = require('react-is');\nvar assign = require('object-assign');\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\nvar has = require('./lib/has');\nvar checkPropTypes = require('./checkPropTypes');\n\nvar printWarning = function() {};\n\nif (process.env.NODE_ENV !== 'production') {\n printWarning = function(text) {\n var message = 'Warning: ' + text;\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n };\n}\n\nfunction emptyFunctionThatReturnsNull() {\n return null;\n}\n\nmodule.exports = function(isValidElement, throwOnDirectAccess) {\n /* global Symbol */\n var ITERATOR_SYMBOL = typeof Symbol === 'function' && Symbol.iterator;\n var FAUX_ITERATOR_SYMBOL = '@@iterator'; // Before Symbol spec.\n\n /**\n * Returns the iterator method function contained on the iterable object.\n *\n * Be sure to invoke the function with the iterable as context:\n *\n * var iteratorFn = getIteratorFn(myIterable);\n * if (iteratorFn) {\n * var iterator = iteratorFn.call(myIterable);\n * ...\n * }\n *\n * @param {?object} maybeIterable\n * @return {?function}\n */\n function getIteratorFn(maybeIterable) {\n var iteratorFn = maybeIterable && (ITERATOR_SYMBOL && maybeIterable[ITERATOR_SYMBOL] || maybeIterable[FAUX_ITERATOR_SYMBOL]);\n if (typeof iteratorFn === 'function') {\n return iteratorFn;\n }\n }\n\n /**\n * Collection of methods that allow declaration and validation of props that are\n * supplied to React components. Example usage:\n *\n * var Props = require('ReactPropTypes');\n * var MyArticle = React.createClass({\n * propTypes: {\n * // An optional string prop named \"description\".\n * description: Props.string,\n *\n * // A required enum prop named \"category\".\n * category: Props.oneOf(['News','Photos']).isRequired,\n *\n * // A prop named \"dialog\" that requires an instance of Dialog.\n * dialog: Props.instanceOf(Dialog).isRequired\n * },\n * render: function() { ... }\n * });\n *\n * A more formal specification of how these methods are used:\n *\n * type := array|bool|func|object|number|string|oneOf([...])|instanceOf(...)\n * decl := ReactPropTypes.{type}(.isRequired)?\n *\n * Each and every declaration produces a function with the same signature. This\n * allows the creation of custom validation functions. For example:\n *\n * var MyLink = React.createClass({\n * propTypes: {\n * // An optional string or URI prop named \"href\".\n * href: function(props, propName, componentName) {\n * var propValue = props[propName];\n * if (propValue != null && typeof propValue !== 'string' &&\n * !(propValue instanceof URI)) {\n * return new Error(\n * 'Expected a string or an URI for ' + propName + ' in ' +\n * componentName\n * );\n * }\n * }\n * },\n * render: function() {...}\n * });\n *\n * @internal\n */\n\n var ANONYMOUS = '<<anonymous>>';\n\n // Important!\n // Keep this list in sync with production version in `./factoryWithThrowingShims.js`.\n var ReactPropTypes = {\n array: createPrimitiveTypeChecker('array'),\n bigint: createPrimitiveTypeChecker('bigint'),\n bool: createPrimitiveTypeChecker('boolean'),\n func: createPrimitiveTypeChecker('function'),\n number: createPrimitiveTypeChecker('number'),\n object: createPrimitiveTypeChecker('object'),\n string: createPrimitiveTypeChecker('string'),\n symbol: createPrimitiveTypeChecker('symbol'),\n\n any: createAnyTypeChecker(),\n arrayOf: createArrayOfTypeChecker,\n element: createElementTypeChecker(),\n elementType: createElementTypeTypeChecker(),\n instanceOf: createInstanceTypeChecker,\n node: createNodeChecker(),\n objectOf: createObjectOfTypeChecker,\n oneOf: createEnumTypeChecker,\n oneOfType: createUnionTypeChecker,\n shape: createShapeTypeChecker,\n exact: createStrictShapeTypeChecker,\n };\n\n /**\n * inlined Object.is polyfill to avoid requiring consumers ship their own\n * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\n */\n /*eslint-disable no-self-compare*/\n function is(x, y) {\n // SameValue algorithm\n if (x === y) {\n // Steps 1-5, 7-10\n // Steps 6.b-6.e: +0 != -0\n return x !== 0 || 1 / x === 1 / y;\n } else {\n // Step 6.a: NaN == NaN\n return x !== x && y !== y;\n }\n }\n /*eslint-enable no-self-compare*/\n\n /**\n * We use an Error-like object for backward compatibility as people may call\n * PropTypes directly and inspect their output. However, we don't use real\n * Errors anymore. We don't inspect their stack anyway, and creating them\n * is prohibitively expensive if they are created too often, such as what\n * happens in oneOfType() for any type before the one that matched.\n */\n function PropTypeError(message, data) {\n this.message = message;\n this.data = data && typeof data === 'object' ? data: {};\n this.stack = '';\n }\n // Make `instanceof Error` still work for returned errors.\n PropTypeError.prototype = Error.prototype;\n\n function createChainableTypeChecker(validate) {\n if (process.env.NODE_ENV !== 'production') {\n var manualPropTypeCallCache = {};\n var manualPropTypeWarningCount = 0;\n }\n function checkType(isRequired, props, propName, componentName, location, propFullName, secret) {\n componentName = componentName || ANONYMOUS;\n propFullName = propFullName || propName;\n\n if (secret !== ReactPropTypesSecret) {\n if (throwOnDirectAccess) {\n // New behavior only for users of `prop-types` package\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use `PropTypes.checkPropTypes()` to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n } else if (process.env.NODE_ENV !== 'production' && typeof console !== 'undefined') {\n // Old behavior for people using React.PropTypes\n var cacheKey = componentName + ':' + propName;\n if (\n !manualPropTypeCallCache[cacheKey] &&\n // Avoid spamming the console because they are often not actionable except for lib authors\n manualPropTypeWarningCount < 3\n ) {\n printWarning(\n 'You are manually calling a React.PropTypes validation ' +\n 'function for the `' + propFullName + '` prop on `' + componentName + '`. This is deprecated ' +\n 'and will throw in the standalone `prop-types` package. ' +\n 'You may be seeing this warning due to a third-party PropTypes ' +\n 'library. See https://fb.me/react-warning-dont-call-proptypes ' + 'for details.'\n );\n manualPropTypeCallCache[cacheKey] = true;\n manualPropTypeWarningCount++;\n }\n }\n }\n if (props[propName] == null) {\n if (isRequired) {\n if (props[propName] === null) {\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required ' + ('in `' + componentName + '`, but its value is `null`.'));\n }\n return new PropTypeError('The ' + location + ' `' + propFullName + '` is marked as required in ' + ('`' + componentName + '`, but its value is `undefined`.'));\n }\n return null;\n } else {\n return validate(props, propName, componentName, location, propFullName);\n }\n }\n\n var chainedCheckType = checkType.bind(null, false);\n chainedCheckType.isRequired = checkType.bind(null, true);\n\n return chainedCheckType;\n }\n\n function createPrimitiveTypeChecker(expectedType) {\n function validate(props, propName, componentName, location, propFullName, secret) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== expectedType) {\n // `propValue` being instance of, say, date/regexp, pass the 'object'\n // check, but we can offer a more precise error message here rather than\n // 'of type `object`'.\n var preciseType = getPreciseType(propValue);\n\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + preciseType + '` supplied to `' + componentName + '`, expected ') + ('`' + expectedType + '`.'),\n {expectedType: expectedType}\n );\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createAnyTypeChecker() {\n return createChainableTypeChecker(emptyFunctionThatReturnsNull);\n }\n\n function createArrayOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside arrayOf.');\n }\n var propValue = props[propName];\n if (!Array.isArray(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an array.'));\n }\n for (var i = 0; i < propValue.length; i++) {\n var error = typeChecker(propValue, i, componentName, location, propFullName + '[' + i + ']', ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!isValidElement(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createElementTypeTypeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n if (!ReactIs.isValidElementType(propValue)) {\n var propType = getPropType(propValue);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected a single ReactElement type.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createInstanceTypeChecker(expectedClass) {\n function validate(props, propName, componentName, location, propFullName) {\n if (!(props[propName] instanceof expectedClass)) {\n var expectedClassName = expectedClass.name || ANONYMOUS;\n var actualClassName = getClassName(props[propName]);\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + actualClassName + '` supplied to `' + componentName + '`, expected ') + ('instance of `' + expectedClassName + '`.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createEnumTypeChecker(expectedValues) {\n if (!Array.isArray(expectedValues)) {\n if (process.env.NODE_ENV !== 'production') {\n if (arguments.length > 1) {\n printWarning(\n 'Invalid arguments supplied to oneOf, expected an array, got ' + arguments.length + ' arguments. ' +\n 'A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z]).'\n );\n } else {\n printWarning('Invalid argument supplied to oneOf, expected an array.');\n }\n }\n return emptyFunctionThatReturnsNull;\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n for (var i = 0; i < expectedValues.length; i++) {\n if (is(propValue, expectedValues[i])) {\n return null;\n }\n }\n\n var valuesString = JSON.stringify(expectedValues, function replacer(key, value) {\n var type = getPreciseType(value);\n if (type === 'symbol') {\n return String(value);\n }\n return value;\n });\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of value `' + String(propValue) + '` ' + ('supplied to `' + componentName + '`, expected one of ' + valuesString + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createObjectOfTypeChecker(typeChecker) {\n function validate(props, propName, componentName, location, propFullName) {\n if (typeof typeChecker !== 'function') {\n return new PropTypeError('Property `' + propFullName + '` of component `' + componentName + '` has invalid PropType notation inside objectOf.');\n }\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type ' + ('`' + propType + '` supplied to `' + componentName + '`, expected an object.'));\n }\n for (var key in propValue) {\n if (has(propValue, key)) {\n var error = typeChecker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error instanceof Error) {\n return error;\n }\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createUnionTypeChecker(arrayOfTypeCheckers) {\n if (!Array.isArray(arrayOfTypeCheckers)) {\n process.env.NODE_ENV !== 'production' ? printWarning('Invalid argument supplied to oneOfType, expected an instance of array.') : void 0;\n return emptyFunctionThatReturnsNull;\n }\n\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n if (typeof checker !== 'function') {\n printWarning(\n 'Invalid argument supplied to oneOfType. Expected an array of check functions, but ' +\n 'received ' + getPostfixForTypeWarning(checker) + ' at index ' + i + '.'\n );\n return emptyFunctionThatReturnsNull;\n }\n }\n\n function validate(props, propName, componentName, location, propFullName) {\n var expectedTypes = [];\n for (var i = 0; i < arrayOfTypeCheckers.length; i++) {\n var checker = arrayOfTypeCheckers[i];\n var checkerResult = checker(props, propName, componentName, location, propFullName, ReactPropTypesSecret);\n if (checkerResult == null) {\n return null;\n }\n if (checkerResult.data && has(checkerResult.data, 'expectedType')) {\n expectedTypes.push(checkerResult.data.expectedType);\n }\n }\n var expectedTypesMessage = (expectedTypes.length > 0) ? ', expected one of type [' + expectedTypes.join(', ') + ']': '';\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`' + expectedTypesMessage + '.'));\n }\n return createChainableTypeChecker(validate);\n }\n\n function createNodeChecker() {\n function validate(props, propName, componentName, location, propFullName) {\n if (!isNode(props[propName])) {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` supplied to ' + ('`' + componentName + '`, expected a ReactNode.'));\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function invalidValidatorError(componentName, location, propFullName, key, type) {\n return new PropTypeError(\n (componentName || 'React class') + ': ' + location + ' type `' + propFullName + '.' + key + '` is invalid; ' +\n 'it must be a function, usually from the `prop-types` package, but received `' + type + '`.'\n );\n }\n\n function createShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n for (var key in shapeTypes) {\n var checker = shapeTypes[key];\n if (typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n return createChainableTypeChecker(validate);\n }\n\n function createStrictShapeTypeChecker(shapeTypes) {\n function validate(props, propName, componentName, location, propFullName) {\n var propValue = props[propName];\n var propType = getPropType(propValue);\n if (propType !== 'object') {\n return new PropTypeError('Invalid ' + location + ' `' + propFullName + '` of type `' + propType + '` ' + ('supplied to `' + componentName + '`, expected `object`.'));\n }\n // We need to check all keys in case some are required but missing from props.\n var allKeys = assign({}, props[propName], shapeTypes);\n for (var key in allKeys) {\n var checker = shapeTypes[key];\n if (has(shapeTypes, key) && typeof checker !== 'function') {\n return invalidValidatorError(componentName, location, propFullName, key, getPreciseType(checker));\n }\n if (!checker) {\n return new PropTypeError(\n 'Invalid ' + location + ' `' + propFullName + '` key `' + key + '` supplied to `' + componentName + '`.' +\n '\\nBad object: ' + JSON.stringify(props[propName], null, ' ') +\n '\\nValid keys: ' + JSON.stringify(Object.keys(shapeTypes), null, ' ')\n );\n }\n var error = checker(propValue, key, componentName, location, propFullName + '.' + key, ReactPropTypesSecret);\n if (error) {\n return error;\n }\n }\n return null;\n }\n\n return createChainableTypeChecker(validate);\n }\n\n function isNode(propValue) {\n switch (typeof propValue) {\n case 'number':\n case 'string':\n case 'undefined':\n return true;\n case 'boolean':\n return !propValue;\n case 'object':\n if (Array.isArray(propValue)) {\n return propValue.every(isNode);\n }\n if (propValue === null || isValidElement(propValue)) {\n return true;\n }\n\n var iteratorFn = getIteratorFn(propValue);\n if (iteratorFn) {\n var iterator = iteratorFn.call(propValue);\n var step;\n if (iteratorFn !== propValue.entries) {\n while (!(step = iterator.next()).done) {\n if (!isNode(step.value)) {\n return false;\n }\n }\n } else {\n // Iterator will provide entry [k,v] tuples rather than values.\n while (!(step = iterator.next()).done) {\n var entry = step.value;\n if (entry) {\n if (!isNode(entry[1])) {\n return false;\n }\n }\n }\n }\n } else {\n return false;\n }\n\n return true;\n default:\n return false;\n }\n }\n\n function isSymbol(propType, propValue) {\n // Native Symbol.\n if (propType === 'symbol') {\n return true;\n }\n\n // falsy value can't be a Symbol\n if (!propValue) {\n return false;\n }\n\n // 19.4.3.5 Symbol.prototype[@@toStringTag] === 'Symbol'\n if (propValue['@@toStringTag'] === 'Symbol') {\n return true;\n }\n\n // Fallback for non-spec compliant Symbols which are polyfilled.\n if (typeof Symbol === 'function' && propValue instanceof Symbol) {\n return true;\n }\n\n return false;\n }\n\n // Equivalent of `typeof` but with special handling for array and regexp.\n function getPropType(propValue) {\n var propType = typeof propValue;\n if (Array.isArray(propValue)) {\n return 'array';\n }\n if (propValue instanceof RegExp) {\n // Old webkits (at least until Android 4.0) return 'function' rather than\n // 'object' for typeof a RegExp. We'll normalize this here so that /bla/\n // passes PropTypes.object.\n return 'object';\n }\n if (isSymbol(propType, propValue)) {\n return 'symbol';\n }\n return propType;\n }\n\n // This handles more types than `getPropType`. Only used for error messages.\n // See `createPrimitiveTypeChecker`.\n function getPreciseType(propValue) {\n if (typeof propValue === 'undefined' || propValue === null) {\n return '' + propValue;\n }\n var propType = getPropType(propValue);\n if (propType === 'object') {\n if (propValue instanceof Date) {\n return 'date';\n } else if (propValue instanceof RegExp) {\n return 'regexp';\n }\n }\n return propType;\n }\n\n // Returns a string that is postfixed to a warning about an invalid type.\n // For example, \"undefined\" or \"of type array\"\n function getPostfixForTypeWarning(value) {\n var type = getPreciseType(value);\n switch (type) {\n case 'array':\n case 'object':\n return 'an ' + type;\n case 'boolean':\n case 'date':\n case 'regexp':\n return 'a ' + type;\n default:\n return type;\n }\n }\n\n // Returns class name of the object, if any.\n function getClassName(propValue) {\n if (!propValue.constructor || !propValue.constructor.name) {\n return ANONYMOUS;\n }\n return propValue.constructor.name;\n }\n\n ReactPropTypes.checkPropTypes = checkPropTypes;\n ReactPropTypes.resetWarningCache = checkPropTypes.resetWarningCache;\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * defines a focus group\n */\nexport var FOCUS_GROUP = 'data-focus-lock';\n/**\n * disables element discovery inside a group marked by key\n */\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\n/**\n * allows uncontrolled focus within the marked area, effectively disabling focus lock for it's content\n */\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\n/**\n * instructs autofocus engine to pick default autofocus inside a given node\n * can be set on the element or container\n */\nexport var FOCUS_AUTO = 'data-autofocus-inside';\n/**\n * instructs autofocus to ignore elements within a given node\n * can be set on the element or container\n */\nexport var FOCUS_NO_AUTOFOCUS = 'data-no-autofocus';\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n },\n },\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","import * as React from 'react';\nimport { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\nvar useIsomorphicLayoutEffect = typeof window !== 'undefined' ? React.useLayoutEffect : React.useEffect;\nvar currentValues = new WeakMap();\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n var callbackRef = useCallbackRef(defaultValue || null, function (newValue) {\n return refs.forEach(function (ref) { return assignRef(ref, newValue); });\n });\n // handle refs changes - added or removed\n useIsomorphicLayoutEffect(function () {\n var oldValue = currentValues.get(callbackRef);\n if (oldValue) {\n var prevRefs_1 = new Set(oldValue);\n var nextRefs_1 = new Set(refs);\n var current_1 = callbackRef.current;\n prevRefs_1.forEach(function (ref) {\n if (!nextRefs_1.has(ref)) {\n assignRef(ref, null);\n }\n });\n nextRefs_1.forEach(function (ref) {\n if (!prevRefs_1.has(ref)) {\n assignRef(ref, current_1);\n }\n });\n }\n currentValues.set(callbackRef, refs);\n }, [refs]);\n return callbackRef;\n}\n","import React, { Fragment } from 'react';\nimport PropTypes from 'prop-types';\nexport var hiddenGuard = {\n width: '1px',\n height: '0px',\n padding: 0,\n overflow: 'hidden',\n position: 'fixed',\n top: '1px',\n left: '1px'\n};\nvar InFocusGuard = function InFocusGuard(_ref) {\n var _ref$children = _ref.children,\n children = _ref$children === void 0 ? null : _ref$children;\n return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }), children, children && /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-last\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }));\n};\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nexport default InFocusGuard;","import { __assign } from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { createMedium, createSidecarMedium } from 'use-sidecar';\nexport var mediumFocus = createMedium({}, function (_ref) {\n var target = _ref.target,\n currentTarget = _ref.currentTarget;\n return {\n target: target,\n currentTarget: currentTarget\n };\n});\nexport var mediumBlur = createMedium();\nexport var mediumEffect = createMedium();\nexport var mediumSidecar = createSidecarMedium({\n async: true,\n ssr: typeof document !== 'undefined'\n});","import { createContext } from 'react';\nexport var focusScope = /*#__PURE__*/createContext(undefined);","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React, { forwardRef, useRef, useState, useCallback, useEffect, useMemo, Fragment } from 'react';\nimport { node, bool, string, any, arrayOf, oneOfType, object, func } from 'prop-types';\nimport { FOCUS_DISABLED, FOCUS_GROUP } from 'focus-lock/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { hiddenGuard } from './FocusGuard';\nimport { mediumFocus, mediumBlur, mediumSidecar } from './medium';\nimport { focusScope } from './scope';\nvar emptyArray = [];\nvar FocusLock = /*#__PURE__*/forwardRef(function FocusLockUI(props, parentRef) {\n var _extends2;\n var _useState = useState(),\n realObserved = _useState[0],\n setObserved = _useState[1];\n var observed = useRef();\n var isActive = useRef(false);\n var originalFocusedElement = useRef(null);\n var _useState2 = useState({}),\n update = _useState2[1];\n var children = props.children,\n _props$disabled = props.disabled,\n disabled = _props$disabled === void 0 ? false : _props$disabled,\n _props$noFocusGuards = props.noFocusGuards,\n noFocusGuards = _props$noFocusGuards === void 0 ? false : _props$noFocusGuards,\n _props$persistentFocu = props.persistentFocus,\n persistentFocus = _props$persistentFocu === void 0 ? false : _props$persistentFocu,\n _props$crossFrame = props.crossFrame,\n crossFrame = _props$crossFrame === void 0 ? true : _props$crossFrame,\n _props$autoFocus = props.autoFocus,\n autoFocus = _props$autoFocus === void 0 ? true : _props$autoFocus,\n allowTextSelection = props.allowTextSelection,\n group = props.group,\n className = props.className,\n whiteList = props.whiteList,\n hasPositiveIndices = props.hasPositiveIndices,\n _props$shards = props.shards,\n shards = _props$shards === void 0 ? emptyArray : _props$shards,\n _props$as = props.as,\n Container = _props$as === void 0 ? 'div' : _props$as,\n _props$lockProps = props.lockProps,\n containerProps = _props$lockProps === void 0 ? {} : _props$lockProps,\n SideCar = props.sideCar,\n _props$returnFocus = props.returnFocus,\n shouldReturnFocus = _props$returnFocus === void 0 ? false : _props$returnFocus,\n focusOptions = props.focusOptions,\n onActivationCallback = props.onActivation,\n onDeactivationCallback = props.onDeactivation;\n var _useState3 = useState({}),\n id = _useState3[0];\n var onActivation = useCallback(function (_ref) {\n var captureFocusRestore = _ref.captureFocusRestore;\n if (!originalFocusedElement.current) {\n var _document;\n var activeElement = (_document = document) == null ? void 0 : _document.activeElement;\n originalFocusedElement.current = activeElement;\n if (activeElement !== document.body) {\n originalFocusedElement.current = captureFocusRestore(activeElement);\n }\n }\n if (observed.current && onActivationCallback) {\n onActivationCallback(observed.current);\n }\n isActive.current = true;\n update();\n }, [onActivationCallback]);\n var onDeactivation = useCallback(function () {\n isActive.current = false;\n if (onDeactivationCallback) {\n onDeactivationCallback(observed.current);\n }\n update();\n }, [onDeactivationCallback]);\n var returnFocus = useCallback(function (allowDefer) {\n var focusRestore = originalFocusedElement.current;\n if (focusRestore) {\n var returnFocusTo = (typeof focusRestore === 'function' ? focusRestore() : focusRestore) || document.body;\n var howToReturnFocus = typeof shouldReturnFocus === 'function' ? shouldReturnFocus(returnFocusTo) : shouldReturnFocus;\n if (howToReturnFocus) {\n var returnFocusOptions = typeof howToReturnFocus === 'object' ? howToReturnFocus : undefined;\n originalFocusedElement.current = null;\n if (allowDefer) {\n Promise.resolve().then(function () {\n return returnFocusTo.focus(returnFocusOptions);\n });\n } else {\n returnFocusTo.focus(returnFocusOptions);\n }\n }\n }\n }, [shouldReturnFocus]);\n var onFocus = useCallback(function (event) {\n if (isActive.current) {\n mediumFocus.useMedium(event);\n }\n }, []);\n var onBlur = mediumBlur.useMedium;\n var setObserveNode = useCallback(function (newObserved) {\n if (observed.current !== newObserved) {\n observed.current = newObserved;\n setObserved(newObserved);\n }\n }, []);\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n useEffect(function () {\n if (!observed.current && typeof Container !== 'string') {\n console.error('FocusLock: could not obtain ref to internal node');\n }\n }, []);\n }\n var lockProps = _extends((_extends2 = {}, _extends2[FOCUS_DISABLED] = disabled && 'disabled', _extends2[FOCUS_GROUP] = group, _extends2), containerProps);\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n var mergedRef = useMergeRefs([parentRef, setObserveNode]);\n var focusScopeValue = useMemo(function () {\n return {\n observed: observed,\n shards: shards,\n enabled: !disabled,\n active: isActive.current\n };\n }, [disabled, isActive.current, shards, realObserved]);\n return /*#__PURE__*/React.createElement(Fragment, null, hasLeadingGuards && [\n /*#__PURE__*/\n React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }), hasPositiveIndices ? /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n }) : null], !disabled && /*#__PURE__*/React.createElement(SideCar, {\n id: id,\n sideCar: mediumSidecar,\n observed: realObserved,\n disabled: disabled,\n persistentFocus: persistentFocus,\n crossFrame: crossFrame,\n autoFocus: autoFocus,\n whiteList: whiteList,\n shards: shards,\n onActivation: onActivation,\n onDeactivation: onDeactivation,\n returnFocus: returnFocus,\n focusOptions: focusOptions,\n noFocusGuards: noFocusGuards\n }), /*#__PURE__*/React.createElement(Container, _extends({\n ref: mergedRef\n }, lockProps, {\n className: className,\n onBlur: onBlur,\n onFocus: onFocus\n }), /*#__PURE__*/React.createElement(focusScope.Provider, {\n value: focusScopeValue\n }, children)), hasTailingGuards && /*#__PURE__*/React.createElement(\"div\", {\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }));\n});\nFocusLock.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: node,\n disabled: bool,\n returnFocus: oneOfType([bool, object, func]),\n focusOptions: object,\n noFocusGuards: bool,\n hasPositiveIndices: bool,\n allowTextSelection: bool,\n autoFocus: bool,\n persistentFocus: bool,\n crossFrame: bool,\n group: string,\n className: string,\n whiteList: func,\n shards: arrayOf(any),\n as: oneOfType([string, func, object]),\n lockProps: object,\n onActivation: func,\n onDeactivation: func,\n sideCar: any.isRequired\n} : {};\nexport default FocusLock;","function _setPrototypeOf(t, e) {\n return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {\n return t.__proto__ = e, t;\n }, _setPrototypeOf(t, e);\n}\nexport { _setPrototypeOf as default };","import setPrototypeOf from \"./setPrototypeOf.js\";\nfunction _inheritsLoose(t, o) {\n t.prototype = Object.create(o.prototype), t.prototype.constructor = t, setPrototypeOf(t, o);\n}\nexport { _inheritsLoose as default };","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}\nexport { _typeof as default };","import _typeof from \"./typeof.js\";\nfunction toPrimitive(t, r) {\n if (\"object\" != _typeof(t) || !t) return t;\n var e = t[Symbol.toPrimitive];\n if (void 0 !== e) {\n var i = e.call(t, r || \"default\");\n if (\"object\" != _typeof(i)) return i;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (\"string\" === r ? String : Number)(t);\n}\nexport { toPrimitive as default };","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nfunction toPropertyKey(t) {\n var i = toPrimitive(t, \"string\");\n return \"symbol\" == _typeof(i) ? i : i + \"\";\n}\nexport { toPropertyKey as default };","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperty(e, r, t) {\n return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {\n value: t,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }) : e[r] = t, e;\n}\nexport { _defineProperty as default };","import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { PureComponent } from 'react';\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n handleStateChangeOnClient(state);\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n SideEffect.peek = function peek() {\n return state;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n return SideEffect;\n };\n}\n\nexport default withSideEffect;\n","/*\nIE11 support\n */\nexport var toArray = function (a) {\n var ret = Array(a.length);\n for (var i = 0; i < a.length; ++i) {\n ret[i] = a[i];\n }\n return ret;\n};\nexport var asArray = function (a) { return (Array.isArray(a) ? a : [a]); };\nexport var getFirst = function (a) { return (Array.isArray(a) ? a[0] : a); };\n","import { FOCUS_NO_AUTOFOCUS } from '../constants';\nvar isElementHidden = function (node) {\n // we can measure only \"elements\"\n // consider others as \"visible\"\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return false;\n }\n var computedStyle = window.getComputedStyle(node, null);\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return (computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden');\n};\nvar getParentNode = function (node) {\n // DOCUMENT_FRAGMENT_NODE can also point on ShadowRoot. In this case .host will point on the next node\n return node.parentNode && node.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE\n ? // eslint-disable-next-line @typescript-eslint/no-explicit-any\n node.parentNode.host\n : node.parentNode;\n};\nvar isTopNode = function (node) {\n // @ts-ignore\n return node === document || (node && node.nodeType === Node.DOCUMENT_NODE);\n};\nvar isInert = function (node) { return node.hasAttribute('inert'); };\n/**\n * @see https://github.com/testing-library/jest-dom/blob/main/src/to-be-visible.js\n */\nvar isVisibleUncached = function (node, checkParent) {\n return !node || isTopNode(node) || (!isElementHidden(node) && !isInert(node) && checkParent(getParentNode(node)));\n};\nexport var isVisibleCached = function (visibilityCache, node) {\n var cached = visibilityCache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isVisibleUncached(node, isVisibleCached.bind(undefined, visibilityCache));\n visibilityCache.set(node, result);\n return result;\n};\nvar isAutoFocusAllowedUncached = function (node, checkParent) {\n return node && !isTopNode(node) ? (isAutoFocusAllowed(node) ? checkParent(getParentNode(node)) : false) : true;\n};\nexport var isAutoFocusAllowedCached = function (cache, node) {\n var cached = cache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isAutoFocusAllowedUncached(node, isAutoFocusAllowedCached.bind(undefined, cache));\n cache.set(node, result);\n return result;\n};\nexport var getDataset = function (node) {\n // @ts-ignore\n return node.dataset;\n};\nexport var isHTMLButtonElement = function (node) { return node.tagName === 'BUTTON'; };\nexport var isHTMLInputElement = function (node) { return node.tagName === 'INPUT'; };\nexport var isRadioElement = function (node) {\n return isHTMLInputElement(node) && node.type === 'radio';\n};\nexport var notHiddenInput = function (node) {\n return !((isHTMLInputElement(node) || isHTMLButtonElement(node)) && (node.type === 'hidden' || node.disabled));\n};\nexport var isAutoFocusAllowed = function (node) {\n var attribute = node.getAttribute(FOCUS_NO_AUTOFOCUS);\n return ![true, 'true', ''].includes(attribute);\n};\nexport var isGuard = function (node) { var _a; return Boolean(node && ((_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.focusGuard)); };\nexport var isNotAGuard = function (node) { return !isGuard(node); };\nexport var isDefined = function (x) { return Boolean(x); };\n","import { toArray } from './array';\nexport var tabSort = function (a, b) {\n var aTab = Math.max(0, a.tabIndex);\n var bTab = Math.max(0, b.tabIndex);\n var tabDiff = aTab - bTab;\n var indexDiff = a.index - b.index;\n if (tabDiff) {\n if (!aTab) {\n return 1;\n }\n if (!bTab) {\n return -1;\n }\n }\n return tabDiff || indexDiff;\n};\nvar getTabIndex = function (node) {\n if (node.tabIndex < 0) {\n // all \"focusable\" elements are already preselected\n // but some might have implicit negative tabIndex\n // return 0 for <audio without tabIndex attribute - it is \"tabbable\"\n if (!node.hasAttribute('tabindex')) {\n return 0;\n }\n }\n return node.tabIndex;\n};\nexport var orderByTabIndex = function (nodes, filterNegative, keepGuards) {\n return toArray(nodes)\n .map(function (node, index) {\n var tabIndex = getTabIndex(node);\n return {\n node: node,\n index: index,\n tabIndex: keepGuards && tabIndex === -1 ? ((node.dataset || {}).focusGuard ? 0 : -1) : tabIndex,\n };\n })\n .filter(function (data) { return !filterNegative || data.tabIndex >= 0; })\n .sort(tabSort);\n};\n","/**\n * list of the object to be considered as focusable\n */\nexport var tabbables = [\n 'button:enabled',\n 'select:enabled',\n 'textarea:enabled',\n 'input:enabled',\n // elements with explicit roles will also use explicit tabindex\n // '[role=\"button\"]',\n 'a[href]',\n 'area[href]',\n 'summary',\n 'iframe',\n 'object',\n 'embed',\n 'audio[controls]',\n 'video[controls]',\n '[tabindex]',\n '[contenteditable]',\n '[autofocus]',\n];\n","import { FOCUS_AUTO } from '../constants';\nimport { toArray } from './array';\nimport { tabbables } from './tabbables';\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = \"\".concat(queryTabbables, \", [data-focus-guard]\");\nvar getFocusablesWithShadowDom = function (parent, withGuards) {\n return toArray((parent.shadowRoot || parent).children).reduce(function (acc, child) {\n return acc.concat(child.matches(withGuards ? queryGuardTabbables : queryTabbables) ? [child] : [], getFocusablesWithShadowDom(child));\n }, []);\n};\nvar getFocusablesWithIFrame = function (parent, withGuards) {\n var _a;\n // contentDocument of iframe will be null if current origin cannot access it\n if (parent instanceof HTMLIFrameElement && ((_a = parent.contentDocument) === null || _a === void 0 ? void 0 : _a.body)) {\n return getFocusables([parent.contentDocument.body], withGuards);\n }\n return [parent];\n};\nexport var getFocusables = function (parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n var _a;\n var focusableWithShadowDom = getFocusablesWithShadowDom(parent, withGuards);\n var focusableWithIframes = (_a = []).concat.apply(_a, focusableWithShadowDom.map(function (node) { return getFocusablesWithIFrame(node, withGuards); }));\n return acc.concat(\n // add all tabbables inside and within shadow DOMs in DOM order\n focusableWithIframes, \n // add if node is tabbable itself\n parent.parentNode\n ? toArray(parent.parentNode.querySelectorAll(queryTabbables)).filter(function (node) { return node === parent; })\n : []);\n }, []);\n};\n/**\n * return a list of focusable nodes within an area marked as \"auto-focusable\"\n * @param parent\n */\nexport var getParentAutofocusables = function (parent) {\n var parentFocus = parent.querySelectorAll(\"[\".concat(FOCUS_AUTO, \"]\"));\n return toArray(parentFocus)\n .map(function (node) { return getFocusables([node]); })\n .reduce(function (acc, nodes) { return acc.concat(nodes); }, []);\n};\n","import { toArray } from './array';\nimport { isAutoFocusAllowedCached, isVisibleCached, notHiddenInput } from './is';\nimport { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\n/**\n * given list of focusable elements keeps the ones user can interact with\n * @param nodes\n * @param visibilityCache\n */\nexport var filterFocusable = function (nodes, visibilityCache) {\n return toArray(nodes)\n .filter(function (node) { return isVisibleCached(visibilityCache, node); })\n .filter(function (node) { return notHiddenInput(node); });\n};\nexport var filterAutoFocusable = function (nodes, cache) {\n if (cache === void 0) { cache = new Map(); }\n return toArray(nodes).filter(function (node) { return isAutoFocusAllowedCached(cache, node); });\n};\n/**\n * !__WARNING__! Low level API.\n * @returns all tabbable nodes\n *\n * @see {@link getFocusableNodes} to get any focusable element\n *\n * @param topNodes - array of top level HTMLElements to search inside\n * @param visibilityCache - an cache to store intermediate measurements. Expected to be a fresh `new Map` on every call\n */\nexport var getTabbableNodes = function (topNodes, visibilityCache, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards), visibilityCache), true, withGuards);\n};\n/**\n * !__WARNING__! Low level API.\n *\n * @returns anything \"focusable\", not only tabbable. The difference is in `tabIndex=-1`\n * (without guards, as long as they are not expected to be ever focused)\n *\n * @see {@link getTabbableNodes} to get only tabble nodes element\n *\n * @param topNodes - array of top level HTMLElements to search inside\n * @param visibilityCache - an cache to store intermediate measurements. Expected to be a fresh `new Map` on every call\n */\nexport var getFocusableNodes = function (topNodes, visibilityCache) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes), visibilityCache), false);\n};\n/**\n * return list of nodes which are expected to be auto-focused\n * @param topNode\n * @param visibilityCache\n */\nexport var parentAutofocusables = function (topNode, visibilityCache) {\n return filterFocusable(getParentAutofocusables(topNode), visibilityCache);\n};\n/*\n * Determines if element is contained in scope, including nested shadow DOMs\n */\nexport var contains = function (scope, element) {\n if (scope.shadowRoot) {\n return contains(scope.shadowRoot, element);\n }\n else {\n if (Object.getPrototypeOf(scope).contains !== undefined &&\n Object.getPrototypeOf(scope).contains.call(scope, element)) {\n return true;\n }\n return toArray(scope.children).some(function (child) {\n var _a;\n if (child instanceof HTMLIFrameElement) {\n var iframeBody = (_a = child.contentDocument) === null || _a === void 0 ? void 0 : _a.body;\n if (iframeBody) {\n return contains(iframeBody, element);\n }\n return false;\n }\n return contains(child, element);\n });\n }\n};\n","import { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\n/**\n * in case of multiple nodes nested inside each other\n * keeps only top ones\n * this is O(nlogn)\n * @param nodes\n * @returns {*}\n */\nvar filterNested = function (nodes) {\n var contained = new Set();\n var l = nodes.length;\n for (var i = 0; i < l; i += 1) {\n for (var j = i + 1; j < l; j += 1) {\n var position = nodes[i].compareDocumentPosition(nodes[j]);\n /* eslint-disable no-bitwise */\n if ((position & Node.DOCUMENT_POSITION_CONTAINED_BY) > 0) {\n contained.add(j);\n }\n if ((position & Node.DOCUMENT_POSITION_CONTAINS) > 0) {\n contained.add(i);\n }\n /* eslint-enable */\n }\n }\n return nodes.filter(function (_, index) { return !contained.has(index); });\n};\n/**\n * finds top most parent for a node\n * @param node\n * @returns {*}\n */\nvar getTopParent = function (node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\n/**\n * returns all \"focus containers\" inside a given node\n * @param node - node or nodes to look inside\n * @returns Element[]\n */\nexport var getAllAffectedNodes = function (node) {\n var nodes = asArray(node);\n return nodes.filter(Boolean).reduce(function (acc, currentNode) {\n var group = currentNode.getAttribute(FOCUS_GROUP);\n acc.push.apply(acc, (group\n ? filterNested(toArray(getTopParent(currentNode).querySelectorAll(\"[\".concat(FOCUS_GROUP, \"=\\\"\").concat(group, \"\\\"]:not([\").concat(FOCUS_DISABLED, \"=\\\"disabled\\\"])\"))))\n : [currentNode]));\n return acc;\n }, []);\n};\n","export var safeProbe = function (cb) {\n try {\n return cb();\n }\n catch (e) {\n return undefined;\n }\n};\n","/**\n * returns active element from document or from nested shadowdoms\n */\nimport { safeProbe } from './safe';\n/**\n * returns current active element. If the active element is a \"container\" itself(shadowRoot or iframe) returns active element inside it\n * @param [inDocument]\n */\nexport var getActiveElement = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n if (!inDocument || !inDocument.activeElement) {\n return undefined;\n }\n var activeElement = inDocument.activeElement;\n return (activeElement.shadowRoot\n ? getActiveElement(activeElement.shadowRoot)\n : activeElement instanceof HTMLIFrameElement && safeProbe(function () { return activeElement.contentWindow.document; })\n ? getActiveElement(activeElement.contentWindow.document)\n : activeElement);\n};\n","import { contains } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { getFirst, toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\nvar focusInFrame = function (frame, activeElement) { return frame === activeElement; };\nvar focusInsideIframe = function (topNode, activeElement) {\n return Boolean(toArray(topNode.querySelectorAll('iframe')).some(function (node) { return focusInFrame(node, activeElement); }));\n};\n/**\n * @returns {Boolean} true, if the current focus is inside given node or nodes.\n * Supports nodes hidden inside shadowDom\n */\nexport var focusInside = function (topNode, activeElement) {\n // const activeElement = document && getActiveElement();\n if (activeElement === void 0) { activeElement = getActiveElement(getFirst(topNode).ownerDocument); }\n if (!activeElement || (activeElement.dataset && activeElement.dataset.focusGuard)) {\n return false;\n }\n return getAllAffectedNodes(topNode).some(function (node) {\n return contains(node, activeElement) || focusInsideIframe(node, activeElement);\n });\n};\n","import { FOCUS_ALLOW } from './constants';\nimport { contains } from './utils/DOMutils';\nimport { toArray } from './utils/array';\nimport { getActiveElement } from './utils/getActiveElement';\n/**\n * checks if focus is hidden FROM the focus-lock\n * ie contained inside a node focus-lock shall ignore\n *\n * This is a utility function coupled with {@link FOCUS_ALLOW} constant\n *\n * @returns {boolean} focus is currently is in \"allow\" area\n */\nexport var focusIsHidden = function (inDocument) {\n if (inDocument === void 0) { inDocument = document; }\n var activeElement = getActiveElement(inDocument);\n if (!activeElement) {\n return false;\n }\n // this does not support setting FOCUS_ALLOW within shadow dom\n return toArray(inDocument.querySelectorAll(\"[\".concat(FOCUS_ALLOW, \"]\"))).some(function (node) { return contains(node, activeElement); });\n};\n","import { isRadioElement } from './is';\nvar findSelectedRadio = function (node, nodes) {\n return nodes\n .filter(isRadioElement)\n .filter(function (el) { return el.name === node.name; })\n .filter(function (el) { return el.checked; })[0] || node;\n};\nexport var correctNode = function (node, nodes) {\n if (isRadioElement(node) && node.name) {\n return findSelectedRadio(node, nodes);\n }\n return node;\n};\n/**\n * giving a set of radio inputs keeps only selected (tabbable) ones\n * @param nodes\n */\nexport var correctNodes = function (nodes) {\n // IE11 has no Set(array) constructor\n var resultSet = new Set();\n nodes.forEach(function (node) { return resultSet.add(correctNode(node, nodes)); });\n // using filter to support IE11\n return nodes.filter(function (node) { return resultSet.has(node); });\n};\n","import { correctNode } from './correctFocus';\nexport var pickFirstFocus = function (nodes) {\n if (nodes[0] && nodes.length > 1) {\n return correctNode(nodes[0], nodes);\n }\n return nodes[0];\n};\nexport var pickFocusable = function (nodes, node) {\n return nodes.indexOf(correctNode(node, nodes));\n};\n","import { correctNodes } from './utils/correctFocus';\nimport { pickFocusable } from './utils/firstFocus';\nimport { isGuard } from './utils/is';\nexport var NEW_FOCUS = 'NEW_FOCUS';\n/**\n * Main solver for the \"find next focus\" question\n * @param innerNodes - used to control \"return focus\"\n * @param innerTabbables - used to control \"autofocus\"\n * @param outerNodes\n * @param activeElement\n * @param lastNode\n * @returns {number|string|undefined|*}\n */\nexport var newFocus = function (innerNodes, innerTabbables, outerNodes, activeElement, lastNode) {\n var cnt = innerNodes.length;\n var firstFocus = innerNodes[0];\n var lastFocus = innerNodes[cnt - 1];\n var isOnGuard = isGuard(activeElement);\n // focus is inside\n if (activeElement && innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n var activeIndex = activeElement !== undefined ? outerNodes.indexOf(activeElement) : -1;\n var lastIndex = lastNode ? outerNodes.indexOf(lastNode) : activeIndex;\n var lastNodeInside = lastNode ? innerNodes.indexOf(lastNode) : -1;\n // no active focus (or focus is on the body)\n if (activeIndex === -1) {\n // known fallback\n if (lastNodeInside !== -1) {\n return lastNodeInside;\n }\n return NEW_FOCUS;\n }\n // new focus, nothing to calculate\n if (lastNodeInside === -1) {\n return NEW_FOCUS;\n }\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n var correctedNodes = correctNodes(outerNodes);\n var currentFocusableIndex = activeElement !== undefined ? correctedNodes.indexOf(activeElement) : -1;\n var previousFocusableIndex = lastNode ? correctedNodes.indexOf(lastNode) : currentFocusableIndex;\n var tabbableNodes = correctedNodes.filter(function (node) { return node.tabIndex >= 0; });\n var currentTabbableIndex = activeElement !== undefined ? tabbableNodes.indexOf(activeElement) : -1;\n var previousTabbableIndex = lastNode ? tabbableNodes.indexOf(lastNode) : currentTabbableIndex;\n var focusIndexDiff = currentTabbableIndex >= 0 && previousTabbableIndex >= 0\n ? // old/new are tabbables, measure distance in tabbable space\n previousTabbableIndex - currentTabbableIndex\n : // or else measure in focusable space\n previousFocusableIndex - currentFocusableIndex;\n // old focus\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n // no tabbable elements, autofocus is not possible\n if (innerTabbables.length === 0) {\n // an edge case with no tabbable elements\n // return the last focusable one\n // with some probability this will prevent focus from cycling across the lock, but there is no tabbale elements to cycle to\n return lastNodeInside;\n }\n var returnFirstNode = pickFocusable(innerNodes, innerTabbables[0]);\n var returnLastNode = pickFocusable(innerNodes, innerTabbables[innerTabbables.length - 1]);\n // first element\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n // last element\n if (activeIndex >= lastNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n // jump out, but not on the guard\n if (indexDiff && Math.abs(focusIndexDiff) > 1) {\n return lastNodeInside;\n }\n // focus above lock\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n // focus below lock\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n // index is inside tab order, but outside Lock\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n // do nothing\n return undefined;\n};\n","import { filterAutoFocusable } from './DOMutils';\nimport { pickFirstFocus } from './firstFocus';\nimport { getDataset } from './is';\nvar findAutoFocused = function (autoFocusables) {\n return function (node) {\n var _a;\n var autofocus = (_a = getDataset(node)) === null || _a === void 0 ? void 0 : _a.autofocus;\n return (\n // @ts-expect-error\n node.autofocus ||\n //\n (autofocus !== undefined && autofocus !== 'false') ||\n //\n autoFocusables.indexOf(node) >= 0);\n };\n};\nexport var pickAutofocus = function (nodesIndexes, orderedNodes, groups) {\n var nodes = nodesIndexes.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var autoFocusable = filterAutoFocusable(nodes.filter(findAutoFocused(groups)));\n if (autoFocusable && autoFocusable.length) {\n return pickFirstFocus(autoFocusable);\n }\n return pickFirstFocus(filterAutoFocusable(orderedNodes));\n};\n","import { parentAutofocusables } from './DOMutils';\nimport { contains } from './DOMutils';\nimport { asArray } from './array';\nvar getParents = function (node, parents) {\n if (parents === void 0) { parents = []; }\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode.host || node.parentNode, parents);\n }\n return parents;\n};\n/**\n * finds a parent for both nodeA and nodeB\n * @param nodeA\n * @param nodeB\n * @returns {boolean|*}\n */\nexport var getCommonParent = function (nodeA, nodeB) {\n var parentsA = getParents(nodeA);\n var parentsB = getParents(nodeB);\n // tslint:disable-next-line:prefer-for-of\n for (var i = 0; i < parentsA.length; i += 1) {\n var currentParent = parentsA[i];\n if (parentsB.indexOf(currentParent) >= 0) {\n return currentParent;\n }\n }\n return false;\n};\nexport var getTopCommonParent = function (baseActiveElement, leftEntry, rightEntries) {\n var activeElements = asArray(baseActiveElement);\n var leftEntries = asArray(leftEntry);\n var activeElement = activeElements[0];\n var topCommon = false;\n leftEntries.filter(Boolean).forEach(function (entry) {\n topCommon = getCommonParent(topCommon || entry, entry) || topCommon;\n rightEntries.filter(Boolean).forEach(function (subEntry) {\n var common = getCommonParent(activeElement, subEntry);\n if (common) {\n if (!topCommon || contains(common, topCommon)) {\n topCommon = common;\n }\n else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n // TODO: add assert here?\n return topCommon;\n};\n/**\n * return list of nodes which are expected to be autofocused inside a given top nodes\n * @param entries\n * @param visibilityCache\n */\nexport var allParentAutofocusables = function (entries, visibilityCache) {\n return entries.reduce(function (acc, node) { return acc.concat(parentAutofocusables(node, visibilityCache)); }, []);\n};\n","import { NEW_FOCUS, newFocus } from './solver';\nimport { getFocusableNodes } from './utils/DOMutils';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { asArray, getFirst } from './utils/array';\nimport { pickAutofocus } from './utils/auto-focus';\nimport { getActiveElement } from './utils/getActiveElement';\nimport { isDefined, isNotAGuard } from './utils/is';\nimport { allParentAutofocusables, getTopCommonParent } from './utils/parenting';\nvar reorderNodes = function (srcNodes, dstNodes) {\n var remap = new Map();\n // no Set(dstNodes) for IE11 :(\n dstNodes.forEach(function (entity) { return remap.set(entity.node, entity); });\n // remap to dstNodes\n return srcNodes.map(function (node) { return remap.get(node); }).filter(isDefined);\n};\n/**\n * contains the main logic of the `focus-lock` package.\n *\n * ! you probably dont need this function !\n *\n * given top node(s) and the last active element returns the element to be focused next\n * @returns element which should be focused to move focus inside\n * @param topNode\n * @param lastNode\n */\nexport var focusSolver = function (topNode, lastNode) {\n var activeElement = getActiveElement(asArray(topNode).length > 0 ? document : getFirst(topNode).ownerDocument);\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n var visibilityCache = new Map();\n var anyFocusable = getFocusableNodes(entries, visibilityCache);\n var innerElements = anyFocusable.filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n });\n if (!innerElements[0]) {\n return undefined;\n }\n var outerNodes = getFocusableNodes([commonParent], visibilityCache).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n // collect inner focusable and separately tabbables\n var innerFocusables = orderedInnerElements.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var innerTabbable = orderedInnerElements.filter(function (_a) {\n var tabIndex = _a.tabIndex;\n return tabIndex >= 0;\n }).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var newId = newFocus(innerFocusables, innerTabbable, outerNodes, activeElement, lastNode);\n if (newId === NEW_FOCUS) {\n var focusNode = \n // first try only tabbable, and the fallback to all focusable, as long as at least one element should be picked for focus\n pickAutofocus(anyFocusable, innerTabbable, allParentAutofocusables(entries, visibilityCache)) ||\n pickAutofocus(anyFocusable, innerFocusables, allParentAutofocusables(entries, visibilityCache));\n if (focusNode) {\n return { node: focusNode };\n }\n else {\n console.warn('focus-lock: cannot find any node to move focus into');\n return undefined;\n }\n }\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { isGuard, isNotAGuard } from './utils/is';\nimport { getTopCommonParent } from './utils/parenting';\nimport { orderByTabIndex } from './utils/tabOrder';\nimport { getFocusables } from './utils/tabUtils';\n/**\n * traverses all related nodes (including groups) returning a list of all nodes(outer and internal) with meta information\n * This is low-level API!\n * @returns list of focusable elements inside a given top(!) node.\n * @see {@link getFocusableNodes} providing a simpler API\n */\nexport var expandFocusableNodes = function (topNode) {\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var outerNodes = orderByTabIndex(getFocusables([commonParent], true), true, true);\n var innerElements = getFocusables(entries, false);\n return outerNodes.map(function (_a) {\n var node = _a.node, index = _a.index;\n return ({\n node: node,\n index: index,\n lockItem: innerElements.indexOf(node) >= 0,\n guard: isGuard(node),\n });\n });\n};\n","export var focusOn = function (target, focusOptions) {\n if (!target) {\n // not clear how, but is possible https://github.com/theKashey/focus-lock/issues/53\n return;\n }\n if ('focus' in target) {\n target.focus(focusOptions);\n }\n if ('contentWindow' in target && target.contentWindow) {\n target.contentWindow.focus();\n }\n};\n","import { focusOn } from './commands';\nimport { focusSolver } from './focusSolver';\nvar guardCount = 0;\nvar lockDisabled = false;\n/**\n * The main functionality of the focus-lock package\n *\n * Contains focus at a given node.\n * The last focused element will help to determine which element(first or last) should be focused.\n * The found element will be focused.\n *\n * This is one time action (move), not a persistent focus-lock\n *\n * HTML markers (see {@link import('./constants').FOCUS_AUTO} constants) can control autofocus\n * @see {@link focusSolver} for the same functionality without autofocus\n */\nexport var moveFocusInside = function (topNode, lastNode, options) {\n if (options === void 0) { options = {}; }\n var focusable = focusSolver(topNode, lastNode);\n // global local side effect to countain recursive lock activation and resolve focus-fighting\n if (lockDisabled) {\n return;\n }\n if (focusable) {\n /** +FOCUS-FIGHTING prevention **/\n if (guardCount > 2) {\n // we have recursive entered back the lock activation\n console.error('FocusLock: focus-fighting detected. Only one focus management system could be active. ' +\n 'See https://github.com/theKashey/focus-lock/#focus-fighting');\n lockDisabled = true;\n setTimeout(function () {\n lockDisabled = false;\n }, 1);\n return;\n }\n guardCount++;\n focusOn(focusable.node, options.focusOptions);\n guardCount--;\n }\n};\n","import { getTabbableNodes } from './utils/DOMutils';\nfunction weakRef(value) {\n if (!value)\n return null;\n // #68 Safari 14.1 dont have it yet\n // FIXME: remove in 2025\n if (typeof WeakRef === 'undefined') {\n return function () { return value || null; };\n }\n var w = value ? new WeakRef(value) : null;\n return function () { return (w === null || w === void 0 ? void 0 : w.deref()) || null; };\n}\nexport var recordElementLocation = function (element) {\n if (!element) {\n return null;\n }\n var stack = [];\n var currentElement = element;\n while (currentElement && currentElement !== document.body) {\n stack.push({\n current: weakRef(currentElement),\n parent: weakRef(currentElement.parentElement),\n left: weakRef(currentElement.previousElementSibling),\n right: weakRef(currentElement.nextElementSibling),\n });\n currentElement = currentElement.parentElement;\n }\n return {\n element: weakRef(element),\n stack: stack,\n ownerDocument: element.ownerDocument,\n };\n};\nvar restoreFocusTo = function (location) {\n var _a, _b, _c, _d, _e;\n if (!location) {\n return undefined;\n }\n var stack = location.stack, ownerDocument = location.ownerDocument;\n var visibilityCache = new Map();\n for (var _i = 0, stack_1 = stack; _i < stack_1.length; _i++) {\n var line = stack_1[_i];\n var parent_1 = (_a = line.parent) === null || _a === void 0 ? void 0 : _a.call(line);\n // is it still here?\n if (parent_1 && ownerDocument.contains(parent_1)) {\n var left = (_b = line.left) === null || _b === void 0 ? void 0 : _b.call(line);\n var savedCurrent = line.current();\n var current = parent_1.contains(savedCurrent) ? savedCurrent : undefined;\n var right = (_c = line.right) === null || _c === void 0 ? void 0 : _c.call(line);\n var focusables = getTabbableNodes([parent_1], visibilityCache);\n var aim = \n // that is element itself\n (_e = (_d = current !== null && current !== void 0 ? current : \n // or something in it's place\n left === null || left === void 0 ? void 0 : left.nextElementSibling) !== null && _d !== void 0 ? _d : \n // or somebody to the right, still close enough\n right) !== null && _e !== void 0 ? _e : \n // or somebody to the left, something?\n left;\n while (aim) {\n for (var _f = 0, focusables_1 = focusables; _f < focusables_1.length; _f++) {\n var focusable = focusables_1[_f];\n if (aim === null || aim === void 0 ? void 0 : aim.contains(focusable.node)) {\n return focusable.node;\n }\n }\n aim = aim.nextElementSibling;\n }\n if (focusables.length) {\n // if parent contains a focusable - move there\n return focusables[0].node;\n }\n }\n }\n // nothing matched\n return undefined;\n};\n/**\n * Captures the current focused element to restore focus as close as possible in the future\n * Handles situations where the focused element is removed from the DOM or no longer focusable\n * moving focus to the closest focusable element\n * @param targetElement - element where focus should be restored\n * @returns a function returning a new element to focus\n */\nexport var captureFocusRestore = function (targetElement) {\n var location = recordElementLocation(targetElement);\n return function () {\n return restoreFocusTo(location);\n };\n};\n","import { focusOn } from './commands';\nimport { getTabbableNodes, contains, getFocusableNodes } from './utils/DOMutils';\nimport { asArray } from './utils/array';\n/**\n * for a given `element` in a given `scope` returns focusable siblings\n * @param element - base element\n * @param scope - common parent. Can be document, but better to narrow it down for performance reasons\n * @returns {prev,next} - references to a focusable element before and after\n * @returns undefined - if operation is not applicable\n */\nexport var getRelativeFocusable = function (element, scope, useTabbables) {\n if (!element || !scope) {\n console.error('no element or scope given');\n return {};\n }\n var shards = asArray(scope);\n if (shards.every(function (shard) { return !contains(shard, element); })) {\n console.error('Active element is not contained in the scope');\n return {};\n }\n var focusables = useTabbables\n ? getTabbableNodes(shards, new Map())\n : getFocusableNodes(shards, new Map());\n var current = focusables.findIndex(function (_a) {\n var node = _a.node;\n return node === element;\n });\n if (current === -1) {\n // an edge case, when anchor element is not found\n return undefined;\n }\n return {\n prev: focusables[current - 1],\n next: focusables[current + 1],\n first: focusables[0],\n last: focusables[focusables.length - 1],\n };\n};\nvar getBoundary = function (shards, useTabbables) {\n var set = useTabbables\n ? getTabbableNodes(asArray(shards), new Map())\n : getFocusableNodes(asArray(shards), new Map());\n return {\n first: set[0],\n last: set[set.length - 1],\n };\n};\nvar defaultOptions = function (options) {\n return Object.assign({\n scope: document.body,\n cycle: true,\n onlyTabbable: true,\n }, options);\n};\nvar moveFocus = function (fromElement, options, cb) {\n if (options === void 0) { options = {}; }\n var newOptions = defaultOptions(options);\n var solution = getRelativeFocusable(fromElement, newOptions.scope, newOptions.onlyTabbable);\n if (!solution) {\n return;\n }\n var target = cb(solution, newOptions.cycle);\n if (target) {\n focusOn(target.node, newOptions.focusOptions);\n }\n};\n/**\n * focuses next element in the tab-order\n * @param fromElement - common parent to scope active element search or tab cycle order\n * @param {FocusNextOptions} [options] - focus options\n */\nexport var focusNextElement = function (fromElement, options) {\n if (options === void 0) { options = {}; }\n moveFocus(fromElement, options, function (_a, cycle) {\n var next = _a.next, first = _a.first;\n return next || (cycle && first);\n });\n};\n/**\n * focuses prev element in the tab order\n * @param fromElement - common parent to scope active element search or tab cycle order\n * @param {FocusNextOptions} [options] - focus options\n */\nexport var focusPrevElement = function (fromElement, options) {\n if (options === void 0) { options = {}; }\n moveFocus(fromElement, options, function (_a, cycle) {\n var prev = _a.prev, last = _a.last;\n return prev || (cycle && last);\n });\n};\nvar pickBoundary = function (scope, options, what) {\n var _a;\n var boundary = getBoundary(scope, (_a = options.onlyTabbable) !== null && _a !== void 0 ? _a : true);\n var node = boundary[what];\n if (node) {\n focusOn(node.node, options.focusOptions);\n }\n};\n/**\n * focuses first element in the tab-order\n * @param {FocusNextOptions} options - focus options\n */\nexport var focusFirstElement = function (scope, options) {\n if (options === void 0) { options = {}; }\n pickBoundary(scope, options, 'first');\n};\n/**\n * focuses last element in the tab order\n * @param {FocusNextOptions} options - focus options\n */\nexport var focusLastElement = function (scope, options) {\n if (options === void 0) { options = {}; }\n pickBoundary(scope, options, 'last');\n};\n","export function deferAction(action) {\n setTimeout(action, 1);\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};\nexport var extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};","import React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport { moveFocusInside, focusInside, focusIsHidden, expandFocusableNodes, getFocusableNodes, focusNextElement, focusPrevElement, focusFirstElement, focusLastElement, captureFocusRestore } from 'focus-lock';\nimport { deferAction, extractRef } from './util';\nimport { mediumFocus, mediumBlur, mediumEffect } from './medium';\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar tryRestoreFocus = function tryRestoreFocus() {\n return null;\n};\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\nvar windowFocused = false;\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n do {\n var item = allNodes[i];\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n return;\n }\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\nvar focusWasOutside = function focusWasOutside(crossFrameOption) {\n if (crossFrameOption) {\n return Boolean(focusWasOutsideWindow);\n }\n return focusWasOutsideWindow === 'meanwhile';\n};\nvar checkInHost = function checkInHost(check, el, boundary) {\n return el && (el.host === check && (!el.activeElement || boundary.contains(el.activeElement)) || el.parentNode && checkInHost(check, el.parentNode, boundary));\n};\nvar withinHost = function withinHost(activeElement, workingArea) {\n return workingArea.some(function (area) {\n return checkInHost(activeElement, area, area);\n });\n};\nvar getNodeFocusables = function getNodeFocusables(nodes) {\n return getFocusableNodes(nodes, new Map());\n};\nvar isNotFocusable = function isNotFocusable(node) {\n return !getNodeFocusables([node.parentNode]).some(function (el) {\n return el.node === node;\n });\n};\nvar activateTrap = function activateTrap() {\n var result = false;\n if (lastActiveTrap) {\n var _lastActiveTrap = lastActiveTrap,\n observed = _lastActiveTrap.observed,\n persistentFocus = _lastActiveTrap.persistentFocus,\n autoFocus = _lastActiveTrap.autoFocus,\n shards = _lastActiveTrap.shards,\n crossFrame = _lastActiveTrap.crossFrame,\n focusOptions = _lastActiveTrap.focusOptions,\n noFocusGuards = _lastActiveTrap.noFocusGuards;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n if (focusOnBody() && lastActiveFocus && lastActiveFocus !== document.body) {\n if (!document.body.contains(lastActiveFocus) || isNotFocusable(lastActiveFocus)) {\n var newTarget = tryRestoreFocus();\n if (newTarget) {\n newTarget.focus();\n }\n }\n }\n var activeElement = document && document.activeElement;\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n var shouldForceRestoreFocus = function shouldForceRestoreFocus() {\n if (!focusWasOutside(crossFrame) || !noFocusGuards || !lastActiveFocus || windowFocused) {\n return false;\n }\n var nodes = getNodeFocusables(workingArea);\n var lastIndex = nodes.findIndex(function (_ref) {\n var node = _ref.node;\n return node === lastActiveFocus;\n });\n return lastIndex === 0 || lastIndex === nodes.length - 1;\n };\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || shouldForceRestoreFocus() || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !(focusInside(workingArea) || activeElement && withinHost(activeElement, workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n if (activeElement.blur) {\n activeElement.blur();\n }\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus, {\n focusOptions: focusOptions\n });\n lastPortaledElement = {};\n }\n }\n lastActiveFocus = document && document.activeElement;\n if (lastActiveFocus !== document.body) {\n tryRestoreFocus = captureFocusRestore(lastActiveFocus);\n }\n focusWasOutsideWindow = false;\n }\n }\n if (document && activeElement !== document.activeElement && document.querySelector('[data-focus-auto-guard]')) {\n var newActiveElement = document && document.activeElement;\n var allNodes = expandFocusableNodes(workingArea);\n var focusedIndex = allNodes.map(function (_ref2) {\n var node = _ref2.node;\n return node;\n }).indexOf(newActiveElement);\n if (focusedIndex > -1) {\n allNodes.filter(function (_ref3) {\n var guard = _ref3.guard,\n node = _ref3.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref4) {\n var node = _ref4.node;\n return node.removeAttribute('tabIndex');\n });\n autoGuard(focusedIndex, allNodes.length, +1, allNodes);\n autoGuard(focusedIndex, -1, -1, allNodes);\n }\n }\n }\n }\n return result;\n};\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n event.stopPropagation();\n event.preventDefault();\n }\n};\nvar onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\nvar onFocus = function onFocus(event) {\n var source = event.target;\n var currentNode = event.currentTarget;\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\nvar FocusTrap = function FocusTrap(_ref5) {\n var children = _ref5.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\nvar onWindowFocus = function onWindowFocus() {\n windowFocused = true;\n};\nvar onWindowBlur = function onWindowBlur() {\n windowFocused = false;\n focusWasOutsideWindow = 'just';\n deferAction(function () {\n focusWasOutsideWindow = 'meanwhile';\n });\n};\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('focus', onWindowFocus);\n window.addEventListener('blur', onWindowBlur);\n};\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('focus', onWindowFocus);\n window.removeEventListener('blur', onWindowBlur);\n};\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref6) {\n var disabled = _ref6.disabled;\n return !disabled;\n });\n}\nvar focusLockAPI = {\n moveFocusInside: moveFocusInside,\n focusInside: focusInside,\n focusNextElement: focusNextElement,\n focusPrevElement: focusPrevElement,\n focusFirstElement: focusFirstElement,\n focusLastElement: focusLastElement,\n captureFocusRestore: captureFocusRestore\n};\nfunction handleStateChangeOnClient(traps) {\n var trap = traps.slice(-1)[0];\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.id === lastTrap.id;\n lastActiveTrap = trap;\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation();\n if (!traps.filter(function (_ref7) {\n var id = _ref7.id;\n return id === lastTrap.id;\n }).length) {\n lastTrap.returnFocus(!trap);\n }\n }\n if (trap) {\n lastActiveFocus = null;\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation(focusLockAPI);\n }\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n}\nmediumFocus.assignSyncMedium(onFocus);\nmediumBlur.assignMedium(onBlur);\nmediumEffect.assignMedium(function (cb) {\n return cb(focusLockAPI);\n});\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React, { forwardRef } from 'react';\nimport FocusLockUI from './Lock';\nimport FocusTrap from './Trap';\nvar FocusLockCombination = /*#__PURE__*/forwardRef(function FocusLockUICombination(props, ref) {\n return /*#__PURE__*/React.createElement(FocusLockUI, _extends({\n sideCar: FocusTrap,\n ref: ref\n }, props));\n});\nvar _ref = FocusLockUI.propTypes || {},\n sideCar = _ref.sideCar,\n propTypes = _objectWithoutPropertiesLoose(_ref, [\"sideCar\"]);\nFocusLockCombination.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nexport default FocusLockCombination;","import React, { ReactNode, useRef } from 'react';\n\nimport {\n DatePickerStateOptions,\n useDatePickerState,\n} from '@react-stately/datepicker';\nimport { useDatePicker } from '@react-aria/datepicker';\nimport { I18nProvider } from '@react-aria/i18n';\nimport {\n useFloating,\n offset,\n flip,\n shift,\n autoUpdate,\n} from '@floating-ui/react-dom';\nimport FocusLock from 'react-focus-lock';\nimport classNames from 'classnames';\n\nimport { CalendarDate, DateValue } from '@internationalized/date';\n\nimport {\n ConditionalWrapper,\n useOnClickOutside,\n useOnEscape,\n useWindowDimensions,\n} from '@entur/utils';\nimport { space, zIndexes } from '@entur/tokens';\nimport { CalendarIcon } from '@entur/icons';\nimport { Modal } from '@entur/modal';\n\nimport {\n BaseDateFieldProps,\n DateField,\n ExtendedDateFieldProps,\n} from './DateField';\nimport { Calendar, CalendarProps } from './Calendar';\nimport { CalendarButton } from '../shared/CalendarButton';\nimport { handleOnChange, lastMillisecondOfDay } from '../shared/utils';\n\nimport './DatePicker.scss';\n\ntype BaseDatePickerProps = {\n /** Slå på visning av ukenummere i kalenderen. Overskriften for ukenummer-kolonnen\n * kan endres med prop-en 'weekNumberHeader'\n * @default false */\n showWeekNumbers?: boolean;\n /** Overskrift som vises for ukenummer-kolonnen. Vises kun hvis 'showWeekNumbers' er true.\n * @default '#' */\n weekNumberHeader?: string;\n /** Hvis true vil kalenderen alltid vises i en popover når den åpnes\n * @default false\n */\n disableModal?: boolean;\n /** Maxbredden til viewport-en for at modal skal vises\n * @default 1000\n */\n modalTreshold?: number;\n labelTooltip?: React.ReactNode;\n /** Skjermlesertest som forklarer navigasjon i kalenderen. Oversettes automatisk for engelsk locale, men ikke andre språk.\n * @default 'Bruk piltastene til å navigere mellom datoer'\n */\n navigationDescription?: string;\n /** Brukes for å legge til klassenavn på spesifikke datoer i kalenderen.\n * Tar inn en dato og skal returnere klassenavnet som skal legges til den datoen.\n * @default undefined\n * @example (date) => isWeekend(date, 'no-NO') ? 'weekend' : ''\n *\n * OBS: hvis stylingen er meningsbærende bør du bruke ariaLabelForDate i tillegg for å beskrive\n * meningen til skjermlesere o.l.\n */\n classNameForDate?: (date: CalendarDate) => string;\n /** Legger til teksten som returneres på datoen i kalenderen sin aria-label.\n * Bør brukes sammen med classNameForDate hvis styling-endringene gjort der er meningsbærende.\n * @default undefined\n * @example (date) => isWeekend(date, 'no-NO') ? 'helgedag' : ''\n */\n ariaLabelForDate?: (date: CalendarDate) => string;\n};\n\nexport type DatePickerProps<DateType extends DateValue> = Omit<\n BaseDateFieldProps<DateType>,\n | keyof BaseDatePickerProps\n | 'labelProps'\n | 'fieldProps'\n | 'groupProps'\n | 'dateFieldRef'\n> &\n BaseDatePickerProps &\n ExtendedDateFieldProps<DateType>;\n\nexport const DatePicker = <DateType extends DateValue>({\n selectedDate,\n locale,\n disabled,\n readOnly,\n showTime,\n showTimeZone = false,\n classNameForDate,\n className,\n variant,\n feedback,\n validationVariant,\n validationFeedback,\n showWeekNumbers,\n weekNumberHeader,\n disableModal = false,\n labelTooltip,\n navigationDescription,\n minDate,\n maxDate,\n modalTreshold = 1000,\n ariaLabelForDate,\n append,\n prepend,\n granularity = showTime ? 'minute' : 'day',\n ...rest\n}: DatePickerProps<DateType>) => {\n const CALENDAR_MODAL_MAX_SCREEN_WIDTH = modalTreshold;\n const datePickerRef = useRef<HTMLDivElement | null>(null);\n const calendarRef = useRef<HTMLDivElement | null>(null);\n\n const { width } = useWindowDimensions();\n\n const _props: DatePickerStateOptions<DateType> = {\n ...rest,\n onChange: value =>\n handleOnChange<DateType>({\n value,\n selectedDate,\n forcedReturnType: rest.forcedReturnType,\n onChange: rest.onChange,\n }),\n minValue: minDate,\n // this weird logic makes sure the entire day is included if no time is provided in maxDate\n maxValue:\n 'hour' in (maxDate ?? {})\n ? maxDate\n : maxDate !== undefined\n ? lastMillisecondOfDay(maxDate)\n : undefined,\n value: selectedDate,\n granularity,\n isDisabled: disabled || readOnly,\n };\n\n const state = useDatePickerState(_props);\n const {\n groupProps,\n labelProps,\n fieldProps,\n buttonProps,\n dialogProps,\n calendarProps,\n } = useDatePicker(_props, state, datePickerRef);\n\n // calculations for floating-UI popover position\n const { refs, floatingStyles, update } = useFloating({\n whileElementsMounted: (ref, float, update) =>\n autoUpdate(ref, float, update, { elementResize: false }),\n placement: 'bottom-start',\n middleware: [\n offset(space.extraSmall2),\n flip(),\n shift({ padding: space.extraSmall }),\n ],\n });\n\n useOnClickOutside([calendarRef], () => state.setOpen(false));\n\n useOnEscape(calendarRef, () => state.setOpen(false));\n\n const calendarSharedProps: CalendarProps<DateType> = {\n ...dialogProps,\n ...calendarProps,\n // We don't use handleOnChange here since it's handled internally by Calendar\n onChange: rest.onChange,\n forcedReturnType: rest.forcedReturnType,\n disabled,\n navigationDescription,\n onSelectedCellClick: () => state.setOpen(false),\n // onCellClick is a temporary fix solving an issue where the\n // calendar sometimes doesn't close on date selection\n onCellClick: () => state.setOpen(false),\n selectedDate,\n minDate,\n maxDate,\n calendarRef,\n classNameForDate,\n ariaLabelForDate,\n showWeekNumbers,\n weekNumberHeader,\n };\n\n const isModal =\n typeof width !== 'undefined' &&\n width <= CALENDAR_MODAL_MAX_SCREEN_WIDTH &&\n !disableModal;\n\n const popoverCalendar = (\n <div\n style={{ ...floatingStyles, zIndex: zIndexes.popover }}\n ref={refs.setFloating}\n >\n <FocusLock disabled={!state.isOpen || isModal} returnFocus>\n {state.isOpen && <Calendar {...calendarSharedProps} />}\n </FocusLock>\n </div>\n );\n\n const modalCalendar = (\n <Modal\n size=\"small\"\n title=\"\"\n open={state.isOpen}\n onDismiss={() => state.setOpen(false)}\n className=\"eds-datepicker__calendar-modal\"\n >\n <Calendar {...calendarSharedProps} />\n </Modal>\n );\n\n return (\n <ConditionalWrapper\n condition={locale !== undefined}\n wrapper={(child: ReactNode) => (\n <I18nProvider locale={locale}>{child}</I18nProvider>\n )}\n >\n <DateField\n {...(groupProps as any)}\n {...fieldProps}\n // We don't use handleOnChange here since it's handled internally by DateField\n {...rest}\n append={\n !disabled &&\n !readOnly && (\n <div style={{ display: 'flex', alignItems: 'center' }}>\n {append}\n <CalendarButton\n {...buttonProps}\n onPress={() => {\n state.setOpen(!state.isOpen);\n update();\n }}\n className=\"eds-datepicker__open-calendar-button\"\n >\n <CalendarIcon />\n </CalendarButton>\n </div>\n )\n }\n prepend={prepend}\n className={classNames('eds-datepicker', className, {\n 'eds-datepicker--disabled': disabled,\n })}\n disabled={disabled}\n readOnly={readOnly}\n feedback={feedback}\n labelProps={labelProps}\n labelTooltip={labelTooltip}\n maxDate={maxDate}\n minDate={minDate}\n dateFieldRef={node => {\n refs.setReference(node);\n datePickerRef.current = node;\n }}\n selectedDate={selectedDate}\n showTime={showTime}\n showTimeZone={showTimeZone}\n validationFeedback={validationFeedback}\n validationVariant={validationVariant}\n variant={variant}\n />\n {isModal ? modalCalendar : popoverCalendar}\n </ConditionalWrapper>\n );\n};\n","import React from 'react';\nimport {\n BaseFormControl,\n isFilled,\n useInputGroupContext,\n useVariant,\n} from '@entur/form';\nimport { DateIcon } from '@entur/icons';\nimport { useOnMount, useRandomId, VariantType } from '@entur/utils';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\nexport type NativeDatePickerProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label over NativeDatePicker */\n label: string;\n /** Varselmelding, som vil komme under NativeDatePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n /** Plasserer labelen statisk på toppen av inputfeltet\n * @default false\n */\n disableLabelAnimation?: boolean;\n /** Tekst eller ikon som kommer før inputfelter\n * @default <DateIcon />\n */\n prepend?: React.ReactNode;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const NativeDatePicker = React.forwardRef<\n HTMLInputElement,\n NativeDatePickerProps\n>(\n (\n {\n className,\n style,\n label,\n onChange,\n feedback,\n variant,\n disableLabelAnimation,\n prepend = <DateIcon inline />,\n ...rest\n },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const nativedatepickerId = useRandomId('eds-nativetimepicker');\n return (\n <BaseFormControl\n style={style}\n className={className}\n prepend={prepend}\n label={label}\n feedback={feedback}\n variant={variant}\n labelId={nativedatepickerId}\n disableLabelAnimation={disableLabelAnimation}\n isFilled\n >\n <NativeDatePickerBase\n onChange={onChange}\n aria-labelledby={nativedatepickerId}\n ref={ref}\n variant={variant}\n {...rest}\n />\n </BaseFormControl>\n );\n },\n);\n\ntype NativeDatePickerBaseProps = {\n onChange?: any;\n variant?: VariantType | typeof error | typeof info;\n} & React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n>;\n\nconst NativeDatePickerBase = React.forwardRef<\n HTMLInputElement,\n NativeDatePickerBaseProps\n>(({ onChange, variant, value, ...rest }, ref) => {\n const contextVariant = useVariant();\n const currentVariant = variant || contextVariant;\n const { isFilled: isDatepickerFilled, setFilled: setFiller } =\n useInputGroupContext();\n\n useOnMount(() => {\n setFiller && !isDatepickerFilled && setFiller(true);\n });\n\n React.useEffect(() => {\n if (value) {\n setFiller && !isDatepickerFilled && setFiller(true);\n } else {\n setFiller && isDatepickerFilled && setFiller(false);\n }\n }, [value, setFiller, isDatepickerFilled]);\n\n const handleChange = (event: any) => {\n if (isFilled(event.target)) {\n setFiller && !isDatepickerFilled && setFiller(true);\n } else {\n setFiller && isDatepickerFilled && setFiller(false);\n }\n if (onChange) {\n onChange(event);\n }\n };\n return (\n <input\n ref={ref}\n aria-invalid={currentVariant === 'error'}\n type=\"date\"\n className=\"eds-form-control eds-native-date-picker\"\n onChange={handleChange}\n value={value}\n {...rest}\n />\n );\n});\n","import React from 'react';\nimport classNames from 'classnames';\n\nimport { IconButton } from '@entur/button';\nimport { LeftArrowIcon, RightArrowIcon } from '@entur/icons';\n\ntype TimePickerArrowButtonProps = {\n direction: 'left' | 'right';\n disabled?: boolean;\n readonly?: boolean;\n 'aria-label': string;\n onClick?: () => void;\n onFocus?: () => void;\n};\n\nexport const TimePickerArrowButton = ({\n direction,\n onClick,\n disabled,\n readonly,\n 'aria-label': ariaLabel,\n ...rest\n}: TimePickerArrowButtonProps) => {\n return (\n <IconButton\n className={classNames(\n 'eds-timepicker__arrowbutton',\n `eds-timepicker__arrowbutton--${direction}`,\n { 'eds-timepicker__arrowbutton--disabled': disabled },\n )}\n type=\"button\"\n tabIndex={-1}\n onClick={onClick}\n aria-label={ariaLabel}\n disabled={disabled}\n {...rest}\n >\n {direction === 'left' ? <LeftArrowIcon /> : <RightArrowIcon />}\n </IconButton>\n );\n};\n","import React, { useRef } from 'react';\nimport classNames from 'classnames';\nimport { useTimeField } from '@react-aria/datepicker';\nimport { I18nProvider, useLocale } from '@react-aria/i18n';\nimport { useTimeFieldState } from '@react-stately/datepicker';\nimport { now } from '@internationalized/date';\n\nimport type {\n TimeValue,\n AriaTimeFieldProps,\n MappedTimeValue,\n} from '@react-types/datepicker';\n\nimport { VisuallyHidden } from '@entur/a11y';\nimport { BaseFormControl, BaseFormControlProps } from '@entur/form';\nimport { useRandomId, VariantType } from '@entur/utils';\n\nimport { FieldSegment } from '../shared/FieldSegment';\nimport { TimePickerArrowButton } from './TimePickerArrowButton';\nimport { convertValueToType, focusSegment, modulo } from '../shared/utils';\n\nimport './TimePicker.scss';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\ntype ExtendedTimePickerProps<TimeType extends TimeValue> = Omit<\n AriaTimeFieldProps<TimeType>,\n | keyof BaseTimePickerProps<TimeValue>\n | 'value'\n | 'hideTimeZone'\n | 'placeholder'\n | 'minValue'\n | 'maxValue'\n> &\n Omit<\n Partial<BaseFormControlProps>,\n | keyof BaseTimePickerProps<TimeType>\n | 'children'\n | 'defaultValue'\n | 'value'\n | 'isFilled'\n | 'size'\n >;\n\ntype BaseTimePickerProps<TimeType extends TimeValue> = {\n /** Den valgte tiden. Tid i '@internationalized/date'-pakkens format */\n selectedTime: TimeType | null;\n /** Kalles når tiden endres. Tid i '@internationalized/date'-pakkens format */\n onChange: (value: MappedTimeValue<TimeType> | null) => void;\n /** Label til TimePicker */\n label: string;\n /** Minutter som legges til eller trekkes fra ved klikk på pilene i TimePicker.\n * Rundes av til nærmeste hele 'minuteIncrement' som går opp i 60.\n *\n * OBS: Støtter kun verdier <= 60 og multiplum av 60.\n * @default 30\n */\n minuteIncrementForArrowButtons?: number;\n /** BCP47-språkkoden til locale-en du ønsker å bruke.\n * @default Brukerenhetens selvvalgte locale\n */\n locale?: string;\n /** Viser den gjeldende tidssonen hvis en er valgt\n * @default false\n */\n showTimeZone?: boolean;\n /** Viser sekunder i tillegg til minutter og timer\n * @default false\n */\n showSeconds?: boolean;\n /** Aria-label for venstrepil-knappen som trekker fra tid\n * @default `Trekk fra ${minuteIncrementForArrowButtons} minutter`\n */\n leftArrowButtonAriaLabel?: string;\n /** Aria-label for høyrepil-knappen som legger til tid\n * @default `Legg til ${minuteIncrementForArrowButtons} minutter`\n */\n rightArrowButtonAriaLabel?: string;\n /** Varselmelding, som vil komme under TimePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n labelTooltip?: React.ReactNode;\n disabled?: boolean;\n readOnly?: boolean;\n inputRef?: React.ForwardedRef<HTMLDivElement>;\n /** Tvinger typen på onChange til den gitte typen.\n * Dette er nyttig når utgangsverdien din er 'null', men du ønsker at\n * TimePicker alltid skal returnere f.eks Time.\n *\n * Som standard returnerer onChange TimeValue basert på selectedTime,\n * eller ZonedDateTime hvis selectedTime er 'null'.\n *\n * @default undefined\n */\n forcedReturnType?: 'Time' | 'CalendarDateTime' | 'ZonedDateTime';\n forcedTimeZone?: string;\n /** Ekstra klassenavn */\n className?: string;\n style?: React.CSSProperties;\n};\n\nexport type TimePickerProps<TimeType extends TimeValue> =\n BaseTimePickerProps<TimeType> & ExtendedTimePickerProps<TimeType>;\n\nexport const TimePicker = <TimeType extends TimeValue>({\n selectedTime,\n onChange,\n disabled,\n readOnly,\n className,\n style,\n label,\n labelTooltip,\n feedback,\n granularity,\n variant,\n locale: customLocale,\n showTimeZone,\n showSeconds = false,\n minuteIncrementForArrowButtons = 30,\n leftArrowButtonAriaLabel = `Trekk fra ${minuteIncrementForArrowButtons} minutter`,\n rightArrowButtonAriaLabel = `Legg til ${minuteIncrementForArrowButtons} minutter`,\n inputRef,\n forcedReturnType,\n forcedTimeZone,\n append,\n prepend,\n ...rest\n}: TimePickerProps<TimeType>) => {\n let { locale } = useLocale();\n if (customLocale) locale = customLocale;\n const timePickerId = useRandomId('eds-timepicker');\n\n const timeZone =\n forcedTimeZone ??\n (selectedTime !== null && 'timezone' in selectedTime\n ? (selectedTime.timezone as string)\n : 'Europe/Oslo');\n\n const handleOnChange = (value: MappedTimeValue<TimeType> | null) => {\n if (forcedReturnType !== undefined || !selectedTime) {\n return onChange(\n convertValueToType({\n value,\n type: forcedReturnType ?? 'ZonedDateTime',\n timezone: timeZone,\n }) as MappedTimeValue<TimeType> | null,\n );\n }\n\n onChange(value);\n };\n\n const state = useTimeFieldState({\n onChange: handleOnChange,\n label: label,\n locale,\n value: selectedTime,\n granularity: granularity ?? showSeconds ? 'second' : 'minute',\n hideTimeZone: !showTimeZone,\n isDisabled: disabled || readOnly,\n shouldForceLeadingZeros: true,\n ...rest,\n });\n const timeFieldRef = useRef<HTMLDivElement>(null);\n const { labelProps, fieldProps } = useTimeField<TimeType>(\n { ...rest, label: label },\n state,\n timeFieldRef,\n );\n const id = useRandomId('timepicker');\n\n const getCurrentTime = () => {\n const getCurrentTimeWithCorrectType = convertValueToType({\n value: now(timeZone),\n type: forcedReturnType ?? 'ZonedDateTime',\n }) as MappedTimeValue<TimeType>;\n return getCurrentTimeWithCorrectType;\n };\n\n const handleOnClickArrowButton = (operation: 'add' | 'subtract') => {\n if (selectedTime === null) return handleOnChange(getCurrentTime());\n switch (operation) {\n case 'add':\n return handleOnChange(\n selectedTime.add({\n minutes:\n minuteIncrementForArrowButtons -\n modulo(selectedTime.minute, minuteIncrementForArrowButtons),\n }) as MappedTimeValue<TimeType>,\n );\n case 'subtract':\n return handleOnChange(\n selectedTime.subtract({\n minutes:\n modulo(selectedTime.minute - 1, minuteIncrementForArrowButtons) +\n 1,\n }) as MappedTimeValue<TimeType>,\n );\n }\n };\n\n return (\n <I18nProvider locale={locale}>\n <BaseFormControl\n append={\n <div style={{ display: 'flex', alignItems: 'center' }}>\n {append}\n <TimePickerArrowButton\n direction=\"right\"\n disabled={disabled || readOnly}\n aria-label={rightArrowButtonAriaLabel}\n onClick={() => handleOnClickArrowButton('add')}\n onFocus={() => focusSegment(timeFieldRef, 'last')}\n />\n </div>\n }\n ariaAlertOnFeedback\n aria-describedby={timePickerId + 'description'}\n className={classNames('eds-timepicker', className, {\n 'eds-timepicker--disabled': disabled,\n 'eds-timepicker--has-tooltip': labelTooltip !== undefined,\n 'eds-timepicker--readonly': readOnly,\n })}\n disabled={disabled}\n readOnly={readOnly}\n disableLabelAnimation\n feedback={feedback}\n label={label}\n labelId={id}\n labelProps={{\n ...labelProps,\n 'aria-describedby': timePickerId + 'description',\n }}\n labelTooltip={labelTooltip}\n prepend={\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <TimePickerArrowButton\n direction=\"left\"\n disabled={disabled || readOnly}\n aria-label={leftArrowButtonAriaLabel}\n onClick={() => handleOnClickArrowButton('subtract')}\n onFocus={() => focusSegment(timeFieldRef, 'first')}\n />\n {prepend}\n </div>\n }\n ref={inputRef}\n style={style}\n variant={variant}\n >\n <span\n ref={timeFieldRef}\n {...fieldProps}\n style={{ display: 'contents' }}\n >\n {state.segments.map((segment, i) => (\n <FieldSegment\n segment={segment}\n state={state}\n key={i}\n aria-describedby={timePickerId + 'description'}\n />\n ))}\n </span>\n <VisuallyHidden id={timePickerId + 'description'}>\n {selectedTime !== null\n ? 'valgt tid: ' +\n selectedTime.hour.toString().padStart(2, '0') +\n ':' +\n selectedTime.minute.toString().padStart(2, '0') +\n (showSeconds\n ? ':' + selectedTime.second.toString().padStart(2, '0')\n : '')\n : ''}\n </VisuallyHidden>\n </BaseFormControl>\n </I18nProvider>\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport {\n BaseFormControl,\n isFilled,\n useInputGroupContext,\n useVariant,\n} from '@entur/form';\nimport { useOnMount, useRandomId, VariantType } from '@entur/utils';\n\nimport './NativeTimePicker.scss';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\nexport type NativeTimePickerProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label over NativeTimePicker */\n label: string;\n /** Varselmelding, som vil komme under NativeTimePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n /** Tekst eller ikon som kommer før inputfelter */\n prepend?: React.ReactNode;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const NativeTimePicker = React.forwardRef<\n HTMLInputElement,\n NativeTimePickerProps\n>(\n (\n { className, style, onChange, label, feedback, variant, prepend, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const nativetimepickerId = useRandomId('eds-native-timepicker');\n return (\n <BaseFormControl\n style={style}\n className={classNames(className, 'eds-native-timepicker')}\n prepend={prepend}\n label={label}\n feedback={feedback}\n variant={variant}\n labelId={nativetimepickerId}\n disableLabelAnimation\n >\n <NativeTimePickerBase\n onChange={onChange}\n aria-labelledby={nativetimepickerId}\n ref={ref}\n {...rest}\n />\n </BaseFormControl>\n );\n },\n);\n\ntype NativeTimePickerBaseProps = {\n variant?: VariantType | typeof error | typeof info;\n} & React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n>;\n\nconst NativeTimePickerBase = React.forwardRef<\n HTMLInputElement,\n NativeTimePickerBaseProps\n>(({ onChange, value, ...rest }, ref) => {\n const contextVariant = useVariant();\n const currentVariant = rest.variant || contextVariant;\n const { isFilled: isTimepickerFilled, setFilled: setFiller } =\n useInputGroupContext();\n\n useOnMount(() => {\n setFiller && !isTimepickerFilled && setFiller(true);\n });\n\n React.useEffect(() => {\n if (value) {\n setFiller && !isTimepickerFilled && setFiller(true);\n } else {\n setFiller && isTimepickerFilled && setFiller(false);\n }\n }, [value, setFiller, isTimepickerFilled]);\n\n const handleChange = (event: any) => {\n if (isFilled(event.target)) {\n setFiller && !isTimepickerFilled && setFiller(true);\n } else {\n setFiller && isTimepickerFilled && setFiller(false);\n }\n if (onChange) {\n onChange(event);\n }\n };\n return (\n <input\n ref={ref}\n aria-invalid={currentVariant === 'error'}\n type=\"time\"\n className=\"eds-form-control\"\n onChange={handleChange}\n value={value}\n {...rest}\n />\n );\n});\n","import React, { useEffect, useRef, useState } from 'react';\nimport { Time, parseTime, toTime } from '@internationalized/date';\nimport { useTimeField } from '@react-aria/datepicker';\nimport { I18nProvider, useLocale } from '@react-aria/i18n';\nimport { useTimeFieldState } from '@react-stately/datepicker';\nimport classNames from 'classnames';\n\nimport type {\n TimeValue,\n AriaTimeFieldProps,\n MappedTimeValue,\n} from '@react-types/datepicker';\n\nimport { BaseFormControlProps, TextField } from '@entur/form';\nimport { ClockIcon } from '@entur/icons';\nimport { mergeRefs, VariantType } from '@entur/utils';\n\nimport './SimpleTimePicker.scss';\n\nenum inputResult {\n RESET_TIME,\n INVALID,\n}\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\ntype ExtendedSimpleTimePickerProps<TimeType extends TimeValue> = Omit<\n AriaTimeFieldProps<TimeType>,\n | keyof BaseSimpleTimePickerProps<TimeType>\n | 'value'\n | 'hideTimeZone'\n | 'placeholder'\n | 'minValue'\n | 'maxValue'\n | 'locale'\n | 'isReadOnly'\n | 'isDisabled'\n | 'locale'\n> &\n Omit<\n Partial<BaseFormControlProps>,\n | keyof BaseSimpleTimePickerProps<TimeType>\n | 'children'\n | 'defaultValue'\n | 'value'\n | 'isFilled'\n | 'size'\n >;\n\ntype BaseSimpleTimePickerProps<TimeType extends TimeValue> = {\n /** Den valgte tiden. Tid i '@internationalized/date'-pakkens format */\n selectedTime: TimeType | null;\n /** Kalles når tiden endres. Tid i '@internationalized/date'-pakkens format */\n onChange?: (\n value: MappedTimeValue<TimeType> | null,\n ) => void | React.Dispatch<React.SetStateAction<TimeValue | null>>;\n /** Label til TimePicker */\n label: string;\n /** Viser sekund i tillegg til time og minutt\n * @default false\n */\n showSeconds?: boolean;\n /** Viser et klokkeikonet for å klarere indikere at dette\n * er en tidsvelger\n * @default false\n */\n showClockIcon?: boolean | 'right' | 'left';\n /** Velger hvor mye luft det skal være på sidene av klokkeslettet\n * @default 'default'\n */\n padding?: 'default' | 'large';\n /** Varselmelding, som vil komme under TimePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n /** Tekst eller ikon som vises foran skjema-elementet */\n prepend?: React.ReactNode;\n /** Tekst eller ikon som vises etter skjema-elementet */\n append?: React.ReactNode;\n labelTooltip?: React.ReactNode;\n disabled?: boolean;\n readOnly?: boolean;\n inputRef?: React.ForwardedRef<HTMLInputElement>;\n /** Ekstra klassenavn */\n className?: string;\n style?: React.CSSProperties;\n};\n\nexport type SimpleTimePickerProps<TimeType extends TimeValue> =\n BaseSimpleTimePickerProps<TimeType> & ExtendedSimpleTimePickerProps<TimeType>;\n\nexport const SimpleTimePicker = <TimeType extends TimeValue>({\n append,\n className,\n disabled,\n feedback,\n showClockIcon = 'right',\n inputRef,\n label,\n labelTooltip,\n onChange,\n padding = 'default',\n prepend,\n readOnly,\n selectedTime,\n showSeconds,\n style,\n variant,\n ...rest\n}: SimpleTimePickerProps<TimeType>) => {\n const [inputText, setInputText] = useState('');\n const timeFieldRef = useRef<HTMLInputElement>(null);\n const [lastValidSelectedTime, setLastValidSelectedTime] =\n useState<MappedTimeValue<TimeType> | null>(null);\n\n const { locale } = useLocale();\n\n const state = useTimeFieldState({\n onChange,\n label: label,\n locale,\n value: selectedTime,\n hideTimeZone: true,\n isDisabled: disabled,\n isReadOnly: readOnly,\n ...rest,\n });\n const { labelProps, fieldProps } = useTimeField<TimeType>(\n { ...rest, label: label },\n state,\n timeFieldRef,\n );\n\n useEffect(() => {\n updateInputWithSelectedTime();\n // @ts-expect-error TimeType and MappedTimeValue<TimeType> is actually the same\n if (selectedTime !== null) setLastValidSelectedTime(selectedTime);\n }, [selectedTime?.toString()]);\n\n const updateInputWithSelectedTime = () => {\n const selectedTimeString = getStringFromTimeValue(selectedTime);\n setInputText(selectedTimeString);\n\n const timeFieldIsFocused = document.activeElement === timeFieldRef?.current;\n if (selectedTimeString === '' && !timeFieldIsFocused)\n addPlaceholderToInput();\n };\n\n const getStringFromTimeValue = (timeValue: TimeValue | null) => {\n if (timeValue === null) return '';\n\n const timeObject = 'day' in timeValue ? toTime(timeValue) : timeValue;\n\n if (showSeconds) return timeObject.toString().slice(0, 8);\n\n return timeObject.toString().slice(0, 5);\n };\n\n const addPlaceholderToInput = () => {\n if (showSeconds) setInputText('–– : –– : ––');\n else setInputText('–– : ––');\n };\n\n const handleChangeTime = () => {\n const newTime = getValueForOnChangeFromInput();\n\n if (newTime === inputResult.INVALID) {\n return updateInputWithSelectedTime();\n }\n\n if (newTime?.toString() !== selectedTime?.toString()) onChange?.(newTime);\n };\n\n const getValueForOnChangeFromInput = () => {\n const formatedTimeString = formatTimeString(inputText);\n const newTimeObject = formatedTimeStringToTimeObject(formatedTimeString);\n\n if (newTimeObject === inputResult.INVALID) {\n return inputResult.INVALID;\n }\n if (newTimeObject === inputResult.RESET_TIME) {\n return null;\n }\n\n const updatedSelectedTime =\n getSelectedTimeWithTimeFromObject(newTimeObject);\n\n return updatedSelectedTime;\n };\n\n const formatTimeString = (timeString: string): string | inputResult => {\n if (timeString.length === 0) return inputResult.RESET_TIME;\n if (timeString.length < 3 || timeString.length > 8)\n return inputResult.INVALID;\n\n const numberOfColons = (timeString.match(new RegExp(':', 'g')) || [])\n .length;\n const stringLength = timeString.length;\n\n // targets 'd:dd:dd' and 'dd:dd:dd'\n if (numberOfColons === 2 && stringLength >= 7) {\n return timeString.padStart(8, '0');\n }\n\n // targets 'd:dd' and 'dd:dd'\n if (numberOfColons === 1) {\n return timeString.padStart(5, '0');\n }\n\n if (stringLength > 6) return inputResult.INVALID;\n\n const stringLengthIsEven = stringLength % 2 == 0;\n\n const hourString = stringLengthIsEven\n ? timeString.slice(0, 2)\n : timeString.slice(0, 1);\n const minuteString = stringLengthIsEven\n ? timeString.slice(2, 4)\n : timeString.slice(1, 3);\n const secondString = (() => {\n const stringSlice = stringLengthIsEven\n ? timeString.slice(4, 6)\n : timeString.slice(3, 5);\n if (stringSlice === '') return '00';\n return stringSlice;\n })();\n\n const timeStringWithColon =\n hourString.padStart(2, '0') +\n ':' +\n minuteString +\n (showSeconds ? ':' + secondString : '');\n\n return timeStringWithColon;\n };\n\n const formatedTimeStringToTimeObject = (\n formatedTimeString: string | inputResult,\n ): Time | inputResult => {\n if (formatedTimeString === inputResult.INVALID) return inputResult.INVALID;\n if (formatedTimeString === inputResult.RESET_TIME)\n return inputResult.RESET_TIME;\n\n const isNumberTest = /^\\d+$/;\n const hourString = formatedTimeString.slice(0, 2);\n const minuteString = formatedTimeString.slice(3, 5);\n const secondString = formatedTimeString.slice(6, 8);\n if (\n hourString.match(isNumberTest) &&\n minuteString.match(isNumberTest) &&\n (secondString === '' || secondString.match(isNumberTest))\n ) {\n try {\n const timeObject = parseTime(formatedTimeString);\n return timeObject;\n } catch (e) {\n return inputResult.INVALID;\n }\n }\n\n return inputResult.INVALID;\n };\n\n const getSelectedTimeWithTimeFromObject = (\n newTime: Time,\n ): MappedTimeValue<TimeType> => {\n const selectedTimeWithUpdateTime = (\n lastValidSelectedTime ?? new Time()\n ).set({\n hour: newTime.hour,\n minute: newTime.minute,\n second: newTime.second,\n }) as MappedTimeValue<TimeType>;\n\n return selectedTimeWithUpdateTime;\n };\n\n const {\n onBlur,\n onClick,\n onDragStart,\n onFocus,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onPointerDown,\n onPointerUp,\n ...usedFieldProps\n } = fieldProps;\n\n return (\n <I18nProvider locale={locale}>\n <TextField\n append={\n append ||\n (showClockIcon === true || showClockIcon === 'right' ? (\n <ClockIcon onClick={() => timeFieldRef?.current?.focus()} inline />\n ) : undefined)\n }\n className={classNames('eds-simple-timepicker', {\n 'eds-simple-timepicker--padding-large': padding === 'large',\n 'eds-simple-timepicker--show-seconds': showSeconds,\n 'eds-simple-timepicker--hide-clock': !showClockIcon,\n 'eds-simple-timepicker--has-tooltip': labelTooltip !== undefined,\n })}\n disabled={disabled}\n disableLabelAnimation\n feedback={feedback}\n label={label}\n labelProps={labelProps}\n labelTooltip={labelTooltip}\n onBlur={() => {\n handleChangeTime();\n if (selectedTime === null) {\n addPlaceholderToInput();\n }\n }}\n onChange={e => setInputText(e.target.value)}\n onFocus={() => {\n if (selectedTime === null) {\n setInputText('');\n }\n }}\n onKeyDown={({ key }) => {\n if (key === 'Enter') handleChangeTime();\n }}\n placeholder={showSeconds ? '–– : –– : ––' : '–– : ––'}\n prepend={\n prepend ||\n (showClockIcon === 'left' ? (\n <ClockIcon onClick={() => timeFieldRef?.current?.focus()} />\n ) : undefined)\n }\n readOnly={readOnly}\n ref={mergeRefs(timeFieldRef, inputRef)}\n style={style}\n value={inputText}\n variant={variant}\n {...usedFieldProps}\n />\n </I18nProvider>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('datepicker', 'form', 'icons');\n\nexport * from './DatePicker';\nexport * from './TimePicker';\nexport * from './shared';\n\nexport {\n CalendarDate,\n CalendarDateTime,\n ZonedDateTime,\n Time,\n} from '@internationalized/date';\nexport type { TimeValue, DateValue } from '@react-types/datepicker';\n"],"names":["$umoiH$arAEmodulejs","$umoiH$bgBGmodulejs","$umoiH$csCZmodulejs","$umoiH$daDKmodulejs","$umoiH$deDEmodulejs","$umoiH$elGRmodulejs","$umoiH$enUSmodulejs","$umoiH$esESmodulejs","$umoiH$etEEmodulejs","$umoiH$fiFImodulejs","$umoiH$frFRmodulejs","$umoiH$heILmodulejs","$umoiH$hrHRmodulejs","$umoiH$huHUmodulejs","$umoiH$itITmodulejs","$umoiH$jaJPmodulejs","$umoiH$koKRmodulejs","$umoiH$ltLTmodulejs","$umoiH$lvLVmodulejs","$umoiH$nbNOmodulejs","$umoiH$nlNLmodulejs","$umoiH$plPLmodulejs","$umoiH$ptBRmodulejs","$umoiH$ptPTmodulejs","$umoiH$roROmodulejs","$umoiH$ruRUmodulejs","$umoiH$skSKmodulejs","$umoiH$slSImodulejs","$umoiH$srSPmodulejs","$umoiH$svSEmodulejs","$umoiH$trTRmodulejs","$umoiH$ukUAmodulejs","$umoiH$zhCNmodulejs","$umoiH$zhTWmodulejs","_ref","date","offset","min","max","round","res","ms","$aksy1$_","$69F46$createContext","$69F46$useMemo","$69F46$useContext","name","$69F46$useState","$69F46$useRef","$69F46$useEffect","value","a","$parcel$interopDefault","$bUJMr$LocalizedStringDictionary","$bUJMr$intlStringsmodulejs","$bUJMr$LocalizedStringFormatter","$bUJMr$DateFormatter","opts","$bUJMr$Time","$bUJMr$toCalendar","$bUJMr$now","$bUJMr$getLocalTimeZone","$bUJMr$toCalendarDate","$bUJMr$toCalendarDateTime","$bUJMr$useState","$3whtM$useState","$3whtM$useRef","$3whtM$useEffect","$3whtM$useCallback","$hnMvi$useControlledState","$hnMvi$useCallback","$goopS$useOverlayTriggerState","$goopS$useControlledState","$goopS$useState","$goopS$useMemo","$goopS$useFormValidationState","$goopS$toCalendarDate","$goopS$toCalendarDateTime","$goopS$DateFormatter","$bzTv4$LocalizedStringDictionary","createCalendar","$g03ag$useMemo","$g03ag$DateFormatter","$g03ag$useControlledState","$g03ag$useState","_props_maxGranularity","$g03ag$useRef","$g03ag$useEffect","$g03ag$isEqualCalendar","$g03ag$toCalendar","$g03ag$GregorianCalendar","$g03ag$useFormValidationState","v","locale","$g03ag$getMinimumMonthInYear","$g03ag$getMinimumDayInMonth","$2PRh3$Time","$2PRh3$useControlledState","$2PRh3$useMemo","$2PRh3$toZoned","$2PRh3$toTime","$2PRh3$GregorianCalendar","$2PRh3$useCallback","$2PRh3$today","$2PRh3$getLocalTimeZone","$2PRh3$toCalendarDateTime","$4YhVz$arAEmodulejs","$4YhVz$bgBGmodulejs","$4YhVz$csCZmodulejs","$4YhVz$daDKmodulejs","$4YhVz$deDEmodulejs","$4YhVz$elGRmodulejs","$4YhVz$enUSmodulejs","$4YhVz$esESmodulejs","$4YhVz$etEEmodulejs","$4YhVz$fiFImodulejs","$4YhVz$frFRmodulejs","$4YhVz$heILmodulejs","$4YhVz$hrHRmodulejs","$4YhVz$huHUmodulejs","$4YhVz$itITmodulejs","$4YhVz$jaJPmodulejs","$4YhVz$koKRmodulejs","$4YhVz$ltLTmodulejs","$4YhVz$lvLVmodulejs","$4YhVz$nbNOmodulejs","$4YhVz$nlNLmodulejs","$4YhVz$plPLmodulejs","$4YhVz$ptBRmodulejs","$4YhVz$ptPTmodulejs","$4YhVz$roROmodulejs","$4YhVz$ruRUmodulejs","$4YhVz$skSKmodulejs","$4YhVz$slSImodulejs","$4YhVz$srSPmodulejs","$4YhVz$svSEmodulejs","$4YhVz$trTRmodulejs","$4YhVz$ukUAmodulejs","$4YhVz$zhCNmodulejs","$4YhVz$zhTWmodulejs","$HgANd$react","$lmaYr$react","$lmaYr$useRef","$lmaYr$useCallback","$fCAlL$useState","$fCAlL$useRef","$670gB$react","$670gB$useContext","$670gB$useRef","$670gB$useState","$eKkEp$useState","$eKkEp$useRef","$eKkEp$useSSRSafeId","r","$eKkEp$useEffect","$eKkEp$useCallback","$lcSu5$shadowDOM","walker","shadowRoot","$bJKXg$shadowDOM","$7jXr9$clsx","$lPAwt$useRef","$lPAwt$useCallback","$lPAwt$useEffect","$9vW05$useRef","$9vW05$useEffect","$hQ5Hp$useState","id","$ceQd6$useEffect","$jtQ6z$useRef","$8rM3G$useEffect","form","getComputedStyle","onBlur","$6dfIe$useRef","$6dfIe$useLayoutEffect","$6dfIe$useEffectEvent","$6dfIe$useCallback","e","$6dfIe$isFocusable","window","$6dfIe$getOwnerWindow","$6dfIe$focusWithoutScrolling","onFocus","$7R18e$isIOS","$7R18e$getOwnerDocument","$7R18e$runAfterTransition","$3aeG1$react","$7mdmh$useContext","$7mdmh$mergeProps","$7mdmh$useSyncRef","$7mdmh$_2","$7mdmh$_","$7mdmh$_1","$7mdmh$useState","$7mdmh$useRef","$7mdmh$useGlobalListeners","$7mdmh$useEffectEvent","$7mdmh$useMemo","pressProps","$7mdmh$nodeContains","$7mdmh$getEventTarget","$7mdmh$getOwnerDocument","$7mdmh$chain","$7mdmh$isMac","$7mdmh$openLink","$7mdmh$isVirtualClick","$7mdmh$isVirtualPointerEvent","$7mdmh$focusWithoutScrolling","$7mdmh$flushSync","$7mdmh$getOwnerWindow","$7mdmh$useEffect","$28AnR$isMac","$28AnR$isVirtualClick","$28AnR$getOwnerWindow","$28AnR$getOwnerDocument","$k50bp$getOwnerDocument","$k50bp$getActiveElement","$k50bp$runAfterTransition","$k50bp$focusWithoutScrolling","$hf0lj$useCallback","$hf0lj$getOwnerDocument","$hf0lj$getActiveElement","$hf0lj$getEventTarget","$fcPuG$react","$fcPuG$useContext","$fcPuG$useSyncRef","$fcPuG$mergeProps","$fcPuG$useRef","$fcPuG$useEffect","$3b9Q0$useRef","$3b9Q0$useGlobalListeners","$3b9Q0$useCallback","$3b9Q0$getOwnerDocument","$3b9Q0$getActiveElement","$3b9Q0$getEventTarget","$3b9Q0$nodeContains","$cgawC$getOwnerDocument","$cgawC$focusSafely","$cgawC$isTabbable","$cgawC$isFocusable","$cgawC$createShadowTreeWalker","defaultOptions","$cgawC$getActiveElement","$ffhGL$useIsSSR","$ffhGL$useState","$ffhGL$useEffect","$h9FiU$react","$h9FiU$useContext","__assign","$6ksNp$LocalizedStringDictionary","$6ksNp$useMemo","$6ksNp$LocalizedStringFormatter","$6wxND$useDeepMemo","$6wxND$useMemo","$6wxND$DateFormatter","index","p","$21ck9$useCallback","contains","$21ck9$useMemo","$7CEvq$useLocale","$7CEvq$useMemo","$7CEvq$createFocusManager","$7CEvq$getFocusableTreeWalker","$7CEvq$usePress","$7CEvq$mergeProps","$83Elw$useId","$83Elw$useLabels","$2kC82$useSlotId","$2kC82$mergeProps","$9Gacy$useLayoutEffect","$9Gacy$useRef","$9Gacy$useEffectEvent","$9Gacy$setInteractionModality","$9Gacy$useEffect","$7Gzdi$useField","$7Gzdi$useRef","$7Gzdi$useFocusWithin","$7Gzdi$useLocalizedStringFormatter","$7Gzdi$intlStringsmodulejs","$7Gzdi$useDescription","$7Gzdi$useMemo","$7Gzdi$createFocusManager","$7Gzdi$mergeProps","$7Gzdi$useEffect","$7Gzdi$useFormReset","$7Gzdi$useFormValidation","$7Gzdi$filterDOMProps","$4lVjK$useId","$4lVjK$useLocalizedStringFormatter","$4lVjK$intlStringsmodulejs","$4lVjK$useField","$4lVjK$useLocale","$4lVjK$useDescription","$4lVjK$filterDOMProps","$4lVjK$useMemo","$4lVjK$createFocusManager","$4lVjK$useRef","$4lVjK$useFocusWithin","$4lVjK$mergeProps","$4lVjK$privateValidationStateProp","$jR5iF$useLocale","$jR5iF$useLocalizedStringDictionary","$jR5iF$intlStringsmodulejs","$jR5iF$useMemo","$894vb$arAEmodulejs","$894vb$bgBGmodulejs","$894vb$csCZmodulejs","$894vb$daDKmodulejs","$894vb$deDEmodulejs","$894vb$elGRmodulejs","$894vb$enUSmodulejs","$894vb$esESmodulejs","$894vb$etEEmodulejs","$894vb$fiFImodulejs","$894vb$frFRmodulejs","$894vb$heILmodulejs","$894vb$hrHRmodulejs","$894vb$huHUmodulejs","$894vb$itITmodulejs","$894vb$jaJPmodulejs","$894vb$koKRmodulejs","$894vb$ltLTmodulejs","$894vb$lvLVmodulejs","$894vb$nbNOmodulejs","$894vb$nlNLmodulejs","$894vb$plPLmodulejs","$894vb$ptBRmodulejs","$894vb$ptPTmodulejs","$894vb$roROmodulejs","$894vb$ruRUmodulejs","$894vb$skSKmodulejs","$894vb$slSImodulejs","$894vb$srSPmodulejs","$894vb$svSEmodulejs","$894vb$trTRmodulejs","$894vb$ukUAmodulejs","$894vb$zhCNmodulejs","$894vb$zhTWmodulejs","$5rwhf$useRef","$5rwhf$useLocalizedStringFormatter","$5rwhf$intlStringsmodulejs","$5rwhf$useEffect","$5rwhf$clearAnnouncer","$5rwhf$announce","$5rwhf$useEffectEvent","$5rwhf$useGlobalListeners","$4d1jn$useRef","$4d1jn$useLocale","$4d1jn$useMemo","$4d1jn$useDateFormatter","$4d1jn$useSpinButton","$4d1jn$NumberParser","$4d1jn$isMac","$4d1jn$useFilter","$4d1jn$toCalendar","$4d1jn$CalendarDate","eras","$4d1jn$scrollIntoViewport","$4d1jn$getScrollParent","$4d1jn$useEvent","$4d1jn$useLayoutEffect","$4d1jn$isIOS","$4d1jn$useId","$4d1jn$useLabels","$4d1jn$mergeProps","$4d1jn$react","classNames","module","useRef","useDateSegment","jsx","ZonedDateTime","parseAbsolute","CalendarDateTime","CalendarDate","Time","getLocalTimeZone","GregorianCalendar","toCalendarDateTime","today","toCalendarDate","toZoned","toTime","now","startOfWeek","startOfYear","useLocale","useDateFieldState","useDateField","useEffect","useRandomId","ConditionalWrapper","I18nProvider","BaseFormControl","mergeRefs","$RBMho$arAEmodulejs","$RBMho$bgBGmodulejs","$RBMho$csCZmodulejs","$RBMho$daDKmodulejs","$RBMho$deDEmodulejs","$RBMho$elGRmodulejs","$RBMho$enUSmodulejs","$RBMho$esESmodulejs","$RBMho$etEEmodulejs","$RBMho$fiFImodulejs","$RBMho$frFRmodulejs","$RBMho$heILmodulejs","$RBMho$hrHRmodulejs","$RBMho$huHUmodulejs","$RBMho$itITmodulejs","$RBMho$jaJPmodulejs","$RBMho$koKRmodulejs","$RBMho$ltLTmodulejs","$RBMho$lvLVmodulejs","$RBMho$nbNOmodulejs","$RBMho$nlNLmodulejs","$RBMho$plPLmodulejs","$RBMho$ptBRmodulejs","$RBMho$ptPTmodulejs","$RBMho$roROmodulejs","$RBMho$ruRUmodulejs","$RBMho$skSKmodulejs","$RBMho$slSImodulejs","$RBMho$srSPmodulejs","$RBMho$svSEmodulejs","$RBMho$trTRmodulejs","$RBMho$ukUAmodulejs","$RBMho$zhCNmodulejs","$RBMho$zhTWmodulejs","$3HATx$useLocalizedStringFormatter","$3HATx$intlStringsmodulejs","$3HATx$useDateFormatter","$3HATx$useMemo","$3HATx$isSameDay","$3HATx$startOfMonth","$3HATx$endOfMonth","$g2t6q$useLocalizedStringFormatter","$g2t6q$intlStringsmodulejs","$g2t6q$filterDOMProps","$g2t6q$useUpdateEffect","$g2t6q$announce","$g2t6q$useSlotId","$g2t6q$useState","$g2t6q$useLabels","$g2t6q$mergeProps","$NQfxu$useLocale","$NQfxu$useLabels","$NQfxu$useDateFormatter","$NQfxu$useMemo","$NQfxu$startOfWeek","$NQfxu$today","$NQfxu$getWeeksInMonth","$NQfxu$mergeProps","$dm6hl$useLocalizedStringFormatter","$dm6hl$intlStringsmodulejs","$dm6hl$useDateFormatter","$dm6hl$isSameDay","$dm6hl$useDeepMemo","$dm6hl$isEqualDay","$dm6hl$useMemo","$dm6hl$isToday","label","$dm6hl$useDescription","$dm6hl$useRef","$dm6hl$usePress","$dm6hl$useEffect","$dm6hl$focusWithoutScrolling","$dm6hl$getInteractionModality","$dm6hl$scrollIntoViewport","$dm6hl$getScrollParent","$dm6hl$mergeProps","$k1D4u$startOfYear","$k1D4u$startOfMonth","$k1D4u$startOfWeek","$k1D4u$maxDate","$k1D4u$toCalendarDate","$k1D4u$minDate","$7G4ZY$useMemo","$7G4ZY$DateFormatter","$7G4ZY$useControlledState","$7G4ZY$toCalendar","$7G4ZY$toCalendarDate","$7G4ZY$today","$7G4ZY$useState","$7G4ZY$isEqualCalendar","$7G4ZY$GregorianCalendar","$7G4ZY$startOfWeek","$7G4ZY$startOfMonth","$7G4ZY$endOfWeek","$7G4ZY$endOfMonth","$7G4ZY$isSameDay","$7G4ZY$getDayOfWeek","$bwqiF$usePress","$bwqiF$useFocusable","$bwqiF$mergeProps","$bwqiF$filterDOMProps","useButton","IconButton","useCalendarCell","isEqualDay","useCalendarGrid","getWeeksInMonth","jsxs","Fragment","VisuallyHidden","useCalendarState","useCalendar","LeftArrowIcon","RightArrowIcon","computePosition","platform","flip","side","placement","overflow","shift","x","y","getParentNode","offset$1","shift$1","flip$1","noop","useLayoutEffect","React","data","ReactDOM","Element","isElement","reactIsModule","require$$0","require$$1","has","require$$2","require$$3","require$$4","i","checker","isNode","propTypesModule","useState","cbs","createContext","forwardRef","useCallback","captureFocusRestore","useMemo","node","bool","oneOfType","object","func","string","arrayOf","any","t","setPrototypeOf","o","reducePropsToState","handleStateChangeOnClient","SideEffect","PureComponent","extractRef","focusOnBody","isFreeFocus","tryRestoreFocus","defaultWhitelist","focusWhitelisted","recordPortal","focusIsPortaledPair","focusWasOutside","checkInHost","withinHost","getNodeFocusables","isNotFocusable","activateTrap","shouldForceRestoreFocus","onTrap","FocusWatcher","onWindowFocus","onWindowBlur","attachHandler","detachHandler","FocusLockUI","useWindowDimensions","useDatePickerState","useDatePicker","update","space","useOnClickOutside","useOnEscape","zIndexes","FocusLock","Modal","CalendarIcon","DateIcon","useVariant","useInputGroupContext","useOnMount","isFilled","handleOnChange","useTimeFieldState","useTimeField","parseTime","TextField","ClockIcon","warnAboutMissingStyles"],"mappings":"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ChDA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AAChC,4BAA4B;AAAA,EACxB,SAAS;AACb;ACHA,IAAI,4BAA4B,CAAA;AA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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303]}
1
+ {"version":3,"file":"datepicker.cjs.js","sources":["../src/shared/FieldSegment.tsx","../src/shared/utils.ts","../src/DatePicker/DateField.tsx","../src/shared/CalendarButton.tsx","../src/DatePicker/CalendarCell.tsx","../src/DatePicker/CalendarGrid.tsx","../src/DatePicker/Calendar.tsx","../src/DatePicker/DatePicker.tsx","../src/DatePicker/NativeDatePicker.tsx","../src/TimePicker/TimePickerArrowButton.tsx","../src/TimePicker/TimePicker.tsx","../src/TimePicker/NativeTimePicker.tsx","../src/TimePicker/SimpleTimePicker.tsx","../src/index.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport classNames from 'classnames';\nimport { useDateSegment } from '@react-aria/datepicker';\nimport { DateSegment, DateFieldState } from '@react-stately/datepicker';\n\nimport './FieldSegment.scss';\n\ntype TimeSegmentProps = {\n segment: DateSegment;\n state: DateFieldState;\n 'aria-describedby'?: string;\n};\n\nexport const FieldSegment = ({ segment, state, ...rest }: TimeSegmentProps) => {\n const ref = useRef<HTMLDivElement>(null);\n const { segmentProps } = useDateSegment(segment, state, ref);\n\n return (\n <div\n {...segmentProps}\n ref={ref}\n className={classNames('eds-date-and-time-field__segment', {\n 'eds-date-and-time-field__segment--placeholder': segment.isPlaceholder,\n 'eds-date-and-time-field__segment--dot-separator':\n segment.text === '.' || segment.text === ':',\n })}\n tabIndex={state.isDisabled ? -1 : segmentProps.tabIndex}\n {...rest}\n >\n {segment.text}\n </div>\n );\n};\n","import {\n ZonedDateTime,\n CalendarDateTime,\n Time,\n parseAbsolute,\n DateValue,\n getLocalTimeZone,\n CalendarDate,\n toCalendarDateTime,\n toCalendarDate,\n toZoned,\n toTime,\n today,\n now,\n startOfWeek,\n startOfYear,\n} from '@internationalized/date';\nimport { MappedDateValue, TimeValue } from '@react-types/datepicker';\nimport { Calendar, GregorianCalendar } from '@internationalized/date';\n\nconst nativeDateToDateTime = (\n date: Date,\n timeZone?: string,\n offset?: number,\n) => {\n if (timeZone) {\n if (offset) {\n return new ZonedDateTime(\n date.getFullYear(),\n date.getMonth() + 1,\n date.getDate(),\n timeZone,\n offset,\n date.getHours(),\n date.getMinutes(),\n date.getSeconds(),\n date.getMilliseconds(),\n );\n }\n return parseAbsolute(date.toISOString(), timeZone);\n }\n\n return new CalendarDateTime(\n date.getFullYear(),\n date.getMonth() + 1,\n date.getDate(),\n date.getHours(),\n date.getMinutes(),\n date.getSeconds(),\n date.getMilliseconds(),\n );\n};\n\n/**\n * Tar inn et JS Date-objekt og returnerer et av DateValue-objektene fra @internationalized/date-pakken\n * @param {Date | null} date JS Date-objekt som ønskes konvertert til et DateValue-objekt\n * @param {boolean} noTimeOnlyDate Hvis tidspunktet er irrelevant kan denne settes til true, da får man et CalendarDate-objekt uten tidspunkt tilbake\n * @param {string} timeZone Tidssonen på IANA-formatet som tidpunktet skal konverteres til. Utelates denne får man et tidspunkt uten tidssone. Kan brukes med og uten en UTC-offset Vær obs på annen oppførsel med offset, les mer på beskrivelsen av offset\n * @param {number} offset UTC-offset i millisekunder, må brukes med en tidssone. Ved å legge på en offset lager du en variant av en tidssone. Det betyr at tidspunktet ikke endres (time, minutt, sekund uendret), men tidssonen, med tilhørende offset, tidspunktet er i endres.\n * @returns {CalendarDateTime | ZonedDateTime | CalendarDate | null} et av DateValue-objektene med verdier fra date eller null\n */\nexport function nativeDateToDateValue(\n date: Date | null,\n noTimeOnlyDate = false,\n timeZone?: string,\n offset?: number,\n) {\n if (date === null) return null;\n\n if (noTimeOnlyDate)\n return new CalendarDate(\n date.getFullYear(),\n date.getMonth() + 1,\n date.getDate(),\n );\n\n return nativeDateToDateTime(date, timeZone, offset);\n}\n\n/**\n * Tar inn et JS Date-objekt og returnerer et av TimeValue-objektene fra @internationalized/date-pakken\n * @param {Date | null} date JS Date-objekt som ønskes konvertert til et TimeValue-objekt\n * @param {boolean} noDateOnlyTime Hvis datoen er irrelevant kan denne settes til true, da får man et Time-objekt uten dato tilbake\n * @param {string} timeZone Tidssonen på IANA-formatet som tidpunktet skal konverteres til. Utelates denne får man et tidspunkt uten tidssone. Kan brukes med og uten en UTC-offset Vær obs på annen oppførsel med offset, les mer på beskrivelsen av offset\n * @param {number} offset UTC-offset i millisekunder, må brukes med en tidssone. Ved å legge på en offset lager du en variant av en tidssone. Det betyr at tidspunktet ikke endres (time, minutt, sekund uendret), men tidssonen, med tilhørende offset, tidspunktet er i endres.\n * @returns {Time | CalendarDateTime | ZonedDateTime | null} et av TimeValue-objektene med verdier fra date eller null\n */\nexport function nativeDateToTimeValue(\n date: Date | null,\n noDateOnlyTime = false,\n timeZone?: string,\n offset?: number,\n) {\n if (date === null) return null;\n\n if (noDateOnlyTime)\n return new Time(\n date.getHours(),\n date.getMinutes(),\n date.getSeconds(),\n date.getMilliseconds(),\n );\n\n return nativeDateToDateTime(date, timeZone, offset);\n}\n\n/**\n * Tar inn et av Date- eller TimeValue-objektene fra \\@internationalized/date-pakken og returnerer et JS Date-objekt\n * @param {DateValue | TimeValue | null} value En dato eller et tidspunkt på Date- eller TimeValue-formatet som ønskes konvertert til et JS Date-objekt\n * @param {string} timeZoneForCalendarDateTime Tidssonen value er i. Fungerer kun med typen er CalendarDateTime\n * @returns {Date | null} et Date-objekt med verdier fra time eller null\n */\nexport function timeOrDateValueToNativeDate(\n value: TimeValue | DateValue | null,\n timeZoneForCalendarDateTime?: string,\n) {\n if (value === null) return null;\n\n // type is Time\n if (!('day' in value)) {\n const date = new Date();\n date.setHours(value.hour);\n date.setMinutes(value.minute);\n date.setSeconds(value.second);\n date.setMilliseconds(value.millisecond);\n return date;\n }\n\n // type is CalendarDate\n if (!('hour' in value)) {\n return value.toDate(timeZoneForCalendarDateTime ?? getLocalTimeZone());\n }\n\n // type is CalendarDateTime\n if (!('timeZone' in value)) {\n if (timeZoneForCalendarDateTime)\n return value.toDate(timeZoneForCalendarDateTime);\n\n return value.toDate(getLocalTimeZone());\n }\n\n // type is ZonedDateTime\n return value.toDate();\n}\n\nexport const createCalendar = (identifier = 'gregory'): Calendar => {\n switch (identifier) {\n case 'gregory':\n return new GregorianCalendar();\n default:\n throw new Error(`Unsupported calendar ${identifier}`);\n }\n};\n\nexport const ariaLabelIfNorwegian = (\n norwegianAriaLabel: string,\n locale: string,\n propsCollection: any,\n) => {\n if (locale.toLowerCase() !== 'no-no') return propsCollection['aria-label'];\n return norwegianAriaLabel;\n};\n\nexport const lastMillisecondOfDay = (dateValue: DateValue) =>\n toCalendarDateTime(dateValue.add({ days: 1 })).add({\n milliseconds: -1,\n });\n\nexport const convertValueToType = ({\n value,\n type,\n timezone = 'Europe/Oslo',\n}: {\n value: DateValue | TimeValue | null;\n type: 'CalendarDate' | 'CalendarDateTime' | 'ZonedDateTime' | 'Time';\n timezone?: string;\n}) => {\n if (value === null) return null;\n switch (type) {\n case 'CalendarDate':\n if (!('day' in value)) return today(timezone);\n return toCalendarDate(value);\n\n case 'CalendarDateTime':\n if (!('day' in value)) return toCalendarDateTime(today(timezone), value);\n return toCalendarDateTime(value);\n\n case 'ZonedDateTime':\n if (!('day' in value))\n return toZoned(toCalendarDateTime(today(timezone), value), timezone);\n return toZoned(value, timezone);\n\n case 'Time':\n if (!('hour' in value)) return toTime(now(timezone));\n if (!('day' in value)) return value;\n return toTime(value);\n\n default:\n return value;\n }\n};\n\nexport const modulo = (a: number, b: number) => ((a % b) + b) % b;\n\nexport const focusSegment = (\n ref: React.RefObject<HTMLDivElement>,\n segment: 'first' | 'last',\n) => {\n if (ref.current) {\n const segments = ref.current.querySelectorAll(\n '.eds-date-and-time-field__segment',\n );\n const firstSegment = segments[0] as HTMLElement;\n const lastSegment = segments[segments.length - 1] as HTMLElement;\n switch (segment) {\n case 'first':\n return firstSegment.focus();\n case 'last':\n return lastSegment.focus();\n }\n }\n};\n\n/** Based on code from https://stackoverflow.com/questions/6117814/get-week-of-year-in-javascript-like-in-php */\nexport function getWeekNumberForDate(date: DateValue | null) {\n if (date === null) return -1;\n const calendarDate = convertValueToType({\n value: date,\n type: 'CalendarDate',\n }) as CalendarDate;\n const firstDayOfWeek = startOfWeek(calendarDate, 'no-NO');\n const thursdayOfWeek = firstDayOfWeek.add({ days: 3 });\n const firstDayOfYearForThursday = startOfYear(thursdayOfWeek);\n const weekNumber = Math.ceil(\n (thursdayOfWeek.compare(firstDayOfYearForThursday) + 1) / 7,\n );\n return weekNumber;\n}\n\nexport type ForcedReturnType =\n | 'CalendarDate'\n | 'CalendarDateTime'\n | 'ZonedDateTime'\n | undefined;\n\nexport function handleOnChange<DateType extends DateValue>({\n value,\n selectedDate,\n forcedReturnType,\n onChange,\n}: {\n value: MappedDateValue<DateType> | null;\n selectedDate: DateType | null;\n forcedReturnType: ForcedReturnType;\n onChange?:\n | ((value: MappedDateValue<DateType> | null) => void)\n | ((value: DateValue | null) => void);\n}) {\n if (forcedReturnType !== undefined || !selectedDate) {\n return onChange?.(\n convertValueToType({\n value,\n type: forcedReturnType ?? 'ZonedDateTime',\n timezone:\n value !== null && 'timezone' in value\n ? (value.timezone as string)\n : undefined,\n }) as MappedDateValue<typeof forcedReturnType> | null,\n );\n }\n\n onChange?.(value);\n}\n","import React, { ReactNode, useEffect, useRef } from 'react';\n\nimport {\n DateFieldStateOptions,\n useDateFieldState,\n} from '@react-stately/datepicker';\nimport { useDateField } from '@react-aria/datepicker';\nimport { I18nProvider, useLocale } from '@react-aria/i18n';\nimport classNames from 'classnames';\n\nimport type {\n DateValue,\n AriaDatePickerProps,\n MappedDateValue,\n Granularity,\n} from '@react-types/datepicker';\n\nimport { BaseFormControl, BaseFormControlProps } from '@entur/form';\nimport {\n ConditionalWrapper,\n mergeRefs,\n useRandomId,\n VariantType,\n} from '@entur/utils';\n\nimport { FieldSegment } from '../shared/FieldSegment';\nimport {\n createCalendar,\n ForcedReturnType,\n handleOnChange,\n lastMillisecondOfDay,\n} from '../shared/utils';\n\nimport './DateField.scss';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\nexport type ExtendedDateFieldProps<DateType extends DateValue> = Omit<\n AriaDatePickerProps<DateType>,\n | keyof BaseDateFieldProps<DateType>\n | 'value'\n | 'hideTimeZone'\n | 'placeholder'\n | 'placeholderValue'\n | 'defaultValue'\n | 'minValue'\n | 'maxValue'\n> &\n Partial<\n Omit<\n BaseFormControlProps,\n | keyof BaseDateFieldProps<DateType>\n | 'children'\n | 'defaultValue'\n | 'value'\n | 'isFilled'\n | 'size'\n >\n >;\n\nexport type BaseDateFieldProps<DateType extends DateValue> = {\n /** Den valgte tiden. Tid i '@internationalized/date'-pakkens format */\n selectedDate: DateType | null;\n /** Kalles når dato endres. Tid i '@internationalized/date'-pakkens format */\n onChange?: (value: MappedDateValue<DateType> | null) => void;\n /** Ledetekst til DateField */\n label: string;\n /** BCP47-språkkoden til locale-en du ønsker å bruke.\n * @default Brukerenhetens selvvalgte locale\n */\n locale?: string;\n /** Viser den gjeldende tidssonen hvis en er valgt\n * @default false\n */\n showTimeZone?: boolean;\n /** Brukes for å vise tid i datovelgeren. Velg minste enhet som skal vises.\n * Hvis du vil vise tid vil \"minute\" vise minutt og ikke sekund, mens \"second\" viser\n * sekunder også.\n * @default \"day\"\n */\n granularity?: Granularity;\n /** Viser tidspunkt i tillegg til dato.\n * OBS: selectedDate må være av typen CalendarDateTime eller ZonedDateTime\n */\n showTime?: boolean;\n /** Tidligste gyldige datovalg.\n * Eks: today(getLocalTimeZone()) == i dag i lokal tidssone.\n *\n * OBS: Hvis du bruker dato med tid vil tidspunktet også tas hensyn til.\n * Gyldig fra og med den tiden som legges inn som minDate.\n * Dato uten tid vil være gyldig hele minDate-dagen */\n minDate?: DateValue;\n /** Seneste gyldige datovalg.\n * Eks: today(getLocalTimeZone()).add({days: 1}) == i morgen i lokal tidssone\n *\n * OBS: Hvis du bruker dato med tid vil tidspunktet også tas hensyn til.\n * Gyldig til og med den tiden som legges inn som maxDate.\n * Dato uten tid vil være gyldig hele maxDate-dagen */\n maxDate?: DateValue;\n /** Funksjon som tar inn en dato og sier om den er utilgjengelig.\n * Eks. (date) => isWeekend(date, 'no-NO') == helgedager er ikke tilgjengelig */\n isDateUnavailable?: (date: DateValue) => boolean;\n /** Tvinger typen på onChange til den gitte typen.\n * Dette er nyttig når utgangsverdien din er 'null', men du ønsker at\n * DatePicker alltid skal returnere f.eks ZonedDateTime.\n *\n * Som standard returnerer onChange DateValue basert på selectedDate,\n * eller CalendarDate hvis selectedDate er 'null'.\n *\n * @default undefined\n */\n forcedReturnType?: ForcedReturnType;\n /** Varselmelding, som vil komme under TimePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n /** Varselmelding som forteller om ugyldig dato\n * @default \"Ugyldig dato\"\n */\n validationFeedback?: string;\n /** Valideringsvariant for melding om ugyldig dato\n * @default \"negative\"\n */\n validationVariant?: VariantType | typeof error | typeof info;\n /** Callback-funksjon for når valideringen til datovelgeren endrer seg */\n onValidate?: (isValid?: boolean) => void;\n labelTooltip?: React.ReactNode;\n labelProps?: React.DOMAttributes<Element>;\n fieldProps?: DateFieldProps<DateType>;\n dateFieldRef?: React.Ref<HTMLDivElement>;\n disabled?: boolean;\n readOnly?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n style?: React.CSSProperties;\n};\n\nexport type DateFieldProps<DateType extends DateValue> =\n BaseDateFieldProps<DateType> & ExtendedDateFieldProps<DateType>;\n\nexport const DateField = <DateType extends DateValue>({\n selectedDate,\n onChange,\n label,\n locale: customLocale,\n showTimeZone,\n showTime,\n granularity = showTime ? 'minute' : 'day',\n disabled,\n readOnly,\n isDisabled,\n variant,\n feedback,\n validationVariant = 'negative',\n validationFeedback = 'Ugyldig dato',\n labelTooltip,\n minDate,\n maxDate,\n forcedReturnType,\n style,\n className,\n labelProps: parentLabelProps,\n append,\n prepend,\n onValidate,\n dateFieldRef: ref,\n ...rest\n}: DateFieldProps<DateType>) => {\n const { locale } = useLocale();\n\n const _props: DateFieldStateOptions<DateType> = {\n ...rest,\n label,\n locale: customLocale ?? locale,\n createCalendar,\n value: selectedDate,\n onChange: value =>\n handleOnChange<DateType>({\n value,\n selectedDate,\n forcedReturnType,\n onChange,\n }),\n hideTimeZone: !showTimeZone,\n granularity,\n minValue: minDate,\n // this weird logic makes sure the entire day is included if no time is provided in maxDate\n maxValue:\n 'hour' in (maxDate ?? {})\n ? maxDate\n : maxDate !== undefined\n ? lastMillisecondOfDay(maxDate)\n : undefined,\n isDisabled: isDisabled || disabled || readOnly,\n shouldForceLeadingZeros: true,\n };\n\n const state = useDateFieldState(_props);\n\n const dateFieldRef = useRef(null);\n const { labelProps, fieldProps } = useDateField(_props, state, dateFieldRef);\n\n useEffect(() => onValidate?.(!state.isInvalid), [state.isInvalid]);\n\n const id = useRandomId('datefield');\n\n return (\n <ConditionalWrapper\n condition={customLocale !== undefined}\n wrapper={(child: ReactNode) => (\n <I18nProvider locale={customLocale}>{child}</I18nProvider>\n )}\n >\n <BaseFormControl\n append={append}\n ariaAlertOnFeedback\n className={classNames('eds-datefield', className, {\n 'eds-datefield--has-tooltip': labelTooltip !== undefined,\n })}\n disabled={isDisabled || disabled}\n readOnly={readOnly}\n disableLabelAnimation\n feedback={\n feedback ??\n (state.validationState === 'invalid' ? validationFeedback : undefined)\n }\n label={label}\n labelId={id}\n labelProps={parentLabelProps ?? labelProps}\n labelTooltip={labelTooltip}\n prepend={prepend}\n ref={mergeRefs(ref, dateFieldRef)}\n style={style}\n variant={variant ?? (state.isInvalid ? validationVariant : undefined)}\n {...fieldProps}\n >\n {state.segments.map((segment, i) => (\n <FieldSegment segment={segment} state={state} key={i} />\n ))}\n </BaseFormControl>\n </ConditionalWrapper>\n );\n};\n","import React, { useRef } from 'react';\n\nimport { useButton } from '@react-aria/button';\n\nimport { IconButton } from '@entur/button';\n\ntype CalendarButtonProps = {\n children: React.ReactNode;\n className?: string;\n style?: React.CSSProperties;\n [key: string]: any;\n};\n\nexport const CalendarButton = ({\n children,\n className,\n style,\n ...props\n}: CalendarButtonProps) => {\n const ref = useRef(null);\n const { buttonProps } = useButton(props, ref);\n\n return (\n <IconButton {...buttonProps} ref={ref} className={className} style={style}>\n {children}\n </IconButton>\n );\n};\n","import React, { useRef } from 'react';\n\nimport { useCalendarCell } from '@react-aria/calendar';\nimport { CalendarState } from '@react-stately/calendar';\nimport {\n CalendarDate,\n getLocalTimeZone,\n isEqualDay,\n now,\n} from '@internationalized/date';\nimport classNames from 'classnames';\n\ntype CalendarCellProps = {\n state: CalendarState;\n date: CalendarDate;\n weekNumberString: string;\n onSelectedCellClick?: () => void;\n onCellClick?: () => void;\n classNameForDate?: (date: CalendarDate) => string;\n ariaLabelForDate?: (date: CalendarDate) => string;\n};\n\nexport const CalendarCell = ({\n state,\n date,\n onSelectedCellClick = () => {\n return;\n },\n onCellClick = () => {\n return;\n },\n weekNumberString,\n classNameForDate,\n ariaLabelForDate,\n ...rest\n}: CalendarCellProps) => {\n const cellRef = useRef(null);\n\n const {\n cellProps,\n buttonProps,\n isSelected,\n isOutsideVisibleRange,\n isDisabled,\n isUnavailable,\n formattedDate,\n } = useCalendarCell({ date }, state, cellRef);\n\n const ariaLabel = `${buttonProps['aria-label']}${weekNumberString} ${\n ariaLabelForDate?.(date) ?? ''\n }`;\n\n const cellCanBeSelected = !(\n isOutsideVisibleRange ||\n isDisabled ||\n isUnavailable\n );\n\n return (\n <td {...cellProps} className=\"eds-datepicker__calendar__grid__cell__td\">\n <div\n {...buttonProps}\n aria-label={ariaLabel}\n aria-hidden={isOutsideVisibleRange}\n ref={cellRef}\n hidden={isOutsideVisibleRange}\n className={classNames('eds-datepicker__calendar__grid__cell', {\n [classNameForDate?.(date) ?? '']: !isOutsideVisibleRange,\n 'eds-datepicker__calendar__grid__cell--selected': isSelected,\n 'eds-datepicker__calendar__grid__cell--disabled':\n isDisabled || isUnavailable,\n 'eds-datepicker__calendar__grid__cell--outside-month':\n isOutsideVisibleRange,\n 'eds-datepicker__calendar__grid__cell--today': isEqualDay(\n date,\n now(state.timeZone ?? getLocalTimeZone()),\n ),\n })}\n {...rest}\n onClick={e => {\n buttonProps.onClick && buttonProps.onClick(e);\n // Used to force close calendar on select\n isSelected && onSelectedCellClick();\n cellCanBeSelected && onCellClick();\n }}\n onKeyUp={e => {\n buttonProps.onKeyUp && buttonProps.onKeyUp(e);\n if (e.key === 'Enter') {\n // Used to force close calendar on select\n isSelected && onSelectedCellClick();\n cellCanBeSelected && onCellClick();\n }\n }}\n >\n {formattedDate}\n </div>\n </td>\n );\n};\n","import React from 'react';\n\nimport { useLocale } from '@react-aria/i18n';\nimport { useCalendarGrid } from '@react-aria/calendar';\nimport { CalendarState } from '@react-stately/calendar';\nimport { getWeeksInMonth, CalendarDate } from '@internationalized/date';\n\nimport { useRandomId } from '@entur/utils';\nimport { VisuallyHidden } from '@entur/a11y';\n\nimport { getWeekNumberForDate } from '../shared/utils';\nimport { CalendarCell } from './CalendarCell';\n\ntype CalendarGridProps = {\n state: CalendarState;\n navigationDescription?: string;\n showWeekNumbers: boolean;\n weekNumberHeader: string;\n onSelectedCellClick?: () => void;\n onCellClick?: () => void;\n classNameForDate?: (date: CalendarDate) => string;\n ariaLabelForDate?: (date: CalendarDate) => string;\n};\n\nexport const CalendarGrid = ({\n state,\n navigationDescription,\n onSelectedCellClick = () => {\n return;\n },\n onCellClick = () => {\n return;\n },\n showWeekNumbers,\n weekNumberHeader,\n classNameForDate,\n ariaLabelForDate,\n ...rest\n}: CalendarGridProps) => {\n const calendarGridId = useRandomId('eds-calendar');\n const { locale } = useLocale();\n\n const { gridProps, headerProps, weekDays } = useCalendarGrid(rest, state);\n\n const weeksInMonth = getWeeksInMonth(state.visibleRange.start, locale);\n const weeksArray = Array.from(Array(weeksInMonth).keys());\n\n const weekDaysMapped = () => {\n if (locale.toLowerCase().includes('no'))\n return ['ma', 'ti', 'on', 'to', 'fr', 'lø', 'sø'];\n if (locale.toLowerCase().includes('en')) {\n if (weekDays[0] === 'M')\n return ['Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa', 'Su'];\n if (weekDays[0] === 'S')\n return ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'];\n }\n return weekDays.map(day => day.toLowerCase());\n };\n\n const getNavigationDescription = () => {\n if (navigationDescription) return navigationDescription;\n if (locale.toLowerCase().includes('en'))\n return 'Use the arrow keys to navigate between dates';\n return 'Bruk piltastene til å navigere mellom datoer';\n };\n\n return (\n <>\n <table\n {...gridProps}\n cellSpacing=\"0\"\n className=\"eds-datepicker__calendar__grid\"\n >\n <thead {...headerProps}>\n <tr>\n {showWeekNumbers && (\n <th className=\"eds-datepicker__calendar__grid__weeknumber-header\">\n {weekNumberHeader}\n </th>\n )}\n {weekDaysMapped().map(day => (\n <th key={day}>{day}</th>\n ))}\n </tr>\n </thead>\n <tbody>\n {weeksArray.map(weekIndex => {\n const weekNumber = getWeekNumberForDate(\n state.getDatesInWeek(weekIndex)[0],\n );\n return (\n <tr key={weekIndex}>\n {showWeekNumbers && (\n <th\n aria-hidden\n className=\"eds-datepicker__calendar__grid__weeknumber\"\n >\n {weekNumber}\n </th>\n )}\n {state\n .getDatesInWeek(weekIndex)\n .map((date, i) =>\n date ? (\n <CalendarCell\n key={`${date.month}.${date.day}`}\n state={state}\n date={date}\n aria-describedby={calendarGridId + 'description'}\n weekNumberString={\n showWeekNumbers\n ? `, ${weekNumberHeader} ${weekNumber},`\n : ''\n }\n onSelectedCellClick={onSelectedCellClick}\n onCellClick={onCellClick}\n classNameForDate={classNameForDate}\n ariaLabelForDate={ariaLabelForDate}\n />\n ) : (\n <td key={i} />\n ),\n )}\n </tr>\n );\n })}\n </tbody>\n </table>\n <VisuallyHidden id={calendarGridId + 'description'}>\n {getNavigationDescription()}\n </VisuallyHidden>\n </>\n );\n};\n","import React, { useEffect } from 'react';\n\nimport classNames from 'classnames';\nimport { I18nProvider, useLocale } from '@react-aria/i18n';\nimport { AriaCalendarProps, useCalendar } from '@react-aria/calendar';\nimport {\n CalendarStateOptions,\n useCalendarState,\n} from '@react-stately/calendar';\nimport { CalendarDate, DateValue } from '@internationalized/date';\nimport { MappedDateValue } from '@react-types/datepicker';\n\nimport { LeftArrowIcon, RightArrowIcon } from '@entur/icons';\n\nimport {\n ariaLabelIfNorwegian,\n createCalendar,\n handleOnChange,\n} from '../shared/utils';\nimport { CalendarButton } from '../shared/CalendarButton';\nimport { CalendarGrid } from './CalendarGrid';\nimport { DateFieldProps } from './DateField';\n\nimport './Calendar.scss';\n\ntype ExtendedCalendarProps<DateType extends DateValue> = Omit<\n AriaCalendarProps<DateType>,\n | keyof BaseCalendarProps<DateType>\n | 'value'\n | 'label'\n | 'hideTimeZone'\n | 'placeholder'\n | 'placeholderValue'\n | 'defaultValue'\n | 'minValue'\n | 'maxValue'\n>;\n\ntype BaseCalendarProps<DateType extends DateValue> = {\n selectedDate: DateType | null;\n onChange?: (selectedDate: MappedDateValue<DateType> | null) => void;\n navigationDescription?: string;\n style?: React.CSSProperties;\n /** Ekstra klassenavn */\n className?: string;\n onSelectedCellClick?: () => void;\n onCellClick?: () => void;\n /** Tidligste gyldige datovalg.\n * Eks: today(getLocalTimeZone()) == i dag i lokal tidssone.\n *\n * OBS: Hvis du bruker dato med tid vil tidspunktet også tas hensyn til.\n * Gyldig fra og med den tiden som legges inn som minDate.\n * Dato uten tid vil være gyldig hele minDate-dagen */\n minDate?: DateValue;\n /** Seneste gyldige datovalg.\n * Eks: today(getLocalTimeZone()).add({days: 1}) == i morgen i lokal tidssone\n *\n * OBS: Hvis du bruker dato med tid vil tidspunktet også tas hensyn til.\n * Gyldig til og med den tiden som legges inn som maxDate.\n * Dato uten tid vil være gyldig hele maxDate-dagen */\n maxDate?: DateValue;\n /** Slå på visning av ukenummere i kalenderen. Overskriften for ukenummer-kolonnen\n * kan endres med prop-en 'weekNumberHeader'\n * @default false */\n showWeekNumbers?: boolean;\n /** Overskrift som vises for ukenummer-kolonnen. Vises kun hvis 'showWeekNumbers' er true.\n * @default 'uke' */\n weekNumberHeader?: string;\n /** Brukes for å legge til klassenavn på spesifikke datoer i kalenderen.\n * Tar inn en dato og skal returnere klassenavnet som skal legges til den datoen.\n * @default undefined\n * @example (date) => isWeekend(date, 'no-NO') ? 'weekend' : ''\n *\n * OBS: hvis stylingen er meningsbærende bør du bruke ariaLabelForDate i tillegg for å beskrive\n * meningen til skjermlesere o.l.\n */\n classNameForDate?: (date: CalendarDate) => string;\n /** Legger til teksten som returneres på datoen i kalenderen sin aria-label.\n * Bør brukes sammen med classNameForDate hvis styling-endringene gjort der er meningsbærende.\n * @default undefined\n * @example (date) => isWeekend(date, 'no-NO') ? 'helgedag' : ''\n */\n ariaLabelForDate?: (date: CalendarDate) => string;\n /** Callback-funksjon for når valideringen til datovelgeren endrer seg */\n onValidate?: (isValid?: boolean) => void;\n disabled?: boolean;\n locale?: string;\n calendarRef?: React.MutableRefObject<HTMLDivElement | null>;\n forcedReturnType?: DateFieldProps<DateType>['forcedReturnType'];\n};\n\nexport type CalendarProps<DateType extends DateValue> =\n BaseCalendarProps<DateType> & ExtendedCalendarProps<DateType>;\n\nexport const Calendar = <DateType extends DateValue>({\n locale: localOverride,\n ...rest\n}: CalendarProps<DateType>) => {\n const props = { isDisabled: rest.disabled, ...rest };\n const { locale } = useLocale();\n return (\n <I18nProvider locale={localOverride ?? locale}>\n <CalendarBase {...props} />\n </I18nProvider>\n );\n};\n\nconst CalendarBase = <DateType extends DateValue>({\n selectedDate,\n onChange,\n minDate,\n maxDate,\n showWeekNumbers = false,\n weekNumberHeader = 'uke',\n forcedReturnType,\n style,\n className,\n navigationDescription,\n onSelectedCellClick = () => {\n return;\n },\n onCellClick = () => {\n return;\n },\n classNameForDate,\n ariaLabelForDate,\n calendarRef,\n ...rest\n}: CalendarProps<DateType>) => {\n const { locale } = useLocale();\n\n const _props: CalendarStateOptions<DateType> = {\n ...rest,\n value: selectedDate,\n onChange: value =>\n handleOnChange<DateType>({\n value,\n selectedDate,\n forcedReturnType,\n onChange,\n }),\n locale,\n createCalendar,\n minValue: minDate,\n maxValue: maxDate,\n };\n\n const state = useCalendarState(_props);\n const { calendarProps, prevButtonProps, nextButtonProps, title } =\n useCalendar(_props, state);\n\n useEffect(\n () => rest.onValidate?.(!state.isValueInvalid),\n [state.isValueInvalid],\n );\n\n return (\n <div\n {...calendarProps}\n ref={calendarRef}\n className={classNames('eds-datepicker__calendar', className)}\n style={style}\n >\n <div className=\"eds-datepicker__calendar__header\">\n <CalendarButton\n {...prevButtonProps}\n aria-label={ariaLabelIfNorwegian(\n 'Forrige måned',\n locale,\n prevButtonProps,\n )}\n >\n <LeftArrowIcon size={20} />\n </CalendarButton>\n <h2>{title}</h2>\n <CalendarButton\n {...nextButtonProps}\n aria-label={ariaLabelIfNorwegian(\n 'Neste måned',\n locale,\n nextButtonProps,\n )}\n >\n <RightArrowIcon size={20} />\n </CalendarButton>\n </div>\n <CalendarGrid\n {...rest}\n state={state}\n navigationDescription={navigationDescription}\n onSelectedCellClick={onSelectedCellClick}\n onCellClick={onCellClick}\n classNameForDate={classNameForDate}\n ariaLabelForDate={ariaLabelForDate}\n showWeekNumbers={showWeekNumbers}\n weekNumberHeader={weekNumberHeader}\n />\n </div>\n );\n};\n","import React, { ReactNode, useRef } from 'react';\n\nimport {\n DatePickerStateOptions,\n useDatePickerState,\n} from '@react-stately/datepicker';\nimport { useDatePicker } from '@react-aria/datepicker';\nimport { I18nProvider } from '@react-aria/i18n';\nimport {\n useFloating,\n offset,\n flip,\n shift,\n autoUpdate,\n} from '@floating-ui/react-dom';\nimport FocusLock from 'react-focus-lock';\nimport classNames from 'classnames';\n\nimport { CalendarDate, DateValue } from '@internationalized/date';\n\nimport {\n ConditionalWrapper,\n useOnClickOutside,\n useOnEscape,\n useWindowDimensions,\n} from '@entur/utils';\nimport { space, zIndexes } from '@entur/tokens';\nimport { CalendarIcon } from '@entur/icons';\nimport { Modal } from '@entur/modal';\n\nimport {\n BaseDateFieldProps,\n DateField,\n ExtendedDateFieldProps,\n} from './DateField';\nimport { Calendar, CalendarProps } from './Calendar';\nimport { CalendarButton } from '../shared/CalendarButton';\nimport { handleOnChange, lastMillisecondOfDay } from '../shared/utils';\n\nimport './DatePicker.scss';\n\ntype BaseDatePickerProps = {\n /** Slå på visning av ukenummere i kalenderen. Overskriften for ukenummer-kolonnen\n * kan endres med prop-en 'weekNumberHeader'\n * @default false */\n showWeekNumbers?: boolean;\n /** Overskrift som vises for ukenummer-kolonnen. Vises kun hvis 'showWeekNumbers' er true.\n * @default '#' */\n weekNumberHeader?: string;\n /** Hvis true vil kalenderen alltid vises i en popover når den åpnes\n * @default false\n */\n disableModal?: boolean;\n /** Maxbredden til viewport-en for at modal skal vises\n * @default 1000\n */\n modalTreshold?: number;\n labelTooltip?: React.ReactNode;\n /** Skjermlesertest som forklarer navigasjon i kalenderen. Oversettes automatisk for engelsk locale, men ikke andre språk.\n * @default 'Bruk piltastene til å navigere mellom datoer'\n */\n navigationDescription?: string;\n /** Brukes for å legge til klassenavn på spesifikke datoer i kalenderen.\n * Tar inn en dato og skal returnere klassenavnet som skal legges til den datoen.\n * @default undefined\n * @example (date) => isWeekend(date, 'no-NO') ? 'weekend' : ''\n *\n * OBS: hvis stylingen er meningsbærende bør du bruke ariaLabelForDate i tillegg for å beskrive\n * meningen til skjermlesere o.l.\n */\n classNameForDate?: (date: CalendarDate) => string;\n /** Legger til teksten som returneres på datoen i kalenderen sin aria-label.\n * Bør brukes sammen med classNameForDate hvis styling-endringene gjort der er meningsbærende.\n * @default undefined\n * @example (date) => isWeekend(date, 'no-NO') ? 'helgedag' : ''\n */\n ariaLabelForDate?: (date: CalendarDate) => string;\n};\n\nexport type DatePickerProps<DateType extends DateValue> = Omit<\n BaseDateFieldProps<DateType>,\n | keyof BaseDatePickerProps\n | 'labelProps'\n | 'fieldProps'\n | 'groupProps'\n | 'dateFieldRef'\n> &\n BaseDatePickerProps &\n ExtendedDateFieldProps<DateType>;\n\nexport const DatePicker = <DateType extends DateValue>({\n selectedDate,\n locale,\n disabled,\n readOnly,\n showTime,\n showTimeZone = false,\n classNameForDate,\n className,\n variant,\n feedback,\n validationVariant,\n validationFeedback,\n showWeekNumbers,\n weekNumberHeader,\n disableModal = false,\n labelTooltip,\n navigationDescription,\n minDate,\n maxDate,\n modalTreshold = 1000,\n ariaLabelForDate,\n append,\n prepend,\n granularity = showTime ? 'minute' : 'day',\n ...rest\n}: DatePickerProps<DateType>) => {\n const CALENDAR_MODAL_MAX_SCREEN_WIDTH = modalTreshold;\n const datePickerRef = useRef<HTMLDivElement | null>(null);\n const calendarRef = useRef<HTMLDivElement | null>(null);\n\n const { width } = useWindowDimensions();\n\n const _props: DatePickerStateOptions<DateType> = {\n ...rest,\n onChange: value =>\n handleOnChange<DateType>({\n value,\n selectedDate,\n forcedReturnType: rest.forcedReturnType,\n onChange: rest.onChange,\n }),\n minValue: minDate,\n // this weird logic makes sure the entire day is included if no time is provided in maxDate\n maxValue:\n 'hour' in (maxDate ?? {})\n ? maxDate\n : maxDate !== undefined\n ? lastMillisecondOfDay(maxDate)\n : undefined,\n value: selectedDate,\n granularity,\n isDisabled: disabled || readOnly,\n };\n\n const state = useDatePickerState(_props);\n const {\n groupProps,\n labelProps,\n fieldProps,\n buttonProps,\n dialogProps,\n calendarProps,\n } = useDatePicker(_props, state, datePickerRef);\n\n // calculations for floating-UI popover position\n const { refs, floatingStyles, update } = useFloating({\n whileElementsMounted: (ref, float, update) =>\n autoUpdate(ref, float, update, { elementResize: false }),\n placement: 'bottom-start',\n middleware: [\n offset(space.extraSmall2),\n flip(),\n shift({ padding: space.extraSmall }),\n ],\n });\n\n useOnClickOutside([calendarRef], () => state.setOpen(false));\n\n useOnEscape(calendarRef, () => state.setOpen(false));\n\n const calendarSharedProps: CalendarProps<DateType> = {\n ...dialogProps,\n ...calendarProps,\n // We don't use handleOnChange here since it's handled internally by Calendar\n onChange: rest.onChange,\n forcedReturnType: rest.forcedReturnType,\n disabled,\n navigationDescription,\n onSelectedCellClick: () => state.setOpen(false),\n // onCellClick is a temporary fix solving an issue where the\n // calendar sometimes doesn't close on date selection\n onCellClick: () => state.setOpen(false),\n selectedDate,\n minDate,\n maxDate,\n calendarRef,\n classNameForDate,\n ariaLabelForDate,\n showWeekNumbers,\n weekNumberHeader,\n };\n\n const isModal =\n typeof width !== 'undefined' &&\n width <= CALENDAR_MODAL_MAX_SCREEN_WIDTH &&\n !disableModal;\n\n const popoverCalendar = (\n <div\n style={{ ...floatingStyles, zIndex: zIndexes.popover }}\n ref={refs.setFloating}\n >\n <FocusLock disabled={!state.isOpen || isModal} returnFocus>\n {state.isOpen && <Calendar {...calendarSharedProps} />}\n </FocusLock>\n </div>\n );\n\n const modalCalendar = (\n <Modal\n size=\"small\"\n title=\"\"\n open={state.isOpen}\n onDismiss={() => state.setOpen(false)}\n className=\"eds-datepicker__calendar-modal\"\n >\n <Calendar {...calendarSharedProps} />\n </Modal>\n );\n\n return (\n <ConditionalWrapper\n condition={locale !== undefined}\n wrapper={(child: ReactNode) => (\n <I18nProvider locale={locale}>{child}</I18nProvider>\n )}\n >\n <DateField\n {...(groupProps as any)}\n {...fieldProps}\n // We don't use handleOnChange here since it's handled internally by DateField\n {...rest}\n append={\n !disabled &&\n !readOnly && (\n <div style={{ display: 'flex', alignItems: 'center' }}>\n {append}\n <CalendarButton\n {...buttonProps}\n onPress={() => {\n state.setOpen(!state.isOpen);\n update();\n }}\n className=\"eds-datepicker__open-calendar-button\"\n >\n <CalendarIcon />\n </CalendarButton>\n </div>\n )\n }\n prepend={prepend}\n className={classNames('eds-datepicker', className, {\n 'eds-datepicker--disabled': disabled,\n })}\n disabled={disabled}\n readOnly={readOnly}\n feedback={feedback}\n labelProps={labelProps}\n labelTooltip={labelTooltip}\n maxDate={maxDate}\n minDate={minDate}\n dateFieldRef={node => {\n refs.setReference(node);\n datePickerRef.current = node;\n }}\n selectedDate={selectedDate}\n showTime={showTime}\n showTimeZone={showTimeZone}\n validationFeedback={validationFeedback}\n validationVariant={validationVariant}\n variant={variant}\n />\n {isModal ? modalCalendar : popoverCalendar}\n </ConditionalWrapper>\n );\n};\n","import React from 'react';\nimport {\n BaseFormControl,\n isFilled,\n useInputGroupContext,\n useVariant,\n} from '@entur/form';\nimport { DateIcon } from '@entur/icons';\nimport { useOnMount, useRandomId, VariantType } from '@entur/utils';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\nexport type NativeDatePickerProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label over NativeDatePicker */\n label: string;\n /** Varselmelding, som vil komme under NativeDatePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n /** Plasserer labelen statisk på toppen av inputfeltet\n * @default false\n */\n disableLabelAnimation?: boolean;\n /** Tekst eller ikon som kommer før inputfelter\n * @default <DateIcon />\n */\n prepend?: React.ReactNode;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const NativeDatePicker = React.forwardRef<\n HTMLInputElement,\n NativeDatePickerProps\n>(\n (\n {\n className,\n style,\n label,\n onChange,\n feedback,\n variant,\n disableLabelAnimation,\n prepend = <DateIcon inline />,\n ...rest\n },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const nativedatepickerId = useRandomId('eds-nativetimepicker');\n return (\n <BaseFormControl\n style={style}\n className={className}\n prepend={prepend}\n label={label}\n feedback={feedback}\n variant={variant}\n labelId={nativedatepickerId}\n disableLabelAnimation={disableLabelAnimation}\n isFilled\n >\n <NativeDatePickerBase\n onChange={onChange}\n aria-labelledby={nativedatepickerId}\n ref={ref}\n variant={variant}\n {...rest}\n />\n </BaseFormControl>\n );\n },\n);\n\ntype NativeDatePickerBaseProps = {\n onChange?: any;\n variant?: VariantType | typeof error | typeof info;\n} & React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n>;\n\nconst NativeDatePickerBase = React.forwardRef<\n HTMLInputElement,\n NativeDatePickerBaseProps\n>(({ onChange, variant, value, ...rest }, ref) => {\n const contextVariant = useVariant();\n const currentVariant = variant || contextVariant;\n const { isFilled: isDatepickerFilled, setFilled: setFiller } =\n useInputGroupContext();\n\n useOnMount(() => {\n setFiller && !isDatepickerFilled && setFiller(true);\n });\n\n React.useEffect(() => {\n if (value) {\n setFiller && !isDatepickerFilled && setFiller(true);\n } else {\n setFiller && isDatepickerFilled && setFiller(false);\n }\n }, [value, setFiller, isDatepickerFilled]);\n\n const handleChange = (event: any) => {\n if (isFilled(event.target)) {\n setFiller && !isDatepickerFilled && setFiller(true);\n } else {\n setFiller && isDatepickerFilled && setFiller(false);\n }\n if (onChange) {\n onChange(event);\n }\n };\n return (\n <input\n ref={ref}\n aria-invalid={currentVariant === 'error'}\n type=\"date\"\n className=\"eds-form-control eds-native-date-picker\"\n onChange={handleChange}\n value={value}\n {...rest}\n />\n );\n});\n","import React from 'react';\nimport classNames from 'classnames';\n\nimport { IconButton } from '@entur/button';\nimport { LeftArrowIcon, RightArrowIcon } from '@entur/icons';\n\ntype TimePickerArrowButtonProps = {\n direction: 'left' | 'right';\n disabled?: boolean;\n readonly?: boolean;\n 'aria-label': string;\n onClick?: () => void;\n onFocus?: () => void;\n};\n\nexport const TimePickerArrowButton = ({\n direction,\n onClick,\n disabled,\n readonly,\n 'aria-label': ariaLabel,\n ...rest\n}: TimePickerArrowButtonProps) => {\n return (\n <IconButton\n className={classNames(\n 'eds-timepicker__arrowbutton',\n `eds-timepicker__arrowbutton--${direction}`,\n { 'eds-timepicker__arrowbutton--disabled': disabled },\n )}\n type=\"button\"\n tabIndex={-1}\n onClick={onClick}\n aria-label={ariaLabel}\n disabled={disabled}\n {...rest}\n >\n {direction === 'left' ? <LeftArrowIcon /> : <RightArrowIcon />}\n </IconButton>\n );\n};\n","import React, { useRef } from 'react';\nimport classNames from 'classnames';\nimport { useTimeField } from '@react-aria/datepicker';\nimport { I18nProvider, useLocale } from '@react-aria/i18n';\nimport { useTimeFieldState } from '@react-stately/datepicker';\nimport { now } from '@internationalized/date';\n\nimport type {\n TimeValue,\n AriaTimeFieldProps,\n MappedTimeValue,\n} from '@react-types/datepicker';\n\nimport { VisuallyHidden } from '@entur/a11y';\nimport { BaseFormControl, BaseFormControlProps } from '@entur/form';\nimport { useRandomId, VariantType } from '@entur/utils';\n\nimport { FieldSegment } from '../shared/FieldSegment';\nimport { TimePickerArrowButton } from './TimePickerArrowButton';\nimport { convertValueToType, focusSegment, modulo } from '../shared/utils';\n\nimport './TimePicker.scss';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\ntype ExtendedTimePickerProps<TimeType extends TimeValue> = Omit<\n AriaTimeFieldProps<TimeType>,\n | keyof BaseTimePickerProps<TimeValue>\n | 'value'\n | 'hideTimeZone'\n | 'placeholder'\n | 'minValue'\n | 'maxValue'\n> &\n Omit<\n Partial<BaseFormControlProps>,\n | keyof BaseTimePickerProps<TimeType>\n | 'children'\n | 'defaultValue'\n | 'value'\n | 'isFilled'\n | 'size'\n >;\n\ntype BaseTimePickerProps<TimeType extends TimeValue> = {\n /** Den valgte tiden. Tid i '@internationalized/date'-pakkens format */\n selectedTime: TimeType | null;\n /** Kalles når tiden endres. Tid i '@internationalized/date'-pakkens format */\n onChange: (value: MappedTimeValue<TimeType> | null) => void;\n /** Label til TimePicker */\n label: string;\n /** Minutter som legges til eller trekkes fra ved klikk på pilene i TimePicker.\n * Rundes av til nærmeste hele 'minuteIncrement' som går opp i 60.\n *\n * OBS: Støtter kun verdier <= 60 og multiplum av 60.\n * @default 30\n */\n minuteIncrementForArrowButtons?: number;\n /** BCP47-språkkoden til locale-en du ønsker å bruke.\n * @default Brukerenhetens selvvalgte locale\n */\n locale?: string;\n /** Viser den gjeldende tidssonen hvis en er valgt\n * @default false\n */\n showTimeZone?: boolean;\n /** Viser sekunder i tillegg til minutter og timer\n * @default false\n */\n showSeconds?: boolean;\n /** Aria-label for venstrepil-knappen som trekker fra tid\n * @default `Trekk fra ${minuteIncrementForArrowButtons} minutter`\n */\n leftArrowButtonAriaLabel?: string;\n /** Aria-label for høyrepil-knappen som legger til tid\n * @default `Legg til ${minuteIncrementForArrowButtons} minutter`\n */\n rightArrowButtonAriaLabel?: string;\n /** Varselmelding, som vil komme under TimePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n labelTooltip?: React.ReactNode;\n disabled?: boolean;\n readOnly?: boolean;\n inputRef?: React.ForwardedRef<HTMLDivElement>;\n /** Tvinger typen på onChange til den gitte typen.\n * Dette er nyttig når utgangsverdien din er 'null', men du ønsker at\n * TimePicker alltid skal returnere f.eks Time.\n *\n * Som standard returnerer onChange TimeValue basert på selectedTime,\n * eller ZonedDateTime hvis selectedTime er 'null'.\n *\n * @default undefined\n */\n forcedReturnType?: 'Time' | 'CalendarDateTime' | 'ZonedDateTime';\n forcedTimeZone?: string;\n /** Ekstra klassenavn */\n className?: string;\n style?: React.CSSProperties;\n};\n\nexport type TimePickerProps<TimeType extends TimeValue> =\n BaseTimePickerProps<TimeType> & ExtendedTimePickerProps<TimeType>;\n\nexport const TimePicker = <TimeType extends TimeValue>({\n selectedTime,\n onChange,\n disabled,\n readOnly,\n className,\n style,\n label,\n labelTooltip,\n feedback,\n granularity,\n variant,\n locale: customLocale,\n showTimeZone,\n showSeconds = false,\n minuteIncrementForArrowButtons = 30,\n leftArrowButtonAriaLabel = `Trekk fra ${minuteIncrementForArrowButtons} minutter`,\n rightArrowButtonAriaLabel = `Legg til ${minuteIncrementForArrowButtons} minutter`,\n inputRef,\n forcedReturnType,\n forcedTimeZone,\n append,\n prepend,\n ...rest\n}: TimePickerProps<TimeType>) => {\n let { locale } = useLocale();\n if (customLocale) locale = customLocale;\n const timePickerId = useRandomId('eds-timepicker');\n\n const timeZone =\n forcedTimeZone ??\n (selectedTime !== null && 'timezone' in selectedTime\n ? (selectedTime.timezone as string)\n : 'Europe/Oslo');\n\n const handleOnChange = (value: MappedTimeValue<TimeType> | null) => {\n if (forcedReturnType !== undefined || !selectedTime) {\n return onChange(\n convertValueToType({\n value,\n type: forcedReturnType ?? 'ZonedDateTime',\n timezone: timeZone,\n }) as MappedTimeValue<TimeType> | null,\n );\n }\n\n onChange(value);\n };\n\n const state = useTimeFieldState({\n onChange: handleOnChange,\n label: label,\n locale,\n value: selectedTime,\n granularity: granularity ?? showSeconds ? 'second' : 'minute',\n hideTimeZone: !showTimeZone,\n isDisabled: disabled || readOnly,\n shouldForceLeadingZeros: true,\n ...rest,\n });\n const timeFieldRef = useRef<HTMLDivElement>(null);\n const { labelProps, fieldProps } = useTimeField<TimeType>(\n { ...rest, label: label },\n state,\n timeFieldRef,\n );\n const id = useRandomId('timepicker');\n\n const getCurrentTime = () => {\n const getCurrentTimeWithCorrectType = convertValueToType({\n value: now(timeZone),\n type: forcedReturnType ?? 'ZonedDateTime',\n }) as MappedTimeValue<TimeType>;\n return getCurrentTimeWithCorrectType;\n };\n\n const handleOnClickArrowButton = (operation: 'add' | 'subtract') => {\n if (selectedTime === null) return handleOnChange(getCurrentTime());\n switch (operation) {\n case 'add':\n return handleOnChange(\n selectedTime.add({\n minutes:\n minuteIncrementForArrowButtons -\n modulo(selectedTime.minute, minuteIncrementForArrowButtons),\n }) as MappedTimeValue<TimeType>,\n );\n case 'subtract':\n return handleOnChange(\n selectedTime.subtract({\n minutes:\n modulo(selectedTime.minute - 1, minuteIncrementForArrowButtons) +\n 1,\n }) as MappedTimeValue<TimeType>,\n );\n }\n };\n\n return (\n <I18nProvider locale={locale}>\n <BaseFormControl\n append={\n <div style={{ display: 'flex', alignItems: 'center' }}>\n {append}\n <TimePickerArrowButton\n direction=\"right\"\n disabled={disabled || readOnly}\n aria-label={rightArrowButtonAriaLabel}\n onClick={() => handleOnClickArrowButton('add')}\n onFocus={() => focusSegment(timeFieldRef, 'last')}\n />\n </div>\n }\n ariaAlertOnFeedback\n aria-describedby={timePickerId + 'description'}\n className={classNames('eds-timepicker', className, {\n 'eds-timepicker--disabled': disabled,\n 'eds-timepicker--has-tooltip': labelTooltip !== undefined,\n 'eds-timepicker--readonly': readOnly,\n })}\n disabled={disabled}\n readOnly={readOnly}\n disableLabelAnimation\n feedback={feedback}\n label={label}\n labelId={id}\n labelProps={{\n ...labelProps,\n 'aria-describedby': timePickerId + 'description',\n }}\n labelTooltip={labelTooltip}\n prepend={\n <div style={{ display: 'flex', alignItems: 'center' }}>\n <TimePickerArrowButton\n direction=\"left\"\n disabled={disabled || readOnly}\n aria-label={leftArrowButtonAriaLabel}\n onClick={() => handleOnClickArrowButton('subtract')}\n onFocus={() => focusSegment(timeFieldRef, 'first')}\n />\n {prepend}\n </div>\n }\n ref={inputRef}\n style={style}\n variant={variant}\n >\n <span\n ref={timeFieldRef}\n {...fieldProps}\n style={{ display: 'contents' }}\n >\n {state.segments.map((segment, i) => (\n <FieldSegment\n segment={segment}\n state={state}\n key={i}\n aria-describedby={timePickerId + 'description'}\n />\n ))}\n </span>\n <VisuallyHidden id={timePickerId + 'description'}>\n {selectedTime !== null\n ? 'valgt tid: ' +\n selectedTime.hour.toString().padStart(2, '0') +\n ':' +\n selectedTime.minute.toString().padStart(2, '0') +\n (showSeconds\n ? ':' + selectedTime.second.toString().padStart(2, '0')\n : '')\n : ''}\n </VisuallyHidden>\n </BaseFormControl>\n </I18nProvider>\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport {\n BaseFormControl,\n isFilled,\n useInputGroupContext,\n useVariant,\n} from '@entur/form';\nimport { useOnMount, useRandomId, VariantType } from '@entur/utils';\n\nimport './NativeTimePicker.scss';\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\nexport type NativeTimePickerProps = {\n /** Ekstra klassenavn */\n className?: string;\n /** Label over NativeTimePicker */\n label: string;\n /** Varselmelding, som vil komme under NativeTimePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n /** Tekst eller ikon som kommer før inputfelter */\n prepend?: React.ReactNode;\n} & React.InputHTMLAttributes<HTMLInputElement>;\n\nexport const NativeTimePicker = React.forwardRef<\n HTMLInputElement,\n NativeTimePickerProps\n>(\n (\n { className, style, onChange, label, feedback, variant, prepend, ...rest },\n ref: React.Ref<HTMLInputElement>,\n ) => {\n const nativetimepickerId = useRandomId('eds-native-timepicker');\n return (\n <BaseFormControl\n style={style}\n className={classNames(className, 'eds-native-timepicker')}\n prepend={prepend}\n label={label}\n feedback={feedback}\n variant={variant}\n labelId={nativetimepickerId}\n disableLabelAnimation\n >\n <NativeTimePickerBase\n onChange={onChange}\n aria-labelledby={nativetimepickerId}\n ref={ref}\n {...rest}\n />\n </BaseFormControl>\n );\n },\n);\n\ntype NativeTimePickerBaseProps = {\n variant?: VariantType | typeof error | typeof info;\n} & React.DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n>;\n\nconst NativeTimePickerBase = React.forwardRef<\n HTMLInputElement,\n NativeTimePickerBaseProps\n>(({ onChange, value, ...rest }, ref) => {\n const contextVariant = useVariant();\n const currentVariant = rest.variant || contextVariant;\n const { isFilled: isTimepickerFilled, setFilled: setFiller } =\n useInputGroupContext();\n\n useOnMount(() => {\n setFiller && !isTimepickerFilled && setFiller(true);\n });\n\n React.useEffect(() => {\n if (value) {\n setFiller && !isTimepickerFilled && setFiller(true);\n } else {\n setFiller && isTimepickerFilled && setFiller(false);\n }\n }, [value, setFiller, isTimepickerFilled]);\n\n const handleChange = (event: any) => {\n if (isFilled(event.target)) {\n setFiller && !isTimepickerFilled && setFiller(true);\n } else {\n setFiller && isTimepickerFilled && setFiller(false);\n }\n if (onChange) {\n onChange(event);\n }\n };\n return (\n <input\n ref={ref}\n aria-invalid={currentVariant === 'error'}\n type=\"time\"\n className=\"eds-form-control\"\n onChange={handleChange}\n value={value}\n {...rest}\n />\n );\n});\n","import React, { useEffect, useRef, useState } from 'react';\nimport { Time, parseTime, toTime } from '@internationalized/date';\nimport { useTimeField } from '@react-aria/datepicker';\nimport { I18nProvider, useLocale } from '@react-aria/i18n';\nimport { useTimeFieldState } from '@react-stately/datepicker';\nimport classNames from 'classnames';\n\nimport type {\n TimeValue,\n AriaTimeFieldProps,\n MappedTimeValue,\n} from '@react-types/datepicker';\n\nimport { BaseFormControlProps, TextField } from '@entur/form';\nimport { ClockIcon } from '@entur/icons';\nimport { mergeRefs, VariantType } from '@entur/utils';\n\nimport './SimpleTimePicker.scss';\n\nenum inputResult {\n RESET_TIME,\n INVALID,\n}\n\n/** @deprecated use variant=\"information\" instead */\nconst info = 'info';\n/** @deprecated use variant=\"negative\" instead */\nconst error = 'error';\n\ntype ExtendedSimpleTimePickerProps<TimeType extends TimeValue> = Omit<\n AriaTimeFieldProps<TimeType>,\n | keyof BaseSimpleTimePickerProps<TimeType>\n | 'value'\n | 'hideTimeZone'\n | 'placeholder'\n | 'minValue'\n | 'maxValue'\n | 'locale'\n | 'isReadOnly'\n | 'isDisabled'\n | 'locale'\n> &\n Omit<\n Partial<BaseFormControlProps>,\n | keyof BaseSimpleTimePickerProps<TimeType>\n | 'children'\n | 'defaultValue'\n | 'value'\n | 'isFilled'\n | 'size'\n >;\n\ntype BaseSimpleTimePickerProps<TimeType extends TimeValue> = {\n /** Den valgte tiden. Tid i '@internationalized/date'-pakkens format */\n selectedTime: TimeType | null;\n /** Kalles når tiden endres. Tid i '@internationalized/date'-pakkens format */\n onChange?: (\n value: MappedTimeValue<TimeType> | null,\n ) => void | React.Dispatch<React.SetStateAction<TimeValue | null>>;\n /** Label til TimePicker */\n label: string;\n /** Viser sekund i tillegg til time og minutt\n * @default false\n */\n showSeconds?: boolean;\n /** Viser et klokkeikonet for å klarere indikere at dette\n * er en tidsvelger\n * @default false\n */\n showClockIcon?: boolean | 'right' | 'left';\n /** Velger hvor mye luft det skal være på sidene av klokkeslettet\n * @default 'default'\n */\n padding?: 'default' | 'large';\n /** Varselmelding, som vil komme under TimePicker */\n feedback?: string;\n /** Valideringsvariant*/\n variant?: VariantType | typeof error | typeof info;\n /** Tekst eller ikon som vises foran skjema-elementet */\n prepend?: React.ReactNode;\n /** Tekst eller ikon som vises etter skjema-elementet */\n append?: React.ReactNode;\n labelTooltip?: React.ReactNode;\n disabled?: boolean;\n readOnly?: boolean;\n inputRef?: React.ForwardedRef<HTMLInputElement>;\n /** Ekstra klassenavn */\n className?: string;\n style?: React.CSSProperties;\n};\n\nexport type SimpleTimePickerProps<TimeType extends TimeValue> =\n BaseSimpleTimePickerProps<TimeType> & ExtendedSimpleTimePickerProps<TimeType>;\n\nexport const SimpleTimePicker = <TimeType extends TimeValue>({\n append,\n className,\n disabled,\n feedback,\n showClockIcon = 'right',\n inputRef,\n label,\n labelTooltip,\n onChange,\n padding = 'default',\n prepend,\n readOnly,\n selectedTime,\n showSeconds,\n style,\n variant,\n ...rest\n}: SimpleTimePickerProps<TimeType>) => {\n const [inputText, setInputText] = useState('');\n const timeFieldRef = useRef<HTMLInputElement>(null);\n const [lastValidSelectedTime, setLastValidSelectedTime] =\n useState<MappedTimeValue<TimeType> | null>(null);\n\n const { locale } = useLocale();\n\n const state = useTimeFieldState({\n onChange,\n label: label,\n locale,\n value: selectedTime,\n hideTimeZone: true,\n isDisabled: disabled,\n isReadOnly: readOnly,\n ...rest,\n });\n const { labelProps, fieldProps } = useTimeField<TimeType>(\n { ...rest, label: label },\n state,\n timeFieldRef,\n );\n\n useEffect(() => {\n updateInputWithSelectedTime();\n // @ts-expect-error TimeType and MappedTimeValue<TimeType> is actually the same\n if (selectedTime !== null) setLastValidSelectedTime(selectedTime);\n }, [selectedTime?.toString()]);\n\n const updateInputWithSelectedTime = () => {\n const selectedTimeString = getStringFromTimeValue(selectedTime);\n setInputText(selectedTimeString);\n\n const timeFieldIsFocused = document.activeElement === timeFieldRef?.current;\n if (selectedTimeString === '' && !timeFieldIsFocused)\n addPlaceholderToInput();\n };\n\n const getStringFromTimeValue = (timeValue: TimeValue | null) => {\n if (timeValue === null) return '';\n\n const timeObject = 'day' in timeValue ? toTime(timeValue) : timeValue;\n\n if (showSeconds) return timeObject.toString().slice(0, 8);\n\n return timeObject.toString().slice(0, 5);\n };\n\n const addPlaceholderToInput = () => {\n if (showSeconds) setInputText('–– : –– : ––');\n else setInputText('–– : ––');\n };\n\n const handleChangeTime = () => {\n const newTime = getValueForOnChangeFromInput();\n\n if (newTime === inputResult.INVALID) {\n return updateInputWithSelectedTime();\n }\n\n if (newTime?.toString() !== selectedTime?.toString()) onChange?.(newTime);\n };\n\n const getValueForOnChangeFromInput = () => {\n const formatedTimeString = formatTimeString(inputText);\n const newTimeObject = formatedTimeStringToTimeObject(formatedTimeString);\n\n if (newTimeObject === inputResult.INVALID) {\n return inputResult.INVALID;\n }\n if (newTimeObject === inputResult.RESET_TIME) {\n return null;\n }\n\n const updatedSelectedTime =\n getSelectedTimeWithTimeFromObject(newTimeObject);\n\n return updatedSelectedTime;\n };\n\n const formatTimeString = (timeString: string): string | inputResult => {\n if (timeString.length === 0) return inputResult.RESET_TIME;\n if (timeString.length < 3 || timeString.length > 8)\n return inputResult.INVALID;\n\n const numberOfColons = (timeString.match(new RegExp(':', 'g')) || [])\n .length;\n const stringLength = timeString.length;\n\n // targets 'd:dd:dd' and 'dd:dd:dd'\n if (numberOfColons === 2 && stringLength >= 7) {\n return timeString.padStart(8, '0');\n }\n\n // targets 'd:dd' and 'dd:dd'\n if (numberOfColons === 1) {\n return timeString.padStart(5, '0');\n }\n\n if (stringLength > 6) return inputResult.INVALID;\n\n const stringLengthIsEven = stringLength % 2 == 0;\n\n const hourString = stringLengthIsEven\n ? timeString.slice(0, 2)\n : timeString.slice(0, 1);\n const minuteString = stringLengthIsEven\n ? timeString.slice(2, 4)\n : timeString.slice(1, 3);\n const secondString = (() => {\n const stringSlice = stringLengthIsEven\n ? timeString.slice(4, 6)\n : timeString.slice(3, 5);\n if (stringSlice === '') return '00';\n return stringSlice;\n })();\n\n const timeStringWithColon =\n hourString.padStart(2, '0') +\n ':' +\n minuteString +\n (showSeconds ? ':' + secondString : '');\n\n return timeStringWithColon;\n };\n\n const formatedTimeStringToTimeObject = (\n formatedTimeString: string | inputResult,\n ): Time | inputResult => {\n if (formatedTimeString === inputResult.INVALID) return inputResult.INVALID;\n if (formatedTimeString === inputResult.RESET_TIME)\n return inputResult.RESET_TIME;\n\n const isNumberTest = /^\\d+$/;\n const hourString = formatedTimeString.slice(0, 2);\n const minuteString = formatedTimeString.slice(3, 5);\n const secondString = formatedTimeString.slice(6, 8);\n if (\n hourString.match(isNumberTest) &&\n minuteString.match(isNumberTest) &&\n (secondString === '' || secondString.match(isNumberTest))\n ) {\n try {\n const timeObject = parseTime(formatedTimeString);\n return timeObject;\n } catch (e) {\n return inputResult.INVALID;\n }\n }\n\n return inputResult.INVALID;\n };\n\n const getSelectedTimeWithTimeFromObject = (\n newTime: Time,\n ): MappedTimeValue<TimeType> => {\n const selectedTimeWithUpdateTime = (\n lastValidSelectedTime ?? new Time()\n ).set({\n hour: newTime.hour,\n minute: newTime.minute,\n second: newTime.second,\n }) as MappedTimeValue<TimeType>;\n\n return selectedTimeWithUpdateTime;\n };\n\n const {\n onBlur,\n onClick,\n onDragStart,\n onFocus,\n onKeyDown,\n onKeyUp,\n onMouseDown,\n onPointerDown,\n onPointerUp,\n ...usedFieldProps\n } = fieldProps;\n\n return (\n <I18nProvider locale={locale}>\n <TextField\n append={\n append ||\n (showClockIcon === true || showClockIcon === 'right' ? (\n <ClockIcon onClick={() => timeFieldRef?.current?.focus()} inline />\n ) : undefined)\n }\n className={classNames('eds-simple-timepicker', {\n 'eds-simple-timepicker--padding-large': padding === 'large',\n 'eds-simple-timepicker--show-seconds': showSeconds,\n 'eds-simple-timepicker--hide-clock': !showClockIcon,\n 'eds-simple-timepicker--has-tooltip': labelTooltip !== undefined,\n })}\n disabled={disabled}\n disableLabelAnimation\n feedback={feedback}\n label={label}\n labelProps={labelProps}\n labelTooltip={labelTooltip}\n onBlur={() => {\n handleChangeTime();\n if (selectedTime === null) {\n addPlaceholderToInput();\n }\n }}\n onChange={e => setInputText(e.target.value)}\n onFocus={() => {\n if (selectedTime === null) {\n setInputText('');\n }\n }}\n onKeyDown={({ key }) => {\n if (key === 'Enter') handleChangeTime();\n }}\n placeholder={showSeconds ? '–– : –– : ––' : '–– : ––'}\n prepend={\n prepend ||\n (showClockIcon === 'left' ? (\n <ClockIcon onClick={() => timeFieldRef?.current?.focus()} />\n ) : undefined)\n }\n readOnly={readOnly}\n ref={mergeRefs(timeFieldRef, inputRef)}\n style={style}\n value={inputText}\n variant={variant}\n {...usedFieldProps}\n />\n </I18nProvider>\n );\n};\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('datepicker', 'form', 'icons');\n\nexport * from './DatePicker';\nexport * from './TimePicker';\nexport * from './shared';\n\nexport {\n CalendarDate,\n CalendarDateTime,\n ZonedDateTime,\n Time,\n} from '@internationalized/date';\nexport type { TimeValue, DateValue } from '@react-types/datepicker';\n"],"names":["useRef","useDateSegment","jsx","date","ZonedDateTime","parseAbsolute","CalendarDateTime","CalendarDate","Time","getLocalTimeZone","GregorianCalendar","toCalendarDateTime","today","toCalendarDate","toZoned","toTime","now","startOfWeek","startOfYear","useLocale","useDateFieldState","useDateField","useEffect","useRandomId","ConditionalWrapper","I18nProvider","BaseFormControl","mergeRefs","useButton","IconButton","useCalendarCell","isEqualDay","useCalendarGrid","getWeeksInMonth","jsxs","Fragment","VisuallyHidden","useCalendarState","useCalendar","LeftArrowIcon","RightArrowIcon","useWindowDimensions","useDatePickerState","useDatePicker","useFloating","update","autoUpdate","offset","space","flip","shift","useOnClickOutside","useOnEscape","zIndexes","Modal","CalendarIcon","DateIcon","useVariant","useInputGroupContext","useOnMount","isFilled","handleOnChange","useTimeFieldState","useTimeField","useState","parseTime","TextField","ClockIcon","warnAboutMissingStyles"],"mappings":"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"}