Skip to content

Commit 27c6e22

Browse files
authored
feat: handle transform-dynamic-import (#1266)
1 parent bd8f287 commit 27c6e22

File tree

2 files changed

+23
-0
lines changed

2 files changed

+23
-0
lines changed

.changeset/fancy-steaks-itch.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@callstack/repack": patch
3+
---
4+
5+
Handle 'transform-dynamic-import' in `babel-swc-loader`

packages/repack/src/loaders/babelSwcLoader/swc.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ const SWC_SUPPORTED_CUSTOM_RULES = new Set([
4141
'transform-react-jsx',
4242
'transform-modules-commonjs',
4343
'proposal-export-default-from',
44+
'transform-dynamic-import',
4445
]);
4546

4647
function getTransformRuntimeConfig(
@@ -135,6 +136,22 @@ function getTransformExportDefaultFromConfig(
135136
};
136137
}
137138

139+
function getTransformDynamicImportConfig(
140+
swcConfig: SwcLoaderOptions
141+
): SwcLoaderOptions {
142+
return {
143+
...swcConfig,
144+
jsc: {
145+
...swcConfig.jsc,
146+
parser: {
147+
...swcConfig.jsc?.parser,
148+
syntax: swcConfig.jsc?.parser?.syntax!,
149+
dynamicImport: true,
150+
},
151+
},
152+
};
153+
}
154+
138155
function getTransformClassPropertiesConfig(
139156
swcConfig: SwcLoaderOptions,
140157
ruleConfig: Record<string, any> = { loose: false }
@@ -244,6 +261,7 @@ const SWC_SUPPORTED_CUSTOM_RULES_MAP = {
244261
'transform-react-jsx-source': getTransformReactDevelopmentConfig,
245262
'transform-modules-commonjs': getTransformModulesCommonjsConfig,
246263
'proposal-export-default-from': getTransformExportDefaultFromConfig,
264+
'transform-dynamic-import': getTransformDynamicImportConfig,
247265
};
248266

249267
export function getSupportedSwcNormalTransforms(

0 commit comments

Comments
 (0)