diff --git a/core/engine/src/builtins/temporal/mod.rs b/core/engine/src/builtins/temporal/mod.rs index 085ebd2eb89..3eaa7aae7c9 100644 --- a/core/engine/src/builtins/temporal/mod.rs +++ b/core/engine/src/builtins/temporal/mod.rs @@ -252,6 +252,7 @@ pub(crate) fn to_relative_temporal_object( let plain_date = match relative_to { JsValue::String(relative_to_str) => JsValue::from(relative_to_str), JsValue::Object(relative_to_obj) => JsValue::from(relative_to_obj), + JsValue::Undefined => return Ok((None, None)), _ => { return Err(JsNativeError::typ() .with_message("Invalid type for converting to relativeTo object") diff --git a/core/engine/src/builtins/temporal/options.rs b/core/engine/src/builtins/temporal/options.rs index 8f7a5df0c76..e5c5fefcb89 100644 --- a/core/engine/src/builtins/temporal/options.rs +++ b/core/engine/src/builtins/temporal/options.rs @@ -53,12 +53,12 @@ pub(crate) fn get_difference_settings( context: &mut Context, ) -> JsResult { let mut settings = DifferenceSettings::default(); - settings.rounding_mode = - get_option::(options, js_str!("roundingMode"), context)?; + settings.largest_unit = get_option::(options, js_str!("largestUnit"), context)?; settings.increment = get_option::(options, js_str!("roundingIncrement"), context)?; + settings.rounding_mode = + get_option::(options, js_str!("roundingMode"), context)?; settings.smallest_unit = get_option::(options, js_str!("smallestUnit"), context)?; - settings.largest_unit = get_option::(options, js_str!("largestUnit"), context)?; Ok(settings) }