diff --git a/README.md b/README.md index e5afc6b..9217aca 100644 --- a/README.md +++ b/README.md @@ -21,9 +21,7 @@ - `src/` - 插件源码 - `dist/` - - 开发构建产物 -- `dist-release/` - - 内部分发构建产物 + - 开发和发布构建产物 - `release/` - 打包后的内部交付压缩包 - `docs/` @@ -84,7 +82,7 @@ npm run write:latest 生成结果: -- 构建目录:`dist-release/` +- 构建目录:`dist/` - 压缩包:`release/star-chart-search-enhancer-internal.zip` - 更新清单:`release/latest.json` diff --git a/docs/【给同事】从Git下载使用说明.md b/docs/【给同事】从Git下载使用说明.md index ee3279c..339237b 100644 --- a/docs/【给同事】从Git下载使用说明.md +++ b/docs/【给同事】从Git下载使用说明.md @@ -40,10 +40,10 @@ git clone https://git.internal.intelligrow.cn/wangshaoqing/star-chart-search-enh 4. 点击 **"加载已解压的扩展程序"** 5. 选择桌面上的这个路径: ``` - star-chart-search-enhancer/dist-release/ + star-chart-search-enhancer/dist/ ``` - ⚠️ **重要**:必须选择 `dist-release` 这个子文件夹,不要选外层文件夹 + ⚠️ **重要**:必须选择 `dist` 这个子文件夹,不要选外层文件夹 ✅ 安装成功!你会看到插件卡片。 @@ -86,7 +86,7 @@ git clone https://git.internal.intelligrow.cn/wangshaoqing/star-chart-search-enh ```bash cd Desktop/star-chart-search-enhancer git pull -npm run build:release + npm run build:release ``` 然后到 `chrome://extensions` 页面点击插件卡片的 **"重新加载"** 🔄 @@ -109,7 +109,7 @@ npm run build:release ⚠️ **如果重新加载后还是旧版本**: - 先点击插件卡片的 **"移除"** 删除旧版本 - 然后重新点击 **"加载已解压的扩展程序"** -- 再次选择 `dist-release` 文件夹 +- 再次选择 `dist` 文件夹 --- @@ -118,11 +118,11 @@ npm run build:release **Q: 提示 "git 不是内部或外部命令"?** A: Git 没装好,请先安装 Git。 -**Q: 下载后找不到 dist-release 文件夹?** -A: 请确认下载的是最新版本,可以重新执行 `git pull`。 +**Q: 下载后找不到 dist 文件夹?** +A: 请确认下载的是最新版本,可以重新执行 `git pull` 并重新执行 `npm run build:release`。 **Q: 加载后扩展 ID 不对?** -A: 请检查是否选择了 `dist-release` 文件夹,而不是外层文件夹。 +A: 请检查是否选择了 `dist` 文件夹,而不是外层文件夹。 --- diff --git a/release/star-chart-search-enhancer-internal.zip b/release/star-chart-search-enhancer-internal.zip index a6f4205..168e3fd 100644 Binary files a/release/star-chart-search-enhancer-internal.zip and b/release/star-chart-search-enhancer-internal.zip differ diff --git a/scripts/build-output-path.mjs b/scripts/build-output-path.mjs new file mode 100644 index 0000000..d37f12a --- /dev/null +++ b/scripts/build-output-path.mjs @@ -0,0 +1,5 @@ +import path from "node:path"; + +export function resolveExtensionBuildDir(projectRoot, _buildTarget) { + return path.join(projectRoot, "dist"); +} diff --git a/scripts/build.mjs b/scripts/build.mjs index c6d01af..7791ea5 100644 --- a/scripts/build.mjs +++ b/scripts/build.mjs @@ -3,15 +3,13 @@ import path from "node:path"; import { fileURLToPath } from "node:url"; import { build } from "tsup"; import { createManifest } from "./manifest.mjs"; +import { resolveExtensionBuildDir } from "./build-output-path.mjs"; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); const projectRoot = path.resolve(__dirname, ".."); const buildTarget = process.env.BUILD_TARGET === "release" ? "release" : "development"; -const distDir = path.join( - projectRoot, - buildTarget === "release" ? "dist-release" : "dist" -); +const distDir = resolveExtensionBuildDir(projectRoot, buildTarget); await rm(distDir, { recursive: true, force: true }); await mkdir(path.join(distDir, "content"), { recursive: true }); diff --git a/scripts/package-release.mjs b/scripts/package-release.mjs index 6c22546..833dcb6 100644 --- a/scripts/package-release.mjs +++ b/scripts/package-release.mjs @@ -2,10 +2,11 @@ import { mkdir, rm } from "node:fs/promises"; import path from "node:path"; import { fileURLToPath } from "node:url"; import { createReleaseArchive } from "./package-release-archive.mjs"; +import { resolveExtensionBuildDir } from "./build-output-path.mjs"; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); const projectRoot = path.resolve(__dirname, ".."); -const sourceDir = path.join(projectRoot, "dist-release"); +const sourceDir = resolveExtensionBuildDir(projectRoot, "release"); const releaseDir = path.join(projectRoot, "release"); const archivePath = path.join( releaseDir, diff --git a/tests/build-output-path.test.ts b/tests/build-output-path.test.ts new file mode 100644 index 0000000..1954773 --- /dev/null +++ b/tests/build-output-path.test.ts @@ -0,0 +1,18 @@ +import path from "node:path"; +import { describe, expect, test } from "vitest"; + +import { resolveExtensionBuildDir } from "../scripts/build-output-path.mjs"; + +describe("build-output-path", () => { + test("uses dist for release builds", () => { + expect(resolveExtensionBuildDir("/repo", "release")).toBe( + path.join("/repo", "dist") + ); + }); + + test("uses dist for development builds", () => { + expect(resolveExtensionBuildDir("/repo", "development")).toBe( + path.join("/repo", "dist") + ); + }); +});