Skip to content

Commit 84a1f0f

Browse files
authored
Prevent crashing of doc's date events and invalid examples (#4777)
* RAC date - fixes the events and invalid examples crashing * making DateField rac, rsp, and aria event and validation examples consistent * fixing the TimeField validation example
1 parent b2327a5 commit 84a1f0f

File tree

12 files changed

+19
-19
lines changed

12 files changed

+19
-19
lines changed

packages/@react-aria/datepicker/docs/useDateField.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,7 @@ function Example() {
241241
return (
242242
<>
243243
<DateField label="Birth date" value={date} onChange={setDate} />
244-
<p>Selected date: {formatter.format(date.toDate(getLocalTimeZone()))}</p>
244+
<p>Selected date: {date ? formatter.format(date.toDate(getLocalTimeZone())) : '--'}</p>
245245
</>
246246
);
247247
}

packages/@react-aria/datepicker/docs/useDatePicker.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -521,7 +521,7 @@ function Example() {
521521
return (
522522
<>
523523
<DatePicker label="Birth date" value={date} onChange={setDate} />
524-
<p>Selected date: {formatter.format(date.toDate(getLocalTimeZone()))}</p>
524+
<p>Selected date: {date ? formatter.format(date.toDate(getLocalTimeZone())) : '--'}</p>
525525
</>
526526
);
527527
}

packages/@react-aria/datepicker/docs/useDateRangePicker.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -543,7 +543,7 @@ function Example() {
543543
return (
544544
<>
545545
<DateRangePicker label="Date range" value={range} onChange={setRange} />
546-
<p>Selected date: {formatter.formatRange(range.start.toDate(getLocalTimeZone()), range.end.toDate(getLocalTimeZone()))}</p>
546+
<p>Selected date: {range ? formatter.formatRange(range.start.toDate(getLocalTimeZone()), range.end.toDate(getLocalTimeZone())) : '--'}</p>
547547
</>
548548
);
549549
}

packages/@react-aria/datepicker/docs/useTimeField.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -264,7 +264,7 @@ function Example() {
264264
return (
265265
<>
266266
<TimeField label="Time" value={date} onChange={setDate} />
267-
<p>Selected date and time: {formatter.format(date.toDate())}</p>
267+
<p>Selected date and time: {(date?.toDate && formatter.format(date.toDate())) || (date && date.toString()) || '--'}</p>
268268
</>
269269
);
270270
}

packages/@react-spectrum/datepicker/docs/DateField.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ function Example() {
230230
label="Appointment date"
231231
value={date}
232232
onChange={setDate}
233-
validationState={isWeekend(date, locale) ? 'invalid' : 'valid'}
233+
validationState={date && isWeekend(date, locale) ? 'invalid' : 'valid'}
234234
description="Select a weekday"
235235
errorMessage="We are closed on weekends" />
236236
);

packages/@react-spectrum/datepicker/docs/DatePicker.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ function Example() {
204204
return (
205205
<>
206206
<DatePicker label="Birth date" value={date} onChange={setDate} />
207-
<p>Selected date: {formatter.format(date.toDate(getLocalTimeZone()))}</p>
207+
<p>Selected date: {date ? formatter.format(date.toDate(getLocalTimeZone())) : '--'}</p>
208208
</>
209209
);
210210
}
@@ -229,7 +229,7 @@ function Example() {
229229
label="Appointment date"
230230
value={date}
231231
onChange={setDate}
232-
validationState={isWeekend(date, locale) ? 'invalid' : 'valid'}
232+
validationState={date && isWeekend(date, locale) ? 'invalid' : 'valid'}
233233
description="Select a weekday"
234234
errorMessage="We are closed on weekends" />
235235
);

packages/@react-spectrum/datepicker/docs/DateRangePicker.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@ function Example() {
224224
return (
225225
<>
226226
<DateRangePicker label="Date range" value={range} onChange={setRange} />
227-
<p>Selected date: {formatter.formatRange(range.start.toDate(getLocalTimeZone()), range.end.toDate(getLocalTimeZone()))}</p>
227+
<p>Selected date: {range ? formatter.formatRange(range.start.toDate(getLocalTimeZone()), range.end.toDate(getLocalTimeZone())) : '--'}</p>
228228
</>
229229
);
230230
}
@@ -250,7 +250,7 @@ function Example() {
250250
label="Date range"
251251
value={range}
252252
onChange={setRange}
253-
validationState={isSameMonth(range.start, range.end) ? 'valid' : 'invalid'}
253+
validationState={range && !isSameMonth(range.start, range.end) ? 'invalid' : 'valid'}
254254
description="Select a range within the same month"
255255
errorMessage="Start and end dates must be in the same month" />
256256
);

packages/@react-spectrum/datepicker/docs/TimeField.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ function Example() {
149149
return (
150150
<>
151151
<TimeField label="Time" value={date} onChange={setDate} />
152-
<p>Selected date and time: {formatter.format(date.toDate())}</p>
152+
<p>Selected date and time: {(date?.toDate && formatter.format(date.toDate())) || (date && date.toString()) || '--'}</p>
153153
</>
154154
);
155155
}
@@ -170,7 +170,7 @@ function Example() {
170170
label="Meeting time"
171171
value={time}
172172
onChange={setTime}
173-
validationState={time.minute % 15 ? 'invalid' : 'valid'}
173+
validationState={time?.minute % 15 ? 'invalid' : 'valid'}
174174
description="Select a meeting time"
175175
errorMessage="Meetings start every 15 minutes." />
176176
);

packages/react-aria-components/docs/DateField.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -385,7 +385,7 @@ function Example() {
385385
return (
386386
<>
387387
<MyDateField label="Birth date" value={date} onChange={setDate} />
388-
<p>Selected date: {formatter.format(date.toDate(getLocalTimeZone()))}</p>
388+
<p>Selected date: {date ? formatter.format(date.toDate(getLocalTimeZone())) : '--'}</p>
389389
</>
390390
);
391391
}
@@ -512,7 +512,7 @@ import {useLocale} from 'react-aria';
512512
function Example() {
513513
let [date, setDate] = React.useState(today(getLocalTimeZone()));
514514
let {locale} = useLocale();
515-
let isInvalid = isWeekend(date, locale);
515+
let isInvalid = date && isWeekend(date, locale);
516516

517517
return (
518518
<MyDateField

packages/react-aria-components/docs/DatePicker.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -817,7 +817,7 @@ function Example() {
817817
return (
818818
<>
819819
<MyDatePicker label="Birth date" value={date} onChange={setDate} />
820-
<p>Selected date: {formatter.format(date.toDate(getLocalTimeZone()))}</p>
820+
<p>Selected date: {date ? formatter.format(date.toDate(getLocalTimeZone())) : '--'}</p>
821821
</>
822822
);
823823
}
@@ -968,7 +968,7 @@ import {useLocale} from 'react-aria';
968968
function Example() {
969969
let [date, setDate] = React.useState(today(getLocalTimeZone()));
970970
let {locale} = useLocale();
971-
let isInvalid = isWeekend(date, locale);
971+
let isInvalid = date && isWeekend(date, locale);
972972

973973
return (
974974
<MyDatePicker

0 commit comments

Comments
 (0)