mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-18 02:26:21 +08:00
feat: build affine dist html
This commit is contained in:
@@ -18,6 +18,15 @@ Currently client-app depends on a rapidly developing rust library "Octobase", we
|
||||
|
||||
We will provide its binary binding soon, to replace the git-submodule, before Octobase become opensource.
|
||||
|
||||
### Scripts
|
||||
|
||||
On this folder:
|
||||
|
||||
- `pnpm dev:app` will start a vite server
|
||||
- `pnpm build:prerequisite` will link the Octobase and prepare affine dist html and tauri preload script
|
||||
|
||||
On project root folder:
|
||||
|
||||
### Recommended IDE Setup
|
||||
|
||||
- [VS Code](https://code.visualstudio.com/) + [Tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer)
|
||||
|
||||
@@ -7,11 +7,12 @@
|
||||
"module": "true",
|
||||
"scripts": {
|
||||
"dev:app": "tauri dev",
|
||||
"build:prerequisite": "pnpm build:submodules && pnpm build:preload",
|
||||
"build:prerequisite": "pnpm build:submodules && pnpm build:affine && pnpm build:preload",
|
||||
"dev:web": "vite",
|
||||
"build:rs-types": "zx scripts/generateTsTypingsFromJsonSchema.mjs",
|
||||
"build:web": "tsc && vite build",
|
||||
"build:submodules": "zx scripts/buildSubModules.mjs",
|
||||
"build:affine": "zx scripts/buildAffine.mjs",
|
||||
"build:preload": "esbuild src/preload/index.ts --outdir=public/preload",
|
||||
"build:app": "tauri build",
|
||||
"preview": "vite preview"
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
/* eslint-disable @typescript-eslint/no-unsafe-return */
|
||||
/* eslint-disable @typescript-eslint/no-unsafe-argument */
|
||||
/* eslint-disable @typescript-eslint/restrict-template-expressions */
|
||||
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
|
||||
/* eslint-disable @typescript-eslint/no-unsafe-call */
|
||||
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
||||
const repoDirectory = path.join(__dirname, '..', '..');
|
||||
const clientAppDirectory = path.join(__dirname, '..');
|
||||
const publicDistributionDirectory = path.join(clientAppDirectory, 'public');
|
||||
const affineSrcDirectory = path.join(repoDirectory, 'packages', 'app');
|
||||
const affineSrcOutDirectory = path.join(affineSrcDirectory, 'out');
|
||||
const publicAffineOutDirectory = path.join(
|
||||
publicDistributionDirectory,
|
||||
'affine-out'
|
||||
);
|
||||
|
||||
/**
|
||||
* Build affine dist html
|
||||
*/
|
||||
cd(repoDirectory);
|
||||
await $`pnpm i -r`;
|
||||
await $`pnpm build`;
|
||||
cd(affineSrcDirectory);
|
||||
$.env.BASE_PATH = '/affine-out';
|
||||
await $`pnpm build`;
|
||||
await $`pnpm export`;
|
||||
await fs.remove(publicAffineOutDirectory);
|
||||
await fs.move(affineSrcOutDirectory, publicAffineOutDirectory);
|
||||
Reference in New Issue
Block a user