From 58162c891fe90afc965f69660321d69f20ef5d19 Mon Sep 17 00:00:00 2001 From: inottn Date: Mon, 23 Sep 2024 20:25:37 +0800 Subject: [PATCH] feat: support wrappedContextRegExp --- crates/node_binding/binding.d.ts | 1 + .../src/options/raw_module/mod.rs | 8 +- crates/rspack_core/src/options/module.rs | 1 + .../dependency/context_dependency_helper.rs | 15 ++- crates/rspack_util/src/merge.rs | 8 ++ .../tests/__snapshots__/Defaults.test.js.snap | 1 + .../wrapped-context-reg-exp/index.js | 6 + .../wrapped-context-reg-exp/rspack.config.js | 11 ++ .../wrapped-context-reg-exp/sub/a1.js | 1 + .../wrapped-context-reg-exp/sub/a2.js | 1 + packages/rspack/etc/api.md | 107 ++++++++++++++++++ packages/rspack/src/config/defaults.ts | 1 + packages/rspack/src/config/zod.ts | 2 + 13 files changed, 156 insertions(+), 7 deletions(-) create mode 100644 packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/index.js create mode 100644 packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/rspack.config.js create mode 100644 packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/sub/a1.js create mode 100644 packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/sub/a2.js diff --git a/crates/node_binding/binding.d.ts b/crates/node_binding/binding.d.ts index 5925fadc52a..191582bda91 100644 --- a/crates/node_binding/binding.d.ts +++ b/crates/node_binding/binding.d.ts @@ -1410,6 +1410,7 @@ export interface RawJavascriptParserOptions { url?: string exprContextCritical?: boolean wrappedContextCritical?: boolean + wrappedContextRegExp?: RegExp exportsPresence?: string importExportsPresence?: string reexportExportsPresence?: string diff --git a/crates/rspack_binding_options/src/options/raw_module/mod.rs b/crates/rspack_binding_options/src/options/raw_module/mod.rs index ae6d1422b18..f32ec68e997 100644 --- a/crates/rspack_binding_options/src/options/raw_module/mod.rs +++ b/crates/rspack_binding_options/src/options/raw_module/mod.rs @@ -21,6 +21,7 @@ use rspack_core::{ use rspack_error::error; use rspack_napi::regexp::{JsRegExp, JsRegExpExt}; use rspack_napi::threadsafe_function::ThreadsafeFunction; +use rspack_regex::RspackRegex; use tokio::runtime::Handle; use crate::RawResolveOptions; @@ -110,7 +111,7 @@ impl TryFrom for rspack_core::RuleSetCondition { let result = match x { RawRuleSetCondition::string(s) => Self::String(s), RawRuleSetCondition::regexp(r) => { - let reg = rspack_regex::RspackRegex::with_flags(&r.source, &r.flags)?; + let reg = RspackRegex::with_flags(&r.source, &r.flags)?; Self::Regexp(reg) } RawRuleSetCondition::logical(mut l) => { @@ -265,6 +266,8 @@ pub struct RawJavascriptParserOptions { pub url: Option, pub expr_context_critical: Option, pub wrapped_context_critical: Option, + #[napi(ts_type = "RegExp")] + pub wrapped_context_reg_exp: Option, pub exports_presence: Option, pub import_exports_presence: Option, pub reexport_exports_presence: Option, @@ -291,6 +294,9 @@ impl From for JavascriptParserOptions { .map(|x| DynamicImportFetchPriority::from(x.as_str())), url: value.url.map(|v| JavascriptParserUrl::from(v.as_str())), expr_context_critical: value.expr_context_critical, + wrapped_context_reg_exp: value + .wrapped_context_reg_exp + .map(|context_reg_exp| context_reg_exp.to_rspack_regex()), wrapped_context_critical: value.wrapped_context_critical, exports_presence: value .exports_presence diff --git a/crates/rspack_core/src/options/module.rs b/crates/rspack_core/src/options/module.rs index af03bb71b28..c1099042b53 100644 --- a/crates/rspack_core/src/options/module.rs +++ b/crates/rspack_core/src/options/module.rs @@ -228,6 +228,7 @@ pub struct JavascriptParserOptions { pub url: Option, pub expr_context_critical: Option, pub wrapped_context_critical: Option, + pub wrapped_context_reg_exp: Option, pub exports_presence: Option, pub import_exports_presence: Option, pub reexport_exports_presence: Option, diff --git a/crates/rspack_plugin_javascript/src/visitors/dependency/context_dependency_helper.rs b/crates/rspack_plugin_javascript/src/visitors/dependency/context_dependency_helper.rs index 6d805872282..af5e4604ba2 100644 --- a/crates/rspack_plugin_javascript/src/visitors/dependency/context_dependency_helper.rs +++ b/crates/rspack_plugin_javascript/src/visitors/dependency/context_dependency_helper.rs @@ -11,15 +11,18 @@ use swc_core::ecma::ast::Expr; use super::create_traceable_error; use crate::utils::eval::{BasicEvaluatedExpression, TemplateStringKind}; -// FIXME: delete this after `parserOptions.wrappedContextRegExp.source` -const DEFAULT_WRAPPED_CONTEXT_REGEXP: &str = ".*"; - pub fn create_context_dependency( param: &BasicEvaluatedExpression, expr: &Expr, parser: &mut crate::visitors::JavascriptParser, ) -> ContextModuleScanResult { let mut critical = None; + let wrapped_context_reg_exp = parser + .javascript_options + .wrapped_context_reg_exp + .as_ref() + .expect("should have wrapped_context_reg_exp") + .source(); if param.is_template_string() { let quasis = param.quasis(); @@ -47,10 +50,10 @@ pub fn create_context_dependency( let reg = format!( "^{}{}{}{}$", quote_meta(&prefix), - DEFAULT_WRAPPED_CONTEXT_REGEXP, + wrapped_context_reg_exp, quasis[1..quasis.len() - 1] .iter() - .map(|q| quote_meta(q.string().as_str()) + DEFAULT_WRAPPED_CONTEXT_REGEXP) + .map(|q| quote_meta(q.string().as_str()) + wrapped_context_reg_exp) .join(""), quote_meta(&postfix) ); @@ -148,7 +151,7 @@ pub fn create_context_dependency( }; let reg = format!( - "^{}{DEFAULT_WRAPPED_CONTEXT_REGEXP}{}$", + "^{}{wrapped_context_reg_exp}{}$", quote_meta(&prefix), quote_meta(&postfix) ); diff --git a/crates/rspack_util/src/merge.rs b/crates/rspack_util/src/merge.rs index d0eb4545917..324bebe4495 100644 --- a/crates/rspack_util/src/merge.rs +++ b/crates/rspack_util/src/merge.rs @@ -1,3 +1,5 @@ +use rspack_regex::RspackRegex; + use crate::atom::Atom; pub trait MergeFrom: Clone { @@ -37,6 +39,12 @@ impl MergeFrom for Vec { } } +impl MergeFrom for RspackRegex { + fn merge_from(self, other: &Self) -> Self { + other.clone() + } +} + impl_merge_from!(i8, i16, i32, i64, i128); impl_merge_from!(u8, u16, u32, u64, u128); impl_merge_from!(bool); diff --git a/packages/rspack-test-tools/tests/__snapshots__/Defaults.test.js.snap b/packages/rspack-test-tools/tests/__snapshots__/Defaults.test.js.snap index fc3eacc35b9..2044f4462e0 100644 --- a/packages/rspack-test-tools/tests/__snapshots__/Defaults.test.js.snap +++ b/packages/rspack-test-tools/tests/__snapshots__/Defaults.test.js.snap @@ -169,6 +169,7 @@ Object { "...", ], "wrappedContextCritical": false, + "wrappedContextRegExp": /\\.\\*/, }, }, "rules": Array [], diff --git a/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/index.js b/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/index.js new file mode 100644 index 00000000000..146c2f90d71 --- /dev/null +++ b/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/index.js @@ -0,0 +1,6 @@ +it("should not include foo.js", async () => { + let a1 = 'a1'; + let a2 = 'a2'; + expect(require('./sub/' + a1)).toBe("a1"); + expect(() => require('./sub/' + a2)).toThrow(); +}); diff --git a/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/rspack.config.js b/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/rspack.config.js new file mode 100644 index 00000000000..c36e38804e3 --- /dev/null +++ b/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/rspack.config.js @@ -0,0 +1,11 @@ +/** @type {import("@rspack/core").Configuration} */ +module.exports = { + module: { + parser: { + javascript: { + wrappedContextRegExp: /.*1/, + } + } + }, + } + \ No newline at end of file diff --git a/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/sub/a1.js b/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/sub/a1.js new file mode 100644 index 00000000000..43fdf24e11a --- /dev/null +++ b/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/sub/a1.js @@ -0,0 +1 @@ +module.exports = "a1"; diff --git a/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/sub/a2.js b/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/sub/a2.js new file mode 100644 index 00000000000..785a52236e1 --- /dev/null +++ b/packages/rspack-test-tools/tests/configCases/context-module/wrapped-context-reg-exp/sub/a2.js @@ -0,0 +1 @@ +module.exports = "a2"; diff --git a/packages/rspack/etc/api.md b/packages/rspack/etc/api.md index ba62178c52a..e661d3abb0a 100644 --- a/packages/rspack/etc/api.md +++ b/packages/rspack/etc/api.md @@ -5050,6 +5050,7 @@ const javascriptParserOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -5065,6 +5066,7 @@ const javascriptParserOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -5080,6 +5082,7 @@ const javascriptParserOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6433,6 +6436,7 @@ const moduleOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -6448,6 +6452,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6463,6 +6468,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6479,6 +6485,7 @@ const moduleOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -6494,6 +6501,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6509,6 +6517,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6525,6 +6534,7 @@ const moduleOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -6540,6 +6550,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6555,6 +6566,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6571,6 +6583,7 @@ const moduleOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -6586,6 +6599,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6601,6 +6615,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6618,6 +6633,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6648,6 +6664,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6664,6 +6681,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6680,6 +6698,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6697,6 +6716,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6727,6 +6747,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6743,6 +6764,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -6759,6 +6781,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -7006,6 +7029,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -7036,6 +7060,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -7052,6 +7077,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -7068,6 +7094,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -7134,6 +7161,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -7164,6 +7192,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -7180,6 +7209,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -7196,6 +7226,7 @@ const moduleOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8801,6 +8832,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -8816,6 +8848,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8831,6 +8864,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8847,6 +8881,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -8862,6 +8897,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8877,6 +8913,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8893,6 +8930,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -8908,6 +8946,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8923,6 +8962,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8939,6 +8979,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -8954,6 +8995,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8969,6 +9011,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -8986,6 +9029,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9016,6 +9060,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9032,6 +9077,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9048,6 +9094,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9065,6 +9112,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9095,6 +9143,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9111,6 +9160,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9127,6 +9177,7 @@ const parserOptionsByModuleType: z.ZodUnion<[z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9188,6 +9239,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -9203,6 +9255,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9218,6 +9271,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9234,6 +9288,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -9249,6 +9304,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9264,6 +9320,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9280,6 +9337,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -9295,6 +9353,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9310,6 +9369,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9326,6 +9386,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -9341,6 +9402,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9356,6 +9418,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9373,6 +9436,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9403,6 +9467,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9419,6 +9484,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9435,6 +9501,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9452,6 +9519,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9482,6 +9550,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9498,6 +9567,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -9514,6 +9584,7 @@ const parserOptionsByModuleTypeKnown: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12212,6 +12283,7 @@ export const rspackOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -12227,6 +12299,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12242,6 +12315,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12258,6 +12332,7 @@ export const rspackOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -12273,6 +12348,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12288,6 +12364,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12304,6 +12381,7 @@ export const rspackOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -12319,6 +12397,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12334,6 +12413,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12350,6 +12430,7 @@ export const rspackOptions: z.ZodObject<{ url: z.ZodOptional, z.ZodBoolean]>>; exprContextCritical: z.ZodOptional; wrappedContextCritical: z.ZodOptional; + wrappedContextRegExp: z.ZodOptional>; exportsPresence: z.ZodOptional, z.ZodLiteral]>>; importExportsPresence: z.ZodOptional, z.ZodLiteral]>>; reexportExportsPresence: z.ZodOptional, z.ZodLiteral]>>; @@ -12365,6 +12446,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12380,6 +12462,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12397,6 +12480,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12427,6 +12511,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12443,6 +12528,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12459,6 +12545,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12476,6 +12563,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12506,6 +12594,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12522,6 +12611,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12538,6 +12628,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12785,6 +12876,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12815,6 +12907,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12831,6 +12924,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12847,6 +12941,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12913,6 +13008,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12943,6 +13039,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12959,6 +13056,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -12975,6 +13073,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -13061,6 +13160,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -13091,6 +13191,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -13107,6 +13208,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -13123,6 +13225,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -13635,6 +13738,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -13665,6 +13769,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -13681,6 +13786,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; @@ -13697,6 +13803,7 @@ export const rspackOptions: z.ZodObject<{ url?: boolean | "relative" | undefined; exprContextCritical?: boolean | undefined; wrappedContextCritical?: boolean | undefined; + wrappedContextRegExp?: RegExp | undefined; exportsPresence?: false | "auto" | "error" | "warn" | undefined; importExportsPresence?: false | "auto" | "error" | "warn" | undefined; reexportExportsPresence?: false | "auto" | "error" | "warn" | undefined; diff --git a/packages/rspack/src/config/defaults.ts b/packages/rspack/src/config/defaults.ts index 8dfdbb6defa..177169cd2fd 100644 --- a/packages/rspack/src/config/defaults.ts +++ b/packages/rspack/src/config/defaults.ts @@ -242,6 +242,7 @@ const applyJavascriptParserOptionsDefaults = ( D(parserOptions, "url", true); D(parserOptions, "exprContextCritical", true); D(parserOptions, "wrappedContextCritical", false); + D(parserOptions, "wrappedContextRegExp", /.*/); D(parserOptions, "strictExportPresence", false); D(parserOptions, "worker", ["..."]); D(parserOptions, "importMeta", true); diff --git a/packages/rspack/src/config/zod.ts b/packages/rspack/src/config/zod.ts index efbe32944d0..678c31cdf97 100644 --- a/packages/rspack/src/config/zod.ts +++ b/packages/rspack/src/config/zod.ts @@ -591,6 +591,7 @@ const dynamicImportFetchPriority = z.enum(["low", "high", "auto"]); const javascriptParserUrl = z.union([z.literal("relative"), z.boolean()]); const exprContextCritical = z.boolean(); const wrappedContextCritical = z.boolean(); +const wrappedContextRegExp = z.instanceof(RegExp); const exportsPresence = z.enum(["error", "warn", "auto"]).or(z.literal(false)); const importExportsPresence = z .enum(["error", "warn", "auto"]) @@ -611,6 +612,7 @@ const javascriptParserOptions = z.strictObject({ url: javascriptParserUrl.optional(), exprContextCritical: exprContextCritical.optional(), wrappedContextCritical: wrappedContextCritical.optional(), + wrappedContextRegExp: wrappedContextRegExp.optional(), exportsPresence: exportsPresence.optional(), importExportsPresence: importExportsPresence.optional(), reexportExportsPresence: reexportExportsPresence.optional(),