@@ -8,7 +8,7 @@ dayjs.extend(quarterOfYear);
8
8
9
9
export class ReferenceWithTimezone {
10
10
readonly instant : Date ;
11
- readonly timezoneOffset : number ;
11
+ readonly timezoneOffset ? : number ;
12
12
13
13
constructor ( input ?: ParsingReference | Date ) {
14
14
input = input ?? new Date ( ) ;
@@ -17,7 +17,7 @@ export class ReferenceWithTimezone {
17
17
this . timezoneOffset = - input . getTimezoneOffset ( ) ;
18
18
} else {
19
19
this . instant = input . instant ?? new Date ( ) ;
20
- this . timezoneOffset = toTimezoneOffset ( input . timezone ?? - this . instant . getTimezoneOffset ( ) ) ;
20
+ this . timezoneOffset = toTimezoneOffset ( input . timezone ) ;
21
21
}
22
22
}
23
23
}
@@ -180,10 +180,14 @@ export class ParsingComponents implements ParsedComponents {
180
180
if ( fragments [ "hour" ] || fragments [ "minute" ] || fragments [ "second" ] ) {
181
181
assignSimilarTime ( components , date ) ;
182
182
assignSimilarDate ( components , date ) ;
183
- components . assign ( "timezoneOffset" , - reference . instant . getTimezoneOffset ( ) ) ;
183
+ if ( reference . timezoneOffset !== null ) {
184
+ components . assign ( "timezoneOffset" , - reference . instant . getTimezoneOffset ( ) ) ;
185
+ }
184
186
} else {
185
187
implySimilarTime ( components , date ) ;
186
- components . imply ( "timezoneOffset" , - reference . instant . getTimezoneOffset ( ) ) ;
188
+ if ( reference . timezoneOffset !== null ) {
189
+ components . imply ( "timezoneOffset" , - reference . instant . getTimezoneOffset ( ) ) ;
190
+ }
187
191
188
192
if ( fragments [ "d" ] ) {
189
193
components . assign ( "day" , date . date ( ) ) ;
0 commit comments