Skip to content

Commit 47bff9b

Browse files
nperez0111claude
andcommitted
fix: externalize subpath imports in library builds for vite 8 compatibility
Rolldown (used by Vite 8) preserves CJS require() calls for non-externalized dependencies. The external function used exact matching with .includes(source), which missed subpath imports like "use-sync-external-store/shim/with-selector". This caused require("react") to fail at runtime in the browser with "Calling require in an environment that doesn't expose the require function". Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 2457ce5 commit 47bff9b

14 files changed

Lines changed: 14 additions & 14 deletions

File tree

packages/ariakit/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export default defineConfig((conf) => ({
5050
...pkg.dependencies,
5151
...((pkg as any).peerDependencies || {}),
5252
...pkg.devDependencies,
53-
}).includes(source)
53+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
5454
) {
5555
return true;
5656
}

packages/code-block/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export default defineConfig((conf) => ({
4141
...pkg.dependencies,
4242
...((pkg as any).peerDependencies || {}),
4343
...pkg.devDependencies,
44-
}).includes(source)
44+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
4545
) {
4646
return true;
4747
}

packages/core/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export default defineConfig({
3737
...pkg.dependencies,
3838
...((pkg as any).peerDependencies || {}),
3939
...pkg.devDependencies,
40-
}).includes(source)
40+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
4141
) {
4242
return true;
4343
}

packages/mantine/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export default defineConfig((conf) => ({
5050
...pkg.dependencies,
5151
...((pkg as any).peerDependencies || {}),
5252
...pkg.devDependencies,
53-
}).includes(source)
53+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
5454
) {
5555
return true;
5656
}

packages/react/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ export default defineConfig((conf) => ({
4949
...pkg.dependencies,
5050
...((pkg as any).peerDependencies || {}),
5151
...pkg.devDependencies,
52-
}).includes(source)
52+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
5353
) {
5454
return true;
5555
}

packages/server-util/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export default defineConfig((conf) => ({
4141
...pkg.dependencies,
4242
...((pkg as any).peerDependencies || {}),
4343
...pkg.devDependencies,
44-
}).includes(source)
44+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
4545
) {
4646
return true;
4747
}

packages/shadcn/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ export default defineConfig((conf) => ({
5252
...pkg.dependencies,
5353
...((pkg as any).peerDependencies || {}),
5454
...pkg.devDependencies,
55-
}).includes(source)
55+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
5656
) {
5757
return true;
5858
}

packages/xl-ai-server/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ export default defineConfig((conf) => ({
3838
...pkg.dependencies,
3939
...((pkg as any).peerDependencies || {}),
4040
...pkg.devDependencies,
41-
}).includes(source)
41+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
4242
) {
4343
return true;
4444
}

packages/xl-ai/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ export default defineConfig((conf) => ({
5252
...pkg.dependencies,
5353
...((pkg as any).peerDependencies || {}),
5454
...pkg.devDependencies,
55-
}).includes(source)
55+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
5656
) {
5757
return true;
5858
}

packages/xl-docx-exporter/vite.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ export default defineConfig((conf) => ({
5454
...pkg.dependencies,
5555
...((pkg as any).peerDependencies || {}),
5656
...pkg.devDependencies,
57-
}).includes(source)
57+
}).some((dep) => source === dep || source.startsWith(dep + "/"))
5858
) {
5959
return true;
6060
}

0 commit comments

Comments
 (0)