@@ -27,7 +27,8 @@ use deno_npm_installer::NpmInstallerFactoryOptions;
2727use deno_npm_installer:: Reporter ;
2828use deno_npm_installer:: lifecycle_scripts:: NullLifecycleScriptsExecutor ;
2929use deno_resolver:: cjs:: CjsTrackerRc ;
30- use deno_resolver:: deno_json:: TsConfigResolverRc ;
30+ use deno_resolver:: deno_json:: CompilerOptionsResolver ;
31+ use deno_resolver:: deno_json:: JsxImportSourceConfigResolver ;
3132use deno_resolver:: factory:: ConfigDiscoveryOption ;
3233use deno_resolver:: factory:: NpmSystemInfo ;
3334use deno_resolver:: factory:: ResolverFactory ;
@@ -41,7 +42,6 @@ use deno_resolver::file_fetcher::PermissionedFileFetcherOptions;
4142use deno_resolver:: graph:: DefaultDenoResolverRc ;
4243use deno_resolver:: graph:: ResolveWithGraphOptions ;
4344use deno_resolver:: npm:: DenoInNpmPackageChecker ;
44- use deno_resolver:: workspace:: ScopedJsxImportSourceConfig ;
4545use deno_semver:: SmallStackString ;
4646use js_sys:: Object ;
4747use js_sys:: Uint8Array ;
@@ -285,12 +285,15 @@ impl DenoWorkspace {
285285 ) ) ;
286286 Ok ( DenoLoader {
287287 cjs_tracker : self . resolver_factory . cjs_tracker ( ) ?. clone ( ) ,
288+ compiler_options_resolver : self
289+ . resolver_factory
290+ . compiler_options_resolver ( ) ?
291+ . clone ( ) ,
288292 file_fetcher,
289293 resolver : self . resolver_factory . deno_resolver ( ) . await ?. clone ( ) ,
290294 workspace_factory : self . workspace_factory . clone ( ) ,
291295 resolver_factory : self . resolver_factory . clone ( ) ,
292296 npm_installer_factory : self . npm_installer_factory . clone ( ) ,
293- tsconfig_resolver : self . workspace_factory . tsconfig_resolver ( ) ?. clone ( ) ,
294297 capturing_analyzer : if options. no_transpile . unwrap_or ( false ) {
295298 None
296299 } else {
@@ -306,13 +309,13 @@ impl DenoWorkspace {
306309#[ wasm_bindgen]
307310pub struct DenoLoader {
308311 cjs_tracker : CjsTrackerRc < DenoInNpmPackageChecker , RealSys > ,
312+ compiler_options_resolver : Arc < CompilerOptionsResolver > ,
309313 resolver : DefaultDenoResolverRc < RealSys > ,
310314 file_fetcher :
311315 Arc < PermissionedFileFetcher < NullBlobStore , RealSys , WasmHttpClient > > ,
312316 npm_installer_factory :
313317 Arc < NpmInstallerFactory < WasmHttpClient , ConsoleLogReporter , RealSys > > ,
314318 resolver_factory : Arc < ResolverFactory < RealSys > > ,
315- tsconfig_resolver : TsConfigResolverRc < RealSys > ,
316319 workspace_factory : Arc < WorkspaceFactory < RealSys > > ,
317320 graph : ModuleGraph ,
318321 capturing_analyzer : Option < deno_graph:: ast:: CapturingModuleAnalyzer > ,
@@ -351,9 +354,10 @@ impl DenoLoader {
351354 . workspace_factory
352355 . maybe_lockfile ( npm_package_info_provider)
353356 . await ?;
354- let jsx_config = ScopedJsxImportSourceConfig :: from_workspace_dir (
355- self . workspace_factory . workspace_directory ( ) ?,
356- ) ?;
357+ let jsx_config =
358+ JsxImportSourceConfigResolver :: from_compiler_options_resolver (
359+ & self . compiler_options_resolver ,
360+ ) ?;
357361
358362 let graph_resolver = self
359363 . resolver
@@ -397,6 +401,8 @@ impl DenoLoader {
397401 npm_resolver : Some ( npm_resolver. as_ref ( ) ) ,
398402 reporter : None ,
399403 resolver : Some ( & graph_resolver) ,
404+ unstable_bytes_imports : true ,
405+ unstable_text_imports : true ,
400406 } ,
401407 )
402408 . await ;
@@ -478,14 +484,14 @@ impl DenoLoader {
478484 & self . maybe_transpile (
479485 & m. specifier ,
480486 m. media_type ,
481- & m. source ,
487+ & m. source . text ,
482488 Some ( m. is_script ) ,
483489 ) ?,
484490 ) ) ,
485491 Some ( Module :: Json ( m) ) => Ok ( create_module_response (
486492 & m. specifier ,
487493 MediaType :: Json ,
488- m. source . as_bytes ( ) ,
494+ m. source . text . as_bytes ( ) ,
489495 ) ) ,
490496 Some ( Module :: Wasm ( m) ) => Ok ( create_module_response (
491497 & m. specifier ,
@@ -549,8 +555,9 @@ impl DenoLoader {
549555 } ) ?;
550556 capturing_analyzer. remove_parsed_source ( specifier) ; // remove from memory
551557 let transpile_and_emit_options = self
552- . tsconfig_resolver
553- . transpile_and_emit_options ( specifier) ?;
558+ . compiler_options_resolver
559+ . for_specifier ( specifier)
560+ . transpile_options ( ) ?;
554561 let is_cjs = if let Some ( is_known_script) = is_known_script {
555562 self . cjs_tracker . is_cjs_with_known_is_script (
556563 specifier,
0 commit comments