Skip to content

Commit 3c2709e

Browse files
committed
fixup
1 parent 3bc07f8 commit 3c2709e

File tree

8 files changed

+44
-86
lines changed

8 files changed

+44
-86
lines changed

crates/next-api/src/app.rs

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -930,9 +930,7 @@ impl AppProject {
930930
.take(server_component_entries.len().saturating_sub(1))
931931
{
932932
let graph = SingleModuleGraph::new_with_entries_visited_intern(
933-
vec![ChunkGroupEntry::Shared(ResolvedVc::upcast(
934-
module.await?.module,
935-
))],
933+
vec![ChunkGroupEntry::Shared(ResolvedVc::upcast(*module))],
936934
visited_modules,
937935
should_trace,
938936
should_read_binding_usage,
@@ -1895,9 +1893,7 @@ impl AppEndpoint {
18951893
async {
18961894
let chunk_group = chunking_context.chunk_group(
18971895
server_component.ident(),
1898-
ChunkGroup::Shared(ResolvedVc::upcast(
1899-
server_component.await?.module,
1900-
)),
1896+
ChunkGroup::Shared(ResolvedVc::upcast(server_component)),
19011897
module_graph,
19021898
current_chunk_group.await?.availability_info,
19031899
);

crates/next-core/src/app_page_loader_tree.rs

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -187,9 +187,13 @@ impl AppPageLoaderTreeBuilder {
187187
// This should use the same importing mechanism as create_module_tuple_code, so that
188188
// the relative order of items is retained (which isn't the case
189189
// when mixing ESM imports and requires).
190-
self.base
191-
.imports
192-
.push(format!("const {identifier} = require(\"{inner_module_id}\");").into());
190+
self.base.imports.push(
191+
format!(
192+
"const {identifier} = require(/*turbopackChunkingType: \
193+
shared*/\"{inner_module_id}\");"
194+
)
195+
.into(),
196+
);
193197

194198
let source = dynamic_image_metadata_source(
195199
*ResolvedVc::upcast(self.base.module_asset_context),
@@ -234,9 +238,13 @@ impl AppPageLoaderTreeBuilder {
234238
// This should use the same importing mechanism as create_module_tuple_code, so that the
235239
// relative order of items is retained (which isn't the case when mixing ESM imports and
236240
// requires).
237-
self.base
238-
.imports
239-
.push(format!("const {identifier} = require(\"{inner_module_id}\");").into());
241+
self.base.imports.push(
242+
format!(
243+
"const {identifier} = require(/*turbopackChunkingType: \
244+
shared*/\"{inner_module_id}\");"
245+
)
246+
.into(),
247+
);
240248
let module = StructuredImageModuleType::create_module(
241249
Vc::upcast(FileSource::new(path.clone())),
242250
BlurPlaceholderMode::None,
@@ -295,9 +303,13 @@ impl AppPageLoaderTreeBuilder {
295303
// This should use the same importing mechanism as create_module_tuple_code, so that the
296304
// relative order of items is retained (which isn't the case when mixing ESM imports and
297305
// requires).
298-
self.base
299-
.imports
300-
.push(format!("const {identifier} = require(\"{inner_module_id}\");").into());
306+
self.base.imports.push(
307+
format!(
308+
"const {identifier} = require(/*turbopackChunkingType: \
309+
shared*/\"{inner_module_id}\");"
310+
)
311+
.into(),
312+
);
301313

302314
let module = self
303315
.base

crates/next-core/src/base_loader_tree.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ impl BaseLoaderTreeBuilder {
9999
self.imports.push(
100100
formatdoc!(
101101
r#"
102-
const {} = () => require("MODULE_{}");
102+
const {} = () => require(/*turbopackChunkingType: shared*/"MODULE_{}");
103103
"#,
104104
identifier,
105105
i

crates/next-core/src/next_app/app_client_references_chunks.rs

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,9 +178,7 @@ pub async fn get_app_client_references_chunks(
178178
client_references_by_server_component.into_iter()
179179
{
180180
let parent_chunk_group = *chunk_group_info
181-
.get_index_of(ChunkGroup::Shared(ResolvedVc::upcast(
182-
server_component.await?.module,
183-
)))
181+
.get_index_of(ChunkGroup::Shared(ResolvedVc::upcast(server_component)))
184182
.await?;
185183

186184
let base_ident = server_component.ident();

crates/next-core/src/next_dynamic/dynamic_module.rs

Lines changed: 9 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use anyhow::Result;
22
use indoc::formatdoc;
3-
use turbo_rcstr::{RcStr, rcstr};
3+
use turbo_rcstr::rcstr;
44
use turbo_tasks::{ResolvedVc, Vc};
55
use turbopack_core::{
66
chunk::{AsyncModuleInfo, ChunkableModule, ChunkingContext, ModuleChunkItemIdExt},
@@ -36,20 +36,12 @@ impl NextDynamicEntryModule {
3636
}
3737
}
3838

39-
fn dynamic_ref_description() -> RcStr {
40-
rcstr!("next/dynamic reference")
41-
}
42-
4339
impl NextDynamicEntryModule {
44-
async fn module_reference(&self) -> Result<ResolvedVc<Box<dyn ModuleReference>>> {
45-
Ok(ResolvedVc::upcast(
46-
SingleChunkableModuleReference::new(
47-
Vc::upcast(*self.module),
48-
dynamic_ref_description(),
49-
ExportUsage::all(),
50-
)
51-
.to_resolved()
52-
.await?,
40+
fn module_reference(&self) -> Vc<Box<dyn ModuleReference>> {
41+
Vc::upcast(SingleChunkableModuleReference::new(
42+
Vc::upcast(*self.module),
43+
rcstr!("next/dynamic reference"),
44+
ExportUsage::all(),
5345
))
5446
}
5547
}
@@ -70,8 +62,9 @@ impl Module for NextDynamicEntryModule {
7062

7163
#[turbo_tasks::function]
7264
async fn references(&self) -> Result<Vc<ModuleReferences>> {
73-
Ok(Vc::cell(vec![self.module_reference().await?]))
65+
Ok(Vc::cell(vec![self.module_reference().to_resolved().await?]))
7466
}
67+
7568
#[turbo_tasks::function]
7669
fn side_effects(self: Vc<Self>) -> Vc<ModuleSideEffects> {
7770
// This just exports another import
@@ -95,12 +88,7 @@ impl ChunkableModule for NextDynamicEntryModule {
9588
impl EcmascriptChunkPlaceable for NextDynamicEntryModule {
9689
#[turbo_tasks::function]
9790
fn get_exports(&self) -> Vc<EcmascriptExports> {
98-
let module_reference: Vc<Box<dyn ModuleReference>> =
99-
Vc::upcast(SingleChunkableModuleReference::new(
100-
Vc::upcast(*self.module),
101-
dynamic_ref_description(),
102-
ExportUsage::all(),
103-
));
91+
let module_reference = self.module_reference();
10492
EsmExports::reexport_including_default(module_reference)
10593
}
10694

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
pub mod server_component_module;
2-
pub(crate) mod server_component_reference;
32
pub(crate) mod server_component_transition;
43

54
pub use server_component_transition::NextServerComponentTransition;

crates/next-core/src/next_server_component/server_component_module.rs

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ use turbopack_core::{
88
ident::AssetIdent,
99
module::{Module, ModuleSideEffects},
1010
module_graph::ModuleGraph,
11-
reference::{ModuleReference, ModuleReferences},
11+
reference::{ModuleReference, ModuleReferences, SingleChunkableModuleReference},
12+
resolve::ExportUsage,
1213
source::OptionSource,
1314
};
1415
use turbopack_ecmascript::{
@@ -21,8 +22,6 @@ use turbopack_ecmascript::{
2122
utils::StringifyJs,
2223
};
2324

24-
use super::server_component_reference::NextServerComponentModuleReference;
25-
2625
#[turbo_tasks::value(shared)]
2726
pub struct NextServerComponentModule {
2827
pub module: ResolvedVc<Box<dyn EcmascriptChunkPlaceable>>,
@@ -62,11 +61,11 @@ impl NextServerComponentModule {
6261
}
6362

6463
impl NextServerComponentModule {
65-
async fn module_reference(&self) -> Result<ResolvedVc<Box<dyn ModuleReference>>> {
66-
Ok(ResolvedVc::upcast(
67-
NextServerComponentModuleReference::new(Vc::upcast(*self.module))
68-
.to_resolved()
69-
.await?,
64+
fn module_reference(&self) -> Vc<Box<dyn ModuleReference>> {
65+
Vc::upcast(SingleChunkableModuleReference::new(
66+
Vc::upcast(*self.module),
67+
rcstr!("Next.js Server Component"),
68+
ExportUsage::all(),
7069
))
7170
}
7271
}
@@ -87,8 +86,9 @@ impl Module for NextServerComponentModule {
8786

8887
#[turbo_tasks::function]
8988
async fn references(&self) -> Result<Vc<ModuleReferences>> {
90-
Ok(Vc::cell(vec![self.module_reference().await?]))
89+
Ok(Vc::cell(vec![self.module_reference().to_resolved().await?]))
9190
}
91+
9292
#[turbo_tasks::function]
9393
fn side_effects(self: Vc<Self>) -> Vc<ModuleSideEffects> {
9494
// This just exports another import
@@ -112,9 +112,7 @@ impl ChunkableModule for NextServerComponentModule {
112112
impl EcmascriptChunkPlaceable for NextServerComponentModule {
113113
#[turbo_tasks::function]
114114
fn get_exports(&self) -> Vc<EcmascriptExports> {
115-
let module_reference: Vc<Box<dyn ModuleReference>> = Vc::upcast(
116-
NextServerComponentModuleReference::new(Vc::upcast(*self.module)),
117-
);
115+
let module_reference = self.module_reference();
118116
EsmExports::reexport_including_default(module_reference)
119117
}
120118

crates/next-core/src/next_server_component/server_component_reference.rs

Lines changed: 0 additions & 33 deletions
This file was deleted.

0 commit comments

Comments
 (0)