build: allow node package depends on workspace packages (#11892)

This commit is contained in:
forehalo
2025-04-23 10:04:58 +00:00
parent 64997d4a0e
commit c00671dd84
28 changed files with 326 additions and 325 deletions
+16 -3
View File
@@ -10,12 +10,16 @@ import WebpackDevServer, {
} from 'webpack-dev-server';
import { Option, PackageCommand } from './command';
import { createHTMLTargetConfig, createWorkerTargetConfig } from './webpack';
import {
createHTMLTargetConfig,
createNodeTargetConfig,
createWorkerTargetConfig,
} from './webpack';
function getBundleConfigs(pkg: Package) {
function getBaseWorkerConfigs(pkg: Package) {
const core = new Package('@affine/core');
const workerConfigs = [
return [
createWorkerTargetConfig(
pkg,
core.srcPath.join(
@@ -31,7 +35,9 @@ function getBundleConfigs(pkg: Package) {
core.srcPath.join('blocksuite/extensions/turbo-painter.worker.ts').value
),
];
}
function getBundleConfigs(pkg: Package) {
switch (pkg.name) {
case '@affine/admin': {
return [createHTMLTargetConfig(pkg, pkg.srcPath.join('index.tsx').value)];
@@ -40,6 +46,7 @@ function getBundleConfigs(pkg: Package) {
case '@affine/mobile':
case '@affine/ios':
case '@affine/android': {
const workerConfigs = getBaseWorkerConfigs(pkg);
workerConfigs.push(
createWorkerTargetConfig(
pkg,
@@ -58,6 +65,8 @@ function getBundleConfigs(pkg: Package) {
];
}
case '@affine/electron-renderer': {
const workerConfigs = getBaseWorkerConfigs(pkg);
return [
createHTMLTargetConfig(
pkg,
@@ -78,10 +87,14 @@ function getBundleConfigs(pkg: Package) {
...workerConfigs,
];
}
case '@affine/server': {
return [createNodeTargetConfig(pkg, pkg.srcPath.join('index.ts').value)];
}
}
throw new Error(`Unsupported package: ${pkg.name}`);
}
const IN_CI = !!process.env.CI;
const httpProxyMiddlewareLogLevel = IN_CI ? 'silent' : 'error';