@@ -68,6 +68,7 @@ use deno_core::ResolutionKind;
68
68
use deno_core:: RuntimeOptions ;
69
69
use deno_facade:: generate_binary_eszip;
70
70
use deno_facade:: metadata:: Entrypoint ;
71
+ use deno_facade:: migrate:: MigrateOptions ;
71
72
use deno_facade:: module_loader:: standalone:: create_module_loader_for_standalone_from_eszip_kind;
72
73
use deno_facade:: module_loader:: RuntimeProviders ;
73
74
use deno_facade:: EmitterFactory ;
@@ -491,9 +492,7 @@ where
491
492
let is_some_entry_point = maybe_entrypoint. is_some ( ) ;
492
493
493
494
let maybe_user_conf = conf. as_user_worker ( ) ;
494
- let user_context = maybe_user_conf
495
- . and_then ( |it| it. context . clone ( ) )
496
- . unwrap_or_default ( ) ;
495
+ let context = conf. context ( ) . cloned ( ) . unwrap_or_default ( ) ;
497
496
498
497
let permissions_options = maybe_user_conf
499
498
. and_then ( |it| it. permissions . clone ( ) )
@@ -608,15 +607,22 @@ where
608
607
} ;
609
608
610
609
let has_inspector = worker. inspector . is_some ( ) ;
611
- let need_source_map = user_context
610
+ let need_source_map = context
612
611
. get ( "sourceMap" )
613
612
. and_then ( serde_json:: Value :: as_bool)
614
613
. unwrap_or_default ( ) ;
614
+ let maybe_import_map_path = context
615
+ . get ( "importMapPath" )
616
+ . and_then ( |it| it. as_str ( ) )
617
+ . map ( str:: to_string) ;
615
618
616
619
let rt_provider = create_module_loader_for_standalone_from_eszip_kind (
617
620
eszip,
618
621
permissions_options,
619
622
has_inspector || need_source_map,
623
+ Some ( MigrateOptions {
624
+ maybe_import_map_path,
625
+ } ) ,
620
626
)
621
627
. await ?;
622
628
@@ -907,16 +913,16 @@ where
907
913
} ;
908
914
909
915
let extra_context = {
910
- let mut context =
916
+ let mut extra_context =
911
917
serde_json:: json!( RuntimeContext :: get_extra_context( ) ) ;
912
918
913
919
json:: merge_object (
914
- & mut context ,
915
- & serde_json:: Value :: Object ( user_context ) ,
920
+ & mut extra_context ,
921
+ & serde_json:: Value :: Object ( context ) ,
916
922
) ;
917
- json:: merge_object ( & mut context , & tokens) ;
923
+ json:: merge_object ( & mut extra_context , & tokens) ;
918
924
919
- context
925
+ extra_context
920
926
} ;
921
927
922
928
let context = js_runtime. main_context ( ) ;
@@ -2077,6 +2083,7 @@ mod test {
2077
2083
worker_pool_tx,
2078
2084
shared_metric_src : None ,
2079
2085
event_worker_metric_src : None ,
2086
+ context : None ,
2080
2087
} )
2081
2088
}
2082
2089
} ,
@@ -2189,6 +2196,7 @@ mod test {
2189
2196
worker_pool_tx,
2190
2197
shared_metric_src : None ,
2191
2198
event_worker_metric_src : None ,
2199
+ context : None ,
2192
2200
} )
2193
2201
} ,
2194
2202
static_patterns : vec ! [ ] ,
@@ -2253,6 +2261,7 @@ mod test {
2253
2261
worker_pool_tx,
2254
2262
shared_metric_src : None ,
2255
2263
event_worker_metric_src : None ,
2264
+ context : None ,
2256
2265
} )
2257
2266
} ,
2258
2267
static_patterns : vec ! [ ] ,
@@ -2332,6 +2341,7 @@ mod test {
2332
2341
worker_pool_tx,
2333
2342
shared_metric_src : None ,
2334
2343
event_worker_metric_src : None ,
2344
+ context : None ,
2335
2345
} )
2336
2346
} ,
2337
2347
static_patterns : vec ! [ ] ,
0 commit comments