@react-spectrum/datepicker 3.0.0-nightly.1718 → 3.0.0-nightly.1729

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/main.js CHANGED
@@ -257,20 +257,22 @@ function $c3ebc4931d9b9977$var$Input(props, ref) {
257
257
  // not cause a layout shift.
258
258
  let [reservePadding1, setReservePadding] = $9kQ8p$reactspectrumutils.useValueEffect(false);
259
259
  let onResize = $9kQ8p$react.useCallback(()=>setReservePadding(function*(reservePadding) {
260
- if (reservePadding) // Try to collapse padding if the content is clipped.
261
- {
262
- if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {
260
+ if (inputRef.current) {
261
+ if (reservePadding) // Try to collapse padding if the content is clipped.
262
+ {
263
+ if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {
264
+ let width = inputRef.current.parentElement.offsetWidth;
265
+ yield false;
266
+ // If removing padding causes a layout shift, add it back.
267
+ if (inputRef.current.parentElement.offsetWidth !== width) yield true;
268
+ }
269
+ } else // Try to add padding if the content is not clipped.
270
+ if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {
263
271
  let width = inputRef.current.parentElement.offsetWidth;
264
- yield false;
265
- // If removing padding causes a layout shift, add it back.
266
- if (inputRef.current.parentElement.offsetWidth !== width) yield true;
272
+ yield true;
273
+ // If adding padding does not change the width (i.e. width is constrained), remove it again.
274
+ if (inputRef.current.parentElement.offsetWidth === width) yield false;
267
275
  }
268
- } else // Try to add padding if the content is not clipped.
269
- if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {
270
- let width = inputRef.current.parentElement.offsetWidth;
271
- yield true;
272
- // If adding padding does not change the width (i.e. width is constrained), remove it again.
273
- if (inputRef.current.parentElement.offsetWidth === width) yield false;
274
276
  }
275
277
  })
276
278
  , [
@@ -331,6 +333,20 @@ function $c3ebc4931d9b9977$var$Input(props, ref) {
331
333
  const $c3ebc4931d9b9977$export$f5b8910cec6cf069 = /*#__PURE__*/ ($parcel$interopDefault($9kQ8p$react)).forwardRef($c3ebc4931d9b9977$var$Input);
332
334
 
333
335
 
336
+ var $dc9e5db3fad3e690$exports = {};
337
+ var $4390d311cc480168$exports = {};
338
+ $4390d311cc480168$exports = {
339
+ "time": `Time`,
340
+ "startTime": `Start time`,
341
+ "endTime": `End time`
342
+ };
343
+
344
+
345
+ $dc9e5db3fad3e690$exports = {
346
+ "en-US": $4390d311cc480168$exports
347
+ };
348
+
349
+
334
350
 
335
351
 
336
352
 
@@ -542,6 +558,7 @@ function $5c1ddf85d7c27889$var$DatePicker(props, ref) {
542
558
  let { isOpen: isOpen , setOpen: setOpen } = state;
543
559
  let { direction: direction } = $9kQ8p$reactariai18n.useLocale();
544
560
  let domRef = $4d2e419f522adb48$export$71a23a36270e4bf0(ref);
561
+ let stringFormatter = $9kQ8p$reactariai18n.useLocalizedStringFormatter((/*@__PURE__*/$parcel$interopDefault($dc9e5db3fad3e690$exports)));
545
562
  let { isFocused: isFocused , isFocusVisible: isFocusVisible , focusProps: focusProps } = $9kQ8p$reactariafocus.useFocusRing({
546
563
  within: true,
547
564
  isTextInput: true,
@@ -572,7 +589,7 @@ function $5c1ddf85d7c27889$var$DatePicker(props, ref) {
572
589
  let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;
573
590
  let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;
574
591
  let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;
575
- let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;
592
+ let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;
576
593
  let showTimeField = !!timeGranularity;
577
594
  let visibleMonths = $4d2e419f522adb48$export$12ce2869ce471b1f(maxVisibleMonths);
578
595
  return(/*#__PURE__*/ ($parcel$interopDefault($9kQ8p$react)).createElement($9kQ8p$reactspectrumlabel.Field, {
@@ -628,7 +645,7 @@ function $5c1ddf85d7c27889$var$DatePicker(props, ref) {
628
645
  }), showTimeField && /*#__PURE__*/ ($parcel$interopDefault($9kQ8p$react)).createElement("div", {
629
646
  className: $9kQ8p$reactspectrumutils.classNames((/*@__PURE__*/$parcel$interopDefault($91c3db8c6a21ca71$exports)), 'react-spectrum-Datepicker-timeFields')
630
647
  }, /*#__PURE__*/ ($parcel$interopDefault($9kQ8p$react)).createElement($740ff83729a8f317$export$5eaee2322dd727eb, {
631
- label: "Time",
648
+ label: stringFormatter.format('time'),
632
649
  value: state.timeValue,
633
650
  onChange: state.setTimeValue,
634
651
  placeholderValue: timePlaceholder,
@@ -665,6 +682,7 @@ function $5c1ddf85d7c27889$var$DatePicker(props, ref) {
665
682
 
666
683
 
667
684
 
685
+
668
686
 
669
687
 
670
688
  function $16cafb71dac155a4$var$DateRangePicker(props, ref) {
@@ -683,6 +701,7 @@ function $16cafb71dac155a4$var$DateRangePicker(props, ref) {
683
701
  let { isOpen: isOpen , setOpen: setOpen } = state;
684
702
  let { direction: direction } = $9kQ8p$reactariai18n.useLocale();
685
703
  let domRef = $4d2e419f522adb48$export$71a23a36270e4bf0(ref);
704
+ let stringFormatter = $9kQ8p$reactariai18n.useLocalizedStringFormatter((/*@__PURE__*/$parcel$interopDefault($dc9e5db3fad3e690$exports)));
686
705
  let { isFocused: isFocused , isFocusVisible: isFocusVisible , focusProps: focusProps } = $9kQ8p$reactariafocus.useFocusRing({
687
706
  within: true,
688
707
  isTextInput: true,
@@ -713,7 +732,7 @@ function $16cafb71dac155a4$var$DateRangePicker(props, ref) {
713
732
  let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;
714
733
  let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;
715
734
  let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;
716
- let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;
735
+ let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;
717
736
  let showTimeField = !!timeGranularity;
718
737
  let visibleMonths = $4d2e419f522adb48$export$12ce2869ce471b1f(maxVisibleMonths);
719
738
  return(/*#__PURE__*/ ($parcel$interopDefault($9kQ8p$react)).createElement($9kQ8p$reactspectrumlabel.Field, {
@@ -777,7 +796,7 @@ function $16cafb71dac155a4$var$DateRangePicker(props, ref) {
777
796
  marginTop: "size-100",
778
797
  UNSAFE_className: $9kQ8p$reactspectrumutils.classNames((/*@__PURE__*/$parcel$interopDefault($91c3db8c6a21ca71$exports)), 'react-spectrum-Datepicker-timeFields')
779
798
  }, /*#__PURE__*/ ($parcel$interopDefault($9kQ8p$react)).createElement($740ff83729a8f317$export$5eaee2322dd727eb, {
780
- label: "Start time",
799
+ label: stringFormatter.format('startTime'),
781
800
  value: ((ref1 = state.timeRange) === null || ref1 === void 0 ? void 0 : ref1.start) || null,
782
801
  onChange: (v)=>state.setTime('start', v)
783
802
  ,
@@ -789,7 +808,7 @@ function $16cafb71dac155a4$var$DateRangePicker(props, ref) {
789
808
  hideTimeZone: props.hideTimeZone,
790
809
  flex: true
791
810
  }), /*#__PURE__*/ ($parcel$interopDefault($9kQ8p$react)).createElement($740ff83729a8f317$export$5eaee2322dd727eb, {
792
- label: "End time",
811
+ label: stringFormatter.format('endTime'),
793
812
  value: ((ref2 = state.timeRange) === null || ref2 === void 0 ? void 0 : ref2.end) || null,
794
813
  onChange: (v)=>state.setTime('end', v)
795
814
  ,
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/datepicker/src/index.ts","packages/@react-spectrum/datepicker/src/DatePicker.tsx","packages/@react-spectrum/datepicker/src/DatePickerField.tsx","packages/@react-spectrum/datepicker/src/DatePickerSegment.tsx","packages/@react-spectrum/datepicker/src/styles.css","packages/@react-spectrum/datepicker/src/Input.tsx","packages/@adobe/spectrum-css-temp/components/textfield/vars.css","packages/@adobe/spectrum-css-temp/components/inputgroup/vars.css","packages/@react-spectrum/datepicker/src/TimeField.tsx","packages/@react-spectrum/datepicker/src/utils.ts","packages/@react-spectrum/datepicker/src/DateRangePicker.tsx","packages/@react-spectrum/datepicker/src/DateField.tsx"],"sourcesContent":["/*\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/// <reference types=\"css-module-types\" />\n\nexport {DatePicker} from './DatePicker';\nexport {DateRangePicker} from './DateRangePicker';\nexport {TimeField} from './TimeField';\nexport {DateField} from './DateField';\nexport type {SpectrumDateFieldProps, SpectrumDatePickerProps, SpectrumDateRangePickerProps, SpectrumTimeFieldProps} from '@react-types/datepicker';\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\nimport {Calendar} from '@react-spectrum/calendar';\nimport CalendarIcon from '@spectrum-icons/workflow/Calendar';\nimport {classNames} from '@react-spectrum/utils';\nimport {Content} from '@react-spectrum/view';\nimport {DatePickerField} from './DatePickerField';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDatePickerProps} from '@react-types/datepicker';\nimport {Dialog, DialogTrigger} from '@react-spectrum/dialog';\nimport {Field} from '@react-spectrum/label';\nimport {FieldButton} from '@react-spectrum/button';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport {mergeProps} from '@react-aria/utils';\nimport React, {ReactElement, useRef} from 'react';\nimport '@adobe/spectrum-css-temp/components/textfield/vars.css'; // HACK: must be included BEFORE inputgroup\nimport styles from '@adobe/spectrum-css-temp/components/inputgroup/vars.css';\nimport {TimeField} from './TimeField';\nimport {useDatePicker} from '@react-aria/datepicker';\nimport {useDatePickerState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';\nimport {useFocusRing} from '@react-aria/focus';\nimport {useHover} from '@react-aria/interactions';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DatePicker<T extends DateValue>(props: SpectrumDatePickerProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isQuiet,\n isDisabled,\n isReadOnly,\n placeholderValue,\n maxVisibleMonths = 1\n } = props;\n let {hoverProps, isHovered} = useHover({isDisabled});\n let targetRef = useRef<HTMLDivElement>();\n let state = useDatePickerState({\n ...props,\n shouldCloseOnSelect: () => !state.hasTime\n });\n let {groupProps, labelProps, fieldProps, descriptionProps, errorMessageProps, buttonProps, dialogProps, calendarProps} = useDatePicker(props, state, targetRef);\n let {isOpen, setOpen} = state;\n let {direction} = useLocale();\n let domRef = useFocusManagerRef(ref);\n\n let {isFocused, isFocusVisible, focusProps} = useFocusRing({\n within: true,\n isTextInput: true,\n autoFocus\n });\n\n let {isFocused: isFocusedButton, focusProps: focusPropsButton} = useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus\n });\n\n let className = classNames(\n styles,\n 'spectrum-InputGroup',\n {\n 'spectrum-InputGroup--quiet': isQuiet,\n 'spectrum-InputGroup--invalid': state.validationState === 'invalid',\n 'is-disabled': isDisabled,\n 'is-hovered': isHovered,\n 'is-focused': isFocused,\n 'focus-ring': isFocusVisible && !isFocusedButton\n }\n );\n\n let fieldClassName = classNames(\n styles,\n 'spectrum-InputGroup-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': state.validationState === 'invalid'\n }\n );\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n let placeholder: DateValue = placeholderValue;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;\n let showTimeField = !!timeGranularity;\n\n let visibleMonths = useVisibleMonths(maxVisibleMonths);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <div\n {...mergeProps(groupProps, hoverProps, focusProps)}\n className={className}\n ref={targetRef}>\n <Input\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n validationState={state.validationState}\n className={classNames(styles, 'spectrum-InputGroup-field')}\n inputClassName={fieldClassName}>\n <DatePickerField\n {...fieldProps}\n data-testid=\"date-field\"\n isQuiet={isQuiet} />\n </Input>\n <DialogTrigger\n type=\"popover\"\n mobileType=\"tray\"\n placement={direction === 'rtl' ? 'bottom right' : 'bottom left'}\n targetRef={targetRef}\n hideArrow\n isOpen={isOpen}\n onOpenChange={setOpen}\n shouldFlip={props.shouldFlip}>\n <FieldButton\n {...mergeProps(buttonProps, focusPropsButton)}\n UNSAFE_className={classNames(styles, 'spectrum-FieldButton')}\n isQuiet={isQuiet}\n validationState={state.validationState}\n isDisabled={isDisabled || isReadOnly}>\n <CalendarIcon />\n </FieldButton>\n <Dialog UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialog')} {...dialogProps}>\n <Content>\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialogContent')}>\n <Calendar\n {...calendarProps}\n visibleMonths={visibleMonths}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-calendar', {'is-invalid': state.validationState === 'invalid'})} />\n {showTimeField &&\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>\n <TimeField\n label=\"Time\"\n value={state.timeValue}\n onChange={state.setTimeValue}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n marginTop=\"size-100\" />\n </div>\n }\n </div>\n </Content>\n </Dialog>\n </DialogTrigger>\n </div>\n </Field>\n );\n}\n\n/**\n * DatePickers combine a DateField and a Calendar popover to allow users to enter or select a date and time value.\n */\nconst _DatePicker = React.forwardRef(DatePicker) as <T extends DateValue>(props: SpectrumDatePickerProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DatePicker as DatePicker};\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\nimport {classNames} from '@react-spectrum/utils';\nimport {createCalendar} from '@internationalized/date';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDatePickerProps} from '@react-types/datepicker';\nimport React, {useRef} from 'react';\nimport {useDateField} from '@react-aria/datepicker';\nimport {useDateFieldState} from '@react-stately/datepicker';\nimport {useLocale} from '@react-aria/i18n';\n\ninterface DatePickerFieldProps<T extends DateValue> extends SpectrumDatePickerProps<T> {\n inputClassName?: string,\n hideValidationIcon?: boolean,\n maxGranularity?: SpectrumDatePickerProps<T>['granularity']\n}\n\nexport function DatePickerField<T extends DateValue>(props: DatePickerFieldProps<T>) {\n let {\n isDisabled,\n isReadOnly,\n isRequired,\n inputClassName\n } = props;\n let ref = useRef();\n let {locale} = useLocale();\n let state = useDateFieldState({\n ...props,\n locale,\n createCalendar\n });\n\n let {fieldProps} = useDateField(props, state, ref);\n\n return (\n <div {...fieldProps} data-testid={props['data-testid']} className={classNames(datepickerStyles, 'react-spectrum-Datepicker-segments', inputClassName)} ref={ref}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </div>\n );\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\nimport {classNames} from '@react-spectrum/utils';\nimport {DateFieldState, DateSegment} from '@react-stately/datepicker';\nimport {DatePickerBase, DateValue} from '@react-types/datepicker';\nimport React, {useRef} from 'react';\nimport styles from './styles.css';\nimport {useDateSegment} from '@react-aria/datepicker';\n\ninterface DatePickerSegmentProps extends DatePickerBase<DateValue> {\n segment: DateSegment,\n state: DateFieldState\n}\n\ninterface LiteralSegmentProps {\n segment: DateSegment\n}\n\nexport function DatePickerSegment({segment, state, ...otherProps}: DatePickerSegmentProps) {\n switch (segment.type) {\n // A separator, e.g. punctuation\n case 'literal':\n return <LiteralSegment segment={segment} />;\n\n // Editable segment\n default:\n return <EditableSegment segment={segment} state={state} {...otherProps} />;\n }\n}\n\nfunction LiteralSegment({segment}: LiteralSegmentProps) {\n return (\n <span\n aria-hidden=\"true\"\n className={classNames(styles, 'react-spectrum-Datepicker-literal')}\n data-testid={segment.type === 'literal' ? undefined : segment.type}>\n {segment.text}\n </span>\n );\n}\n\nfunction EditableSegment({segment, state}: DatePickerSegmentProps) {\n let ref = useRef();\n let {segmentProps} = useDateSegment(segment, state, ref);\n return (\n <div\n {...segmentProps}\n ref={ref}\n className={classNames(styles, 'react-spectrum-DatePicker-cell', {\n 'is-placeholder': segment.isPlaceholder,\n 'is-read-only': !segment.isEditable\n })}\n style={{\n ...segmentProps.style,\n minWidth: segment.maxValue != null ? String(segment.maxValue).length + 'ch' : null\n }}\n data-testid={segment.type}>\n <span aria-hidden=\"true\" className={classNames(styles, 'react-spectrum-DatePicker-placeholder')}>{segment.placeholder}</span>\n {segment.isPlaceholder ? '' : segment.text}\n </div>\n );\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.react-spectrum-Datepicker-fieldWrapper.react-spectrum-Datepicker-fieldWrapper.react-spectrum-Datepicker-fieldWrapper {\n width: auto;\n min-width: var(--spectrum-global-dimension-size-2000);\n max-width: 100%;\n }\n\n.react-spectrum-Datepicker-startField {\n width: auto;\n padding-inline-end: var(--spectrum-global-dimension-size-100);\n}\n\n.react-spectrum-Datepicker-endField {\n width: auto;\n flex: 1;\n padding-inline-start: var(--spectrum-global-dimension-size-100);\n}\n\n.react-spectrum-Datepicker-field ~ .react-spectrum-Datepicker-endField > .react-spectrum-Datepicker-input {\n border-inline-start-width: 0;\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n}\n\n.react-spectrum-Datepicker-field.react-spectrum-Datepicker-field {\n width: auto;\n}\n\n/* specificity war with .spectrum-Field--positionSide etc. */\n.react-spectrum-DateField.react-spectrum-DateField.react-spectrum-DateField.react-spectrum-DateField {\n min-width: var(--spectrum-global-dimension-size-2000)\n}\n\n.react-spectrum-TimeField.react-spectrum-TimeField.react-spectrum-TimeField.react-spectrum-TimeField {\n min-width: var(--spectrum-global-dimension-size-1250);\n}\n\n.react-spectrum-TimeField-fieldWrapper.react-spectrum-TimeField-fieldWrapper.react-spectrum-TimeField-fieldWrapper {\n width: auto;\n min-width: var(--spectrum-global-dimension-size-1250);\n}\n\n.react-spectrum-Datepicker-input.react-spectrum-Datepicker-input {\n /* always reserve space for the validation icon */\n padding-inline-end: calc(var(--spectrum-textfield-padding-x) + var(--spectrum-icon-alert-medium-width) + var(--spectrum-textfield-icon-margin-left));\n cursor: text;\n}\n\n.react-spectrum-Datepicker-inputContents {\n display: flex;\n align-items: center;\n height: 100%;\n overflow-x: auto;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n\n &::-webkit-scrollbar { /* WebKit */\n width: 0;\n height: 0;\n display: none;\n }\n}\n\n.react-spectrum-Datepicker-rangeDash {\n &:before {\n content: '–';\n }\n}\n\n.react-spectrum-Datepicker-segments {\n display: flex;\n align-items: center;\n}\n\n.react-spectrum-Datepicker-literal {\n white-space: pre;\n user-select: none;\n color: var(--spectrum-textfield-text-color);\n}\n\n.react-spectrum-DatePicker-cell {\n border: none;\n background: none;\n padding: 0 2px;\n border-radius: 2px;\n font-variant-numeric: tabular-nums;\n text-align: end;\n box-sizing: content-box;\n white-space: nowrap;\n color: var(--spectrum-textfield-text-color);\n\n &::selection {\n /* hide the selection because there is no way to fully prevent it in Firefox */\n /* https://bugzilla.mozilla.org/show_bug.cgi?id=1742153 */\n background: transparent;\n }\n}\n\n.react-spectrum-DatePicker-placeholder {\n display: block;\n width: 100%;\n text-align: center;\n font-style: italic;\n visibility: hidden;\n height: 0;\n pointer-events: none;\n}\n\n.react-spectrum-DatePicker-cell.is-placeholder {\n color: var(--react-spectrum-datepicker-placeholder-color);\n\n .react-spectrum-DatePicker-placeholder {\n visibility: visible;\n height: auto;\n }\n}\n\n.react-spectrum-DatePicker-cell.is-placeholder ~ .react-spectrum-Datepicker-literal {\n color: var(--spectrum-textfield-placeholder-text-color, var(--spectrum-global-color-gray-600));\n}\n\n.react-spectrum-DatePicker-cell.is-read-only {\n color: var(--spectrum-global-color-gray-700);\n}\n\n.react-spectrum-DatePicker-cell:focus {\n background-color: var(--spectrum-global-color-static-blue);\n color: white;\n caret-color: transparent;\n outline: none;\n}\n\n.react-spectrum-Datepicker-dialog.react-spectrum-Datepicker-dialog {\n width: auto;\n}\n\n.react-spectrum-Datepicker-dialogContent {\n display: flex;\n flex-direction: column;\n\n .react-spectrum-Datepicker-calendar.is-invalid {\n /* Only apply display: contents when the calendar is invalid, which allows us to move the\n * error message below the time fields. Otherwise, don't do this because it breaks dragging\n * the selected range on Android. */\n display: contents;\n }\n\n /* Push the help text within the calendar down to the bottom of the dialog, below the time fields. */\n :global(.spectrum-Calendar-helpText) {\n order: 10;\n margin: var(--spectrum-global-dimension-size-200) var(--spectrum-calendar-day-padding) 0 var(--spectrum-calendar-day-padding);\n }\n}\n\n/* when displayed in a tray, reduce the padding of the dialog */\n@media (max-width: 700px) {\n .react-spectrum-Datepicker-dialog {\n --spectrum-dialog-padding-x: 8px;\n\n .react-spectrum-Datepicker-dialogContent {\n margin: 0 auto;\n max-width: calc((var(--spectrum-calendar-day-width) * 7) + (var(--spectrum-calendar-day-padding) * 12));\n }\n }\n}\n\n.react-spectrum-Datepicker-timeFields {\n width: 100%;\n min-width: calc(var(--spectrum-calendar-day-width) * 7);\n max-width: calc((var(--spectrum-calendar-day-width) * 7) + (var(--spectrum-calendar-day-padding) * 12));\n padding: 0 var(--spectrum-calendar-day-padding);\n box-sizing: border-box;\n}\n\n@media (forced-colors:active) {\n .react-spectrum-DatePicker-cell:focus {\n forced-color-adjust: none;\n background-color: Highlight;\n color: HighlightText;\n }\n .react-spectrum-DatePicker-cell.is-read-only {\n color: ButtonText;\n &:focus {\n color: HighlightText;\n }\n }\n .react-spectrum-DatePicker-cell.is-placeholder {\n color: ButtonText;\n &:focus {\n color: HighlightText;\n }\n }\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\nimport Alert from '@spectrum-icons/ui/AlertMedium';\nimport Checkmark from '@spectrum-icons/ui/CheckmarkMedium';\nimport {classNames, useValueEffect} from '@react-spectrum/utils';\nimport datepickerStyles from './styles.css';\nimport {FocusRing} from '@react-aria/focus';\nimport {mergeRefs, useEvent, useLayoutEffect, useResizeObserver} from '@react-aria/utils';\nimport React, {useCallback, useRef} from 'react';\nimport textfieldStyles from '@adobe/spectrum-css-temp/components/textfield/vars.css';\n\nfunction Input(props, ref) {\n let inputRef = useRef(null);\n let {\n isDisabled,\n isQuiet,\n inputClassName,\n validationState,\n children,\n fieldProps,\n className,\n style\n } = props;\n\n // Reserve padding for the error icon when the width of the input is unconstrained.\n // When constrained, don't reserve space because adding it only when invalid will\n // not cause a layout shift.\n let [reservePadding, setReservePadding] = useValueEffect(false);\n let onResize = useCallback(() => setReservePadding(function *(reservePadding) {\n if (reservePadding) {\n // Try to collapse padding if the content is clipped.\n if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {\n let width = inputRef.current.parentElement.offsetWidth;\n yield false;\n\n // If removing padding causes a layout shift, add it back.\n if (inputRef.current.parentElement.offsetWidth !== width) {\n yield true;\n }\n }\n } else {\n // Try to add padding if the content is not clipped.\n if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {\n let width = inputRef.current.parentElement.offsetWidth;\n yield true;\n\n // If adding padding does not change the width (i.e. width is constrained), remove it again.\n if (inputRef.current.parentElement.offsetWidth === width) {\n yield false;\n }\n }\n }\n }), [inputRef, setReservePadding]);\n\n useLayoutEffect(onResize, [onResize]);\n useResizeObserver({\n ref: inputRef,\n onResize\n });\n\n // We also need to listen for resize events of the window so we can detect\n // when there is enough space for the padding to be re-added. Ideally we'd\n // use a resize observer on a parent element, but it's hard to know _what_\n // parent element.\n useEvent(useRef(typeof window !== 'undefined' ? window : null), 'resize', onResize);\n\n let isInvalid = validationState === 'invalid';\n let textfieldClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield',\n {\n 'spectrum-Textfield--invalid': isInvalid,\n 'spectrum-Textfield--valid': validationState === 'valid',\n 'spectrum-Textfield--quiet': isQuiet\n },\n classNames(datepickerStyles, 'react-spectrum-Datepicker-field'),\n className\n );\n\n let inputClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': isInvalid\n },\n reservePadding && classNames(datepickerStyles, 'react-spectrum-Datepicker-input'),\n inputClassName\n );\n\n let iconClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield-validationIcon'\n );\n\n let validationIcon = null;\n if (validationState === 'invalid') {\n validationIcon = <Alert data-testid=\"invalid-icon\" UNSAFE_className={iconClass} />;\n } else if (validationState === 'valid') {\n validationIcon = <Checkmark data-testid=\"valid-icon\" UNSAFE_className={iconClass} />;\n }\n\n return (\n <div role=\"presentation\" {...fieldProps} className={textfieldClass} style={style}>\n <FocusRing focusClass={classNames(textfieldStyles, 'is-focused')} focusRingClass={classNames(textfieldStyles, 'focus-ring')} isTextInput within>\n <div role=\"presentation\" className={inputClass}>\n <div role=\"presentation\" className={classNames(datepickerStyles, 'react-spectrum-Datepicker-inputContents')} ref={mergeRefs(ref, inputRef)}>\n {children}\n </div>\n </div>\n </FocusRing>\n {validationIcon}\n </div>\n );\n}\n\nconst _Input = React.forwardRef(Input);\nexport {_Input as Input};\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@import './index.css';\n@import './skin.css';\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@import './index.css';\n@import './skin.css';\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\nimport {classNames} from '@react-spectrum/utils';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {Field} from '@react-spectrum/label';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport React, {ReactElement} from 'react';\nimport {SpectrumTimeFieldProps, TimeValue} from '@react-types/datepicker';\nimport {useFocusManagerRef} from './utils';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\nimport {useTimeField} from '@react-aria/datepicker';\nimport {useTimeFieldState} from '@react-stately/datepicker';\n\nfunction TimeField<T extends TimeValue>(props: SpectrumTimeFieldProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isQuiet\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n let {locale} = useLocale();\n let state = useTimeFieldState({\n ...props,\n locale\n });\n\n let {labelProps, fieldProps, descriptionProps, errorMessageProps} = useTimeField(props, state, domRef);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-TimeField-fieldWrapper')}>\n <Input\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n autoFocus={autoFocus}\n validationState={state.validationState}\n className={classNames(datepickerStyles, 'react-spectrum-TimeField')}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </Input>\n </Field>\n );\n}\n\n/**\n * TimeFields allow users to enter and edit time values using a keyboard.\n * Each part of the time is displayed in an individually editable segment.\n */\nconst _TimeField = React.forwardRef(TimeField) as <T extends TimeValue>(props: SpectrumTimeFieldProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_TimeField as TimeField};\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 */\nimport {createDOMRef} from '@react-spectrum/utils';\nimport {createFocusManager} from '@react-aria/focus';\nimport {FocusableRef} from '@react-types/shared';\nimport {SpectrumDatePickerBase} from '@react-types/datepicker';\nimport {useDateFormatter} from '@react-aria/i18n';\nimport {useDisplayNames} from '@react-aria/datepicker';\nimport {useImperativeHandle, useMemo, useRef, useState} from 'react';\nimport {useLayoutEffect} from '@react-aria/utils';\nimport {useProvider} from '@react-spectrum/provider';\n\nexport function useFormatHelpText(props: Pick<SpectrumDatePickerBase<any>, 'description' | 'showFormatHelpText'>) {\n let formatter = useDateFormatter({dateStyle: 'short'});\n let displayNames = useDisplayNames();\n return useMemo(() => {\n if (props.description) {\n return props.description;\n }\n\n if (props.showFormatHelpText) {\n return formatter.formatToParts(new Date()).map(s => {\n if (s.type === 'literal') {\n return s.value;\n }\n\n return displayNames.of(s.type);\n }).join(' ');\n }\n\n return '';\n }, [props.description, props.showFormatHelpText, formatter, displayNames]);\n}\n\nexport function useVisibleMonths(maxVisibleMonths: number) {\n let {scale} = useProvider();\n let [visibleMonths, setVisibleMonths] = useState(getVisibleMonths(scale));\n useLayoutEffect(() => {\n let onResize = () => setVisibleMonths(getVisibleMonths(scale));\n onResize();\n\n window.addEventListener('resize', onResize);\n return () => {\n window.removeEventListener('resize', onResize);\n };\n }, [scale]);\n\n return Math.max(1, Math.min(visibleMonths, maxVisibleMonths, 3));\n}\n\nfunction getVisibleMonths(scale) {\n if (typeof window === 'undefined') {\n return 1;\n }\n let monthWidth = scale === 'large' ? 336 : 280;\n let gap = scale === 'large' ? 30 : 24;\n let popoverPadding = scale === 'large' ? 32 : 48;\n return Math.floor((window.innerWidth - popoverPadding * 2) / (monthWidth + gap));\n}\n\nexport function useFocusManagerRef(ref: FocusableRef<HTMLElement>) {\n let domRef = useRef();\n useImperativeHandle(ref, () => ({\n ...createDOMRef(domRef),\n focus() {\n createFocusManager(domRef).focusFirst({tabbable: true});\n }\n }));\n return domRef;\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\nimport CalendarIcon from '@spectrum-icons/workflow/Calendar';\nimport {classNames} from '@react-spectrum/utils';\nimport {Content} from '@react-spectrum/view';\nimport {DatePickerField} from './DatePickerField';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDateRangePickerProps} from '@react-types/datepicker';\nimport {Dialog, DialogTrigger} from '@react-spectrum/dialog';\nimport {Field} from '@react-spectrum/label';\nimport {FieldButton} from '@react-spectrum/button';\nimport {Flex} from '@react-spectrum/layout';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport {mergeProps} from '@react-aria/utils';\nimport {RangeCalendar} from '@react-spectrum/calendar';\nimport React, {ReactElement, useRef} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/inputgroup/vars.css';\nimport {TimeField} from './TimeField';\nimport {useDateRangePicker} from '@react-aria/datepicker';\nimport {useDateRangePickerState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';\nimport {useFocusRing} from '@react-aria/focus';\nimport {useHover} from '@react-aria/interactions';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n isQuiet,\n isDisabled,\n isReadOnly,\n autoFocus,\n placeholderValue,\n maxVisibleMonths = 1\n } = props;\n let {hoverProps, isHovered} = useHover({isDisabled});\n let targetRef = useRef<HTMLDivElement>();\n let state = useDateRangePickerState({\n ...props,\n shouldCloseOnSelect: () => !state.hasTime\n });\n let {labelProps, groupProps, buttonProps, dialogProps, startFieldProps, endFieldProps, descriptionProps, errorMessageProps, calendarProps} = useDateRangePicker(props, state, targetRef);\n let {isOpen, setOpen} = state;\n let {direction} = useLocale();\n let domRef = useFocusManagerRef(ref);\n\n let {isFocused, isFocusVisible, focusProps} = useFocusRing({\n within: true,\n isTextInput: true,\n autoFocus\n });\n\n let {isFocused: isFocusedButton, focusProps: focusPropsButton} = useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus\n });\n\n let className = classNames(\n styles,\n 'spectrum-InputGroup',\n {\n 'spectrum-InputGroup--quiet': isQuiet,\n 'spectrum-InputGroup--invalid': state.validationState === 'invalid',\n 'is-disabled': isDisabled,\n 'is-hovered': isHovered,\n 'is-focused': isFocused,\n 'focus-ring': isFocusVisible && !isFocusedButton\n }\n );\n\n let fieldClassName = classNames(\n styles,\n 'spectrum-InputGroup-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': state.validationState === 'invalid'\n }\n );\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n let placeholder: DateValue = placeholderValue;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;\n let showTimeField = !!timeGranularity;\n\n let visibleMonths = useVisibleMonths(maxVisibleMonths);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <div\n {...mergeProps(groupProps, hoverProps, focusProps)}\n className={className}\n ref={targetRef}>\n <Input\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n validationState={state.validationState}\n className={classNames(styles, 'spectrum-InputGroup-field')}\n inputClassName={fieldClassName}>\n <DatePickerField\n {...startFieldProps}\n data-testid=\"start-date\"\n isQuiet={props.isQuiet}\n inputClassName={classNames(datepickerStyles, 'react-spectrum-Datepicker-startField')} />\n <DateRangeDash />\n <DatePickerField\n {...endFieldProps}\n data-testid=\"end-date\"\n isQuiet={props.isQuiet}\n inputClassName={classNames(\n styles,\n 'spectrum-Datepicker-endField',\n classNames(\n datepickerStyles,\n 'react-spectrum-Datepicker-endField'\n )\n )} />\n </Input>\n <DialogTrigger\n type=\"popover\"\n mobileType=\"tray\"\n placement={direction === 'rtl' ? 'bottom right' : 'bottom left'}\n targetRef={targetRef}\n hideArrow\n isOpen={isOpen}\n onOpenChange={setOpen}\n shouldFlip={props.shouldFlip}>\n <FieldButton\n {...mergeProps(buttonProps, focusPropsButton)}\n UNSAFE_className={classNames(styles, 'spectrum-FieldButton')}\n isQuiet={isQuiet}\n validationState={state.validationState}\n isDisabled={isDisabled || isReadOnly}>\n <CalendarIcon />\n </FieldButton>\n <Dialog UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialog')} {...dialogProps}>\n <Content>\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialogContent')}>\n <RangeCalendar\n {...calendarProps}\n visibleMonths={visibleMonths}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-calendar', {'is-invalid': state.validationState === 'invalid'})} />\n {showTimeField &&\n <Flex gap=\"size-100\" marginTop=\"size-100\" UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>\n <TimeField\n label=\"Start time\"\n value={state.timeRange?.start || null}\n onChange={v => state.setTime('start', v)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n flex />\n <TimeField\n label=\"End time\"\n value={state.timeRange?.end || null}\n onChange={v => state.setTime('end', v)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n flex />\n </Flex>\n }\n </div>\n </Content>\n </Dialog>\n </DialogTrigger>\n </div>\n </Field>\n );\n}\n\nfunction DateRangeDash() {\n return (\n <div\n aria-hidden=\"true\"\n data-testid=\"date-range-dash\"\n className={classNames(datepickerStyles, 'react-spectrum-Datepicker-rangeDash')} />\n );\n}\n\n/**\n * DateRangePickers combine two DateFields and a RangeCalendar popover to allow users\n * to enter or select a date and time range.\n */\nconst _DateRangePicker = React.forwardRef(DateRangePicker) as <T extends DateValue>(props: SpectrumDateRangePickerProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DateRangePicker as DateRangePicker};\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\nimport {classNames} from '@react-spectrum/utils';\nimport {createCalendar} from '@internationalized/date';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDateFieldProps} from '@react-types/datepicker';\nimport {Field} from '@react-spectrum/label';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport React, {ReactElement} from 'react';\nimport {useDateField} from '@react-aria/datepicker';\nimport {useDateFieldState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText} from './utils';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DateField<T extends DateValue>(props: SpectrumDateFieldProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isQuiet\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n let {locale} = useLocale();\n let state = useDateFieldState({\n ...props,\n locale,\n createCalendar\n });\n\n let {labelProps, fieldProps, descriptionProps, errorMessageProps} = useDateField(props, state, domRef);\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <Input\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n autoFocus={autoFocus}\n validationState={state.validationState}\n className={classNames(datepickerStyles, 'react-spectrum-DateField')}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </Input>\n </Field>\n );\n}\n\n/**\n * DateFields allow users to enter and edit date and time values using a keyboard.\n * Each part of a date value is displayed in an individually editable segment.\n */\nconst _DateField = React.forwardRef(DateField) as <T extends DateValue>(props: SpectrumDateFieldProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DateField as DateField};\n"],"names":[],"version":3,"file":"main.js.map"}
1
+ {"mappings":"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","sources":["packages/@react-spectrum/datepicker/src/index.ts","packages/@react-spectrum/datepicker/src/DatePicker.tsx","packages/@react-spectrum/datepicker/src/DatePickerField.tsx","packages/@react-spectrum/datepicker/src/DatePickerSegment.tsx","packages/@react-spectrum/datepicker/src/styles.css","packages/@react-spectrum/datepicker/src/Input.tsx","packages/@adobe/spectrum-css-temp/components/textfield/vars.css","packages/@react-spectrum/datepicker/intl/*.js","packages/@react-spectrum/datepicker/intl/en-US.json","packages/@adobe/spectrum-css-temp/components/inputgroup/vars.css","packages/@react-spectrum/datepicker/src/TimeField.tsx","packages/@react-spectrum/datepicker/src/utils.ts","packages/@react-spectrum/datepicker/src/DateRangePicker.tsx","packages/@react-spectrum/datepicker/src/DateField.tsx"],"sourcesContent":["/*\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/// <reference types=\"css-module-types\" />\n\nexport {DatePicker} from './DatePicker';\nexport {DateRangePicker} from './DateRangePicker';\nexport {TimeField} from './TimeField';\nexport {DateField} from './DateField';\nexport type {SpectrumDateFieldProps, SpectrumDatePickerProps, SpectrumDateRangePickerProps, SpectrumTimeFieldProps} from '@react-types/datepicker';\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\nimport {Calendar} from '@react-spectrum/calendar';\nimport CalendarIcon from '@spectrum-icons/workflow/Calendar';\nimport {classNames} from '@react-spectrum/utils';\nimport {Content} from '@react-spectrum/view';\nimport {DatePickerField} from './DatePickerField';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDatePickerProps} from '@react-types/datepicker';\nimport {Dialog, DialogTrigger} from '@react-spectrum/dialog';\nimport {Field} from '@react-spectrum/label';\nimport {FieldButton} from '@react-spectrum/button';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {mergeProps} from '@react-aria/utils';\nimport React, {ReactElement, useRef} from 'react';\nimport '@adobe/spectrum-css-temp/components/textfield/vars.css'; // HACK: must be included BEFORE inputgroup\nimport styles from '@adobe/spectrum-css-temp/components/inputgroup/vars.css';\nimport {TimeField} from './TimeField';\nimport {useDatePicker} from '@react-aria/datepicker';\nimport {useDatePickerState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';\nimport {useFocusRing} from '@react-aria/focus';\nimport {useHover} from '@react-aria/interactions';\nimport {useLocale, useLocalizedStringFormatter} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DatePicker<T extends DateValue>(props: SpectrumDatePickerProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isQuiet,\n isDisabled,\n isReadOnly,\n placeholderValue,\n maxVisibleMonths = 1\n } = props;\n let {hoverProps, isHovered} = useHover({isDisabled});\n let targetRef = useRef<HTMLDivElement>();\n let state = useDatePickerState({\n ...props,\n shouldCloseOnSelect: () => !state.hasTime\n });\n let {groupProps, labelProps, fieldProps, descriptionProps, errorMessageProps, buttonProps, dialogProps, calendarProps} = useDatePicker(props, state, targetRef);\n let {isOpen, setOpen} = state;\n let {direction} = useLocale();\n let domRef = useFocusManagerRef(ref);\n let stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n let {isFocused, isFocusVisible, focusProps} = useFocusRing({\n within: true,\n isTextInput: true,\n autoFocus\n });\n\n let {isFocused: isFocusedButton, focusProps: focusPropsButton} = useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus\n });\n\n let className = classNames(\n styles,\n 'spectrum-InputGroup',\n {\n 'spectrum-InputGroup--quiet': isQuiet,\n 'spectrum-InputGroup--invalid': state.validationState === 'invalid',\n 'is-disabled': isDisabled,\n 'is-hovered': isHovered,\n 'is-focused': isFocused,\n 'focus-ring': isFocusVisible && !isFocusedButton\n }\n );\n\n let fieldClassName = classNames(\n styles,\n 'spectrum-InputGroup-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': state.validationState === 'invalid'\n }\n );\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n let placeholder: DateValue = placeholderValue;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;\n let showTimeField = !!timeGranularity;\n\n let visibleMonths = useVisibleMonths(maxVisibleMonths);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <div\n {...mergeProps(groupProps, hoverProps, focusProps)}\n className={className}\n ref={targetRef}>\n <Input\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n validationState={state.validationState}\n className={classNames(styles, 'spectrum-InputGroup-field')}\n inputClassName={fieldClassName}>\n <DatePickerField\n {...fieldProps}\n data-testid=\"date-field\"\n isQuiet={isQuiet} />\n </Input>\n <DialogTrigger\n type=\"popover\"\n mobileType=\"tray\"\n placement={direction === 'rtl' ? 'bottom right' : 'bottom left'}\n targetRef={targetRef}\n hideArrow\n isOpen={isOpen}\n onOpenChange={setOpen}\n shouldFlip={props.shouldFlip}>\n <FieldButton\n {...mergeProps(buttonProps, focusPropsButton)}\n UNSAFE_className={classNames(styles, 'spectrum-FieldButton')}\n isQuiet={isQuiet}\n validationState={state.validationState}\n isDisabled={isDisabled || isReadOnly}>\n <CalendarIcon />\n </FieldButton>\n <Dialog UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialog')} {...dialogProps}>\n <Content>\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialogContent')}>\n <Calendar\n {...calendarProps}\n visibleMonths={visibleMonths}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-calendar', {'is-invalid': state.validationState === 'invalid'})} />\n {showTimeField &&\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>\n <TimeField\n label={stringFormatter.format('time')}\n value={state.timeValue}\n onChange={state.setTimeValue}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n marginTop=\"size-100\" />\n </div>\n }\n </div>\n </Content>\n </Dialog>\n </DialogTrigger>\n </div>\n </Field>\n );\n}\n\n/**\n * DatePickers combine a DateField and a Calendar popover to allow users to enter or select a date and time value.\n */\nconst _DatePicker = React.forwardRef(DatePicker) as <T extends DateValue>(props: SpectrumDatePickerProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DatePicker as DatePicker};\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\nimport {classNames} from '@react-spectrum/utils';\nimport {createCalendar} from '@internationalized/date';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDatePickerProps} from '@react-types/datepicker';\nimport React, {useRef} from 'react';\nimport {useDateField} from '@react-aria/datepicker';\nimport {useDateFieldState} from '@react-stately/datepicker';\nimport {useLocale} from '@react-aria/i18n';\n\ninterface DatePickerFieldProps<T extends DateValue> extends SpectrumDatePickerProps<T> {\n inputClassName?: string,\n hideValidationIcon?: boolean,\n maxGranularity?: SpectrumDatePickerProps<T>['granularity']\n}\n\nexport function DatePickerField<T extends DateValue>(props: DatePickerFieldProps<T>) {\n let {\n isDisabled,\n isReadOnly,\n isRequired,\n inputClassName\n } = props;\n let ref = useRef();\n let {locale} = useLocale();\n let state = useDateFieldState({\n ...props,\n locale,\n createCalendar\n });\n\n let {fieldProps} = useDateField(props, state, ref);\n\n return (\n <div {...fieldProps} data-testid={props['data-testid']} className={classNames(datepickerStyles, 'react-spectrum-Datepicker-segments', inputClassName)} ref={ref}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </div>\n );\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\nimport {classNames} from '@react-spectrum/utils';\nimport {DateFieldState, DateSegment} from '@react-stately/datepicker';\nimport {DatePickerBase, DateValue} from '@react-types/datepicker';\nimport React, {useRef} from 'react';\nimport styles from './styles.css';\nimport {useDateSegment} from '@react-aria/datepicker';\n\ninterface DatePickerSegmentProps extends DatePickerBase<DateValue> {\n segment: DateSegment,\n state: DateFieldState\n}\n\ninterface LiteralSegmentProps {\n segment: DateSegment\n}\n\nexport function DatePickerSegment({segment, state, ...otherProps}: DatePickerSegmentProps) {\n switch (segment.type) {\n // A separator, e.g. punctuation\n case 'literal':\n return <LiteralSegment segment={segment} />;\n\n // Editable segment\n default:\n return <EditableSegment segment={segment} state={state} {...otherProps} />;\n }\n}\n\nfunction LiteralSegment({segment}: LiteralSegmentProps) {\n return (\n <span\n aria-hidden=\"true\"\n className={classNames(styles, 'react-spectrum-Datepicker-literal')}\n data-testid={segment.type === 'literal' ? undefined : segment.type}>\n {segment.text}\n </span>\n );\n}\n\nfunction EditableSegment({segment, state}: DatePickerSegmentProps) {\n let ref = useRef();\n let {segmentProps} = useDateSegment(segment, state, ref);\n return (\n <div\n {...segmentProps}\n ref={ref}\n className={classNames(styles, 'react-spectrum-DatePicker-cell', {\n 'is-placeholder': segment.isPlaceholder,\n 'is-read-only': !segment.isEditable\n })}\n style={{\n ...segmentProps.style,\n minWidth: segment.maxValue != null ? String(segment.maxValue).length + 'ch' : null\n }}\n data-testid={segment.type}>\n <span aria-hidden=\"true\" className={classNames(styles, 'react-spectrum-DatePicker-placeholder')}>{segment.placeholder}</span>\n {segment.isPlaceholder ? '' : segment.text}\n </div>\n );\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.react-spectrum-Datepicker-fieldWrapper.react-spectrum-Datepicker-fieldWrapper.react-spectrum-Datepicker-fieldWrapper {\n width: auto;\n min-width: var(--spectrum-global-dimension-size-2000);\n max-width: 100%;\n }\n\n.react-spectrum-Datepicker-startField {\n width: auto;\n padding-inline-end: var(--spectrum-global-dimension-size-100);\n}\n\n.react-spectrum-Datepicker-endField {\n width: auto;\n flex: 1;\n padding-inline-start: var(--spectrum-global-dimension-size-100);\n}\n\n.react-spectrum-Datepicker-field ~ .react-spectrum-Datepicker-endField > .react-spectrum-Datepicker-input {\n border-inline-start-width: 0;\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n}\n\n.react-spectrum-Datepicker-field.react-spectrum-Datepicker-field {\n width: auto;\n}\n\n/* specificity war with .spectrum-Field--positionSide etc. */\n.react-spectrum-DateField.react-spectrum-DateField.react-spectrum-DateField.react-spectrum-DateField {\n min-width: var(--spectrum-global-dimension-size-2000)\n}\n\n.react-spectrum-TimeField.react-spectrum-TimeField.react-spectrum-TimeField.react-spectrum-TimeField {\n min-width: var(--spectrum-global-dimension-size-1250);\n}\n\n.react-spectrum-TimeField-fieldWrapper.react-spectrum-TimeField-fieldWrapper.react-spectrum-TimeField-fieldWrapper {\n width: auto;\n min-width: var(--spectrum-global-dimension-size-1250);\n}\n\n.react-spectrum-Datepicker-input.react-spectrum-Datepicker-input {\n /* always reserve space for the validation icon */\n padding-inline-end: calc(var(--spectrum-textfield-padding-x) + var(--spectrum-icon-alert-medium-width) + var(--spectrum-textfield-icon-margin-left));\n cursor: text;\n}\n\n.react-spectrum-Datepicker-inputContents {\n display: flex;\n align-items: center;\n height: 100%;\n overflow-x: auto;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n\n &::-webkit-scrollbar { /* WebKit */\n width: 0;\n height: 0;\n display: none;\n }\n}\n\n.react-spectrum-Datepicker-rangeDash {\n &:before {\n content: '–';\n }\n}\n\n.react-spectrum-Datepicker-segments {\n display: flex;\n align-items: center;\n}\n\n.react-spectrum-Datepicker-literal {\n white-space: pre;\n user-select: none;\n color: var(--spectrum-textfield-text-color);\n}\n\n.react-spectrum-DatePicker-cell {\n border: none;\n background: none;\n padding: 0 2px;\n border-radius: 2px;\n font-variant-numeric: tabular-nums;\n text-align: end;\n box-sizing: content-box;\n white-space: nowrap;\n color: var(--spectrum-textfield-text-color);\n\n &::selection {\n /* hide the selection because there is no way to fully prevent it in Firefox */\n /* https://bugzilla.mozilla.org/show_bug.cgi?id=1742153 */\n background: transparent;\n }\n}\n\n.react-spectrum-DatePicker-placeholder {\n display: block;\n width: 100%;\n text-align: center;\n font-style: italic;\n visibility: hidden;\n height: 0;\n pointer-events: none;\n}\n\n.react-spectrum-DatePicker-cell.is-placeholder {\n color: var(--react-spectrum-datepicker-placeholder-color);\n\n .react-spectrum-DatePicker-placeholder {\n visibility: visible;\n height: auto;\n }\n}\n\n.react-spectrum-DatePicker-cell.is-placeholder ~ .react-spectrum-Datepicker-literal {\n color: var(--spectrum-textfield-placeholder-text-color, var(--spectrum-global-color-gray-600));\n}\n\n.react-spectrum-DatePicker-cell.is-read-only {\n color: var(--spectrum-global-color-gray-700);\n}\n\n.react-spectrum-DatePicker-cell:focus {\n background-color: var(--spectrum-global-color-static-blue);\n color: white;\n caret-color: transparent;\n outline: none;\n}\n\n.react-spectrum-Datepicker-dialog.react-spectrum-Datepicker-dialog {\n width: auto;\n}\n\n.react-spectrum-Datepicker-dialogContent {\n display: flex;\n flex-direction: column;\n\n .react-spectrum-Datepicker-calendar.is-invalid {\n /* Only apply display: contents when the calendar is invalid, which allows us to move the\n * error message below the time fields. Otherwise, don't do this because it breaks dragging\n * the selected range on Android. */\n display: contents;\n }\n\n /* Push the help text within the calendar down to the bottom of the dialog, below the time fields. */\n :global(.spectrum-Calendar-helpText) {\n order: 10;\n margin: var(--spectrum-global-dimension-size-200) var(--spectrum-calendar-day-padding) 0 var(--spectrum-calendar-day-padding);\n }\n}\n\n/* when displayed in a tray, reduce the padding of the dialog */\n@media (max-width: 700px) {\n .react-spectrum-Datepicker-dialog {\n --spectrum-dialog-padding-x: 8px;\n\n .react-spectrum-Datepicker-dialogContent {\n margin: 0 auto;\n max-width: calc((var(--spectrum-calendar-day-width) * 7) + (var(--spectrum-calendar-day-padding) * 12));\n }\n }\n}\n\n.react-spectrum-Datepicker-timeFields {\n width: 100%;\n min-width: calc(var(--spectrum-calendar-day-width) * 7);\n max-width: calc((var(--spectrum-calendar-day-width) * 7) + (var(--spectrum-calendar-day-padding) * 12));\n padding: 0 var(--spectrum-calendar-day-padding);\n box-sizing: border-box;\n}\n\n@media (forced-colors:active) {\n .react-spectrum-DatePicker-cell:focus {\n forced-color-adjust: none;\n background-color: Highlight;\n color: HighlightText;\n }\n .react-spectrum-DatePicker-cell.is-read-only {\n color: ButtonText;\n &:focus {\n color: HighlightText;\n }\n }\n .react-spectrum-DatePicker-cell.is-placeholder {\n color: ButtonText;\n &:focus {\n color: HighlightText;\n }\n }\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\nimport Alert from '@spectrum-icons/ui/AlertMedium';\nimport Checkmark from '@spectrum-icons/ui/CheckmarkMedium';\nimport {classNames, useValueEffect} from '@react-spectrum/utils';\nimport datepickerStyles from './styles.css';\nimport {FocusRing} from '@react-aria/focus';\nimport {mergeRefs, useEvent, useLayoutEffect, useResizeObserver} from '@react-aria/utils';\nimport React, {useCallback, useRef} from 'react';\nimport textfieldStyles from '@adobe/spectrum-css-temp/components/textfield/vars.css';\n\nfunction Input(props, ref) {\n let inputRef = useRef(null);\n let {\n isDisabled,\n isQuiet,\n inputClassName,\n validationState,\n children,\n fieldProps,\n className,\n style\n } = props;\n\n // Reserve padding for the error icon when the width of the input is unconstrained.\n // When constrained, don't reserve space because adding it only when invalid will\n // not cause a layout shift.\n let [reservePadding, setReservePadding] = useValueEffect(false);\n let onResize = useCallback(() => setReservePadding(function *(reservePadding) {\n if (inputRef.current) {\n if (reservePadding) {\n // Try to collapse padding if the content is clipped.\n if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {\n let width = inputRef.current.parentElement.offsetWidth;\n yield false;\n\n // If removing padding causes a layout shift, add it back.\n if (inputRef.current.parentElement.offsetWidth !== width) {\n yield true;\n }\n }\n } else {\n // Try to add padding if the content is not clipped.\n if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {\n let width = inputRef.current.parentElement.offsetWidth;\n yield true;\n\n // If adding padding does not change the width (i.e. width is constrained), remove it again.\n if (inputRef.current.parentElement.offsetWidth === width) {\n yield false;\n }\n }\n }\n }\n\n }), [inputRef, setReservePadding]);\n\n useLayoutEffect(onResize, [onResize]);\n useResizeObserver({\n ref: inputRef,\n onResize\n });\n\n // We also need to listen for resize events of the window so we can detect\n // when there is enough space for the padding to be re-added. Ideally we'd\n // use a resize observer on a parent element, but it's hard to know _what_\n // parent element.\n useEvent(useRef(typeof window !== 'undefined' ? window : null), 'resize', onResize);\n\n let isInvalid = validationState === 'invalid';\n let textfieldClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield',\n {\n 'spectrum-Textfield--invalid': isInvalid,\n 'spectrum-Textfield--valid': validationState === 'valid',\n 'spectrum-Textfield--quiet': isQuiet\n },\n classNames(datepickerStyles, 'react-spectrum-Datepicker-field'),\n className\n );\n\n let inputClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': isInvalid\n },\n reservePadding && classNames(datepickerStyles, 'react-spectrum-Datepicker-input'),\n inputClassName\n );\n\n let iconClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield-validationIcon'\n );\n\n let validationIcon = null;\n if (validationState === 'invalid') {\n validationIcon = <Alert data-testid=\"invalid-icon\" UNSAFE_className={iconClass} />;\n } else if (validationState === 'valid') {\n validationIcon = <Checkmark data-testid=\"valid-icon\" UNSAFE_className={iconClass} />;\n }\n\n return (\n <div role=\"presentation\" {...fieldProps} className={textfieldClass} style={style}>\n <FocusRing focusClass={classNames(textfieldStyles, 'is-focused')} focusRingClass={classNames(textfieldStyles, 'focus-ring')} isTextInput within>\n <div role=\"presentation\" className={inputClass}>\n <div role=\"presentation\" className={classNames(datepickerStyles, 'react-spectrum-Datepicker-inputContents')} ref={mergeRefs(ref, inputRef)}>\n {children}\n </div>\n </div>\n </FocusRing>\n {validationIcon}\n </div>\n );\n}\n\nconst _Input = React.forwardRef(Input);\nexport {_Input as Input};\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@import './index.css';\n@import './skin.css';\n","const _temp0 = require(\"./en-US.json\");\nmodule.exports = {\n \"en-US\": _temp0\n}","{\n \"time\": \"Time\",\n \"startTime\": \"Start time\",\n \"endTime\": \"End time\"\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@import './index.css';\n@import './skin.css';\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\nimport {classNames} from '@react-spectrum/utils';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {Field} from '@react-spectrum/label';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport React, {ReactElement} from 'react';\nimport {SpectrumTimeFieldProps, TimeValue} from '@react-types/datepicker';\nimport {useFocusManagerRef} from './utils';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\nimport {useTimeField} from '@react-aria/datepicker';\nimport {useTimeFieldState} from '@react-stately/datepicker';\n\nfunction TimeField<T extends TimeValue>(props: SpectrumTimeFieldProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isQuiet\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n let {locale} = useLocale();\n let state = useTimeFieldState({\n ...props,\n locale\n });\n\n let {labelProps, fieldProps, descriptionProps, errorMessageProps} = useTimeField(props, state, domRef);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-TimeField-fieldWrapper')}>\n <Input\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n autoFocus={autoFocus}\n validationState={state.validationState}\n className={classNames(datepickerStyles, 'react-spectrum-TimeField')}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </Input>\n </Field>\n );\n}\n\n/**\n * TimeFields allow users to enter and edit time values using a keyboard.\n * Each part of the time is displayed in an individually editable segment.\n */\nconst _TimeField = React.forwardRef(TimeField) as <T extends TimeValue>(props: SpectrumTimeFieldProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_TimeField as TimeField};\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 */\nimport {createDOMRef} from '@react-spectrum/utils';\nimport {createFocusManager} from '@react-aria/focus';\nimport {FocusableRef} from '@react-types/shared';\nimport {SpectrumDatePickerBase} from '@react-types/datepicker';\nimport {useDateFormatter} from '@react-aria/i18n';\nimport {useDisplayNames} from '@react-aria/datepicker';\nimport {useImperativeHandle, useMemo, useRef, useState} from 'react';\nimport {useLayoutEffect} from '@react-aria/utils';\nimport {useProvider} from '@react-spectrum/provider';\n\nexport function useFormatHelpText(props: Pick<SpectrumDatePickerBase<any>, 'description' | 'showFormatHelpText'>) {\n let formatter = useDateFormatter({dateStyle: 'short'});\n let displayNames = useDisplayNames();\n return useMemo(() => {\n if (props.description) {\n return props.description;\n }\n\n if (props.showFormatHelpText) {\n return formatter.formatToParts(new Date()).map(s => {\n if (s.type === 'literal') {\n return s.value;\n }\n\n return displayNames.of(s.type);\n }).join(' ');\n }\n\n return '';\n }, [props.description, props.showFormatHelpText, formatter, displayNames]);\n}\n\nexport function useVisibleMonths(maxVisibleMonths: number) {\n let {scale} = useProvider();\n let [visibleMonths, setVisibleMonths] = useState(getVisibleMonths(scale));\n useLayoutEffect(() => {\n let onResize = () => setVisibleMonths(getVisibleMonths(scale));\n onResize();\n\n window.addEventListener('resize', onResize);\n return () => {\n window.removeEventListener('resize', onResize);\n };\n }, [scale]);\n\n return Math.max(1, Math.min(visibleMonths, maxVisibleMonths, 3));\n}\n\nfunction getVisibleMonths(scale) {\n if (typeof window === 'undefined') {\n return 1;\n }\n let monthWidth = scale === 'large' ? 336 : 280;\n let gap = scale === 'large' ? 30 : 24;\n let popoverPadding = scale === 'large' ? 32 : 48;\n return Math.floor((window.innerWidth - popoverPadding * 2) / (monthWidth + gap));\n}\n\nexport function useFocusManagerRef(ref: FocusableRef<HTMLElement>) {\n let domRef = useRef();\n useImperativeHandle(ref, () => ({\n ...createDOMRef(domRef),\n focus() {\n createFocusManager(domRef).focusFirst({tabbable: true});\n }\n }));\n return domRef;\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\nimport CalendarIcon from '@spectrum-icons/workflow/Calendar';\nimport {classNames} from '@react-spectrum/utils';\nimport {Content} from '@react-spectrum/view';\nimport {DatePickerField} from './DatePickerField';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDateRangePickerProps} from '@react-types/datepicker';\nimport {Dialog, DialogTrigger} from '@react-spectrum/dialog';\nimport {Field} from '@react-spectrum/label';\nimport {FieldButton} from '@react-spectrum/button';\nimport {Flex} from '@react-spectrum/layout';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {mergeProps} from '@react-aria/utils';\nimport {RangeCalendar} from '@react-spectrum/calendar';\nimport React, {ReactElement, useRef} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/inputgroup/vars.css';\nimport {TimeField} from './TimeField';\nimport {useDateRangePicker} from '@react-aria/datepicker';\nimport {useDateRangePickerState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';\nimport {useFocusRing} from '@react-aria/focus';\nimport {useHover} from '@react-aria/interactions';\nimport {useLocale, useLocalizedStringFormatter} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n isQuiet,\n isDisabled,\n isReadOnly,\n autoFocus,\n placeholderValue,\n maxVisibleMonths = 1\n } = props;\n let {hoverProps, isHovered} = useHover({isDisabled});\n let targetRef = useRef<HTMLDivElement>();\n let state = useDateRangePickerState({\n ...props,\n shouldCloseOnSelect: () => !state.hasTime\n });\n let {labelProps, groupProps, buttonProps, dialogProps, startFieldProps, endFieldProps, descriptionProps, errorMessageProps, calendarProps} = useDateRangePicker(props, state, targetRef);\n let {isOpen, setOpen} = state;\n let {direction} = useLocale();\n let domRef = useFocusManagerRef(ref);\n let stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n let {isFocused, isFocusVisible, focusProps} = useFocusRing({\n within: true,\n isTextInput: true,\n autoFocus\n });\n\n let {isFocused: isFocusedButton, focusProps: focusPropsButton} = useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus\n });\n\n let className = classNames(\n styles,\n 'spectrum-InputGroup',\n {\n 'spectrum-InputGroup--quiet': isQuiet,\n 'spectrum-InputGroup--invalid': state.validationState === 'invalid',\n 'is-disabled': isDisabled,\n 'is-hovered': isHovered,\n 'is-focused': isFocused,\n 'focus-ring': isFocusVisible && !isFocusedButton\n }\n );\n\n let fieldClassName = classNames(\n styles,\n 'spectrum-InputGroup-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': state.validationState === 'invalid'\n }\n );\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n let placeholder: DateValue = placeholderValue;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;\n let showTimeField = !!timeGranularity;\n\n let visibleMonths = useVisibleMonths(maxVisibleMonths);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <div\n {...mergeProps(groupProps, hoverProps, focusProps)}\n className={className}\n ref={targetRef}>\n <Input\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n validationState={state.validationState}\n className={classNames(styles, 'spectrum-InputGroup-field')}\n inputClassName={fieldClassName}>\n <DatePickerField\n {...startFieldProps}\n data-testid=\"start-date\"\n isQuiet={props.isQuiet}\n inputClassName={classNames(datepickerStyles, 'react-spectrum-Datepicker-startField')} />\n <DateRangeDash />\n <DatePickerField\n {...endFieldProps}\n data-testid=\"end-date\"\n isQuiet={props.isQuiet}\n inputClassName={classNames(\n styles,\n 'spectrum-Datepicker-endField',\n classNames(\n datepickerStyles,\n 'react-spectrum-Datepicker-endField'\n )\n )} />\n </Input>\n <DialogTrigger\n type=\"popover\"\n mobileType=\"tray\"\n placement={direction === 'rtl' ? 'bottom right' : 'bottom left'}\n targetRef={targetRef}\n hideArrow\n isOpen={isOpen}\n onOpenChange={setOpen}\n shouldFlip={props.shouldFlip}>\n <FieldButton\n {...mergeProps(buttonProps, focusPropsButton)}\n UNSAFE_className={classNames(styles, 'spectrum-FieldButton')}\n isQuiet={isQuiet}\n validationState={state.validationState}\n isDisabled={isDisabled || isReadOnly}>\n <CalendarIcon />\n </FieldButton>\n <Dialog UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialog')} {...dialogProps}>\n <Content>\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialogContent')}>\n <RangeCalendar\n {...calendarProps}\n visibleMonths={visibleMonths}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-calendar', {'is-invalid': state.validationState === 'invalid'})} />\n {showTimeField &&\n <Flex gap=\"size-100\" marginTop=\"size-100\" UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>\n <TimeField\n label={stringFormatter.format('startTime')}\n value={state.timeRange?.start || null}\n onChange={v => state.setTime('start', v)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n flex />\n <TimeField\n label={stringFormatter.format('endTime')}\n value={state.timeRange?.end || null}\n onChange={v => state.setTime('end', v)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n flex />\n </Flex>\n }\n </div>\n </Content>\n </Dialog>\n </DialogTrigger>\n </div>\n </Field>\n );\n}\n\nfunction DateRangeDash() {\n return (\n <div\n aria-hidden=\"true\"\n data-testid=\"date-range-dash\"\n className={classNames(datepickerStyles, 'react-spectrum-Datepicker-rangeDash')} />\n );\n}\n\n/**\n * DateRangePickers combine two DateFields and a RangeCalendar popover to allow users\n * to enter or select a date and time range.\n */\nconst _DateRangePicker = React.forwardRef(DateRangePicker) as <T extends DateValue>(props: SpectrumDateRangePickerProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DateRangePicker as DateRangePicker};\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\nimport {classNames} from '@react-spectrum/utils';\nimport {createCalendar} from '@internationalized/date';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDateFieldProps} from '@react-types/datepicker';\nimport {Field} from '@react-spectrum/label';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport React, {ReactElement} from 'react';\nimport {useDateField} from '@react-aria/datepicker';\nimport {useDateFieldState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText} from './utils';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DateField<T extends DateValue>(props: SpectrumDateFieldProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isQuiet\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n let {locale} = useLocale();\n let state = useDateFieldState({\n ...props,\n locale,\n createCalendar\n });\n\n let {labelProps, fieldProps, descriptionProps, errorMessageProps} = useDateField(props, state, domRef);\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <Input\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n autoFocus={autoFocus}\n validationState={state.validationState}\n className={classNames(datepickerStyles, 'react-spectrum-DateField')}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </Input>\n </Field>\n );\n}\n\n/**\n * DateFields allow users to enter and edit date and time values using a keyboard.\n * Each part of a date value is displayed in an individually editable segment.\n */\nconst _DateField = React.forwardRef(DateField) as <T extends DateValue>(props: SpectrumDateFieldProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DateField as DateField};\n"],"names":[],"version":3,"file":"main.js.map"}
package/dist/module.js CHANGED
@@ -12,7 +12,7 @@ import {useDatePicker as $aayOp$useDatePicker, useDateField as $aayOp$useDateFie
12
12
  import {useDatePickerState as $aayOp$useDatePickerState, useDateFieldState as $aayOp$useDateFieldState, useTimeFieldState as $aayOp$useTimeFieldState, useDateRangePickerState as $aayOp$useDateRangePickerState} from "@react-stately/datepicker";
13
13
  import {useFocusRing as $aayOp$useFocusRing, FocusRing as $aayOp$FocusRing, createFocusManager as $aayOp$createFocusManager} from "@react-aria/focus";
14
14
  import {useHover as $aayOp$useHover} from "@react-aria/interactions";
15
- import {useLocale as $aayOp$useLocale, useDateFormatter as $aayOp$useDateFormatter} from "@react-aria/i18n";
15
+ import {useLocale as $aayOp$useLocale, useLocalizedStringFormatter as $aayOp$useLocalizedStringFormatter, useDateFormatter as $aayOp$useDateFormatter} from "@react-aria/i18n";
16
16
  import {useProviderProps as $aayOp$useProviderProps, useProvider as $aayOp$useProvider} from "@react-spectrum/provider";
17
17
  import {createCalendar as $aayOp$createCalendar} from "@internationalized/date";
18
18
  import $aayOp$spectrumiconsuiAlertMedium from "@spectrum-icons/ui/AlertMedium";
@@ -252,20 +252,22 @@ function $79348162c55d687f$var$Input(props, ref) {
252
252
  // not cause a layout shift.
253
253
  let [reservePadding1, setReservePadding] = $aayOp$useValueEffect(false);
254
254
  let onResize = $aayOp$useCallback(()=>setReservePadding(function*(reservePadding) {
255
- if (reservePadding) // Try to collapse padding if the content is clipped.
256
- {
257
- if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {
255
+ if (inputRef.current) {
256
+ if (reservePadding) // Try to collapse padding if the content is clipped.
257
+ {
258
+ if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {
259
+ let width = inputRef.current.parentElement.offsetWidth;
260
+ yield false;
261
+ // If removing padding causes a layout shift, add it back.
262
+ if (inputRef.current.parentElement.offsetWidth !== width) yield true;
263
+ }
264
+ } else // Try to add padding if the content is not clipped.
265
+ if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {
258
266
  let width = inputRef.current.parentElement.offsetWidth;
259
- yield false;
260
- // If removing padding causes a layout shift, add it back.
261
- if (inputRef.current.parentElement.offsetWidth !== width) yield true;
267
+ yield true;
268
+ // If adding padding does not change the width (i.e. width is constrained), remove it again.
269
+ if (inputRef.current.parentElement.offsetWidth === width) yield false;
262
270
  }
263
- } else // Try to add padding if the content is not clipped.
264
- if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {
265
- let width = inputRef.current.parentElement.offsetWidth;
266
- yield true;
267
- // If adding padding does not change the width (i.e. width is constrained), remove it again.
268
- if (inputRef.current.parentElement.offsetWidth === width) yield false;
269
271
  }
270
272
  })
271
273
  , [
@@ -326,6 +328,20 @@ function $79348162c55d687f$var$Input(props, ref) {
326
328
  const $79348162c55d687f$export$f5b8910cec6cf069 = /*#__PURE__*/ $aayOp$react.forwardRef($79348162c55d687f$var$Input);
327
329
 
328
330
 
331
+ var $ac1a7d8d9ccff97f$exports = {};
332
+ var $1729b68fc5d3f126$exports = {};
333
+ $1729b68fc5d3f126$exports = {
334
+ "time": `Time`,
335
+ "startTime": `Start time`,
336
+ "endTime": `End time`
337
+ };
338
+
339
+
340
+ $ac1a7d8d9ccff97f$exports = {
341
+ "en-US": $1729b68fc5d3f126$exports
342
+ };
343
+
344
+
329
345
 
330
346
 
331
347
 
@@ -537,6 +553,7 @@ function $beaeefa091999363$var$DatePicker(props, ref) {
537
553
  let { isOpen: isOpen , setOpen: setOpen } = state;
538
554
  let { direction: direction } = $aayOp$useLocale();
539
555
  let domRef = $04e96200274b03de$export$71a23a36270e4bf0(ref);
556
+ let stringFormatter = $aayOp$useLocalizedStringFormatter((/*@__PURE__*/$parcel$interopDefault($ac1a7d8d9ccff97f$exports)));
540
557
  let { isFocused: isFocused , isFocusVisible: isFocusVisible , focusProps: focusProps } = $aayOp$useFocusRing({
541
558
  within: true,
542
559
  isTextInput: true,
@@ -567,7 +584,7 @@ function $beaeefa091999363$var$DatePicker(props, ref) {
567
584
  let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;
568
585
  let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;
569
586
  let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;
570
- let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;
587
+ let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;
571
588
  let showTimeField = !!timeGranularity;
572
589
  let visibleMonths = $04e96200274b03de$export$12ce2869ce471b1f(maxVisibleMonths);
573
590
  return(/*#__PURE__*/ $aayOp$react.createElement($aayOp$Field, {
@@ -623,7 +640,7 @@ function $beaeefa091999363$var$DatePicker(props, ref) {
623
640
  }), showTimeField && /*#__PURE__*/ $aayOp$react.createElement("div", {
624
641
  className: $aayOp$classNames((/*@__PURE__*/$parcel$interopDefault($465eb3a688ef3440$exports)), 'react-spectrum-Datepicker-timeFields')
625
642
  }, /*#__PURE__*/ $aayOp$react.createElement($f0a04554754386b6$export$5eaee2322dd727eb, {
626
- label: "Time",
643
+ label: stringFormatter.format('time'),
627
644
  value: state.timeValue,
628
645
  onChange: state.setTimeValue,
629
646
  placeholderValue: timePlaceholder,
@@ -660,6 +677,7 @@ function $beaeefa091999363$var$DatePicker(props, ref) {
660
677
 
661
678
 
662
679
 
680
+
663
681
 
664
682
 
665
683
  function $cb301300011a98f7$var$DateRangePicker(props, ref) {
@@ -678,6 +696,7 @@ function $cb301300011a98f7$var$DateRangePicker(props, ref) {
678
696
  let { isOpen: isOpen , setOpen: setOpen } = state;
679
697
  let { direction: direction } = $aayOp$useLocale();
680
698
  let domRef = $04e96200274b03de$export$71a23a36270e4bf0(ref);
699
+ let stringFormatter = $aayOp$useLocalizedStringFormatter((/*@__PURE__*/$parcel$interopDefault($ac1a7d8d9ccff97f$exports)));
681
700
  let { isFocused: isFocused , isFocusVisible: isFocusVisible , focusProps: focusProps } = $aayOp$useFocusRing({
682
701
  within: true,
683
702
  isTextInput: true,
@@ -708,7 +727,7 @@ function $cb301300011a98f7$var$DateRangePicker(props, ref) {
708
727
  let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;
709
728
  let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;
710
729
  let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;
711
- let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;
730
+ let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;
712
731
  let showTimeField = !!timeGranularity;
713
732
  let visibleMonths = $04e96200274b03de$export$12ce2869ce471b1f(maxVisibleMonths);
714
733
  return(/*#__PURE__*/ $aayOp$react.createElement($aayOp$Field, {
@@ -772,7 +791,7 @@ function $cb301300011a98f7$var$DateRangePicker(props, ref) {
772
791
  marginTop: "size-100",
773
792
  UNSAFE_className: $aayOp$classNames((/*@__PURE__*/$parcel$interopDefault($465eb3a688ef3440$exports)), 'react-spectrum-Datepicker-timeFields')
774
793
  }, /*#__PURE__*/ $aayOp$react.createElement($f0a04554754386b6$export$5eaee2322dd727eb, {
775
- label: "Start time",
794
+ label: stringFormatter.format('startTime'),
776
795
  value: ((ref1 = state.timeRange) === null || ref1 === void 0 ? void 0 : ref1.start) || null,
777
796
  onChange: (v)=>state.setTime('start', v)
778
797
  ,
@@ -784,7 +803,7 @@ function $cb301300011a98f7$var$DateRangePicker(props, ref) {
784
803
  hideTimeZone: props.hideTimeZone,
785
804
  flex: true
786
805
  }), /*#__PURE__*/ $aayOp$react.createElement($f0a04554754386b6$export$5eaee2322dd727eb, {
787
- label: "End time",
806
+ label: stringFormatter.format('endTime'),
788
807
  value: ((ref2 = state.timeRange) === null || ref2 === void 0 ? void 0 : ref2.end) || null,
789
808
  onChange: (v)=>state.setTime('end', v)
790
809
  ,
@@ -1 +1 @@
1
- {"mappings":"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","sources":["packages/@react-spectrum/datepicker/src/index.ts","packages/@react-spectrum/datepicker/src/DatePicker.tsx","packages/@react-spectrum/datepicker/src/DatePickerField.tsx","packages/@react-spectrum/datepicker/src/DatePickerSegment.tsx","packages/@react-spectrum/datepicker/src/styles.css","packages/@react-spectrum/datepicker/src/Input.tsx","packages/@adobe/spectrum-css-temp/components/textfield/vars.css","packages/@adobe/spectrum-css-temp/components/inputgroup/vars.css","packages/@react-spectrum/datepicker/src/TimeField.tsx","packages/@react-spectrum/datepicker/src/utils.ts","packages/@react-spectrum/datepicker/src/DateRangePicker.tsx","packages/@react-spectrum/datepicker/src/DateField.tsx"],"sourcesContent":["/*\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/// <reference types=\"css-module-types\" />\n\nexport {DatePicker} from './DatePicker';\nexport {DateRangePicker} from './DateRangePicker';\nexport {TimeField} from './TimeField';\nexport {DateField} from './DateField';\nexport type {SpectrumDateFieldProps, SpectrumDatePickerProps, SpectrumDateRangePickerProps, SpectrumTimeFieldProps} from '@react-types/datepicker';\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\nimport {Calendar} from '@react-spectrum/calendar';\nimport CalendarIcon from '@spectrum-icons/workflow/Calendar';\nimport {classNames} from '@react-spectrum/utils';\nimport {Content} from '@react-spectrum/view';\nimport {DatePickerField} from './DatePickerField';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDatePickerProps} from '@react-types/datepicker';\nimport {Dialog, DialogTrigger} from '@react-spectrum/dialog';\nimport {Field} from '@react-spectrum/label';\nimport {FieldButton} from '@react-spectrum/button';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport {mergeProps} from '@react-aria/utils';\nimport React, {ReactElement, useRef} from 'react';\nimport '@adobe/spectrum-css-temp/components/textfield/vars.css'; // HACK: must be included BEFORE inputgroup\nimport styles from '@adobe/spectrum-css-temp/components/inputgroup/vars.css';\nimport {TimeField} from './TimeField';\nimport {useDatePicker} from '@react-aria/datepicker';\nimport {useDatePickerState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';\nimport {useFocusRing} from '@react-aria/focus';\nimport {useHover} from '@react-aria/interactions';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DatePicker<T extends DateValue>(props: SpectrumDatePickerProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isQuiet,\n isDisabled,\n isReadOnly,\n placeholderValue,\n maxVisibleMonths = 1\n } = props;\n let {hoverProps, isHovered} = useHover({isDisabled});\n let targetRef = useRef<HTMLDivElement>();\n let state = useDatePickerState({\n ...props,\n shouldCloseOnSelect: () => !state.hasTime\n });\n let {groupProps, labelProps, fieldProps, descriptionProps, errorMessageProps, buttonProps, dialogProps, calendarProps} = useDatePicker(props, state, targetRef);\n let {isOpen, setOpen} = state;\n let {direction} = useLocale();\n let domRef = useFocusManagerRef(ref);\n\n let {isFocused, isFocusVisible, focusProps} = useFocusRing({\n within: true,\n isTextInput: true,\n autoFocus\n });\n\n let {isFocused: isFocusedButton, focusProps: focusPropsButton} = useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus\n });\n\n let className = classNames(\n styles,\n 'spectrum-InputGroup',\n {\n 'spectrum-InputGroup--quiet': isQuiet,\n 'spectrum-InputGroup--invalid': state.validationState === 'invalid',\n 'is-disabled': isDisabled,\n 'is-hovered': isHovered,\n 'is-focused': isFocused,\n 'focus-ring': isFocusVisible && !isFocusedButton\n }\n );\n\n let fieldClassName = classNames(\n styles,\n 'spectrum-InputGroup-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': state.validationState === 'invalid'\n }\n );\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n let placeholder: DateValue = placeholderValue;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;\n let showTimeField = !!timeGranularity;\n\n let visibleMonths = useVisibleMonths(maxVisibleMonths);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <div\n {...mergeProps(groupProps, hoverProps, focusProps)}\n className={className}\n ref={targetRef}>\n <Input\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n validationState={state.validationState}\n className={classNames(styles, 'spectrum-InputGroup-field')}\n inputClassName={fieldClassName}>\n <DatePickerField\n {...fieldProps}\n data-testid=\"date-field\"\n isQuiet={isQuiet} />\n </Input>\n <DialogTrigger\n type=\"popover\"\n mobileType=\"tray\"\n placement={direction === 'rtl' ? 'bottom right' : 'bottom left'}\n targetRef={targetRef}\n hideArrow\n isOpen={isOpen}\n onOpenChange={setOpen}\n shouldFlip={props.shouldFlip}>\n <FieldButton\n {...mergeProps(buttonProps, focusPropsButton)}\n UNSAFE_className={classNames(styles, 'spectrum-FieldButton')}\n isQuiet={isQuiet}\n validationState={state.validationState}\n isDisabled={isDisabled || isReadOnly}>\n <CalendarIcon />\n </FieldButton>\n <Dialog UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialog')} {...dialogProps}>\n <Content>\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialogContent')}>\n <Calendar\n {...calendarProps}\n visibleMonths={visibleMonths}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-calendar', {'is-invalid': state.validationState === 'invalid'})} />\n {showTimeField &&\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>\n <TimeField\n label=\"Time\"\n value={state.timeValue}\n onChange={state.setTimeValue}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n marginTop=\"size-100\" />\n </div>\n }\n </div>\n </Content>\n </Dialog>\n </DialogTrigger>\n </div>\n </Field>\n );\n}\n\n/**\n * DatePickers combine a DateField and a Calendar popover to allow users to enter or select a date and time value.\n */\nconst _DatePicker = React.forwardRef(DatePicker) as <T extends DateValue>(props: SpectrumDatePickerProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DatePicker as DatePicker};\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\nimport {classNames} from '@react-spectrum/utils';\nimport {createCalendar} from '@internationalized/date';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDatePickerProps} from '@react-types/datepicker';\nimport React, {useRef} from 'react';\nimport {useDateField} from '@react-aria/datepicker';\nimport {useDateFieldState} from '@react-stately/datepicker';\nimport {useLocale} from '@react-aria/i18n';\n\ninterface DatePickerFieldProps<T extends DateValue> extends SpectrumDatePickerProps<T> {\n inputClassName?: string,\n hideValidationIcon?: boolean,\n maxGranularity?: SpectrumDatePickerProps<T>['granularity']\n}\n\nexport function DatePickerField<T extends DateValue>(props: DatePickerFieldProps<T>) {\n let {\n isDisabled,\n isReadOnly,\n isRequired,\n inputClassName\n } = props;\n let ref = useRef();\n let {locale} = useLocale();\n let state = useDateFieldState({\n ...props,\n locale,\n createCalendar\n });\n\n let {fieldProps} = useDateField(props, state, ref);\n\n return (\n <div {...fieldProps} data-testid={props['data-testid']} className={classNames(datepickerStyles, 'react-spectrum-Datepicker-segments', inputClassName)} ref={ref}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </div>\n );\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\nimport {classNames} from '@react-spectrum/utils';\nimport {DateFieldState, DateSegment} from '@react-stately/datepicker';\nimport {DatePickerBase, DateValue} from '@react-types/datepicker';\nimport React, {useRef} from 'react';\nimport styles from './styles.css';\nimport {useDateSegment} from '@react-aria/datepicker';\n\ninterface DatePickerSegmentProps extends DatePickerBase<DateValue> {\n segment: DateSegment,\n state: DateFieldState\n}\n\ninterface LiteralSegmentProps {\n segment: DateSegment\n}\n\nexport function DatePickerSegment({segment, state, ...otherProps}: DatePickerSegmentProps) {\n switch (segment.type) {\n // A separator, e.g. punctuation\n case 'literal':\n return <LiteralSegment segment={segment} />;\n\n // Editable segment\n default:\n return <EditableSegment segment={segment} state={state} {...otherProps} />;\n }\n}\n\nfunction LiteralSegment({segment}: LiteralSegmentProps) {\n return (\n <span\n aria-hidden=\"true\"\n className={classNames(styles, 'react-spectrum-Datepicker-literal')}\n data-testid={segment.type === 'literal' ? undefined : segment.type}>\n {segment.text}\n </span>\n );\n}\n\nfunction EditableSegment({segment, state}: DatePickerSegmentProps) {\n let ref = useRef();\n let {segmentProps} = useDateSegment(segment, state, ref);\n return (\n <div\n {...segmentProps}\n ref={ref}\n className={classNames(styles, 'react-spectrum-DatePicker-cell', {\n 'is-placeholder': segment.isPlaceholder,\n 'is-read-only': !segment.isEditable\n })}\n style={{\n ...segmentProps.style,\n minWidth: segment.maxValue != null ? String(segment.maxValue).length + 'ch' : null\n }}\n data-testid={segment.type}>\n <span aria-hidden=\"true\" className={classNames(styles, 'react-spectrum-DatePicker-placeholder')}>{segment.placeholder}</span>\n {segment.isPlaceholder ? '' : segment.text}\n </div>\n );\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.react-spectrum-Datepicker-fieldWrapper.react-spectrum-Datepicker-fieldWrapper.react-spectrum-Datepicker-fieldWrapper {\n width: auto;\n min-width: var(--spectrum-global-dimension-size-2000);\n max-width: 100%;\n }\n\n.react-spectrum-Datepicker-startField {\n width: auto;\n padding-inline-end: var(--spectrum-global-dimension-size-100);\n}\n\n.react-spectrum-Datepicker-endField {\n width: auto;\n flex: 1;\n padding-inline-start: var(--spectrum-global-dimension-size-100);\n}\n\n.react-spectrum-Datepicker-field ~ .react-spectrum-Datepicker-endField > .react-spectrum-Datepicker-input {\n border-inline-start-width: 0;\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n}\n\n.react-spectrum-Datepicker-field.react-spectrum-Datepicker-field {\n width: auto;\n}\n\n/* specificity war with .spectrum-Field--positionSide etc. */\n.react-spectrum-DateField.react-spectrum-DateField.react-spectrum-DateField.react-spectrum-DateField {\n min-width: var(--spectrum-global-dimension-size-2000)\n}\n\n.react-spectrum-TimeField.react-spectrum-TimeField.react-spectrum-TimeField.react-spectrum-TimeField {\n min-width: var(--spectrum-global-dimension-size-1250);\n}\n\n.react-spectrum-TimeField-fieldWrapper.react-spectrum-TimeField-fieldWrapper.react-spectrum-TimeField-fieldWrapper {\n width: auto;\n min-width: var(--spectrum-global-dimension-size-1250);\n}\n\n.react-spectrum-Datepicker-input.react-spectrum-Datepicker-input {\n /* always reserve space for the validation icon */\n padding-inline-end: calc(var(--spectrum-textfield-padding-x) + var(--spectrum-icon-alert-medium-width) + var(--spectrum-textfield-icon-margin-left));\n cursor: text;\n}\n\n.react-spectrum-Datepicker-inputContents {\n display: flex;\n align-items: center;\n height: 100%;\n overflow-x: auto;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n\n &::-webkit-scrollbar { /* WebKit */\n width: 0;\n height: 0;\n display: none;\n }\n}\n\n.react-spectrum-Datepicker-rangeDash {\n &:before {\n content: '–';\n }\n}\n\n.react-spectrum-Datepicker-segments {\n display: flex;\n align-items: center;\n}\n\n.react-spectrum-Datepicker-literal {\n white-space: pre;\n user-select: none;\n color: var(--spectrum-textfield-text-color);\n}\n\n.react-spectrum-DatePicker-cell {\n border: none;\n background: none;\n padding: 0 2px;\n border-radius: 2px;\n font-variant-numeric: tabular-nums;\n text-align: end;\n box-sizing: content-box;\n white-space: nowrap;\n color: var(--spectrum-textfield-text-color);\n\n &::selection {\n /* hide the selection because there is no way to fully prevent it in Firefox */\n /* https://bugzilla.mozilla.org/show_bug.cgi?id=1742153 */\n background: transparent;\n }\n}\n\n.react-spectrum-DatePicker-placeholder {\n display: block;\n width: 100%;\n text-align: center;\n font-style: italic;\n visibility: hidden;\n height: 0;\n pointer-events: none;\n}\n\n.react-spectrum-DatePicker-cell.is-placeholder {\n color: var(--react-spectrum-datepicker-placeholder-color);\n\n .react-spectrum-DatePicker-placeholder {\n visibility: visible;\n height: auto;\n }\n}\n\n.react-spectrum-DatePicker-cell.is-placeholder ~ .react-spectrum-Datepicker-literal {\n color: var(--spectrum-textfield-placeholder-text-color, var(--spectrum-global-color-gray-600));\n}\n\n.react-spectrum-DatePicker-cell.is-read-only {\n color: var(--spectrum-global-color-gray-700);\n}\n\n.react-spectrum-DatePicker-cell:focus {\n background-color: var(--spectrum-global-color-static-blue);\n color: white;\n caret-color: transparent;\n outline: none;\n}\n\n.react-spectrum-Datepicker-dialog.react-spectrum-Datepicker-dialog {\n width: auto;\n}\n\n.react-spectrum-Datepicker-dialogContent {\n display: flex;\n flex-direction: column;\n\n .react-spectrum-Datepicker-calendar.is-invalid {\n /* Only apply display: contents when the calendar is invalid, which allows us to move the\n * error message below the time fields. Otherwise, don't do this because it breaks dragging\n * the selected range on Android. */\n display: contents;\n }\n\n /* Push the help text within the calendar down to the bottom of the dialog, below the time fields. */\n :global(.spectrum-Calendar-helpText) {\n order: 10;\n margin: var(--spectrum-global-dimension-size-200) var(--spectrum-calendar-day-padding) 0 var(--spectrum-calendar-day-padding);\n }\n}\n\n/* when displayed in a tray, reduce the padding of the dialog */\n@media (max-width: 700px) {\n .react-spectrum-Datepicker-dialog {\n --spectrum-dialog-padding-x: 8px;\n\n .react-spectrum-Datepicker-dialogContent {\n margin: 0 auto;\n max-width: calc((var(--spectrum-calendar-day-width) * 7) + (var(--spectrum-calendar-day-padding) * 12));\n }\n }\n}\n\n.react-spectrum-Datepicker-timeFields {\n width: 100%;\n min-width: calc(var(--spectrum-calendar-day-width) * 7);\n max-width: calc((var(--spectrum-calendar-day-width) * 7) + (var(--spectrum-calendar-day-padding) * 12));\n padding: 0 var(--spectrum-calendar-day-padding);\n box-sizing: border-box;\n}\n\n@media (forced-colors:active) {\n .react-spectrum-DatePicker-cell:focus {\n forced-color-adjust: none;\n background-color: Highlight;\n color: HighlightText;\n }\n .react-spectrum-DatePicker-cell.is-read-only {\n color: ButtonText;\n &:focus {\n color: HighlightText;\n }\n }\n .react-spectrum-DatePicker-cell.is-placeholder {\n color: ButtonText;\n &:focus {\n color: HighlightText;\n }\n }\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\nimport Alert from '@spectrum-icons/ui/AlertMedium';\nimport Checkmark from '@spectrum-icons/ui/CheckmarkMedium';\nimport {classNames, useValueEffect} from '@react-spectrum/utils';\nimport datepickerStyles from './styles.css';\nimport {FocusRing} from '@react-aria/focus';\nimport {mergeRefs, useEvent, useLayoutEffect, useResizeObserver} from '@react-aria/utils';\nimport React, {useCallback, useRef} from 'react';\nimport textfieldStyles from '@adobe/spectrum-css-temp/components/textfield/vars.css';\n\nfunction Input(props, ref) {\n let inputRef = useRef(null);\n let {\n isDisabled,\n isQuiet,\n inputClassName,\n validationState,\n children,\n fieldProps,\n className,\n style\n } = props;\n\n // Reserve padding for the error icon when the width of the input is unconstrained.\n // When constrained, don't reserve space because adding it only when invalid will\n // not cause a layout shift.\n let [reservePadding, setReservePadding] = useValueEffect(false);\n let onResize = useCallback(() => setReservePadding(function *(reservePadding) {\n if (reservePadding) {\n // Try to collapse padding if the content is clipped.\n if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {\n let width = inputRef.current.parentElement.offsetWidth;\n yield false;\n\n // If removing padding causes a layout shift, add it back.\n if (inputRef.current.parentElement.offsetWidth !== width) {\n yield true;\n }\n }\n } else {\n // Try to add padding if the content is not clipped.\n if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {\n let width = inputRef.current.parentElement.offsetWidth;\n yield true;\n\n // If adding padding does not change the width (i.e. width is constrained), remove it again.\n if (inputRef.current.parentElement.offsetWidth === width) {\n yield false;\n }\n }\n }\n }), [inputRef, setReservePadding]);\n\n useLayoutEffect(onResize, [onResize]);\n useResizeObserver({\n ref: inputRef,\n onResize\n });\n\n // We also need to listen for resize events of the window so we can detect\n // when there is enough space for the padding to be re-added. Ideally we'd\n // use a resize observer on a parent element, but it's hard to know _what_\n // parent element.\n useEvent(useRef(typeof window !== 'undefined' ? window : null), 'resize', onResize);\n\n let isInvalid = validationState === 'invalid';\n let textfieldClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield',\n {\n 'spectrum-Textfield--invalid': isInvalid,\n 'spectrum-Textfield--valid': validationState === 'valid',\n 'spectrum-Textfield--quiet': isQuiet\n },\n classNames(datepickerStyles, 'react-spectrum-Datepicker-field'),\n className\n );\n\n let inputClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': isInvalid\n },\n reservePadding && classNames(datepickerStyles, 'react-spectrum-Datepicker-input'),\n inputClassName\n );\n\n let iconClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield-validationIcon'\n );\n\n let validationIcon = null;\n if (validationState === 'invalid') {\n validationIcon = <Alert data-testid=\"invalid-icon\" UNSAFE_className={iconClass} />;\n } else if (validationState === 'valid') {\n validationIcon = <Checkmark data-testid=\"valid-icon\" UNSAFE_className={iconClass} />;\n }\n\n return (\n <div role=\"presentation\" {...fieldProps} className={textfieldClass} style={style}>\n <FocusRing focusClass={classNames(textfieldStyles, 'is-focused')} focusRingClass={classNames(textfieldStyles, 'focus-ring')} isTextInput within>\n <div role=\"presentation\" className={inputClass}>\n <div role=\"presentation\" className={classNames(datepickerStyles, 'react-spectrum-Datepicker-inputContents')} ref={mergeRefs(ref, inputRef)}>\n {children}\n </div>\n </div>\n </FocusRing>\n {validationIcon}\n </div>\n );\n}\n\nconst _Input = React.forwardRef(Input);\nexport {_Input as Input};\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@import './index.css';\n@import './skin.css';\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@import './index.css';\n@import './skin.css';\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\nimport {classNames} from '@react-spectrum/utils';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {Field} from '@react-spectrum/label';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport React, {ReactElement} from 'react';\nimport {SpectrumTimeFieldProps, TimeValue} from '@react-types/datepicker';\nimport {useFocusManagerRef} from './utils';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\nimport {useTimeField} from '@react-aria/datepicker';\nimport {useTimeFieldState} from '@react-stately/datepicker';\n\nfunction TimeField<T extends TimeValue>(props: SpectrumTimeFieldProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isQuiet\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n let {locale} = useLocale();\n let state = useTimeFieldState({\n ...props,\n locale\n });\n\n let {labelProps, fieldProps, descriptionProps, errorMessageProps} = useTimeField(props, state, domRef);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-TimeField-fieldWrapper')}>\n <Input\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n autoFocus={autoFocus}\n validationState={state.validationState}\n className={classNames(datepickerStyles, 'react-spectrum-TimeField')}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </Input>\n </Field>\n );\n}\n\n/**\n * TimeFields allow users to enter and edit time values using a keyboard.\n * Each part of the time is displayed in an individually editable segment.\n */\nconst _TimeField = React.forwardRef(TimeField) as <T extends TimeValue>(props: SpectrumTimeFieldProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_TimeField as TimeField};\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 */\nimport {createDOMRef} from '@react-spectrum/utils';\nimport {createFocusManager} from '@react-aria/focus';\nimport {FocusableRef} from '@react-types/shared';\nimport {SpectrumDatePickerBase} from '@react-types/datepicker';\nimport {useDateFormatter} from '@react-aria/i18n';\nimport {useDisplayNames} from '@react-aria/datepicker';\nimport {useImperativeHandle, useMemo, useRef, useState} from 'react';\nimport {useLayoutEffect} from '@react-aria/utils';\nimport {useProvider} from '@react-spectrum/provider';\n\nexport function useFormatHelpText(props: Pick<SpectrumDatePickerBase<any>, 'description' | 'showFormatHelpText'>) {\n let formatter = useDateFormatter({dateStyle: 'short'});\n let displayNames = useDisplayNames();\n return useMemo(() => {\n if (props.description) {\n return props.description;\n }\n\n if (props.showFormatHelpText) {\n return formatter.formatToParts(new Date()).map(s => {\n if (s.type === 'literal') {\n return s.value;\n }\n\n return displayNames.of(s.type);\n }).join(' ');\n }\n\n return '';\n }, [props.description, props.showFormatHelpText, formatter, displayNames]);\n}\n\nexport function useVisibleMonths(maxVisibleMonths: number) {\n let {scale} = useProvider();\n let [visibleMonths, setVisibleMonths] = useState(getVisibleMonths(scale));\n useLayoutEffect(() => {\n let onResize = () => setVisibleMonths(getVisibleMonths(scale));\n onResize();\n\n window.addEventListener('resize', onResize);\n return () => {\n window.removeEventListener('resize', onResize);\n };\n }, [scale]);\n\n return Math.max(1, Math.min(visibleMonths, maxVisibleMonths, 3));\n}\n\nfunction getVisibleMonths(scale) {\n if (typeof window === 'undefined') {\n return 1;\n }\n let monthWidth = scale === 'large' ? 336 : 280;\n let gap = scale === 'large' ? 30 : 24;\n let popoverPadding = scale === 'large' ? 32 : 48;\n return Math.floor((window.innerWidth - popoverPadding * 2) / (monthWidth + gap));\n}\n\nexport function useFocusManagerRef(ref: FocusableRef<HTMLElement>) {\n let domRef = useRef();\n useImperativeHandle(ref, () => ({\n ...createDOMRef(domRef),\n focus() {\n createFocusManager(domRef).focusFirst({tabbable: true});\n }\n }));\n return domRef;\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\nimport CalendarIcon from '@spectrum-icons/workflow/Calendar';\nimport {classNames} from '@react-spectrum/utils';\nimport {Content} from '@react-spectrum/view';\nimport {DatePickerField} from './DatePickerField';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDateRangePickerProps} from '@react-types/datepicker';\nimport {Dialog, DialogTrigger} from '@react-spectrum/dialog';\nimport {Field} from '@react-spectrum/label';\nimport {FieldButton} from '@react-spectrum/button';\nimport {Flex} from '@react-spectrum/layout';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport {mergeProps} from '@react-aria/utils';\nimport {RangeCalendar} from '@react-spectrum/calendar';\nimport React, {ReactElement, useRef} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/inputgroup/vars.css';\nimport {TimeField} from './TimeField';\nimport {useDateRangePicker} from '@react-aria/datepicker';\nimport {useDateRangePickerState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';\nimport {useFocusRing} from '@react-aria/focus';\nimport {useHover} from '@react-aria/interactions';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n isQuiet,\n isDisabled,\n isReadOnly,\n autoFocus,\n placeholderValue,\n maxVisibleMonths = 1\n } = props;\n let {hoverProps, isHovered} = useHover({isDisabled});\n let targetRef = useRef<HTMLDivElement>();\n let state = useDateRangePickerState({\n ...props,\n shouldCloseOnSelect: () => !state.hasTime\n });\n let {labelProps, groupProps, buttonProps, dialogProps, startFieldProps, endFieldProps, descriptionProps, errorMessageProps, calendarProps} = useDateRangePicker(props, state, targetRef);\n let {isOpen, setOpen} = state;\n let {direction} = useLocale();\n let domRef = useFocusManagerRef(ref);\n\n let {isFocused, isFocusVisible, focusProps} = useFocusRing({\n within: true,\n isTextInput: true,\n autoFocus\n });\n\n let {isFocused: isFocusedButton, focusProps: focusPropsButton} = useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus\n });\n\n let className = classNames(\n styles,\n 'spectrum-InputGroup',\n {\n 'spectrum-InputGroup--quiet': isQuiet,\n 'spectrum-InputGroup--invalid': state.validationState === 'invalid',\n 'is-disabled': isDisabled,\n 'is-hovered': isHovered,\n 'is-focused': isFocused,\n 'focus-ring': isFocusVisible && !isFocusedButton\n }\n );\n\n let fieldClassName = classNames(\n styles,\n 'spectrum-InputGroup-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': state.validationState === 'invalid'\n }\n );\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n let placeholder: DateValue = placeholderValue;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;\n let showTimeField = !!timeGranularity;\n\n let visibleMonths = useVisibleMonths(maxVisibleMonths);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <div\n {...mergeProps(groupProps, hoverProps, focusProps)}\n className={className}\n ref={targetRef}>\n <Input\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n validationState={state.validationState}\n className={classNames(styles, 'spectrum-InputGroup-field')}\n inputClassName={fieldClassName}>\n <DatePickerField\n {...startFieldProps}\n data-testid=\"start-date\"\n isQuiet={props.isQuiet}\n inputClassName={classNames(datepickerStyles, 'react-spectrum-Datepicker-startField')} />\n <DateRangeDash />\n <DatePickerField\n {...endFieldProps}\n data-testid=\"end-date\"\n isQuiet={props.isQuiet}\n inputClassName={classNames(\n styles,\n 'spectrum-Datepicker-endField',\n classNames(\n datepickerStyles,\n 'react-spectrum-Datepicker-endField'\n )\n )} />\n </Input>\n <DialogTrigger\n type=\"popover\"\n mobileType=\"tray\"\n placement={direction === 'rtl' ? 'bottom right' : 'bottom left'}\n targetRef={targetRef}\n hideArrow\n isOpen={isOpen}\n onOpenChange={setOpen}\n shouldFlip={props.shouldFlip}>\n <FieldButton\n {...mergeProps(buttonProps, focusPropsButton)}\n UNSAFE_className={classNames(styles, 'spectrum-FieldButton')}\n isQuiet={isQuiet}\n validationState={state.validationState}\n isDisabled={isDisabled || isReadOnly}>\n <CalendarIcon />\n </FieldButton>\n <Dialog UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialog')} {...dialogProps}>\n <Content>\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialogContent')}>\n <RangeCalendar\n {...calendarProps}\n visibleMonths={visibleMonths}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-calendar', {'is-invalid': state.validationState === 'invalid'})} />\n {showTimeField &&\n <Flex gap=\"size-100\" marginTop=\"size-100\" UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>\n <TimeField\n label=\"Start time\"\n value={state.timeRange?.start || null}\n onChange={v => state.setTime('start', v)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n flex />\n <TimeField\n label=\"End time\"\n value={state.timeRange?.end || null}\n onChange={v => state.setTime('end', v)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n flex />\n </Flex>\n }\n </div>\n </Content>\n </Dialog>\n </DialogTrigger>\n </div>\n </Field>\n );\n}\n\nfunction DateRangeDash() {\n return (\n <div\n aria-hidden=\"true\"\n data-testid=\"date-range-dash\"\n className={classNames(datepickerStyles, 'react-spectrum-Datepicker-rangeDash')} />\n );\n}\n\n/**\n * DateRangePickers combine two DateFields and a RangeCalendar popover to allow users\n * to enter or select a date and time range.\n */\nconst _DateRangePicker = React.forwardRef(DateRangePicker) as <T extends DateValue>(props: SpectrumDateRangePickerProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DateRangePicker as DateRangePicker};\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\nimport {classNames} from '@react-spectrum/utils';\nimport {createCalendar} from '@internationalized/date';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDateFieldProps} from '@react-types/datepicker';\nimport {Field} from '@react-spectrum/label';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport React, {ReactElement} from 'react';\nimport {useDateField} from '@react-aria/datepicker';\nimport {useDateFieldState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText} from './utils';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DateField<T extends DateValue>(props: SpectrumDateFieldProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isQuiet\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n let {locale} = useLocale();\n let state = useDateFieldState({\n ...props,\n locale,\n createCalendar\n });\n\n let {labelProps, fieldProps, descriptionProps, errorMessageProps} = useDateField(props, state, domRef);\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <Input\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n autoFocus={autoFocus}\n validationState={state.validationState}\n className={classNames(datepickerStyles, 'react-spectrum-DateField')}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </Input>\n </Field>\n );\n}\n\n/**\n * DateFields allow users to enter and edit date and time values using a keyboard.\n * Each part of a date value is displayed in an individually editable segment.\n */\nconst _DateField = React.forwardRef(DateField) as <T extends DateValue>(props: SpectrumDateFieldProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DateField as DateField};\n"],"names":[],"version":3,"file":"module.js.map"}
1
+ {"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AIAA,GAAwD;AACxD,GAAsD;AACtD,GAAoD;AACpD,GAAiD;AACjD,GAAiD;AACjD,GAA0C;AAC1C,GAA0C;AAC1C,GAAuD;AACvD,GAAyD;AACzD,GAAqD;AACrD,GAAoD;AACpD,GAAmD;AACnD,GAAgD;AAChD,GAAuD;AACvD,GAAgC;AAChC,GAA8B;AAC9B,GAAkD;AAClD,GAAyD;AACzD,GAAoD;AACpD,GAA4B;AAC5B,GAAsD;AApBtD,yCAAwD,GAAG,CAA+C;AAC1G,yCAAsD,GAAG,CAA6C;AACtG,yCAAoD,GAAG,CAA2C;AAClG,yCAAiD,GAAG,CAAwC;AAC5F,yCAAiD,GAAG,CAAwC;AAC5F,yCAA0C,GAAG,CAAiC;AAC9E,yCAA0C,GAAG,CAAiC;AAC9E,yCAAuD,GAAG,CAA8C;AACxG,yCAAyD,GAAG,CAAgD;AAC5G,yCAAqD,GAAG,CAA4C;AACpG,yCAAoD,GAAG,CAA2C;AAClG,yCAAmD,GAAG,CAA0C;AAChG,yCAAgD,GAAG,CAAuC;AAC1F,yCAAuD,GAAG,CAA8C;AACxG,yCAAgC,GAAG,CAAuB;AAC1D,yCAA8B,GAAG,CAAqB;AACtD,yCAAkD,GAAG,CAAyC;AAC9F,yCAAyD,GAAG,CAAgD;AAC5G,yCAAoD,GAAG,CAA2C;AAClG,yCAA4B,GAAG,CAAmB;AAClD,yCAAsD,GAAG,CAA6C;;;;SDQtF,yCAAiB,CAAC,CAAC,UAAA,OAAO,UAAE,KAAK,MAAK,UAAU,CAAwB,CAAC,EAAE,CAAC;IAC1F,MAAM,CAAE,OAAO,CAAC,IAAI;QAClB,EAAgC,AAAhC,8BAAgC;QAChC,IAAI,CAAC,CAAS;YACZ,MAAM,0CAAE,oCAAc;gBAAC,OAAO,EAAE,OAAO;;QAEzC,EAAmB,AAAnB,iBAAmB;;YAEjB,MAAM,0CAAE,qCAAe;gBAAC,OAAO,EAAE,OAAO;gBAAE,KAAK,EAAE,KAAK;mBAAM,UAAU;;;AAE5E,CAAC;SAEQ,oCAAc,CAAC,CAAC,UAAA,OAAO,EAAqB,CAAC,EAAE,CAAC;IACvD,MAAM,0CACH,CAAI;QACH,CAAW,cAAC,CAAM;QAClB,SAAS,EAAE,iBAAU,CAAC,gEAAM,EAAE,CAAmC;QACjE,CAAW,cAAE,OAAO,CAAC,IAAI,KAAK,CAAS,WAAG,SAAS,GAAG,OAAO,CAAC,IAAI;OACjE,OAAO,CAAC,IAAI;AAGnB,CAAC;SAEQ,qCAAe,CAAC,CAAC,UAAA,OAAO,UAAE,KAAK,EAAwB,CAAC,EAAE,CAAC;IAClE,GAAG,CAAC,GAAG,GAAG,aAAM;IAChB,GAAG,CAAC,CAAC,eAAA,YAAY,EAAA,CAAC,GAAG,qBAAc,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG;IACvD,MAAM,0CACH,CAAG;WACE,YAAY;QAChB,GAAG,EAAE,GAAG;QACR,SAAS,EAAE,iBAAU,CAAC,gEAAM,EAAE,CAAgC,iCAAE,CAAC;YAC/D,CAAgB,iBAAE,OAAO,CAAC,aAAa;YACvC,CAAc,gBAAG,OAAO,CAAC,UAAU;QACrC,CAAC;QACD,KAAK,EAAE,CAAC;eACH,YAAY,CAAC,KAAK;YACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAI,MAAG,IAAI;QACpF,CAAC;QACD,CAAW,cAAE,OAAO,CAAC,IAAI;gDACxB,CAAI;QAAC,CAAW,cAAC,CAAM;QAAC,SAAS,EAAE,iBAAU,CAAC,gEAAM,EAAE,CAAuC;OAAI,OAAO,CAAC,WAAW,GACpH,OAAO,CAAC,aAAa,GAAG,CAAE,IAAG,OAAO,CAAC,IAAI;AAGhD,CAAC;;;;;;;;SD3Ce,uCAAe,CAAsB,KAA8B,EAAE,CAAC;IACpF,GAAG,CAAC,CAAC,aACH,UAAU,eACV,UAAU,eACV,UAAU,mBACV,cAAc,EAChB,CAAC,GAAG,KAAK;IACT,GAAG,CAAC,GAAG,GAAG,aAAM;IAChB,GAAG,CAAC,CAAC,SAAA,MAAM,EAAA,CAAC,GAAG,gBAAS;IACxB,GAAG,CAAC,KAAK,GAAG,wBAAiB,CAAC,CAAC;WAC1B,KAAK;gBACR,MAAM;wBACN,qBAAc;IAChB,CAAC;IAED,GAAG,CAAC,CAAC,aAAA,UAAU,EAAA,CAAC,GAAG,mBAAY,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG;IAEjD,MAAM,0CACH,CAAG;WAAK,UAAU;QAAE,CAAW,cAAE,KAAK,CAAC,CAAa;QAAG,SAAS,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAoC,qCAAE,cAAc;QAAG,GAAG,EAAE,GAAG;OAC5J,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,4CAC3B,yCAAiB;YACjB,GAAG,EAAE,CAAC;YACN,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;;;AAIhC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AI1DD,GAA0C;AAC1C,GAAoC;AACpC,GAA2C;AAC3C,GAA+C;AAC/C,GAAgC;AAChC,GAA4B;AAC5B,GAA2C;AAC3C,GAA6C;AAC7C,GAA8C;AAC9C,GAA4C;AAC5C,GAAmD;AACnD,GAAyC;AACzC,GAA8C;AAC9C,GAAiD;AACjD,GAA4B;AAC5B,GAA4B;AAC5B,GAA6B;AAhB7B,yCAA0C,GAAG,CAAiC;AAC9E,yCAAoC,GAAG,CAA2B;AAClE,yCAA2C,GAAG,CAAkC;AAChF,yCAA+C,GAAG,CAAsC;AACxF,yCAAgC,GAAG,CAAuB;AAC1D,yCAA4B,GAAG,CAAmB;AAClD,yCAA2C,GAAG,CAAkC;AAChF,yCAA6C,GAAG,CAAoC;AACpF,yCAA8C,GAAG,CAAqC;AACtF,yCAA4C,GAAG,CAAmC;AAClF,yCAAmD,GAAG,CAA0C;AAChG,yCAAyC,GAAG,CAAgC;AAC5E,yCAA8C,GAAG,CAAqC;AACtF,uCAAiD,GAAG,CAAwC;AAC5F,yCAA4B,GAAG,CAAmB;AAClD,yCAA4B,GAAG,CAAmB;AAClD,yCAA6B,GAAG,CAAoB;;;SDK3C,2BAAK,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC;IAC1B,GAAG,CAAC,QAAQ,GAAG,aAAM,CAAC,IAAI;IAC1B,GAAG,CAAC,CAAC,aACH,UAAU,YACV,OAAO,mBACP,cAAc,oBACd,eAAe,aACf,QAAQ,eACR,UAAU,cACV,SAAS,UACT,KAAK,EACP,CAAC,GAAG,KAAK;IAET,EAAmF,AAAnF,iFAAmF;IACnF,EAAiF,AAAjF,+EAAiF;IACjF,EAA4B,AAA5B,0BAA4B;IAC5B,GAAG,EAAE,eAAc,EAAE,iBAAiB,IAAI,qBAAc,CAAC,KAAK;IAC9D,GAAG,CAAC,QAAQ,GAAG,kBAAW,KAAO,iBAAiB,CAAC,QAAQ,EAAG,cAAc,EAAE,CAAC;YAC7E,EAAE,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,EAAE,EAAE,cAAc,EAChB,EAAqD,AAArD,mDAAqD;gBACrD,CAAC;oBAAD,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;wBAChE,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW;8BAChD,KAAK;wBAEX,EAA0D,AAA1D,wDAA0D;wBAC1D,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,KAAK,KAAK,QAChD,IAAI;oBAEd,CAAC;gBAAD,CAAC,MAED,EAAoD,AAApD,kDAAoD;gBACpD,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,WAAW,IAAI,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;oBACjE,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW;0BAChD,IAAI;oBAEV,EAA4F,AAA5F,0FAA4F;oBAC5F,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,KAAK,KAAK,QAChD,KAAK;gBAEf,CAAC;YAEL,CAAC;QAEH,CAAC;MAAG,CAAC;QAAA,QAAQ;QAAE,iBAAiB;IAAA,CAAC;IAEjC,sBAAe,CAAC,QAAQ,EAAE,CAAC;QAAA,QAAQ;IAAA,CAAC;IACpC,wBAAiB,CAAC,CAAC;QACjB,GAAG,EAAE,QAAQ;kBACb,QAAQ;IACV,CAAC;IAED,EAA0E,AAA1E,wEAA0E;IAC1E,EAA0E,AAA1E,wEAA0E;IAC1E,EAA0E,AAA1E,wEAA0E;IAC1E,EAAkB,AAAlB,gBAAkB;IAClB,eAAQ,CAAC,aAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAW,aAAG,MAAM,GAAG,IAAI,GAAG,CAAQ,SAAE,QAAQ;IAElF,GAAG,CAAC,SAAS,GAAG,eAAe,KAAK,CAAS;IAC7C,GAAG,CAAC,cAAc,GAAG,iBAAU,CAC7B,gEAAe,EACf,CAAoB,qBACpB,CAAC;QACC,CAA6B,8BAAE,SAAS;QACxC,CAA2B,4BAAE,eAAe,KAAK,CAAO;QACxD,CAA2B,4BAAE,OAAO;IACtC,CAAC,EACD,iBAAU,CAAC,gEAAgB,EAAE,CAAiC,mCAC9D,SAAS;IAGX,GAAG,CAAC,UAAU,GAAG,iBAAU,CACzB,gEAAe,EACf,CAA0B,2BAC1B,CAAC;QACC,CAAa,cAAE,UAAU;QACzB,CAAY,aAAE,SAAS;IACzB,CAAC,EACD,eAAc,IAAI,iBAAU,CAAC,gEAAgB,EAAE,CAAiC,mCAChF,cAAc;IAGhB,GAAG,CAAC,SAAS,GAAG,iBAAU,CACxB,gEAAe,EACf,CAAmC;IAGrC,GAAG,CAAC,cAAc,GAAG,IAAI;IACzB,EAAE,EAAE,eAAe,KAAK,CAAS,UAC/B,cAAc,4CAAI,iCAAK;QAAC,CAAW,cAAC,CAAc;QAAC,gBAAgB,EAAE,SAAS;;SACzE,EAAE,EAAE,eAAe,KAAK,CAAO,QACpC,cAAc,4CAAI,qCAAS;QAAC,CAAW,cAAC,CAAY;QAAC,gBAAgB,EAAE,SAAS;;IAGlF,MAAM,0CACH,CAAG;QAAC,IAAI,EAAC,CAAc;WAAK,UAAU;QAAE,SAAS,EAAE,cAAc;QAAE,KAAK,EAAE,KAAK;gDAC7E,gBAAS;QAAC,UAAU,EAAE,iBAAU,CAAC,gEAAe,EAAE,CAAY;QAAG,cAAc,EAAE,iBAAU,CAAC,gEAAe,EAAE,CAAY;QAAG,WAAW,EAAX,IAAW;QAAC,MAAM,EAAN,IAAM;gDAC5I,CAAG;QAAC,IAAI,EAAC,CAAc;QAAC,SAAS,EAAE,UAAU;gDAC3C,CAAG;QAAC,IAAI,EAAC,CAAc;QAAC,SAAS,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAyC;QAAG,GAAG,EAAE,gBAAS,CAAC,GAAG,EAAE,QAAQ;OACtI,QAAQ,KAId,cAAc;AAGrB,CAAC;AAED,KAAK,CAAC,yCAAM,iBAAG,YAAK,CAAC,UAAU,CAAC,2BAAK;;;;;AGjIrC,yBAAc,GAAG,CAAC;IAAE,CAAM,QAAG,IAAI;IAC/B,CAAW,aAAG,UAAU;IACxB,CAAS,WAAG,QAAQ;AACtB,CAAC;;;ADFD,yBAAc,GAAG,CAAC;IAChB,CAAO,QAAE,yBAAM;AACjB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AEHD,GAAqC;AACrC,GAAsC;AACtC,GAA6B;AAC7B,GAA8C;AAC9C,GAA4C;AAC5C,GAA2C;AAC3C,GAA0D;AAC1D,GAAwD;AACxD,GAA2C;AAC3C,GAA0C;AAC1C,GAAoD;AACpD,GAA4C;AAC5C,GAAoD;AACpD,GAAgD;AAChD,GAA8C;AAC9C,GAAgD;AAChD,GAA4B;AAC5B,GAA+C;AAC/C,GAA4B;AAC5B,GAA4B;AAC5B,GAA6B;AAC7B,GAA+C;AArB/C,yCAAqC,GAAG,CAA4B;AACpE,yCAAsC,GAAG,CAA6B;AACtE,yCAA6B,GAAG,CAAoB;AACpD,yCAA8C,GAAG,CAAqC;AACtF,yCAA4C,GAAG,CAAmC;AAClF,yCAA2C,GAAG,CAAkC;AAChF,yCAA0D,GAAG,CAAiD;AAC9G,yCAAwD,GAAG,CAA+C;AAC1G,wCAA2C,GAAG,CAAkC;AAChF,yCAA0C,GAAG,CAAiC;AAC9E,yCAAoD,GAAG,CAA2C;AAClG,wCAA4C,GAAG,CAAmC;AAClF,yCAAoD,GAAG,CAA2C;AAClG,yCAAgD,GAAG,CAAuC;AAC1F,yCAA8C,GAAG,CAAqC;AACtF,wCAAgD,GAAG,CAAuC;AAC1F,yCAA4B,GAAG,CAAmB;AAClD,yCAA+C,GAAG,CAAsC;AACxF,yCAA4B,GAAG,CAAmB;AAClD,yCAA4B,GAAG,CAAmB;AAClD,yCAA6B,GAAG,CAAoB;AACpD,yCAA+C,GAAG,CAAsC;;;;;;;;;;;;;;;;SEAxE,yCAAiB,CAAC,KAA8E,EAAE,CAAC;IACjH,GAAG,CAAC,SAAS,GAAG,uBAAgB,CAAC,CAAC;QAAA,SAAS,EAAE,CAAO;IAAA,CAAC;IACrD,GAAG,CAAC,YAAY,GAAG,sBAAe;IAClC,MAAM,CAAC,cAAO,KAAO,CAAC;QACpB,EAAE,EAAE,KAAK,CAAC,WAAW,EACnB,MAAM,CAAC,KAAK,CAAC,WAAW;QAG1B,EAAE,EAAE,KAAK,CAAC,kBAAkB,EAC1B,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,EAAC,CAAC,GAAI,CAAC;YACnD,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAS,UACtB,MAAM,CAAC,CAAC,CAAC,KAAK;YAGhB,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;QAC/B,CAAC,EAAE,IAAI,CAAC,CAAG;QAGb,MAAM,CAAC,CAAE;IACX,CAAC,EAAE,CAAC;QAAA,KAAK,CAAC,WAAW;QAAE,KAAK,CAAC,kBAAkB;QAAE,SAAS;QAAE,YAAY;IAAA,CAAC;AAC3E,CAAC;SAEe,yCAAgB,CAAC,gBAAwB,EAAE,CAAC;IAC1D,GAAG,CAAC,CAAC,QAAA,KAAK,EAAA,CAAC,GAAG,kBAAW;IACzB,GAAG,EAAE,aAAa,EAAE,gBAAgB,IAAI,eAAQ,CAAC,sCAAgB,CAAC,KAAK;IACvE,sBAAe,KAAO,CAAC;QACrB,GAAG,CAAC,QAAQ,OAAS,gBAAgB,CAAC,sCAAgB,CAAC,KAAK;;QAC5D,QAAQ;QAER,MAAM,CAAC,gBAAgB,CAAC,CAAQ,SAAE,QAAQ;QAC1C,MAAM,KAAO,CAAC;YACZ,MAAM,CAAC,mBAAmB,CAAC,CAAQ,SAAE,QAAQ;QAC/C,CAAC;IACH,CAAC,EAAE,CAAC;QAAA,KAAK;IAAA,CAAC;IAEV,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,gBAAgB,EAAE,CAAC;AAChE,CAAC;SAEQ,sCAAgB,CAAC,KAAK,EAAE,CAAC;IAChC,EAAE,EAAE,MAAM,CAAC,MAAM,KAAK,CAAW,YAC/B,MAAM,CAAC,CAAC;IAEV,GAAG,CAAC,UAAU,GAAG,KAAK,KAAK,CAAO,SAAG,GAAG,GAAG,GAAG;IAC9C,GAAG,CAAC,GAAG,GAAG,KAAK,KAAK,CAAO,SAAG,EAAE,GAAG,EAAE;IACrC,GAAG,CAAC,cAAc,GAAG,KAAK,KAAK,CAAO,SAAG,EAAE,GAAG,EAAE;IAChD,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,UAAU,GAAG,cAAc,GAAG,CAAC,KAAK,UAAU,GAAG,GAAG;AAChF,CAAC;SAEe,yCAAkB,CAAC,GAA8B,EAAE,CAAC;IAClE,GAAG,CAAC,MAAM,GAAG,aAAM;IACnB,0BAAmB,CAAC,GAAG,OAAS,CAAC;eAC5B,mBAAY,CAAC,MAAM;YACtB,KAAK,IAAG,CAAC;gBACP,yBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;oBAAA,QAAQ,EAAE,IAAI;gBAAA,CAAC;YACxD,CAAC;QACH,CAAC;;IACD,MAAM,CAAC,MAAM;AACf,CAAC;;;;;;;SDpDQ,+BAAS,CAAsB,KAAgC,EAAE,GAA8B,EAAE,CAAC;IACzG,KAAK,GAAG,uBAAgB,CAAC,KAAK;IAC9B,GAAG,CAAC,CAAC,YACH,SAAS,eACT,UAAU,eACV,UAAU,eACV,UAAU,YACV,OAAO,EACT,CAAC,GAAG,KAAK;IAET,GAAG,CAAC,MAAM,GAAG,yCAAkB,CAAC,GAAG;IACnC,GAAG,CAAC,CAAC,SAAA,MAAM,EAAA,CAAC,GAAG,gBAAS;IACxB,GAAG,CAAC,KAAK,GAAG,wBAAiB,CAAC,CAAC;WAC1B,KAAK;gBACR,MAAM;IACR,CAAC;IAED,GAAG,CAAC,CAAC,aAAA,UAAU,eAAE,UAAU,qBAAE,gBAAgB,sBAAE,iBAAiB,EAAA,CAAC,GAAG,mBAAY,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM;IAErG,MAAM,0CACH,YAAK;WACA,KAAK;QACT,GAAG,EAAE,MAAM;QACX,WAAW,EAAC,CAAM;QAClB,UAAU,EAAE,UAAU;QACtB,gBAAgB,EAAE,gBAAgB;QAClC,iBAAiB,EAAE,iBAAiB;QACpC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAuC;gDACrF,yCAAK;QACJ,UAAU,EAAE,UAAU;QACtB,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,SAAS,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAA0B;OACjE,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,4CAC3B,yCAAiB;YACjB,GAAG,EAAE,CAAC;YACN,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;;;AAKlC,CAAC;AAED,EAGG,AAHH;;;CAGG,AAHH,EAGG,CACH,KAAK,CAAC,yCAAU,iBAAG,YAAK,CAAC,UAAU,CAAC,+BAAS;;;;;;;;;;STzCpC,gCAAU,CAAsB,KAAiC,EAAE,GAA8B,EAAE,CAAC;IAC3G,KAAK,GAAG,uBAAgB,CAAC,KAAK;IAC9B,GAAG,CAAC,CAAC,YACH,SAAS,YACT,OAAO,eACP,UAAU,eACV,UAAU,qBACV,gBAAgB,qBAChB,gBAAgB,GAAG,CAAC,EACtB,CAAC,GAAG,KAAK;IACT,GAAG,CAAC,CAAC,aAAA,UAAU,cAAE,SAAS,EAAA,CAAC,GAAG,eAAQ,CAAC,CAAC;oBAAA,UAAU;IAAA,CAAC;IACnD,GAAG,CAAC,SAAS,GAAG,aAAM;IACtB,GAAG,CAAC,KAAK,GAAG,yBAAkB,CAAC,CAAC;WAC3B,KAAK;QACR,mBAAmB,OAAS,KAAK,CAAC,OAAO;IAC3C,CAAC;IACD,GAAG,CAAC,CAAC,aAAA,UAAU,eAAE,UAAU,eAAE,UAAU,qBAAE,gBAAgB,sBAAE,iBAAiB,gBAAE,WAAW,gBAAE,WAAW,kBAAE,aAAa,EAAA,CAAC,GAAG,oBAAa,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS;IAC9J,GAAG,CAAC,CAAC,SAAA,MAAM,YAAE,OAAO,EAAA,CAAC,GAAG,KAAK;IAC7B,GAAG,CAAC,CAAC,YAAA,SAAS,EAAA,CAAC,GAAG,gBAAS;IAC3B,GAAG,CAAC,MAAM,GAAG,yCAAkB,CAAC,GAAG;IACnC,GAAG,CAAC,eAAe,GAAG,kCAA2B,CAAC,gEAAY;IAE9D,GAAG,CAAC,CAAC,YAAA,SAAS,mBAAE,cAAc,eAAE,UAAU,EAAA,CAAC,GAAG,mBAAY,CAAC,CAAC;QAC1D,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;mBACjB,SAAS;IACX,CAAC;IAED,GAAG,CAAC,CAAC,CAAA,SAAS,EAAE,eAAe,GAAE,UAAU,EAAE,gBAAgB,EAAA,CAAC,GAAG,mBAAY,CAAC,CAAC;QAC7E,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,KAAK;mBAClB,SAAS;IACX,CAAC;IAED,GAAG,CAAC,SAAS,GAAG,iBAAU,CACxB,gEAAM,EACN,CAAqB,sBACrB,CAAC;QACC,CAA4B,6BAAE,OAAO;QACrC,CAA8B,+BAAE,KAAK,CAAC,eAAe,KAAK,CAAS;QACnE,CAAa,cAAE,UAAU;QACzB,CAAY,aAAE,SAAS;QACvB,CAAY,aAAE,SAAS;QACvB,CAAY,aAAE,cAAc,KAAK,eAAe;IAClD,CAAC;IAGH,GAAG,CAAC,cAAc,GAAG,iBAAU,CAC7B,gEAAM,EACN,CAA2B,4BAC3B,CAAC;QACC,CAAa,cAAE,UAAU;QACzB,CAAY,aAAE,KAAK,CAAC,eAAe,KAAK,CAAS;IACnD,CAAC;IAGH,EAAuE,AAAvE,qEAAuE;IACvE,EAAwG,AAAxG,sGAAwG;IACxG,GAAG,CAAC,WAAW,GAAG,yCAAiB,CAAC,KAAK;IACzC,EAAE,EAAE,WAAW,KAAK,KAAK,CAAC,WAAW,EACnC,gBAAgB,CAAC,EAAE,GAAG,IAAI;IAG5B,GAAG,CAAC,WAAW,GAAc,gBAAgB;IAC7C,GAAG,CAAC,eAAe,GAAG,WAAW,IAAI,CAAM,SAAI,WAAW,GAAG,WAAW,GAAG,IAAI;IAC/E,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAM,SAAI,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,GAAG,IAAI;IACrF,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAM,SAAI,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,GAAG,IAAI;IACrF,GAAG,CAAC,eAAe,GAAG,KAAK,CAAC,WAAW,KAAK,CAAM,SAAI,KAAK,CAAC,WAAW,KAAK,CAAQ,WAAI,KAAK,CAAC,WAAW,KAAK,CAAQ,UAAG,KAAK,CAAC,WAAW,GAAG,IAAI;IACjJ,GAAG,CAAC,aAAa,KAAK,eAAe;IAErC,GAAG,CAAC,aAAa,GAAG,yCAAgB,CAAC,gBAAgB;IAErD,MAAM,0CACH,YAAK;WACA,KAAK;QACT,GAAG,EAAE,MAAM;QACX,WAAW,EAAC,CAAM;QAClB,WAAW,EAAE,WAAW;QACxB,UAAU,EAAE,UAAU;QACtB,gBAAgB,EAAE,gBAAgB;QAClC,iBAAiB,EAAE,iBAAiB;QACpC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAwC;gDACtF,CAAG;WACE,iBAAU,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU;QACjD,SAAS,EAAE,SAAS;QACpB,GAAG,EAAE,SAAS;gDACb,yCAAK;QACJ,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,SAAS,EAAE,iBAAU,CAAC,gEAAM,EAAE,CAA2B;QACzD,cAAc,EAAE,cAAc;gDAC7B,uCAAe;WACV,UAAU;QACd,CAAW,cAAC,CAAY;QACxB,OAAO,EAAE,OAAO;kDAEnB,oBAAa;QACZ,IAAI,EAAC,CAAS;QACd,UAAU,EAAC,CAAM;QACjB,SAAS,EAAE,SAAS,KAAK,CAAK,OAAG,CAAc,gBAAG,CAAa;QAC/D,SAAS,EAAE,SAAS;QACpB,SAAS,EAAT,IAAS;QACT,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,OAAO;QACrB,UAAU,EAAE,KAAK,CAAC,UAAU;gDAC3B,kBAAW;WACN,iBAAU,CAAC,WAAW,EAAE,gBAAgB;QAC5C,gBAAgB,EAAE,iBAAU,CAAC,gEAAM,EAAE,CAAsB;QAC3D,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,UAAU,EAAE,UAAU,IAAI,UAAU;gDACnC,oCAAY,mDAEd,aAAM;QAAC,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAkC;WAAO,WAAW;gDACxG,cAAO,iDACL,CAAG;QAAC,SAAS,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAyC;gDACnF,eAAQ;WACH,aAAa;QACjB,aAAa,EAAE,aAAa;QAC5B,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAoC,qCAAE,CAAC;YAAA,CAAY,aAAE,KAAK,CAAC,eAAe,KAAK,CAAS;QAAA,CAAC;QACzI,aAAa,6CACX,CAAG;QAAC,SAAS,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAsC;gDAChF,yCAAS;QACR,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,CAAM;QACpC,KAAK,EAAE,KAAK,CAAC,SAAS;QACtB,QAAQ,EAAE,KAAK,CAAC,YAAY;QAC5B,gBAAgB,EAAE,eAAe;QACjC,WAAW,EAAE,eAAe;QAC5B,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,SAAS,EAAC,CAAU;;AAU1C,CAAC;AAED,EAEG,AAFH;;CAEG,AAFH,EAEG,CACH,KAAK,CAAC,yCAAW,iBAAG,YAAK,CAAC,UAAU,CAAC,gCAAU;;;;;;;;;;;;;;;;;;;;;;;;;;SWrJtC,qCAAe,CAAsB,KAAsC,EAAE,GAA8B,EAAE,CAAC;QA4I1F,IAAe,EAWf,IAAe;IAtJ1C,KAAK,GAAG,uBAAgB,CAAC,KAAK;IAC9B,GAAG,CAAC,CAAC,UACH,OAAO,eACP,UAAU,eACV,UAAU,cACV,SAAS,qBACT,gBAAgB,qBAChB,gBAAgB,GAAG,CAAC,EACtB,CAAC,GAAG,KAAK;IACT,GAAG,CAAC,CAAC,aAAA,UAAU,cAAE,SAAS,EAAA,CAAC,GAAG,eAAQ,CAAC,CAAC;oBAAA,UAAU;IAAA,CAAC;IACnD,GAAG,CAAC,SAAS,GAAG,aAAM;IACtB,GAAG,CAAC,KAAK,GAAG,8BAAuB,CAAC,CAAC;WAChC,KAAK;QACR,mBAAmB,OAAS,KAAK,CAAC,OAAO;IAC3C,CAAC;IACD,GAAG,CAAC,CAAC,aAAA,UAAU,eAAE,UAAU,gBAAE,WAAW,gBAAE,WAAW,oBAAE,eAAe,kBAAE,aAAa,qBAAE,gBAAgB,sBAAE,iBAAiB,kBAAE,aAAa,EAAA,CAAC,GAAG,yBAAkB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS;IACvL,GAAG,CAAC,CAAC,SAAA,MAAM,YAAE,OAAO,EAAA,CAAC,GAAG,KAAK;IAC7B,GAAG,CAAC,CAAC,YAAA,SAAS,EAAA,CAAC,GAAG,gBAAS;IAC3B,GAAG,CAAC,MAAM,GAAG,yCAAkB,CAAC,GAAG;IACnC,GAAG,CAAC,eAAe,GAAG,kCAA2B,CAAC,gEAAY;IAE9D,GAAG,CAAC,CAAC,YAAA,SAAS,mBAAE,cAAc,eAAE,UAAU,EAAA,CAAC,GAAG,mBAAY,CAAC,CAAC;QAC1D,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;mBACjB,SAAS;IACX,CAAC;IAED,GAAG,CAAC,CAAC,CAAA,SAAS,EAAE,eAAe,GAAE,UAAU,EAAE,gBAAgB,EAAA,CAAC,GAAG,mBAAY,CAAC,CAAC;QAC7E,MAAM,EAAE,KAAK;QACb,WAAW,EAAE,KAAK;mBAClB,SAAS;IACX,CAAC;IAED,GAAG,CAAC,SAAS,GAAG,iBAAU,CACxB,gEAAM,EACN,CAAqB,sBACrB,CAAC;QACC,CAA4B,6BAAE,OAAO;QACrC,CAA8B,+BAAE,KAAK,CAAC,eAAe,KAAK,CAAS;QACnE,CAAa,cAAE,UAAU;QACzB,CAAY,aAAE,SAAS;QACvB,CAAY,aAAE,SAAS;QACvB,CAAY,aAAE,cAAc,KAAK,eAAe;IAClD,CAAC;IAGH,GAAG,CAAC,cAAc,GAAG,iBAAU,CAC7B,gEAAM,EACN,CAA2B,4BAC3B,CAAC;QACC,CAAa,cAAE,UAAU;QACzB,CAAY,aAAE,KAAK,CAAC,eAAe,KAAK,CAAS;IACnD,CAAC;IAGH,EAAuE,AAAvE,qEAAuE;IACvE,EAAwG,AAAxG,sGAAwG;IACxG,GAAG,CAAC,WAAW,GAAG,yCAAiB,CAAC,KAAK;IACzC,EAAE,EAAE,WAAW,KAAK,KAAK,CAAC,WAAW,EACnC,gBAAgB,CAAC,EAAE,GAAG,IAAI;IAG5B,GAAG,CAAC,WAAW,GAAc,gBAAgB;IAC7C,GAAG,CAAC,eAAe,GAAG,WAAW,IAAI,CAAM,SAAI,WAAW,GAAG,WAAW,GAAG,IAAI;IAC/E,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAM,SAAI,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,GAAG,IAAI;IACrF,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC,QAAQ,IAAI,CAAM,SAAI,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,GAAG,IAAI;IACrF,GAAG,CAAC,eAAe,GAAG,KAAK,CAAC,WAAW,KAAK,CAAM,SAAI,KAAK,CAAC,WAAW,KAAK,CAAQ,WAAI,KAAK,CAAC,WAAW,KAAK,CAAQ,UAAG,KAAK,CAAC,WAAW,GAAG,IAAI;IACjJ,GAAG,CAAC,aAAa,KAAK,eAAe;IAErC,GAAG,CAAC,aAAa,GAAG,yCAAgB,CAAC,gBAAgB;IAErD,MAAM,0CACH,YAAK;WACA,KAAK;QACT,GAAG,EAAE,MAAM;QACX,WAAW,EAAC,CAAM;QAClB,WAAW,EAAE,WAAW;QACxB,UAAU,EAAE,UAAU;QACtB,gBAAgB,EAAE,gBAAgB;QAClC,iBAAiB,EAAE,iBAAiB;QACpC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAwC;gDACtF,CAAG;WACE,iBAAU,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU;QACjD,SAAS,EAAE,SAAS;QACpB,GAAG,EAAE,SAAS;gDACb,yCAAK;QACJ,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,SAAS,EAAE,iBAAU,CAAC,gEAAM,EAAE,CAA2B;QACzD,cAAc,EAAE,cAAc;gDAC7B,uCAAe;WACV,eAAe;QACnB,CAAW,cAAC,CAAY;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,cAAc,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAsC;iDACpF,mCAAa,kDACb,uCAAe;WACV,aAAa;QACjB,CAAW,cAAC,CAAU;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,cAAc,EAAE,iBAAU,CACxB,gEAAM,EACN,CAA8B,+BAC9B,iBAAU,CACR,gEAAgB,EAChB,CAAoC;kDAI3C,oBAAa;QACZ,IAAI,EAAC,CAAS;QACd,UAAU,EAAC,CAAM;QACjB,SAAS,EAAE,SAAS,KAAK,CAAK,OAAG,CAAc,gBAAG,CAAa;QAC/D,SAAS,EAAE,SAAS;QACpB,SAAS,EAAT,IAAS;QACT,MAAM,EAAE,MAAM;QACd,YAAY,EAAE,OAAO;QACrB,UAAU,EAAE,KAAK,CAAC,UAAU;gDAC3B,kBAAW;WACN,iBAAU,CAAC,WAAW,EAAE,gBAAgB;QAC5C,gBAAgB,EAAE,iBAAU,CAAC,gEAAM,EAAE,CAAsB;QAC3D,OAAO,EAAE,OAAO;QAChB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,UAAU,EAAE,UAAU,IAAI,UAAU;gDACnC,oCAAY,mDAEd,aAAM;QAAC,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAkC;WAAO,WAAW;gDACxG,cAAO,iDACL,CAAG;QAAC,SAAS,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAyC;gDACnF,oBAAa;WACR,aAAa;QACjB,aAAa,EAAE,aAAa;QAC5B,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAoC,qCAAE,CAAC;YAAA,CAAY,aAAE,KAAK,CAAC,eAAe,KAAK,CAAS;QAAA,CAAC;QACzI,aAAa,6CACX,WAAI;QAAC,GAAG,EAAC,CAAU;QAAC,SAAS,EAAC,CAAU;QAAC,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAsC;gDAC5H,yCAAS;QACR,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,CAAW;QACzC,KAAK,IAAE,IAAe,GAAf,KAAK,CAAC,SAAS,cAAf,IAAe,KAAf,IAAI,CAAJ,CAAsB,GAAtB,IAAI,CAAJ,CAAsB,GAAtB,IAAe,CAAE,KAAK,KAAI,IAAI;QACrC,QAAQ,GAAE,CAAC,GAAI,KAAK,CAAC,OAAO,CAAC,CAAO,QAAE,CAAC;;QACvC,gBAAgB,EAAE,eAAe;QACjC,WAAW,EAAE,eAAe;QAC5B,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,IAAI,EAAJ,IAAI;iDACL,yCAAS;QACR,KAAK,EAAE,eAAe,CAAC,MAAM,CAAC,CAAS;QACvC,KAAK,IAAE,IAAe,GAAf,KAAK,CAAC,SAAS,cAAf,IAAe,KAAf,IAAI,CAAJ,CAAoB,GAApB,IAAI,CAAJ,CAAoB,GAApB,IAAe,CAAE,GAAG,KAAI,IAAI;QACnC,QAAQ,GAAE,CAAC,GAAI,KAAK,CAAC,OAAO,CAAC,CAAK,MAAE,CAAC;;QACrC,gBAAgB,EAAE,eAAe;QACjC,WAAW,EAAE,eAAe;QAC5B,QAAQ,EAAE,YAAY;QACtB,QAAQ,EAAE,YAAY;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,IAAI,EAAJ,IAAI;;AAU1B,CAAC;SAEQ,mCAAa,GAAG,CAAC;IACxB,MAAM,0CACH,CAAG;QACF,CAAW,cAAC,CAAM;QAClB,CAAW,cAAC,CAAiB;QAC7B,SAAS,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAqC;;AAEnF,CAAC;AAED,EAGG,AAHH;;;CAGG,AAHH,EAGG,CACH,KAAK,CAAC,yCAAgB,iBAAG,YAAK,CAAC,UAAU,CAAC,qCAAe;;;;;;;;;;;;;;;;SCpMhD,+BAAS,CAAsB,KAAgC,EAAE,GAA8B,EAAE,CAAC;IACzG,KAAK,GAAG,uBAAgB,CAAC,KAAK;IAC9B,GAAG,CAAC,CAAC,YACH,SAAS,eACT,UAAU,eACV,UAAU,eACV,UAAU,YACV,OAAO,EACT,CAAC,GAAG,KAAK;IAET,GAAG,CAAC,MAAM,GAAG,yCAAkB,CAAC,GAAG;IACnC,GAAG,CAAC,CAAC,SAAA,MAAM,EAAA,CAAC,GAAG,gBAAS;IACxB,GAAG,CAAC,KAAK,GAAG,wBAAiB,CAAC,CAAC;WAC1B,KAAK;gBACR,MAAM;wBACN,qBAAc;IAChB,CAAC;IAED,GAAG,CAAC,CAAC,aAAA,UAAU,eAAE,UAAU,qBAAE,gBAAgB,sBAAE,iBAAiB,EAAA,CAAC,GAAG,mBAAY,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM;IAErG,EAAuE,AAAvE,qEAAuE;IACvE,EAAwG,AAAxG,sGAAwG;IACxG,GAAG,CAAC,WAAW,GAAG,yCAAiB,CAAC,KAAK;IACzC,EAAE,EAAE,WAAW,KAAK,KAAK,CAAC,WAAW,EACnC,gBAAgB,CAAC,EAAE,GAAG,IAAI;IAG5B,MAAM,0CACH,YAAK;WACA,KAAK;QACT,GAAG,EAAE,MAAM;QACX,WAAW,EAAC,CAAM;QAClB,WAAW,EAAE,WAAW;QACxB,UAAU,EAAE,UAAU;QACtB,gBAAgB,EAAE,gBAAgB;QAClC,iBAAiB,EAAE,iBAAiB;QACpC,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,gBAAgB,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAAwC;gDACtF,yCAAK;QACJ,UAAU,EAAE,UAAU;QACtB,UAAU,EAAE,UAAU;QACtB,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,SAAS,EAAE,iBAAU,CAAC,gEAAgB,EAAE,CAA0B;OACjE,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,4CAC3B,yCAAiB;YACjB,GAAG,EAAE,CAAC;YACN,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;YACtB,UAAU,EAAE,UAAU;;;AAKlC,CAAC;AAED,EAGG,AAHH;;;CAGG,AAHH,EAGG,CACH,KAAK,CAAC,yCAAU,iBAAG,YAAK,CAAC,UAAU,CAAC,+BAAS;;","sources":["packages/@react-spectrum/datepicker/src/index.ts","packages/@react-spectrum/datepicker/src/DatePicker.tsx","packages/@react-spectrum/datepicker/src/DatePickerField.tsx","packages/@react-spectrum/datepicker/src/DatePickerSegment.tsx","packages/@react-spectrum/datepicker/src/styles.css","packages/@react-spectrum/datepicker/src/Input.tsx","packages/@adobe/spectrum-css-temp/components/textfield/vars.css","packages/@react-spectrum/datepicker/intl/*.js","packages/@react-spectrum/datepicker/intl/en-US.json","packages/@adobe/spectrum-css-temp/components/inputgroup/vars.css","packages/@react-spectrum/datepicker/src/TimeField.tsx","packages/@react-spectrum/datepicker/src/utils.ts","packages/@react-spectrum/datepicker/src/DateRangePicker.tsx","packages/@react-spectrum/datepicker/src/DateField.tsx"],"sourcesContent":["/*\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/// <reference types=\"css-module-types\" />\n\nexport {DatePicker} from './DatePicker';\nexport {DateRangePicker} from './DateRangePicker';\nexport {TimeField} from './TimeField';\nexport {DateField} from './DateField';\nexport type {SpectrumDateFieldProps, SpectrumDatePickerProps, SpectrumDateRangePickerProps, SpectrumTimeFieldProps} from '@react-types/datepicker';\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\nimport {Calendar} from '@react-spectrum/calendar';\nimport CalendarIcon from '@spectrum-icons/workflow/Calendar';\nimport {classNames} from '@react-spectrum/utils';\nimport {Content} from '@react-spectrum/view';\nimport {DatePickerField} from './DatePickerField';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDatePickerProps} from '@react-types/datepicker';\nimport {Dialog, DialogTrigger} from '@react-spectrum/dialog';\nimport {Field} from '@react-spectrum/label';\nimport {FieldButton} from '@react-spectrum/button';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {mergeProps} from '@react-aria/utils';\nimport React, {ReactElement, useRef} from 'react';\nimport '@adobe/spectrum-css-temp/components/textfield/vars.css'; // HACK: must be included BEFORE inputgroup\nimport styles from '@adobe/spectrum-css-temp/components/inputgroup/vars.css';\nimport {TimeField} from './TimeField';\nimport {useDatePicker} from '@react-aria/datepicker';\nimport {useDatePickerState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';\nimport {useFocusRing} from '@react-aria/focus';\nimport {useHover} from '@react-aria/interactions';\nimport {useLocale, useLocalizedStringFormatter} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DatePicker<T extends DateValue>(props: SpectrumDatePickerProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isQuiet,\n isDisabled,\n isReadOnly,\n placeholderValue,\n maxVisibleMonths = 1\n } = props;\n let {hoverProps, isHovered} = useHover({isDisabled});\n let targetRef = useRef<HTMLDivElement>();\n let state = useDatePickerState({\n ...props,\n shouldCloseOnSelect: () => !state.hasTime\n });\n let {groupProps, labelProps, fieldProps, descriptionProps, errorMessageProps, buttonProps, dialogProps, calendarProps} = useDatePicker(props, state, targetRef);\n let {isOpen, setOpen} = state;\n let {direction} = useLocale();\n let domRef = useFocusManagerRef(ref);\n let stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n let {isFocused, isFocusVisible, focusProps} = useFocusRing({\n within: true,\n isTextInput: true,\n autoFocus\n });\n\n let {isFocused: isFocusedButton, focusProps: focusPropsButton} = useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus\n });\n\n let className = classNames(\n styles,\n 'spectrum-InputGroup',\n {\n 'spectrum-InputGroup--quiet': isQuiet,\n 'spectrum-InputGroup--invalid': state.validationState === 'invalid',\n 'is-disabled': isDisabled,\n 'is-hovered': isHovered,\n 'is-focused': isFocused,\n 'focus-ring': isFocusVisible && !isFocusedButton\n }\n );\n\n let fieldClassName = classNames(\n styles,\n 'spectrum-InputGroup-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': state.validationState === 'invalid'\n }\n );\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n let placeholder: DateValue = placeholderValue;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;\n let showTimeField = !!timeGranularity;\n\n let visibleMonths = useVisibleMonths(maxVisibleMonths);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <div\n {...mergeProps(groupProps, hoverProps, focusProps)}\n className={className}\n ref={targetRef}>\n <Input\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n validationState={state.validationState}\n className={classNames(styles, 'spectrum-InputGroup-field')}\n inputClassName={fieldClassName}>\n <DatePickerField\n {...fieldProps}\n data-testid=\"date-field\"\n isQuiet={isQuiet} />\n </Input>\n <DialogTrigger\n type=\"popover\"\n mobileType=\"tray\"\n placement={direction === 'rtl' ? 'bottom right' : 'bottom left'}\n targetRef={targetRef}\n hideArrow\n isOpen={isOpen}\n onOpenChange={setOpen}\n shouldFlip={props.shouldFlip}>\n <FieldButton\n {...mergeProps(buttonProps, focusPropsButton)}\n UNSAFE_className={classNames(styles, 'spectrum-FieldButton')}\n isQuiet={isQuiet}\n validationState={state.validationState}\n isDisabled={isDisabled || isReadOnly}>\n <CalendarIcon />\n </FieldButton>\n <Dialog UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialog')} {...dialogProps}>\n <Content>\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialogContent')}>\n <Calendar\n {...calendarProps}\n visibleMonths={visibleMonths}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-calendar', {'is-invalid': state.validationState === 'invalid'})} />\n {showTimeField &&\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>\n <TimeField\n label={stringFormatter.format('time')}\n value={state.timeValue}\n onChange={state.setTimeValue}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n marginTop=\"size-100\" />\n </div>\n }\n </div>\n </Content>\n </Dialog>\n </DialogTrigger>\n </div>\n </Field>\n );\n}\n\n/**\n * DatePickers combine a DateField and a Calendar popover to allow users to enter or select a date and time value.\n */\nconst _DatePicker = React.forwardRef(DatePicker) as <T extends DateValue>(props: SpectrumDatePickerProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DatePicker as DatePicker};\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\nimport {classNames} from '@react-spectrum/utils';\nimport {createCalendar} from '@internationalized/date';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDatePickerProps} from '@react-types/datepicker';\nimport React, {useRef} from 'react';\nimport {useDateField} from '@react-aria/datepicker';\nimport {useDateFieldState} from '@react-stately/datepicker';\nimport {useLocale} from '@react-aria/i18n';\n\ninterface DatePickerFieldProps<T extends DateValue> extends SpectrumDatePickerProps<T> {\n inputClassName?: string,\n hideValidationIcon?: boolean,\n maxGranularity?: SpectrumDatePickerProps<T>['granularity']\n}\n\nexport function DatePickerField<T extends DateValue>(props: DatePickerFieldProps<T>) {\n let {\n isDisabled,\n isReadOnly,\n isRequired,\n inputClassName\n } = props;\n let ref = useRef();\n let {locale} = useLocale();\n let state = useDateFieldState({\n ...props,\n locale,\n createCalendar\n });\n\n let {fieldProps} = useDateField(props, state, ref);\n\n return (\n <div {...fieldProps} data-testid={props['data-testid']} className={classNames(datepickerStyles, 'react-spectrum-Datepicker-segments', inputClassName)} ref={ref}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </div>\n );\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\nimport {classNames} from '@react-spectrum/utils';\nimport {DateFieldState, DateSegment} from '@react-stately/datepicker';\nimport {DatePickerBase, DateValue} from '@react-types/datepicker';\nimport React, {useRef} from 'react';\nimport styles from './styles.css';\nimport {useDateSegment} from '@react-aria/datepicker';\n\ninterface DatePickerSegmentProps extends DatePickerBase<DateValue> {\n segment: DateSegment,\n state: DateFieldState\n}\n\ninterface LiteralSegmentProps {\n segment: DateSegment\n}\n\nexport function DatePickerSegment({segment, state, ...otherProps}: DatePickerSegmentProps) {\n switch (segment.type) {\n // A separator, e.g. punctuation\n case 'literal':\n return <LiteralSegment segment={segment} />;\n\n // Editable segment\n default:\n return <EditableSegment segment={segment} state={state} {...otherProps} />;\n }\n}\n\nfunction LiteralSegment({segment}: LiteralSegmentProps) {\n return (\n <span\n aria-hidden=\"true\"\n className={classNames(styles, 'react-spectrum-Datepicker-literal')}\n data-testid={segment.type === 'literal' ? undefined : segment.type}>\n {segment.text}\n </span>\n );\n}\n\nfunction EditableSegment({segment, state}: DatePickerSegmentProps) {\n let ref = useRef();\n let {segmentProps} = useDateSegment(segment, state, ref);\n return (\n <div\n {...segmentProps}\n ref={ref}\n className={classNames(styles, 'react-spectrum-DatePicker-cell', {\n 'is-placeholder': segment.isPlaceholder,\n 'is-read-only': !segment.isEditable\n })}\n style={{\n ...segmentProps.style,\n minWidth: segment.maxValue != null ? String(segment.maxValue).length + 'ch' : null\n }}\n data-testid={segment.type}>\n <span aria-hidden=\"true\" className={classNames(styles, 'react-spectrum-DatePicker-placeholder')}>{segment.placeholder}</span>\n {segment.isPlaceholder ? '' : segment.text}\n </div>\n );\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.react-spectrum-Datepicker-fieldWrapper.react-spectrum-Datepicker-fieldWrapper.react-spectrum-Datepicker-fieldWrapper {\n width: auto;\n min-width: var(--spectrum-global-dimension-size-2000);\n max-width: 100%;\n }\n\n.react-spectrum-Datepicker-startField {\n width: auto;\n padding-inline-end: var(--spectrum-global-dimension-size-100);\n}\n\n.react-spectrum-Datepicker-endField {\n width: auto;\n flex: 1;\n padding-inline-start: var(--spectrum-global-dimension-size-100);\n}\n\n.react-spectrum-Datepicker-field ~ .react-spectrum-Datepicker-endField > .react-spectrum-Datepicker-input {\n border-inline-start-width: 0;\n border-start-start-radius: 0;\n border-end-start-radius: 0;\n}\n\n.react-spectrum-Datepicker-field.react-spectrum-Datepicker-field {\n width: auto;\n}\n\n/* specificity war with .spectrum-Field--positionSide etc. */\n.react-spectrum-DateField.react-spectrum-DateField.react-spectrum-DateField.react-spectrum-DateField {\n min-width: var(--spectrum-global-dimension-size-2000)\n}\n\n.react-spectrum-TimeField.react-spectrum-TimeField.react-spectrum-TimeField.react-spectrum-TimeField {\n min-width: var(--spectrum-global-dimension-size-1250);\n}\n\n.react-spectrum-TimeField-fieldWrapper.react-spectrum-TimeField-fieldWrapper.react-spectrum-TimeField-fieldWrapper {\n width: auto;\n min-width: var(--spectrum-global-dimension-size-1250);\n}\n\n.react-spectrum-Datepicker-input.react-spectrum-Datepicker-input {\n /* always reserve space for the validation icon */\n padding-inline-end: calc(var(--spectrum-textfield-padding-x) + var(--spectrum-icon-alert-medium-width) + var(--spectrum-textfield-icon-margin-left));\n cursor: text;\n}\n\n.react-spectrum-Datepicker-inputContents {\n display: flex;\n align-items: center;\n height: 100%;\n overflow-x: auto;\n scrollbar-width: none; /* Firefox */\n -ms-overflow-style: none; /* Internet Explorer 10+ */\n\n &::-webkit-scrollbar { /* WebKit */\n width: 0;\n height: 0;\n display: none;\n }\n}\n\n.react-spectrum-Datepicker-rangeDash {\n &:before {\n content: '–';\n }\n}\n\n.react-spectrum-Datepicker-segments {\n display: flex;\n align-items: center;\n}\n\n.react-spectrum-Datepicker-literal {\n white-space: pre;\n user-select: none;\n color: var(--spectrum-textfield-text-color);\n}\n\n.react-spectrum-DatePicker-cell {\n border: none;\n background: none;\n padding: 0 2px;\n border-radius: 2px;\n font-variant-numeric: tabular-nums;\n text-align: end;\n box-sizing: content-box;\n white-space: nowrap;\n color: var(--spectrum-textfield-text-color);\n\n &::selection {\n /* hide the selection because there is no way to fully prevent it in Firefox */\n /* https://bugzilla.mozilla.org/show_bug.cgi?id=1742153 */\n background: transparent;\n }\n}\n\n.react-spectrum-DatePicker-placeholder {\n display: block;\n width: 100%;\n text-align: center;\n font-style: italic;\n visibility: hidden;\n height: 0;\n pointer-events: none;\n}\n\n.react-spectrum-DatePicker-cell.is-placeholder {\n color: var(--react-spectrum-datepicker-placeholder-color);\n\n .react-spectrum-DatePicker-placeholder {\n visibility: visible;\n height: auto;\n }\n}\n\n.react-spectrum-DatePicker-cell.is-placeholder ~ .react-spectrum-Datepicker-literal {\n color: var(--spectrum-textfield-placeholder-text-color, var(--spectrum-global-color-gray-600));\n}\n\n.react-spectrum-DatePicker-cell.is-read-only {\n color: var(--spectrum-global-color-gray-700);\n}\n\n.react-spectrum-DatePicker-cell:focus {\n background-color: var(--spectrum-global-color-static-blue);\n color: white;\n caret-color: transparent;\n outline: none;\n}\n\n.react-spectrum-Datepicker-dialog.react-spectrum-Datepicker-dialog {\n width: auto;\n}\n\n.react-spectrum-Datepicker-dialogContent {\n display: flex;\n flex-direction: column;\n\n .react-spectrum-Datepicker-calendar.is-invalid {\n /* Only apply display: contents when the calendar is invalid, which allows us to move the\n * error message below the time fields. Otherwise, don't do this because it breaks dragging\n * the selected range on Android. */\n display: contents;\n }\n\n /* Push the help text within the calendar down to the bottom of the dialog, below the time fields. */\n :global(.spectrum-Calendar-helpText) {\n order: 10;\n margin: var(--spectrum-global-dimension-size-200) var(--spectrum-calendar-day-padding) 0 var(--spectrum-calendar-day-padding);\n }\n}\n\n/* when displayed in a tray, reduce the padding of the dialog */\n@media (max-width: 700px) {\n .react-spectrum-Datepicker-dialog {\n --spectrum-dialog-padding-x: 8px;\n\n .react-spectrum-Datepicker-dialogContent {\n margin: 0 auto;\n max-width: calc((var(--spectrum-calendar-day-width) * 7) + (var(--spectrum-calendar-day-padding) * 12));\n }\n }\n}\n\n.react-spectrum-Datepicker-timeFields {\n width: 100%;\n min-width: calc(var(--spectrum-calendar-day-width) * 7);\n max-width: calc((var(--spectrum-calendar-day-width) * 7) + (var(--spectrum-calendar-day-padding) * 12));\n padding: 0 var(--spectrum-calendar-day-padding);\n box-sizing: border-box;\n}\n\n@media (forced-colors:active) {\n .react-spectrum-DatePicker-cell:focus {\n forced-color-adjust: none;\n background-color: Highlight;\n color: HighlightText;\n }\n .react-spectrum-DatePicker-cell.is-read-only {\n color: ButtonText;\n &:focus {\n color: HighlightText;\n }\n }\n .react-spectrum-DatePicker-cell.is-placeholder {\n color: ButtonText;\n &:focus {\n color: HighlightText;\n }\n }\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\nimport Alert from '@spectrum-icons/ui/AlertMedium';\nimport Checkmark from '@spectrum-icons/ui/CheckmarkMedium';\nimport {classNames, useValueEffect} from '@react-spectrum/utils';\nimport datepickerStyles from './styles.css';\nimport {FocusRing} from '@react-aria/focus';\nimport {mergeRefs, useEvent, useLayoutEffect, useResizeObserver} from '@react-aria/utils';\nimport React, {useCallback, useRef} from 'react';\nimport textfieldStyles from '@adobe/spectrum-css-temp/components/textfield/vars.css';\n\nfunction Input(props, ref) {\n let inputRef = useRef(null);\n let {\n isDisabled,\n isQuiet,\n inputClassName,\n validationState,\n children,\n fieldProps,\n className,\n style\n } = props;\n\n // Reserve padding for the error icon when the width of the input is unconstrained.\n // When constrained, don't reserve space because adding it only when invalid will\n // not cause a layout shift.\n let [reservePadding, setReservePadding] = useValueEffect(false);\n let onResize = useCallback(() => setReservePadding(function *(reservePadding) {\n if (inputRef.current) {\n if (reservePadding) {\n // Try to collapse padding if the content is clipped.\n if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {\n let width = inputRef.current.parentElement.offsetWidth;\n yield false;\n\n // If removing padding causes a layout shift, add it back.\n if (inputRef.current.parentElement.offsetWidth !== width) {\n yield true;\n }\n }\n } else {\n // Try to add padding if the content is not clipped.\n if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {\n let width = inputRef.current.parentElement.offsetWidth;\n yield true;\n\n // If adding padding does not change the width (i.e. width is constrained), remove it again.\n if (inputRef.current.parentElement.offsetWidth === width) {\n yield false;\n }\n }\n }\n }\n\n }), [inputRef, setReservePadding]);\n\n useLayoutEffect(onResize, [onResize]);\n useResizeObserver({\n ref: inputRef,\n onResize\n });\n\n // We also need to listen for resize events of the window so we can detect\n // when there is enough space for the padding to be re-added. Ideally we'd\n // use a resize observer on a parent element, but it's hard to know _what_\n // parent element.\n useEvent(useRef(typeof window !== 'undefined' ? window : null), 'resize', onResize);\n\n let isInvalid = validationState === 'invalid';\n let textfieldClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield',\n {\n 'spectrum-Textfield--invalid': isInvalid,\n 'spectrum-Textfield--valid': validationState === 'valid',\n 'spectrum-Textfield--quiet': isQuiet\n },\n classNames(datepickerStyles, 'react-spectrum-Datepicker-field'),\n className\n );\n\n let inputClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': isInvalid\n },\n reservePadding && classNames(datepickerStyles, 'react-spectrum-Datepicker-input'),\n inputClassName\n );\n\n let iconClass = classNames(\n textfieldStyles,\n 'spectrum-Textfield-validationIcon'\n );\n\n let validationIcon = null;\n if (validationState === 'invalid') {\n validationIcon = <Alert data-testid=\"invalid-icon\" UNSAFE_className={iconClass} />;\n } else if (validationState === 'valid') {\n validationIcon = <Checkmark data-testid=\"valid-icon\" UNSAFE_className={iconClass} />;\n }\n\n return (\n <div role=\"presentation\" {...fieldProps} className={textfieldClass} style={style}>\n <FocusRing focusClass={classNames(textfieldStyles, 'is-focused')} focusRingClass={classNames(textfieldStyles, 'focus-ring')} isTextInput within>\n <div role=\"presentation\" className={inputClass}>\n <div role=\"presentation\" className={classNames(datepickerStyles, 'react-spectrum-Datepicker-inputContents')} ref={mergeRefs(ref, inputRef)}>\n {children}\n </div>\n </div>\n </FocusRing>\n {validationIcon}\n </div>\n );\n}\n\nconst _Input = React.forwardRef(Input);\nexport {_Input as Input};\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@import './index.css';\n@import './skin.css';\n","const _temp0 = require(\"./en-US.json\");\nmodule.exports = {\n \"en-US\": _temp0\n}","{\n \"time\": \"Time\",\n \"startTime\": \"Start time\",\n \"endTime\": \"End time\"\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@import './index.css';\n@import './skin.css';\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\nimport {classNames} from '@react-spectrum/utils';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {Field} from '@react-spectrum/label';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport React, {ReactElement} from 'react';\nimport {SpectrumTimeFieldProps, TimeValue} from '@react-types/datepicker';\nimport {useFocusManagerRef} from './utils';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\nimport {useTimeField} from '@react-aria/datepicker';\nimport {useTimeFieldState} from '@react-stately/datepicker';\n\nfunction TimeField<T extends TimeValue>(props: SpectrumTimeFieldProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isQuiet\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n let {locale} = useLocale();\n let state = useTimeFieldState({\n ...props,\n locale\n });\n\n let {labelProps, fieldProps, descriptionProps, errorMessageProps} = useTimeField(props, state, domRef);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-TimeField-fieldWrapper')}>\n <Input\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n autoFocus={autoFocus}\n validationState={state.validationState}\n className={classNames(datepickerStyles, 'react-spectrum-TimeField')}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </Input>\n </Field>\n );\n}\n\n/**\n * TimeFields allow users to enter and edit time values using a keyboard.\n * Each part of the time is displayed in an individually editable segment.\n */\nconst _TimeField = React.forwardRef(TimeField) as <T extends TimeValue>(props: SpectrumTimeFieldProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_TimeField as TimeField};\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 */\nimport {createDOMRef} from '@react-spectrum/utils';\nimport {createFocusManager} from '@react-aria/focus';\nimport {FocusableRef} from '@react-types/shared';\nimport {SpectrumDatePickerBase} from '@react-types/datepicker';\nimport {useDateFormatter} from '@react-aria/i18n';\nimport {useDisplayNames} from '@react-aria/datepicker';\nimport {useImperativeHandle, useMemo, useRef, useState} from 'react';\nimport {useLayoutEffect} from '@react-aria/utils';\nimport {useProvider} from '@react-spectrum/provider';\n\nexport function useFormatHelpText(props: Pick<SpectrumDatePickerBase<any>, 'description' | 'showFormatHelpText'>) {\n let formatter = useDateFormatter({dateStyle: 'short'});\n let displayNames = useDisplayNames();\n return useMemo(() => {\n if (props.description) {\n return props.description;\n }\n\n if (props.showFormatHelpText) {\n return formatter.formatToParts(new Date()).map(s => {\n if (s.type === 'literal') {\n return s.value;\n }\n\n return displayNames.of(s.type);\n }).join(' ');\n }\n\n return '';\n }, [props.description, props.showFormatHelpText, formatter, displayNames]);\n}\n\nexport function useVisibleMonths(maxVisibleMonths: number) {\n let {scale} = useProvider();\n let [visibleMonths, setVisibleMonths] = useState(getVisibleMonths(scale));\n useLayoutEffect(() => {\n let onResize = () => setVisibleMonths(getVisibleMonths(scale));\n onResize();\n\n window.addEventListener('resize', onResize);\n return () => {\n window.removeEventListener('resize', onResize);\n };\n }, [scale]);\n\n return Math.max(1, Math.min(visibleMonths, maxVisibleMonths, 3));\n}\n\nfunction getVisibleMonths(scale) {\n if (typeof window === 'undefined') {\n return 1;\n }\n let monthWidth = scale === 'large' ? 336 : 280;\n let gap = scale === 'large' ? 30 : 24;\n let popoverPadding = scale === 'large' ? 32 : 48;\n return Math.floor((window.innerWidth - popoverPadding * 2) / (monthWidth + gap));\n}\n\nexport function useFocusManagerRef(ref: FocusableRef<HTMLElement>) {\n let domRef = useRef();\n useImperativeHandle(ref, () => ({\n ...createDOMRef(domRef),\n focus() {\n createFocusManager(domRef).focusFirst({tabbable: true});\n }\n }));\n return domRef;\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\nimport CalendarIcon from '@spectrum-icons/workflow/Calendar';\nimport {classNames} from '@react-spectrum/utils';\nimport {Content} from '@react-spectrum/view';\nimport {DatePickerField} from './DatePickerField';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDateRangePickerProps} from '@react-types/datepicker';\nimport {Dialog, DialogTrigger} from '@react-spectrum/dialog';\nimport {Field} from '@react-spectrum/label';\nimport {FieldButton} from '@react-spectrum/button';\nimport {Flex} from '@react-spectrum/layout';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\n// @ts-ignore\nimport intlMessages from '../intl/*.json';\nimport {mergeProps} from '@react-aria/utils';\nimport {RangeCalendar} from '@react-spectrum/calendar';\nimport React, {ReactElement, useRef} from 'react';\nimport styles from '@adobe/spectrum-css-temp/components/inputgroup/vars.css';\nimport {TimeField} from './TimeField';\nimport {useDateRangePicker} from '@react-aria/datepicker';\nimport {useDateRangePickerState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';\nimport {useFocusRing} from '@react-aria/focus';\nimport {useHover} from '@react-aria/interactions';\nimport {useLocale, useLocalizedStringFormatter} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n isQuiet,\n isDisabled,\n isReadOnly,\n autoFocus,\n placeholderValue,\n maxVisibleMonths = 1\n } = props;\n let {hoverProps, isHovered} = useHover({isDisabled});\n let targetRef = useRef<HTMLDivElement>();\n let state = useDateRangePickerState({\n ...props,\n shouldCloseOnSelect: () => !state.hasTime\n });\n let {labelProps, groupProps, buttonProps, dialogProps, startFieldProps, endFieldProps, descriptionProps, errorMessageProps, calendarProps} = useDateRangePicker(props, state, targetRef);\n let {isOpen, setOpen} = state;\n let {direction} = useLocale();\n let domRef = useFocusManagerRef(ref);\n let stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n let {isFocused, isFocusVisible, focusProps} = useFocusRing({\n within: true,\n isTextInput: true,\n autoFocus\n });\n\n let {isFocused: isFocusedButton, focusProps: focusPropsButton} = useFocusRing({\n within: false,\n isTextInput: false,\n autoFocus\n });\n\n let className = classNames(\n styles,\n 'spectrum-InputGroup',\n {\n 'spectrum-InputGroup--quiet': isQuiet,\n 'spectrum-InputGroup--invalid': state.validationState === 'invalid',\n 'is-disabled': isDisabled,\n 'is-hovered': isHovered,\n 'is-focused': isFocused,\n 'focus-ring': isFocusVisible && !isFocusedButton\n }\n );\n\n let fieldClassName = classNames(\n styles,\n 'spectrum-InputGroup-input',\n {\n 'is-disabled': isDisabled,\n 'is-invalid': state.validationState === 'invalid'\n }\n );\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n let placeholder: DateValue = placeholderValue;\n let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;\n let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;\n let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;\n let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;\n let showTimeField = !!timeGranularity;\n\n let visibleMonths = useVisibleMonths(maxVisibleMonths);\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <div\n {...mergeProps(groupProps, hoverProps, focusProps)}\n className={className}\n ref={targetRef}>\n <Input\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n validationState={state.validationState}\n className={classNames(styles, 'spectrum-InputGroup-field')}\n inputClassName={fieldClassName}>\n <DatePickerField\n {...startFieldProps}\n data-testid=\"start-date\"\n isQuiet={props.isQuiet}\n inputClassName={classNames(datepickerStyles, 'react-spectrum-Datepicker-startField')} />\n <DateRangeDash />\n <DatePickerField\n {...endFieldProps}\n data-testid=\"end-date\"\n isQuiet={props.isQuiet}\n inputClassName={classNames(\n styles,\n 'spectrum-Datepicker-endField',\n classNames(\n datepickerStyles,\n 'react-spectrum-Datepicker-endField'\n )\n )} />\n </Input>\n <DialogTrigger\n type=\"popover\"\n mobileType=\"tray\"\n placement={direction === 'rtl' ? 'bottom right' : 'bottom left'}\n targetRef={targetRef}\n hideArrow\n isOpen={isOpen}\n onOpenChange={setOpen}\n shouldFlip={props.shouldFlip}>\n <FieldButton\n {...mergeProps(buttonProps, focusPropsButton)}\n UNSAFE_className={classNames(styles, 'spectrum-FieldButton')}\n isQuiet={isQuiet}\n validationState={state.validationState}\n isDisabled={isDisabled || isReadOnly}>\n <CalendarIcon />\n </FieldButton>\n <Dialog UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialog')} {...dialogProps}>\n <Content>\n <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-dialogContent')}>\n <RangeCalendar\n {...calendarProps}\n visibleMonths={visibleMonths}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-calendar', {'is-invalid': state.validationState === 'invalid'})} />\n {showTimeField &&\n <Flex gap=\"size-100\" marginTop=\"size-100\" UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>\n <TimeField\n label={stringFormatter.format('startTime')}\n value={state.timeRange?.start || null}\n onChange={v => state.setTime('start', v)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n flex />\n <TimeField\n label={stringFormatter.format('endTime')}\n value={state.timeRange?.end || null}\n onChange={v => state.setTime('end', v)}\n placeholderValue={timePlaceholder}\n granularity={timeGranularity}\n minValue={timeMinValue}\n maxValue={timeMaxValue}\n hourCycle={props.hourCycle}\n hideTimeZone={props.hideTimeZone}\n flex />\n </Flex>\n }\n </div>\n </Content>\n </Dialog>\n </DialogTrigger>\n </div>\n </Field>\n );\n}\n\nfunction DateRangeDash() {\n return (\n <div\n aria-hidden=\"true\"\n data-testid=\"date-range-dash\"\n className={classNames(datepickerStyles, 'react-spectrum-Datepicker-rangeDash')} />\n );\n}\n\n/**\n * DateRangePickers combine two DateFields and a RangeCalendar popover to allow users\n * to enter or select a date and time range.\n */\nconst _DateRangePicker = React.forwardRef(DateRangePicker) as <T extends DateValue>(props: SpectrumDateRangePickerProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DateRangePicker as DateRangePicker};\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\nimport {classNames} from '@react-spectrum/utils';\nimport {createCalendar} from '@internationalized/date';\nimport {DatePickerSegment} from './DatePickerSegment';\nimport datepickerStyles from './styles.css';\nimport {DateValue, SpectrumDateFieldProps} from '@react-types/datepicker';\nimport {Field} from '@react-spectrum/label';\nimport {FocusableRef} from '@react-types/shared';\nimport {Input} from './Input';\nimport React, {ReactElement} from 'react';\nimport {useDateField} from '@react-aria/datepicker';\nimport {useDateFieldState} from '@react-stately/datepicker';\nimport {useFocusManagerRef, useFormatHelpText} from './utils';\nimport {useLocale} from '@react-aria/i18n';\nimport {useProviderProps} from '@react-spectrum/provider';\n\nfunction DateField<T extends DateValue>(props: SpectrumDateFieldProps<T>, ref: FocusableRef<HTMLElement>) {\n props = useProviderProps(props);\n let {\n autoFocus,\n isDisabled,\n isReadOnly,\n isRequired,\n isQuiet\n } = props;\n\n let domRef = useFocusManagerRef(ref);\n let {locale} = useLocale();\n let state = useDateFieldState({\n ...props,\n locale,\n createCalendar\n });\n\n let {labelProps, fieldProps, descriptionProps, errorMessageProps} = useDateField(props, state, domRef);\n\n // Note: this description is intentionally not passed to useDatePicker.\n // The format help text is unnecessary for screen reader users because each segment already has a label.\n let description = useFormatHelpText(props);\n if (description && !props.description) {\n descriptionProps.id = null;\n }\n\n return (\n <Field\n {...props}\n ref={domRef}\n elementType=\"span\"\n description={description}\n labelProps={labelProps}\n descriptionProps={descriptionProps}\n errorMessageProps={errorMessageProps}\n validationState={state.validationState}\n UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-fieldWrapper')}>\n <Input\n fieldProps={fieldProps}\n isDisabled={isDisabled}\n isQuiet={isQuiet}\n autoFocus={autoFocus}\n validationState={state.validationState}\n className={classNames(datepickerStyles, 'react-spectrum-DateField')}>\n {state.segments.map((segment, i) =>\n (<DatePickerSegment\n key={i}\n segment={segment}\n state={state}\n isDisabled={isDisabled}\n isReadOnly={isReadOnly}\n isRequired={isRequired} />)\n )}\n </Input>\n </Field>\n );\n}\n\n/**\n * DateFields allow users to enter and edit date and time values using a keyboard.\n * Each part of a date value is displayed in an individually editable segment.\n */\nconst _DateField = React.forwardRef(DateField) as <T extends DateValue>(props: SpectrumDateFieldProps<T> & {ref?: FocusableRef<HTMLElement>}) => ReactElement;\nexport {_DateField as DateField};\n"],"names":[],"version":3,"file":"module.js.map"}
@@ -1 +1 @@
1
- {"mappings":";;;AI4EA;;;GAGG;AACH,OAAA,MAAM;UAA4G,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;ACsG9J;;GAEG;AACH,OAAA,MAAM;UAA+G,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;AC+BjK;;;GAGG;AACH,OAAA,MAAM;UAA8H,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;ACtIhL;;;GAGG;AACH,OAAA,MAAM;UAA4G,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;ACxE9J,YAAY,EAAC,sBAAsB,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAC","sources":["packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DatePickerSegment.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DatePickerField.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/Input.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/utils.ts","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/TimeField.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DatePicker.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DateRangePicker.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DateField.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/index.ts","packages/@react-spectrum/datepicker/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,"/*\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/// <reference types=\"css-module-types\" />\n\nexport {DatePicker} from './DatePicker';\nexport {DateRangePicker} from './DateRangePicker';\nexport {TimeField} from './TimeField';\nexport {DateField} from './DateField';\nexport type {SpectrumDateFieldProps, SpectrumDatePickerProps, SpectrumDateRangePickerProps, SpectrumTimeFieldProps} from '@react-types/datepicker';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
1
+ {"mappings":";;;AI4EA;;;GAGG;AACH,OAAA,MAAM;UAA4G,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;ACyG9J;;GAEG;AACH,OAAA,MAAM;UAA+G,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;AC+BjK;;;GAGG;AACH,OAAA,MAAM;UAA8H,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;ACzIhL;;;GAGG;AACH,OAAA,MAAM;UAA4G,aAAa,WAAW,CAAC;MAAM,YAAY,CAAC;ACxE9J,YAAY,EAAC,sBAAsB,EAAE,uBAAuB,EAAE,4BAA4B,EAAE,sBAAsB,EAAC,MAAM,yBAAyB,CAAC","sources":["packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DatePickerSegment.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DatePickerField.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/Input.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/utils.ts","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/TimeField.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DatePicker.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DateRangePicker.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/DateField.tsx","packages/@react-spectrum/datepicker/src/packages/@react-spectrum/datepicker/src/index.ts","packages/@react-spectrum/datepicker/src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,"/*\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/// <reference types=\"css-module-types\" />\n\nexport {DatePicker} from './DatePicker';\nexport {DateRangePicker} from './DateRangePicker';\nexport {TimeField} from './TimeField';\nexport {DateField} from './DateField';\nexport type {SpectrumDateFieldProps, SpectrumDatePickerProps, SpectrumDateRangePickerProps, SpectrumTimeFieldProps} from '@react-types/datepicker';\n"],"names":[],"version":3,"file":"types.d.ts.map"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@react-spectrum/datepicker",
3
- "version": "3.0.0-nightly.1718+66283e2fd",
3
+ "version": "3.0.0-nightly.1729+13696a97a",
4
4
  "description": "Spectrum UI components in React",
5
5
  "license": "Apache-2.0",
6
6
  "main": "dist/main.js",
@@ -32,30 +32,30 @@
32
32
  },
33
33
  "dependencies": {
34
34
  "@babel/runtime": "^7.6.2",
35
- "@internationalized/date": "3.0.2-nightly.3418+66283e2fd",
36
- "@internationalized/number": "3.1.2-nightly.3418+66283e2fd",
37
- "@react-aria/datepicker": "3.0.0-nightly.1718+66283e2fd",
38
- "@react-aria/focus": "3.0.0-nightly.1718+66283e2fd",
39
- "@react-aria/i18n": "3.0.0-nightly.1718+66283e2fd",
40
- "@react-aria/interactions": "3.0.0-nightly.1718+66283e2fd",
41
- "@react-aria/utils": "3.0.0-nightly.1718+66283e2fd",
42
- "@react-spectrum/button": "3.0.0-nightly.1718+66283e2fd",
43
- "@react-spectrum/calendar": "3.0.0-nightly.1718+66283e2fd",
44
- "@react-spectrum/dialog": "3.0.0-nightly.1718+66283e2fd",
45
- "@react-spectrum/label": "3.7.1-nightly.3418+66283e2fd",
46
- "@react-spectrum/layout": "3.4.1-nightly.3418+66283e2fd",
47
- "@react-spectrum/utils": "3.0.0-nightly.1718+66283e2fd",
48
- "@react-spectrum/view": "3.0.0-nightly.1718+66283e2fd",
49
- "@react-stately/datepicker": "3.0.0-nightly.1718+66283e2fd",
50
- "@react-stately/utils": "3.0.0-nightly.1718+66283e2fd",
51
- "@react-types/datepicker": "3.0.0-nightly.1718+66283e2fd",
52
- "@react-types/shared": "3.0.0-nightly.1718+66283e2fd",
53
- "@spectrum-icons/ui": "3.0.0-nightly.1718+66283e2fd",
54
- "@spectrum-icons/workflow": "3.0.0-nightly.1718+66283e2fd"
35
+ "@internationalized/date": "3.0.2-nightly.3429+13696a97a",
36
+ "@internationalized/number": "3.1.2-nightly.3429+13696a97a",
37
+ "@react-aria/datepicker": "3.0.0-nightly.1729+13696a97a",
38
+ "@react-aria/focus": "3.0.0-nightly.1729+13696a97a",
39
+ "@react-aria/i18n": "3.0.0-nightly.1729+13696a97a",
40
+ "@react-aria/interactions": "3.0.0-nightly.1729+13696a97a",
41
+ "@react-aria/utils": "3.0.0-nightly.1729+13696a97a",
42
+ "@react-spectrum/button": "3.0.0-nightly.1729+13696a97a",
43
+ "@react-spectrum/calendar": "3.0.0-nightly.1729+13696a97a",
44
+ "@react-spectrum/dialog": "3.0.0-nightly.1729+13696a97a",
45
+ "@react-spectrum/label": "3.7.1-nightly.3429+13696a97a",
46
+ "@react-spectrum/layout": "3.4.1-nightly.3429+13696a97a",
47
+ "@react-spectrum/utils": "3.0.0-nightly.1729+13696a97a",
48
+ "@react-spectrum/view": "3.0.0-nightly.1729+13696a97a",
49
+ "@react-stately/datepicker": "3.0.0-nightly.1729+13696a97a",
50
+ "@react-stately/utils": "3.0.0-nightly.1729+13696a97a",
51
+ "@react-types/datepicker": "3.0.0-nightly.1729+13696a97a",
52
+ "@react-types/shared": "3.0.0-nightly.1729+13696a97a",
53
+ "@spectrum-icons/ui": "3.0.0-nightly.1729+13696a97a",
54
+ "@spectrum-icons/workflow": "3.0.0-nightly.1729+13696a97a"
55
55
  },
56
56
  "devDependencies": {
57
- "@adobe/spectrum-css-temp": "3.0.0-nightly.1718+66283e2fd",
58
- "@react-spectrum/test-utils": "3.0.0-nightly.1718+66283e2fd"
57
+ "@adobe/spectrum-css-temp": "3.0.0-nightly.1729+13696a97a",
58
+ "@react-spectrum/test-utils": "3.0.0-nightly.1729+13696a97a"
59
59
  },
60
60
  "peerDependencies": {
61
61
  "@react-spectrum/provider": "^3.0.0",
@@ -65,5 +65,5 @@
65
65
  "publishConfig": {
66
66
  "access": "public"
67
67
  },
68
- "gitHead": "66283e2fdbcca885a5d762765a7191596f35664e"
68
+ "gitHead": "13696a97a7742eb84cb31f5cb50123a2da8f090e"
69
69
  }
@@ -22,6 +22,8 @@ import {Field} from '@react-spectrum/label';
22
22
  import {FieldButton} from '@react-spectrum/button';
23
23
  import {FocusableRef} from '@react-types/shared';
24
24
  import {Input} from './Input';
25
+ // @ts-ignore
26
+ import intlMessages from '../intl/*.json';
25
27
  import {mergeProps} from '@react-aria/utils';
26
28
  import React, {ReactElement, useRef} from 'react';
27
29
  import '@adobe/spectrum-css-temp/components/textfield/vars.css'; // HACK: must be included BEFORE inputgroup
@@ -32,7 +34,7 @@ import {useDatePickerState} from '@react-stately/datepicker';
32
34
  import {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';
33
35
  import {useFocusRing} from '@react-aria/focus';
34
36
  import {useHover} from '@react-aria/interactions';
35
- import {useLocale} from '@react-aria/i18n';
37
+ import {useLocale, useLocalizedStringFormatter} from '@react-aria/i18n';
36
38
  import {useProviderProps} from '@react-spectrum/provider';
37
39
 
38
40
  function DatePicker<T extends DateValue>(props: SpectrumDatePickerProps<T>, ref: FocusableRef<HTMLElement>) {
@@ -55,6 +57,7 @@ function DatePicker<T extends DateValue>(props: SpectrumDatePickerProps<T>, ref:
55
57
  let {isOpen, setOpen} = state;
56
58
  let {direction} = useLocale();
57
59
  let domRef = useFocusManagerRef(ref);
60
+ let stringFormatter = useLocalizedStringFormatter(intlMessages);
58
61
 
59
62
  let {isFocused, isFocusVisible, focusProps} = useFocusRing({
60
63
  within: true,
@@ -101,7 +104,7 @@ function DatePicker<T extends DateValue>(props: SpectrumDatePickerProps<T>, ref:
101
104
  let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;
102
105
  let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;
103
106
  let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;
104
- let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;
107
+ let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;
105
108
  let showTimeField = !!timeGranularity;
106
109
 
107
110
  let visibleMonths = useVisibleMonths(maxVisibleMonths);
@@ -159,7 +162,7 @@ function DatePicker<T extends DateValue>(props: SpectrumDatePickerProps<T>, ref:
159
162
  {showTimeField &&
160
163
  <div className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>
161
164
  <TimeField
162
- label="Time"
165
+ label={stringFormatter.format('time')}
163
166
  value={state.timeValue}
164
167
  onChange={state.setTimeValue}
165
168
  placeholderValue={timePlaceholder}
@@ -22,6 +22,8 @@ import {FieldButton} from '@react-spectrum/button';
22
22
  import {Flex} from '@react-spectrum/layout';
23
23
  import {FocusableRef} from '@react-types/shared';
24
24
  import {Input} from './Input';
25
+ // @ts-ignore
26
+ import intlMessages from '../intl/*.json';
25
27
  import {mergeProps} from '@react-aria/utils';
26
28
  import {RangeCalendar} from '@react-spectrum/calendar';
27
29
  import React, {ReactElement, useRef} from 'react';
@@ -32,7 +34,7 @@ import {useDateRangePickerState} from '@react-stately/datepicker';
32
34
  import {useFocusManagerRef, useFormatHelpText, useVisibleMonths} from './utils';
33
35
  import {useFocusRing} from '@react-aria/focus';
34
36
  import {useHover} from '@react-aria/interactions';
35
- import {useLocale} from '@react-aria/i18n';
37
+ import {useLocale, useLocalizedStringFormatter} from '@react-aria/i18n';
36
38
  import {useProviderProps} from '@react-spectrum/provider';
37
39
 
38
40
  function DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProps<T>, ref: FocusableRef<HTMLElement>) {
@@ -55,6 +57,7 @@ function DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProp
55
57
  let {isOpen, setOpen} = state;
56
58
  let {direction} = useLocale();
57
59
  let domRef = useFocusManagerRef(ref);
60
+ let stringFormatter = useLocalizedStringFormatter(intlMessages);
58
61
 
59
62
  let {isFocused, isFocusVisible, focusProps} = useFocusRing({
60
63
  within: true,
@@ -101,7 +104,7 @@ function DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProp
101
104
  let timePlaceholder = placeholder && 'hour' in placeholder ? placeholder : null;
102
105
  let timeMinValue = props.minValue && 'hour' in props.minValue ? props.minValue : null;
103
106
  let timeMaxValue = props.maxValue && 'hour' in props.maxValue ? props.maxValue : null;
104
- let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' || state.granularity === 'millisecond' ? state.granularity : null;
107
+ let timeGranularity = state.granularity === 'hour' || state.granularity === 'minute' || state.granularity === 'second' ? state.granularity : null;
105
108
  let showTimeField = !!timeGranularity;
106
109
 
107
110
  let visibleMonths = useVisibleMonths(maxVisibleMonths);
@@ -173,7 +176,7 @@ function DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProp
173
176
  {showTimeField &&
174
177
  <Flex gap="size-100" marginTop="size-100" UNSAFE_className={classNames(datepickerStyles, 'react-spectrum-Datepicker-timeFields')}>
175
178
  <TimeField
176
- label="Start time"
179
+ label={stringFormatter.format('startTime')}
177
180
  value={state.timeRange?.start || null}
178
181
  onChange={v => state.setTime('start', v)}
179
182
  placeholderValue={timePlaceholder}
@@ -184,7 +187,7 @@ function DateRangePicker<T extends DateValue>(props: SpectrumDateRangePickerProp
184
187
  hideTimeZone={props.hideTimeZone}
185
188
  flex />
186
189
  <TimeField
187
- label="End time"
190
+ label={stringFormatter.format('endTime')}
188
191
  value={state.timeRange?.end || null}
189
192
  onChange={v => state.setTime('end', v)}
190
193
  placeholderValue={timePlaceholder}
package/src/Input.tsx CHANGED
@@ -37,29 +37,32 @@ function Input(props, ref) {
37
37
  // not cause a layout shift.
38
38
  let [reservePadding, setReservePadding] = useValueEffect(false);
39
39
  let onResize = useCallback(() => setReservePadding(function *(reservePadding) {
40
- if (reservePadding) {
41
- // Try to collapse padding if the content is clipped.
42
- if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {
43
- let width = inputRef.current.parentElement.offsetWidth;
44
- yield false;
40
+ if (inputRef.current) {
41
+ if (reservePadding) {
42
+ // Try to collapse padding if the content is clipped.
43
+ if (inputRef.current.scrollWidth > inputRef.current.offsetWidth) {
44
+ let width = inputRef.current.parentElement.offsetWidth;
45
+ yield false;
45
46
 
46
- // If removing padding causes a layout shift, add it back.
47
- if (inputRef.current.parentElement.offsetWidth !== width) {
48
- yield true;
47
+ // If removing padding causes a layout shift, add it back.
48
+ if (inputRef.current.parentElement.offsetWidth !== width) {
49
+ yield true;
50
+ }
49
51
  }
50
- }
51
- } else {
52
- // Try to add padding if the content is not clipped.
53
- if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {
54
- let width = inputRef.current.parentElement.offsetWidth;
55
- yield true;
52
+ } else {
53
+ // Try to add padding if the content is not clipped.
54
+ if (inputRef.current.offsetWidth >= inputRef.current.scrollWidth) {
55
+ let width = inputRef.current.parentElement.offsetWidth;
56
+ yield true;
56
57
 
57
- // If adding padding does not change the width (i.e. width is constrained), remove it again.
58
- if (inputRef.current.parentElement.offsetWidth === width) {
59
- yield false;
58
+ // If adding padding does not change the width (i.e. width is constrained), remove it again.
59
+ if (inputRef.current.parentElement.offsetWidth === width) {
60
+ yield false;
61
+ }
60
62
  }
61
63
  }
62
64
  }
65
+
63
66
  }), [inputRef, setReservePadding]);
64
67
 
65
68
  useLayoutEffect(onResize, [onResize]);