diff --git a/crates/oxc_wasm/src/lib.rs b/crates/oxc_wasm/src/lib.rs index ded7e5042..b706436ff 100644 --- a/crates/oxc_wasm/src/lib.rs +++ b/crates/oxc_wasm/src/lib.rs @@ -166,11 +166,15 @@ impl Oxc { _ => source_type, }; + let default_parser_options = ParseOptions::default(); let oxc_parser_options = ParseOptions { allow_return_outside_function: parser_options .allow_return_outside_function - .unwrap_or_default(), - ..ParseOptions::default() + .unwrap_or(default_parser_options.allow_return_outside_function), + preserve_parens: parser_options + .preserve_parens + .unwrap_or(default_parser_options.preserve_parens), + ..default_parser_options }; let ret = Parser::new(&allocator, source_text, source_type) diff --git a/crates/oxc_wasm/src/options.rs b/crates/oxc_wasm/src/options.rs index 14a1caca4..1f2a260ef 100644 --- a/crates/oxc_wasm/src/options.rs +++ b/crates/oxc_wasm/src/options.rs @@ -50,6 +50,8 @@ pub struct OxcRunOptions { pub struct OxcParserOptions { #[tsify(optional)] pub allow_return_outside_function: Option, + #[tsify(optional)] + pub preserve_parens: Option, #[tsify(optional, type = "\"script\" | \"module\"")] pub source_type: Option, #[tsify(optional)]