Skip to content

Commit 0958e19

Browse files
authored
fix: fractional seconds not supported for iso dates (#894)
* support fractional seconds * fix conversion
1 parent 16d74f6 commit 0958e19

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

ios/RNDatePicker.mm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ + (ComponentDescriptorProvider)componentDescriptorProvider
5151
NSDate* iso8601StringToNSDate(const std::string &iso8601String) {
5252
NSString *nsString = [NSString stringWithUTF8String:iso8601String.c_str()];
5353
NSISO8601DateFormatter *isoFormatter = [[NSISO8601DateFormatter alloc] init];
54+
isoFormatter.formatOptions = NSISO8601DateFormatWithInternetDateTime | NSISO8601DateFormatWithFractionalSeconds;
5455
NSDate *date = [isoFormatter dateFromString:nsString];
5556
return date;
5657
}

src/DatePickerIOS.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ export const DatePickerIOS = (props) => {
2121
...props,
2222
onChange,
2323
style: [styles.datePickerIOS, props.style],
24-
date: props.date ? props.date.getTime() : undefined,
24+
date: props.date ? props.date.toISOString() : undefined,
2525
locale: props.locale ? props.locale : undefined,
26-
maximumDate: props.maximumDate ? props.maximumDate.getTime() : undefined,
27-
minimumDate: props.minimumDate ? props.minimumDate.getTime() : undefined,
26+
maximumDate: props.maximumDate ? props.maximumDate.toISOString() : undefined,
27+
minimumDate: props.minimumDate ? props.minimumDate.toISOString() : undefined,
2828
theme: props.theme ? props.theme : 'auto',
2929
}
3030

0 commit comments

Comments
 (0)