diff --git a/packages/@react-spectrum/actiongroup/intl/ar-AE.json b/packages/@react-spectrum/actiongroup/intl/ar-AE.json index e302afbcc6e..8d3292d2e68 100644 --- a/packages/@react-spectrum/actiongroup/intl/ar-AE.json +++ b/packages/@react-spectrum/actiongroup/intl/ar-AE.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "المزيد من العناصر" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/bg-BG.json b/packages/@react-spectrum/actiongroup/intl/bg-BG.json index e302afbcc6e..9cb5a8634ff 100644 --- a/packages/@react-spectrum/actiongroup/intl/bg-BG.json +++ b/packages/@react-spectrum/actiongroup/intl/bg-BG.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Още елементи" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/cs-CZ.json b/packages/@react-spectrum/actiongroup/intl/cs-CZ.json index e302afbcc6e..50d3790462e 100644 --- a/packages/@react-spectrum/actiongroup/intl/cs-CZ.json +++ b/packages/@react-spectrum/actiongroup/intl/cs-CZ.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Další položky" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/da-DK.json b/packages/@react-spectrum/actiongroup/intl/da-DK.json index e302afbcc6e..bd7b5c7d2f0 100644 --- a/packages/@react-spectrum/actiongroup/intl/da-DK.json +++ b/packages/@react-spectrum/actiongroup/intl/da-DK.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Flere elementer" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/de-DE.json b/packages/@react-spectrum/actiongroup/intl/de-DE.json index e302afbcc6e..56cf588a6f1 100644 --- a/packages/@react-spectrum/actiongroup/intl/de-DE.json +++ b/packages/@react-spectrum/actiongroup/intl/de-DE.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Weitere Elemente" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/el-GR.json b/packages/@react-spectrum/actiongroup/intl/el-GR.json index e302afbcc6e..d642af96ffd 100644 --- a/packages/@react-spectrum/actiongroup/intl/el-GR.json +++ b/packages/@react-spectrum/actiongroup/intl/el-GR.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Περισσότερα στοιχεία" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/es-ES.json b/packages/@react-spectrum/actiongroup/intl/es-ES.json index e302afbcc6e..cbba9f3d5fc 100644 --- a/packages/@react-spectrum/actiongroup/intl/es-ES.json +++ b/packages/@react-spectrum/actiongroup/intl/es-ES.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Más elementos" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/et-EE.json b/packages/@react-spectrum/actiongroup/intl/et-EE.json index e302afbcc6e..e0ec5fa74c3 100644 --- a/packages/@react-spectrum/actiongroup/intl/et-EE.json +++ b/packages/@react-spectrum/actiongroup/intl/et-EE.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Veel üksusi" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/fi-FI.json b/packages/@react-spectrum/actiongroup/intl/fi-FI.json index e302afbcc6e..9ce3a7d4de1 100644 --- a/packages/@react-spectrum/actiongroup/intl/fi-FI.json +++ b/packages/@react-spectrum/actiongroup/intl/fi-FI.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Lisää kohteita" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/fr-FR.json b/packages/@react-spectrum/actiongroup/intl/fr-FR.json index e302afbcc6e..da993c25c26 100644 --- a/packages/@react-spectrum/actiongroup/intl/fr-FR.json +++ b/packages/@react-spectrum/actiongroup/intl/fr-FR.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Plus d’éléments" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/he-IL.json b/packages/@react-spectrum/actiongroup/intl/he-IL.json index e302afbcc6e..f31cd5f304b 100644 --- a/packages/@react-spectrum/actiongroup/intl/he-IL.json +++ b/packages/@react-spectrum/actiongroup/intl/he-IL.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "פריטים נוספים" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/hr-HR.json b/packages/@react-spectrum/actiongroup/intl/hr-HR.json index e302afbcc6e..8d18b19cfad 100644 --- a/packages/@react-spectrum/actiongroup/intl/hr-HR.json +++ b/packages/@react-spectrum/actiongroup/intl/hr-HR.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Više stavki" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/hu-HU.json b/packages/@react-spectrum/actiongroup/intl/hu-HU.json index e302afbcc6e..0252c0c3d90 100644 --- a/packages/@react-spectrum/actiongroup/intl/hu-HU.json +++ b/packages/@react-spectrum/actiongroup/intl/hu-HU.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "További elemek" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/it-IT.json b/packages/@react-spectrum/actiongroup/intl/it-IT.json index e302afbcc6e..b602d96f656 100644 --- a/packages/@react-spectrum/actiongroup/intl/it-IT.json +++ b/packages/@react-spectrum/actiongroup/intl/it-IT.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Altri elementi" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/ja-JP.json b/packages/@react-spectrum/actiongroup/intl/ja-JP.json index e302afbcc6e..8c9e3dc6516 100644 --- a/packages/@react-spectrum/actiongroup/intl/ja-JP.json +++ b/packages/@react-spectrum/actiongroup/intl/ja-JP.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "その他の項目" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/ko-KR.json b/packages/@react-spectrum/actiongroup/intl/ko-KR.json index e302afbcc6e..7766409a556 100644 --- a/packages/@react-spectrum/actiongroup/intl/ko-KR.json +++ b/packages/@react-spectrum/actiongroup/intl/ko-KR.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "기타 항목" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/lt-LT.json b/packages/@react-spectrum/actiongroup/intl/lt-LT.json index e302afbcc6e..253fbd8e1f0 100644 --- a/packages/@react-spectrum/actiongroup/intl/lt-LT.json +++ b/packages/@react-spectrum/actiongroup/intl/lt-LT.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Daugiau elementų" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/lv-LV.json b/packages/@react-spectrum/actiongroup/intl/lv-LV.json index e302afbcc6e..6c4d1fe6b7b 100644 --- a/packages/@react-spectrum/actiongroup/intl/lv-LV.json +++ b/packages/@react-spectrum/actiongroup/intl/lv-LV.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Vairāk vienumu" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/nb-NO.json b/packages/@react-spectrum/actiongroup/intl/nb-NO.json index e302afbcc6e..bd7b5c7d2f0 100644 --- a/packages/@react-spectrum/actiongroup/intl/nb-NO.json +++ b/packages/@react-spectrum/actiongroup/intl/nb-NO.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Flere elementer" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/nl-NL.json b/packages/@react-spectrum/actiongroup/intl/nl-NL.json index e302afbcc6e..8dfdd283012 100644 --- a/packages/@react-spectrum/actiongroup/intl/nl-NL.json +++ b/packages/@react-spectrum/actiongroup/intl/nl-NL.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Meer items" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/pl-PL.json b/packages/@react-spectrum/actiongroup/intl/pl-PL.json index e302afbcc6e..712ccff6c6f 100644 --- a/packages/@react-spectrum/actiongroup/intl/pl-PL.json +++ b/packages/@react-spectrum/actiongroup/intl/pl-PL.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Więcej elementów" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/pt-BR.json b/packages/@react-spectrum/actiongroup/intl/pt-BR.json index e302afbcc6e..8449d2530cd 100644 --- a/packages/@react-spectrum/actiongroup/intl/pt-BR.json +++ b/packages/@react-spectrum/actiongroup/intl/pt-BR.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Mais itens" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/pt-PT.json b/packages/@react-spectrum/actiongroup/intl/pt-PT.json index e302afbcc6e..6e94d230551 100644 --- a/packages/@react-spectrum/actiongroup/intl/pt-PT.json +++ b/packages/@react-spectrum/actiongroup/intl/pt-PT.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Mais artigos" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/ro-RO.json b/packages/@react-spectrum/actiongroup/intl/ro-RO.json index e302afbcc6e..139b5d3acb0 100644 --- a/packages/@react-spectrum/actiongroup/intl/ro-RO.json +++ b/packages/@react-spectrum/actiongroup/intl/ro-RO.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Mai multe articole" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/ru-RU.json b/packages/@react-spectrum/actiongroup/intl/ru-RU.json index e302afbcc6e..86335b41060 100644 --- a/packages/@react-spectrum/actiongroup/intl/ru-RU.json +++ b/packages/@react-spectrum/actiongroup/intl/ru-RU.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Дополнительные элементы" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/sk-SK.json b/packages/@react-spectrum/actiongroup/intl/sk-SK.json index e302afbcc6e..ddf52052e28 100644 --- a/packages/@react-spectrum/actiongroup/intl/sk-SK.json +++ b/packages/@react-spectrum/actiongroup/intl/sk-SK.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Ďalšie položky" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/sl-SI.json b/packages/@react-spectrum/actiongroup/intl/sl-SI.json index e302afbcc6e..d28b5cd9aa8 100644 --- a/packages/@react-spectrum/actiongroup/intl/sl-SI.json +++ b/packages/@react-spectrum/actiongroup/intl/sl-SI.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Več elementov" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/sr-SP.json b/packages/@react-spectrum/actiongroup/intl/sr-SP.json index e302afbcc6e..8d18b19cfad 100644 --- a/packages/@react-spectrum/actiongroup/intl/sr-SP.json +++ b/packages/@react-spectrum/actiongroup/intl/sr-SP.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Više stavki" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/sv-SE.json b/packages/@react-spectrum/actiongroup/intl/sv-SE.json index e302afbcc6e..b79344092d9 100644 --- a/packages/@react-spectrum/actiongroup/intl/sv-SE.json +++ b/packages/@react-spectrum/actiongroup/intl/sv-SE.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Fler artiklar" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/tr-TR.json b/packages/@react-spectrum/actiongroup/intl/tr-TR.json index e302afbcc6e..9304b4ccb58 100644 --- a/packages/@react-spectrum/actiongroup/intl/tr-TR.json +++ b/packages/@react-spectrum/actiongroup/intl/tr-TR.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Daha fazla öğe" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/uk-UA.json b/packages/@react-spectrum/actiongroup/intl/uk-UA.json index e302afbcc6e..415135db229 100644 --- a/packages/@react-spectrum/actiongroup/intl/uk-UA.json +++ b/packages/@react-spectrum/actiongroup/intl/uk-UA.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "Більше елементів" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/zh-CN.json b/packages/@react-spectrum/actiongroup/intl/zh-CN.json index e302afbcc6e..2155a005998 100644 --- a/packages/@react-spectrum/actiongroup/intl/zh-CN.json +++ b/packages/@react-spectrum/actiongroup/intl/zh-CN.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "更多项目" } \ No newline at end of file diff --git a/packages/@react-spectrum/actiongroup/intl/zh-TW.json b/packages/@react-spectrum/actiongroup/intl/zh-TW.json index e302afbcc6e..5876613d383 100644 --- a/packages/@react-spectrum/actiongroup/intl/zh-TW.json +++ b/packages/@react-spectrum/actiongroup/intl/zh-TW.json @@ -1,3 +1,3 @@ { - "more": "More items" + "more": "更多項目" } \ No newline at end of file diff --git a/packages/@react-spectrum/s2/src/Calendar.tsx b/packages/@react-spectrum/s2/src/Calendar.tsx index b24612695b2..0950485650a 100644 --- a/packages/@react-spectrum/s2/src/Calendar.tsx +++ b/packages/@react-spectrum/s2/src/Calendar.tsx @@ -312,7 +312,8 @@ export const Calendar = /*#__PURE__*/ (forwardRef as forwardRefType)(function Ca display: 'flex', flexDirection: 'row', gap: 24, - width: 'full' + width: 'full', + alignItems: 'start' })}> {Array.from({length: visibleMonths}).map((_, i) => ( @@ -454,18 +455,17 @@ const CalendarCell = (props: Omit & {firstDayOfWe let isFirstWeek = weekIndex === 0; let isFirstChild = dayIndex === 0; let isLastChild = dayIndex === 6; - let isNextDaySelected = state.isSelected(props.date.add({days: 1})); return ( cellStyles({...renderProps, isFirstChild, isLastChild, isFirstWeek})}> - {(renderProps) => } + {(renderProps) => } ); }; -const CalendarCellInner = (props: Omit & {isNextDaySelected: boolean, isLastChild: boolean, isRangeSelection: boolean, state: CalendarState | RangeCalendarState, weekIndex: number, dayIndex: number, renderProps?: CalendarCellRenderProps, date: DateValue}): ReactElement => { - let {weekIndex, dayIndex, date, renderProps, state, isRangeSelection, isNextDaySelected, isLastChild} = props; +const CalendarCellInner = (props: Omit & {isRangeSelection: boolean, state: CalendarState | RangeCalendarState, weekIndex: number, dayIndex: number, renderProps?: CalendarCellRenderProps, date: DateValue}): ReactElement => { + let {weekIndex, dayIndex, date, renderProps, state, isRangeSelection} = props; let {getDatesInWeek} = state; let ref = useRef(null); let {isUnavailable, formattedDate, isSelected} = renderProps!; @@ -484,13 +484,14 @@ const CalendarCellInner = (props: Omit & {isNextD selectionSpan = dayIndex; } + let prevDay = date.subtract({days: 1}); + let nextDay = date.add({days: 1}); let isBackgroundStyleApplied = ( isSelected - && (isLastChild || !isNextDaySelected) && isRangeSelection - && (state.isSelected(date.subtract({days: 1})) - || state.isSelected(date.add({days: 1})) - )); + && (state.isSelected(prevDay) + || (nextDay.month === date.month && state.isSelected(nextDay))) + ); return (
extends Omit, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>, - Pick, 'visibleMonths' | 'createCalendar'>, + Pick, 'createCalendar' | 'pageBehavior' | 'isDateUnavailable'>, StyleProps, SpectrumLabelableProps, HelpTextProps { @@ -49,7 +50,12 @@ export interface DatePickerProps extends * * @default 'M' */ - size?: 'S' | 'M' | 'L' | 'XL' + size?: 'S' | 'M' | 'L' | 'XL', + /** + * The maximum number of months to display at once in the calendar popover, if screen space permits. + * @default 1 + */ + maxVisibleMonths?: number } export const DatePickerContext = createContext>, HTMLDivElement>>(null); @@ -132,9 +138,11 @@ export const DatePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(function UNSAFE_className, styles, placeholderValue, - visibleMonths, + maxVisibleMonths = 1, firstDayOfWeek, createCalendar, + pageBehavior, + isDateUnavailable, ...dateFieldProps } = props; let formContext = useContext(FormContext); @@ -196,7 +204,12 @@ export const DatePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(function - + {showTimeField && (
- {props.children} + + {props.children} + ); diff --git a/packages/@react-spectrum/s2/src/DateRangePicker.tsx b/packages/@react-spectrum/s2/src/DateRangePicker.tsx index a0f2d8bcd3c..b2113effdc8 100644 --- a/packages/@react-spectrum/s2/src/DateRangePicker.tsx +++ b/packages/@react-spectrum/s2/src/DateRangePicker.tsx @@ -33,7 +33,7 @@ import {useSpectrumContextProps} from './useSpectrumContextProps'; export interface DateRangePickerProps extends Omit, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>, - Pick, 'visibleMonths' | 'createCalendar'>, + Pick, 'createCalendar' | 'pageBehavior' | 'isDateUnavailable'>, StyleProps, SpectrumLabelableProps, HelpTextProps { @@ -42,7 +42,12 @@ export interface DateRangePickerProps extends * * @default 'M' */ - size?: 'S' | 'M' | 'L' | 'XL' + size?: 'S' | 'M' | 'L' | 'XL', + /** + * The maximum number of months to display at once in the calendar popover, if screen space permits. + * @default 1 + */ + maxVisibleMonths?: number } export const DateRangePickerContext = createContext>, HTMLDivElement>>(null); @@ -66,9 +71,11 @@ export const DateRangePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(func UNSAFE_className, styles, placeholderValue, - visibleMonths = 1, + maxVisibleMonths = 1, firstDayOfWeek, createCalendar, + pageBehavior, + isDateUnavailable, ...dateFieldProps } = props; let formContext = useContext(FormContext); @@ -136,7 +143,12 @@ export const DateRangePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(func
- + {showTimeField && (
{Array.from({length: visibleMonths}).map((_, i) => ( @@ -103,7 +104,7 @@ export const RangeCalendar = /*#__PURE__*/ (forwardRef as forwardRefType)(functi
{isInvalid && ( - {errorMessage || stringFormatter.format('invalidSelection', {selectedCount: 2})} + {errorMessage || stringFormatter.format('calendar.invalidSelection', {selectedCount: 2})} )} diff --git a/packages/@react-spectrum/s2/src/TimeField.tsx b/packages/@react-spectrum/s2/src/TimeField.tsx index 31b6e7797a3..e294b4ab2df 100644 --- a/packages/@react-spectrum/s2/src/TimeField.tsx +++ b/packages/@react-spectrum/s2/src/TimeField.tsx @@ -21,13 +21,13 @@ import {createContext, forwardRef, ReactElement, Ref, useContext} from 'react'; import {DateInput, DateInputContainer, InvalidIndicator} from './DateField'; import {field, fieldInput, getAllowedOverrides, StyleProps} from './style-utils' with {type: 'macro'}; import {FieldGroup, FieldLabel, HelpText} from './Field'; -import {forwardRefType, HelpTextProps, SpectrumLabelableProps} from '@react-types/shared'; +import {forwardRefType, GlobalDOMAttributes, HelpTextProps, SpectrumLabelableProps} from '@react-types/shared'; import {style} from '../style' with {type: 'macro'}; import {useSpectrumContextProps} from './useSpectrumContextProps'; export interface TimeFieldProps extends - Omit, 'children' | 'className' | 'style'>, + Omit, 'children' | 'className' | 'style' | keyof GlobalDOMAttributes>, StyleProps, SpectrumLabelableProps, HelpTextProps { diff --git a/packages/@react-spectrum/s2/stories/DateField.stories.tsx b/packages/@react-spectrum/s2/stories/DateField.stories.tsx index da912c31554..09beb399505 100644 --- a/packages/@react-spectrum/s2/stories/DateField.stories.tsx +++ b/packages/@react-spectrum/s2/stories/DateField.stories.tsx @@ -13,6 +13,7 @@ import {Button, Content, ContextualHelp, DateField, Footer, Form, Heading, Link, Text} from '../src'; import {CalendarSwitcher, categorizeArgTypes} from './utils'; import type {Meta, StoryObj} from '@storybook/react'; +import {parseDate, toZoned} from '@internationalized/date'; import {style} from '../style' with {type: 'macro'}; const meta: Meta = { @@ -47,6 +48,13 @@ export const Example: Story = { } }; +export const Zoned: Story = { + args: { + label: 'Birthday', + defaultValue: toZoned(parseDate('2020-02-03'), 'America/New_York') + } +}; + export const AriaLabel: Story = { args: { 'aria-label': 'Birthday' diff --git a/packages/@react-spectrum/s2/stories/DatePicker.stories.tsx b/packages/@react-spectrum/s2/stories/DatePicker.stories.tsx index 6d9faab4b4d..5db96543498 100644 --- a/packages/@react-spectrum/s2/stories/DatePicker.stories.tsx +++ b/packages/@react-spectrum/s2/stories/DatePicker.stories.tsx @@ -14,6 +14,7 @@ import {Button, Content, ContextualHelp, DatePicker, Footer, Form, Heading, Link import {CalendarSwitcher, categorizeArgTypes} from './utils'; import {fn} from '@storybook/test'; import type {Meta, StoryObj} from '@storybook/react'; +import {parseDate, toZoned} from '@internationalized/date'; import {style} from '../style' with {type: 'macro'}; const meta: Meta = { @@ -58,6 +59,13 @@ export const Example: Story = { } }; +export const Zoned: Story = { + args: { + label: 'Birthday', + defaultValue: toZoned(parseDate('2020-02-03'), 'America/New_York') + } +}; + export const AriaLabel: Story = { args: { 'aria-label': 'Birthday' diff --git a/packages/@react-spectrum/s2/stories/DateRangePicker.stories.tsx b/packages/@react-spectrum/s2/stories/DateRangePicker.stories.tsx index 4e025518f41..9773d42e941 100644 --- a/packages/@react-spectrum/s2/stories/DateRangePicker.stories.tsx +++ b/packages/@react-spectrum/s2/stories/DateRangePicker.stories.tsx @@ -14,6 +14,7 @@ import {Button, Content, ContextualHelp, DateRangePicker, Footer, Form, Heading, import {CalendarSwitcher, categorizeArgTypes} from './utils'; import {fn} from '@storybook/test'; import type {Meta, StoryObj} from '@storybook/react'; +import {parseDate, toZoned} from '@internationalized/date'; import {style} from '../style' with {type: 'macro'}; const meta: Meta = { @@ -58,6 +59,13 @@ export const Example: Story = { } }; +export const Zoned: Story = { + args: { + label: 'Reservation dates', + defaultValue: {start: toZoned(parseDate('2020-02-03'), 'America/New_York'), end: toZoned(parseDate('2020-02-05'), 'America/Los_Angeles')} + } +}; + export const AriaLabel: Story = { args: { 'aria-label': 'Reservation dates' diff --git a/packages/react-aria-components/src/Calendar.tsx b/packages/react-aria-components/src/Calendar.tsx index ffe9c1f4234..4867ae9ce80 100644 --- a/packages/react-aria-components/src/Calendar.tsx +++ b/packages/react-aria-components/src/Calendar.tsx @@ -387,6 +387,7 @@ export const CalendarGrid = /*#__PURE__*/ (forwardRef as forwardRefType)(functio {...mergeProps(DOMProps, gridProps)} ref={ref} style={props.style} + cellPadding={0} className={props.className ?? 'react-aria-CalendarGrid'}> {typeof props.children !== 'function' ? props.children @@ -507,7 +508,6 @@ export const CalendarCell = /*#__PURE__*/ (forwardRef as forwardRefType)(functio let state = calendarState ?? rangeCalendarState!; let {startDate: currentMonth} = useContext(InternalCalendarGridContext) ?? {startDate: state.visibleRange.start}; let isOutsideMonth = !isSameMonth(currentMonth, date); - // TODO: check api with team, this seemed useful though let istoday = isToday(date, state.timeZone); let buttonRef = useRef(null); diff --git a/packages/react-aria-components/src/DatePicker.tsx b/packages/react-aria-components/src/DatePicker.tsx index 740929cb9b0..436321e0a60 100644 --- a/packages/react-aria-components/src/DatePicker.tsx +++ b/packages/react-aria-components/src/DatePicker.tsx @@ -74,7 +74,7 @@ export const DatePickerStateContext = createContext(null export const DateRangePickerStateContext = createContext(null); // Contexts to clear inside the popover. -const CLEAR_CONTEXTS = [GroupContext, ButtonContext, LabelContext, TextContext, OverlayTriggerStateContext]; +const CLEAR_CONTEXTS = [GroupContext, ButtonContext, LabelContext, TextContext]; /** * A date picker combines a DateField and a Calendar popover to allow users to enter or select a date and time value. @@ -173,7 +173,7 @@ export const DatePicker = /*#__PURE__*/ (forwardRef as forwardRefType)(function data-focus-visible={isFocusVisible || undefined} data-disabled={props.isDisabled || undefined} data-open={state.isOpen || undefined} /> - = { title: 'React Aria Components/TagGroup', diff --git a/packages/react-aria-components/stories/TextField.stories.tsx b/packages/react-aria-components/stories/TextField.stories.tsx index b725932ddf4..3d56f10e81e 100644 --- a/packages/react-aria-components/stories/TextField.stories.tsx +++ b/packages/react-aria-components/stories/TextField.stories.tsx @@ -15,6 +15,7 @@ import {classNames} from '@react-spectrum/utils'; import {Meta, StoryFn} from '@storybook/react'; import React from 'react'; import styles from '../example/index.css'; +import './styles.css'; export default { title: 'React Aria Components/TextField', diff --git a/packages/react-aria-components/stories/TimeField.stories.tsx b/packages/react-aria-components/stories/TimeField.stories.tsx index 456d68999a0..593f94660ff 100644 --- a/packages/react-aria-components/stories/TimeField.stories.tsx +++ b/packages/react-aria-components/stories/TimeField.stories.tsx @@ -15,6 +15,7 @@ import {DateInput, DateSegment, Label, TimeField} from 'react-aria-components'; import {Meta, StoryFn} from '@storybook/react'; import React from 'react'; import styles from '../example/index.css'; +import './styles.css'; export default { title: 'React Aria Components/TimeField', diff --git a/packages/react-aria-components/stories/ToggleButton.stories.tsx b/packages/react-aria-components/stories/ToggleButton.stories.tsx index da80442b3fa..874285887d1 100644 --- a/packages/react-aria-components/stories/ToggleButton.stories.tsx +++ b/packages/react-aria-components/stories/ToggleButton.stories.tsx @@ -16,6 +16,7 @@ import {Meta, StoryFn} from '@storybook/react'; import React, {useState} from 'react'; import styles from '../example/index.css'; import {ToggleButton} from 'react-aria-components'; +import './styles.css'; export default { title: 'React Aria Components/ToggleButton', diff --git a/packages/react-aria-components/stories/Toolbar.stories.tsx b/packages/react-aria-components/stories/Toolbar.stories.tsx index 557db3a0119..dbd3abbd2d1 100644 --- a/packages/react-aria-components/stories/Toolbar.stories.tsx +++ b/packages/react-aria-components/stories/Toolbar.stories.tsx @@ -16,6 +16,7 @@ import {Meta, StoryObj} from '@storybook/react'; import {Orientation} from 'react-stately'; import React from 'react'; import styles from '../example/index.css'; +import './styles.css'; export default { title: 'React Aria Components/Toolbar', diff --git a/packages/react-aria-components/stories/Tooltip.stories.tsx b/packages/react-aria-components/stories/Tooltip.stories.tsx index dc45108d691..8acfc5cc616 100644 --- a/packages/react-aria-components/stories/Tooltip.stories.tsx +++ b/packages/react-aria-components/stories/Tooltip.stories.tsx @@ -13,6 +13,7 @@ import {Button, OverlayArrow, Tooltip, TooltipTrigger} from 'react-aria-components'; import {Meta, StoryFn, StoryObj} from '@storybook/react'; import React, {JSX} from 'react'; +import './styles.css'; export default { title: 'React Aria Components/Tooltip', diff --git a/packages/react-aria-components/stories/Tree.stories.tsx b/packages/react-aria-components/stories/Tree.stories.tsx index 57d857b079d..4a5369ed429 100644 --- a/packages/react-aria-components/stories/Tree.stories.tsx +++ b/packages/react-aria-components/stories/Tree.stories.tsx @@ -19,6 +19,7 @@ import React, {JSX, ReactNode, useCallback, useState} from 'react'; import styles from '../example/index.css'; import {TreeLoadMoreItem} from '../src/Tree'; import {useAsyncList, useListData, useTreeData} from '@react-stately/data'; +import './styles.css'; export default { title: 'React Aria Components/Tree', diff --git a/starters/docs/.yarn/install-state.gz b/starters/docs/.yarn/install-state.gz index b665a798028..3d135806621 100644 Binary files a/starters/docs/.yarn/install-state.gz and b/starters/docs/.yarn/install-state.gz differ diff --git a/starters/docs/src/ColorPicker.tsx b/starters/docs/src/ColorPicker.tsx index 4b05eb47a69..6e6c83f6715 100644 --- a/starters/docs/src/ColorPicker.tsx +++ b/starters/docs/src/ColorPicker.tsx @@ -27,7 +27,7 @@ export function ColorPicker({ label, children, ...props }: ColorPickerProps) { {label} - + {children || ( <> (
{description && {description}} {errorMessage} - + {children} diff --git a/starters/docs/src/Content.css b/starters/docs/src/Content.css new file mode 100644 index 00000000000..96cf6094e23 --- /dev/null +++ b/starters/docs/src/Content.css @@ -0,0 +1,3 @@ +.react-aria-Heading { + margin: 0; +} \ No newline at end of file diff --git a/starters/docs/src/Content.tsx b/starters/docs/src/Content.tsx index fc96951660c..61e58f83f79 100644 --- a/starters/docs/src/Content.tsx +++ b/starters/docs/src/Content.tsx @@ -5,6 +5,8 @@ import { TextProps } from 'react-aria-components'; +import './Content.css'; + export function Heading(props: HeadingProps) { return ; }; diff --git a/starters/docs/src/DatePicker.css b/starters/docs/src/DatePicker.css index 69d3dd2dd25..3f0113572ad 100644 --- a/starters/docs/src/DatePicker.css +++ b/starters/docs/src/DatePicker.css @@ -30,4 +30,5 @@ .react-aria-Popover[data-trigger=DatePicker] { max-width: unset; + padding: 15px; } diff --git a/starters/docs/src/DateRangePicker.css b/starters/docs/src/DateRangePicker.css index b18db914bf0..ded736141e1 100644 --- a/starters/docs/src/DateRangePicker.css +++ b/starters/docs/src/DateRangePicker.css @@ -69,4 +69,5 @@ .react-aria-Popover[data-trigger=DateRangePicker] { max-width: unset; + padding: 15px; } diff --git a/starters/docs/src/Dialog.css b/starters/docs/src/Dialog.css index 9754312e321..8fd78c0c062 100644 --- a/starters/docs/src/Dialog.css +++ b/starters/docs/src/Dialog.css @@ -2,14 +2,10 @@ .react-aria-Dialog { outline: none; - padding: 30px; max-height: inherit; box-sizing: border-box; overflow: auto; - - &.no-padding { - padding: 0; - } + padding: 30px; .react-aria-Heading[slot=title] { line-height: 1em; diff --git a/starters/docs/src/Menu.tsx b/starters/docs/src/Menu.tsx index 5747ee295ad..d6c7a574dbd 100644 --- a/starters/docs/src/Menu.tsx +++ b/starters/docs/src/Menu.tsx @@ -29,7 +29,7 @@ export function MenuButton( return ( - + {children} @@ -83,7 +83,7 @@ export function SubmenuTrigger( return ( {trigger} - + {menu} diff --git a/starters/docs/src/Popover.tsx b/starters/docs/src/Popover.tsx index 27ebdb3d910..82fb3348c99 100644 --- a/starters/docs/src/Popover.tsx +++ b/starters/docs/src/Popover.tsx @@ -4,22 +4,19 @@ import { Popover as AriaPopover, PopoverProps as AriaPopoverProps } from 'react-aria-components'; +import clsx from 'clsx'; import './Popover.css'; -import clsx from 'clsx'; export interface PopoverProps extends Omit { children: React.ReactNode; hideArrow?: boolean; - noPadding?: boolean; } -export function Popover({ children, hideArrow, noPadding, ...props }: PopoverProps) { +export function Popover({ children, hideArrow, ...props }: PopoverProps) { return ( ( - + {!hideArrow && ( diff --git a/starters/docs/src/Select.tsx b/starters/docs/src/Select.tsx index da91f0f9a1a..7c2068c69fd 100644 --- a/starters/docs/src/Select.tsx +++ b/starters/docs/src/Select.tsx @@ -38,7 +38,7 @@ export function Select( {description && {description}} {errorMessage} - + {children} diff --git a/starters/docs/stories/Popover.stories.tsx b/starters/docs/stories/Popover.stories.tsx index c41f8792343..3fdf819ce6b 100644 --- a/starters/docs/stories/Popover.stories.tsx +++ b/starters/docs/stories/Popover.stories.tsx @@ -3,6 +3,7 @@ import {Button} from '../src/Button'; import {DialogTrigger} from '../src/Dialog'; import {Heading} from '../src/Content'; import {HelpCircle} from 'lucide-react'; +import './styles.css'; import type {Meta, StoryFn} from '@storybook/react'; @@ -20,7 +21,7 @@ type Story = StoryFn; export const Example: Story = (args) => ( - + Help

For help accessing your account, please contact support.

diff --git a/starters/docs/stories/styles.css b/starters/docs/stories/styles.css new file mode 100644 index 00000000000..8fa8a0fb102 --- /dev/null +++ b/starters/docs/stories/styles.css @@ -0,0 +1,3 @@ +.popover-padding { + padding: 30px; +} \ No newline at end of file diff --git a/starters/docs/yarn.lock b/starters/docs/yarn.lock index a60d3ecda68..6816ebe19a3 100644 --- a/starters/docs/yarn.lock +++ b/starters/docs/yarn.lock @@ -3718,7 +3718,7 @@ __metadata: languageName: node linkType: hard -"clsx@npm:^2.0.0": +"clsx@npm:^2.0.0, clsx@npm:^2.1.1": version: 2.1.1 resolution: "clsx@npm:2.1.1" checksum: 10c0/c4c8eb865f8c82baab07e71bfa8897c73454881c4f99d6bc81585aecd7c441746c1399d08363dc096c550cceaf97bd4ce1e8854e1771e9998d9f94c4fe075839 @@ -6424,6 +6424,7 @@ __metadata: "@storybook/test": "npm:^8.6.14" "@types/react": "npm:^18.3.0" "@types/react-dom": "npm:^18.3.0" + clsx: "npm:^2.1.1" lightningcss-loader: "npm:^2.1.0" lucide-react: "npm:^0.292.0" prop-types: "npm:^15.8.1"