fix: plugin infra (#3398)

This commit is contained in:
Alex Yang
2023-07-26 22:36:29 -07:00
committed by GitHub
parent 1e72d3c270
commit 780fffb88f
28 changed files with 93 additions and 52 deletions

View File

@@ -4,6 +4,7 @@ import path from 'node:path';
import type { BuildFlags } from '../config/index.js';
import { projectRoot } from '../config/index.js';
import { buildI18N } from '../util/i18n.js';
import { buildInfra } from '../util/infra.js';
const cwd = path.resolve(projectRoot, 'apps', 'core');
@@ -45,6 +46,7 @@ const flags = {
} satisfies BuildFlags;
buildI18N();
await buildInfra();
spawn(
'node',
[

View File

@@ -7,6 +7,7 @@ import { config } from 'dotenv';
import { type BuildFlags, projectRoot } from '../config/index.js';
import { watchI18N } from '../util/i18n.js';
import { watchInfra } from '../util/infra.js';
const files = ['.env', '.env.local'];
@@ -93,6 +94,7 @@ flags.channel = buildFlags.channel as any;
flags.coverage = buildFlags.coverage;
watchI18N();
await watchInfra();
spawn(
'node',
[

View File

@@ -0,0 +1,41 @@
import { spawn } from 'node:child_process';
import { resolve } from 'node:path';
import { build } from 'vite';
import { projectRoot } from '../config/index.js';
const infraFilePath = resolve(
projectRoot,
'packages',
'infra',
'vite.config.ts'
);
const pluginInfraFilePath = resolve(
projectRoot,
'packages',
'plugin-infra',
'vite.config.ts'
);
export const buildInfra = async () => {
await build({
configFile: infraFilePath,
});
await build({
configFile: pluginInfraFilePath,
});
};
export const watchInfra = async () => {
spawn('vite', ['build', '--watch'], {
cwd: resolve(projectRoot, 'packages', 'infra'),
shell: true,
stdio: 'inherit',
});
spawn('vite', ['build', '--watch'], {
cwd: resolve(projectRoot, 'packages', 'plugin-infra'),
shell: true,
stdio: 'inherit',
});
};

View File

@@ -1,6 +1,6 @@
import { ProviderComposer } from '@affine/component/provider-composer';
import { ThemeProvider } from '@affine/component/theme-provider';
import { rootStore } from '@toeverything/plugin-infra/manager';
import { rootStore } from '@toeverything/plugin-infra/atom';
import { Provider } from 'jotai';
import type { PropsWithChildren } from 'react';
import { useMemo } from 'react';

View File

@@ -14,10 +14,10 @@
"import": "./dist/entry.js",
"require": "./dist/entry.cjs"
},
"./manager": {
"type": "./dist/manager.d.ts",
"import": "./dist/manager.js",
"require": "./dist/manager.cjs"
"./atom": {
"type": "./dist/atom.d.ts",
"import": "./dist/atom.js",
"require": "./dist/atom.cjs"
},
"./type": {
"type": "./dist/type.d.ts",

View File

@@ -13,7 +13,7 @@ export default defineConfig({
entry: {
entry: resolve(root, 'src/entry.ts'),
type: resolve(root, 'src/type.ts'),
manager: resolve(root, 'src/manager.ts'),
atom: resolve(root, 'src/atom.ts'),
'__internal__/workspace': resolve(
root,
'src/__internal__/workspace.ts'