@@ -10,8 +10,8 @@ use turbopack_core::{
10
10
chunk_group:: { make_chunk_group, MakeChunkGroupResult } ,
11
11
module_id_strategies:: { DevModuleIdStrategy , ModuleIdStrategy } ,
12
12
Chunk , ChunkGroupResult , ChunkItem , ChunkableModule , ChunkingConfig , ChunkingConfigs ,
13
- ChunkingContext , EntryChunkGroupResult , EvaluatableAssets , MinifyType , ModuleId ,
14
- SourceMapsType ,
13
+ ChunkingContext , EntryChunkGroupResult , EvaluatableAsset , EvaluatableAssets , MinifyType ,
14
+ ModuleId , SourceMapsType ,
15
15
} ,
16
16
environment:: Environment ,
17
17
ident:: AssetIdent ,
@@ -483,7 +483,7 @@ impl ChunkingContext for BrowserChunkingContext {
483
483
async fn evaluated_chunk_group (
484
484
self : ResolvedVc < Self > ,
485
485
ident : Vc < AssetIdent > ,
486
- evaluatable_assets : Vc < EvaluatableAssets > ,
486
+ chunk_group : ChunkGroup ,
487
487
module_graph : Vc < ModuleGraph > ,
488
488
availability_info : Value < AvailabilityInfo > ,
489
489
) -> Result < Vc < ChunkGroupResult > > {
@@ -495,11 +495,7 @@ impl ChunkingContext for BrowserChunkingContext {
495
495
let this = self . await ?;
496
496
let availability_info = availability_info. into_value ( ) ;
497
497
498
- let evaluatable_assets_ref = evaluatable_assets. await ?;
499
-
500
- let entries = evaluatable_assets_ref
501
- . iter ( )
502
- . map ( |& evaluatable| ResolvedVc :: upcast ( evaluatable) ) ;
498
+ let entries = chunk_group. entries ( ) ;
503
499
504
500
let MakeChunkGroupResult {
505
501
chunks,
@@ -520,11 +516,21 @@ impl ChunkingContext for BrowserChunkingContext {
520
516
521
517
let other_assets = Vc :: cell ( assets. clone ( ) ) ;
522
518
519
+ let entries = Vc :: cell (
520
+ chunk_group
521
+ . entries ( )
522
+ . map ( |m| {
523
+ ResolvedVc :: try_downcast :: < Box < dyn EvaluatableAsset > > ( m)
524
+ . context ( "evaluated_chunk_group entries must be evaluatable assets" )
525
+ } )
526
+ . collect :: < Result < Vec < _ > > > ( ) ?,
527
+ ) ;
528
+
523
529
if this. enable_hot_module_replacement {
524
530
assets. push (
525
531
self . generate_chunk_list_register_chunk (
526
532
ident,
527
- evaluatable_assets ,
533
+ entries ,
528
534
other_assets,
529
535
Value :: new ( EcmascriptDevChunkListSource :: Entry ) ,
530
536
)
@@ -534,7 +540,7 @@ impl ChunkingContext for BrowserChunkingContext {
534
540
}
535
541
536
542
assets. push (
537
- self . generate_evaluate_chunk ( ident, other_assets, evaluatable_assets , module_graph)
543
+ self . generate_evaluate_chunk ( ident, other_assets, entries , module_graph)
538
544
. to_resolved ( )
539
545
. await ?,
540
546
) ;
0 commit comments