Skip to content

Commit d348073

Browse files
committed
remove __CPProvider
1 parent 199be21 commit d348073

File tree

1 file changed

+3
-15
lines changed
  • codepress-swc-plugin/src

1 file changed

+3
-15
lines changed

codepress-swc-plugin/src/lib.rs

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3474,6 +3474,7 @@ impl VisitMut for CodePressTransform {
34743474

34753475
// JS-based metadata map mode: store metadata in window.__CODEPRESS_MAP__ instead of DOM
34763476
// Only codepress-data-fp attribute is on DOM (already added above at line 3273-3278)
3477+
// No per-component __CPProvider wrapping - rely on top-level provider for HMR
34773478
if self.use_js_metadata_map {
34783479
// Store metadata in the map keyed by fp
34793480
self.metadata_map.insert(fp_value.clone(), MetadataEntry {
@@ -3482,21 +3483,8 @@ impl VisitMut for CodePressTransform {
34823483
source_kinds: kinds_enc.clone(),
34833484
symbol_refs: symrefs_enc.clone(),
34843485
});
3485-
3486-
// For custom components, still wrap with __CPProvider for HMR support
3487-
// The provider uses useSyncExternalStore to trigger re-renders on preview updates
3488-
// Without this, HMR preview updates don't trigger proper re-renders
3489-
if is_custom_call && !block_provider && !self.skip_provider_wrap {
3490-
let meta = ProviderMeta {
3491-
cs: callsite_value,
3492-
c: cands_enc,
3493-
k: kinds_enc,
3494-
fp: fp_value,
3495-
};
3496-
self.wrap_with_provider(node, meta);
3497-
}
3498-
3499-
// No DOM attributes needed - extension reads from JS map
3486+
// No DOM attributes or per-component wrappers needed
3487+
// Extension reads from JS map, HMR handled by top-level provider
35003488
return;
35013489
}
35023490

0 commit comments

Comments
 (0)