zixulu 1.46.2 → 1.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,8 @@ import { HttpsProxyAgent } from "https-proxy-agent";
2
2
  export declare enum PackageManager {
3
3
  npm = "npm",
4
4
  yarn = "yarn",
5
- pnpm = "pnpm"
5
+ pnpm = "pnpm",
6
+ bun = "bun"
6
7
  }
7
8
  export declare enum Registry {
8
9
  npm = "https://registry.npmjs.org/",
@@ -35,6 +35,7 @@ var PackageManager = /* @__PURE__ */ ((PackageManager2) => {
35
35
  PackageManager2["npm"] = "npm";
36
36
  PackageManager2["yarn"] = "yarn";
37
37
  PackageManager2["pnpm"] = "pnpm";
38
+ PackageManager2["bun"] = "bun";
38
39
  return PackageManager2;
39
40
  })(PackageManager || {});
40
41
  var Registry = /* @__PURE__ */ ((Registry2) => {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/constant/index.ts"],
4
- "sourcesContent": ["import { HttpsProxyAgent } from \"https-proxy-agent\"\n\nexport enum PackageManager {\n npm = \"npm\",\n yarn = \"yarn\",\n pnpm = \"pnpm\",\n}\n\nexport enum Registry {\n npm = \"https://registry.npmjs.org/\",\n taobao = \"https://registry.npmmirror.com/\",\n tencent = \"https://mirrors.cloud.tencent.com/npm/\",\n}\n\nexport enum Software {\n \"VS Code\" = \"VS Code\",\n \"Chrome\" = \"Chrome\",\n \"7zip\" = \"7zip\",\n \"Git\" = \"Git\",\n \"NodeJS\" = \"NodeJS\",\n \"Geek Uninstaller\" = \"Geek Uninstaller\",\n \"DeskGo\" = \"DeskGo\",\n \"PowerToys\" = \"PowerToys\",\n \"Honeyview\" = \"Honeyview\",\n \"AnyDesk\" = \"AnyDesk\",\n \"Firefox\" = \"Firefox\",\n \"PotPlayer\" = \"PotPlayer\",\n \"Bun\" = \"Bun\",\n}\n\nexport enum ProjectType {\n next = \"next\",\n remix = \"remix\",\n vite = \"vite\",\n rsbuild = \"rsbuild\",\n}\n\nexport enum CommitType {\n feature = \"feature\",\n fix = \"fix\",\n docs = \"docs\",\n wip = \"wip\",\n perfs = \"perfs\",\n rollback = \"rollback\",\n other = \"other\",\n}\n\nexport const CommitTypeMap = {\n [CommitType.feature]: \"✨feature: \",\n [CommitType.fix]: \"🐞 fix: \",\n [CommitType.docs]: \"📄 docs: \",\n [CommitType.wip]: \"🖥️ wip: \",\n [CommitType.perfs]: \"🚅 perfs: \",\n [CommitType.rollback]: \"⏪ rollback: \",\n [CommitType.other]: \"🔵 other: \",\n}\n\nexport const SpawnOptions = {\n shell: true,\n stdio: \"inherit\",\n}\n\nexport const agent = new HttpsProxyAgent(\"http://localhost:7890\")\n\nexport const addedRules = [\n \"package-lock.json\",\n \"yarn.lock\",\n \"node_modules\",\n \"dist\",\n \"build\",\n \"pnpm-lock.yaml\",\n \"yarn-error.log\",\n \"test.js\",\n \"test.mjs\",\n \"test.ts\",\n \"test\",\n]\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAAgC;AAEzB,IAAK,iBAAL,kBAAKA,oBAAL;AACH,EAAAA,gBAAA,SAAM;AACN,EAAAA,gBAAA,UAAO;AACP,EAAAA,gBAAA,UAAO;AAHC,SAAAA;AAAA,GAAA;AAML,IAAK,WAAL,kBAAKC,cAAL;AACH,EAAAA,UAAA,SAAM;AACN,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,aAAU;AAHF,SAAAA;AAAA,GAAA;AAML,IAAK,WAAL,kBAAKC,cAAL;AACH,EAAAA,UAAA,aAAY;AACZ,EAAAA,UAAA,YAAW;AACX,EAAAA,UAAA,UAAS;AACT,EAAAA,UAAA,SAAQ;AACR,EAAAA,UAAA,YAAW;AACX,EAAAA,UAAA,sBAAqB;AACrB,EAAAA,UAAA,YAAW;AACX,EAAAA,UAAA,eAAc;AACd,EAAAA,UAAA,eAAc;AACd,EAAAA,UAAA,aAAY;AACZ,EAAAA,UAAA,aAAY;AACZ,EAAAA,UAAA,eAAc;AACd,EAAAA,UAAA,SAAQ;AAbA,SAAAA;AAAA,GAAA;AAgBL,IAAK,cAAL,kBAAKC,iBAAL;AACH,EAAAA,aAAA,UAAO;AACP,EAAAA,aAAA,WAAQ;AACR,EAAAA,aAAA,UAAO;AACP,EAAAA,aAAA,aAAU;AAJF,SAAAA;AAAA,GAAA;AAOL,IAAK,aAAL,kBAAKC,gBAAL;AACH,EAAAA,YAAA,aAAU;AACV,EAAAA,YAAA,SAAM;AACN,EAAAA,YAAA,UAAO;AACP,EAAAA,YAAA,SAAM;AACN,EAAAA,YAAA,WAAQ;AACR,EAAAA,YAAA,cAAW;AACX,EAAAA,YAAA,WAAQ;AAPA,SAAAA;AAAA,GAAA;AAUL,IAAM,gBAAgB;AAAA,EACzB,CAAC,uBAAkB,GAAG;AAAA,EACtB,CAAC,eAAc,GAAG;AAAA,EAClB,CAAC,iBAAe,GAAG;AAAA,EACnB,CAAC,eAAc,GAAG;AAAA,EAClB,CAAC,mBAAgB,GAAG;AAAA,EACpB,CAAC,yBAAmB,GAAG;AAAA,EACvB,CAAC,mBAAgB,GAAG;AACxB;AAEO,IAAM,eAAe;AAAA,EACxB,OAAO;AAAA,EACP,OAAO;AACX;AAEO,IAAM,QAAQ,IAAI,yCAAgB,uBAAuB;AAEzD,IAAM,aAAa;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;",
4
+ "sourcesContent": ["import { HttpsProxyAgent } from \"https-proxy-agent\"\n\nexport enum PackageManager {\n npm = \"npm\",\n yarn = \"yarn\",\n pnpm = \"pnpm\",\n bun = \"bun\",\n}\n\nexport enum Registry {\n npm = \"https://registry.npmjs.org/\",\n taobao = \"https://registry.npmmirror.com/\",\n tencent = \"https://mirrors.cloud.tencent.com/npm/\",\n}\n\nexport enum Software {\n \"VS Code\" = \"VS Code\",\n \"Chrome\" = \"Chrome\",\n \"7zip\" = \"7zip\",\n \"Git\" = \"Git\",\n \"NodeJS\" = \"NodeJS\",\n \"Geek Uninstaller\" = \"Geek Uninstaller\",\n \"DeskGo\" = \"DeskGo\",\n \"PowerToys\" = \"PowerToys\",\n \"Honeyview\" = \"Honeyview\",\n \"AnyDesk\" = \"AnyDesk\",\n \"Firefox\" = \"Firefox\",\n \"PotPlayer\" = \"PotPlayer\",\n \"Bun\" = \"Bun\",\n}\n\nexport enum ProjectType {\n next = \"next\",\n remix = \"remix\",\n vite = \"vite\",\n rsbuild = \"rsbuild\",\n}\n\nexport enum CommitType {\n feature = \"feature\",\n fix = \"fix\",\n docs = \"docs\",\n wip = \"wip\",\n perfs = \"perfs\",\n rollback = \"rollback\",\n other = \"other\",\n}\n\nexport const CommitTypeMap = {\n [CommitType.feature]: \"✨feature: \",\n [CommitType.fix]: \"🐞 fix: \",\n [CommitType.docs]: \"📄 docs: \",\n [CommitType.wip]: \"🖥️ wip: \",\n [CommitType.perfs]: \"🚅 perfs: \",\n [CommitType.rollback]: \"⏪ rollback: \",\n [CommitType.other]: \"🔵 other: \",\n}\n\nexport const SpawnOptions = {\n shell: true,\n stdio: \"inherit\",\n}\n\nexport const agent = new HttpsProxyAgent(\"http://localhost:7890\")\n\nexport const addedRules = [\n \"package-lock.json\",\n \"yarn.lock\",\n \"node_modules\",\n \"dist\",\n \"build\",\n \"pnpm-lock.yaml\",\n \"yarn-error.log\",\n \"test.js\",\n \"test.mjs\",\n \"test.ts\",\n \"test\",\n]\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAAgC;AAEzB,IAAK,iBAAL,kBAAKA,oBAAL;AACH,EAAAA,gBAAA,SAAM;AACN,EAAAA,gBAAA,UAAO;AACP,EAAAA,gBAAA,UAAO;AACP,EAAAA,gBAAA,SAAM;AAJE,SAAAA;AAAA,GAAA;AAOL,IAAK,WAAL,kBAAKC,cAAL;AACH,EAAAA,UAAA,SAAM;AACN,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,aAAU;AAHF,SAAAA;AAAA,GAAA;AAML,IAAK,WAAL,kBAAKC,cAAL;AACH,EAAAA,UAAA,aAAY;AACZ,EAAAA,UAAA,YAAW;AACX,EAAAA,UAAA,UAAS;AACT,EAAAA,UAAA,SAAQ;AACR,EAAAA,UAAA,YAAW;AACX,EAAAA,UAAA,sBAAqB;AACrB,EAAAA,UAAA,YAAW;AACX,EAAAA,UAAA,eAAc;AACd,EAAAA,UAAA,eAAc;AACd,EAAAA,UAAA,aAAY;AACZ,EAAAA,UAAA,aAAY;AACZ,EAAAA,UAAA,eAAc;AACd,EAAAA,UAAA,SAAQ;AAbA,SAAAA;AAAA,GAAA;AAgBL,IAAK,cAAL,kBAAKC,iBAAL;AACH,EAAAA,aAAA,UAAO;AACP,EAAAA,aAAA,WAAQ;AACR,EAAAA,aAAA,UAAO;AACP,EAAAA,aAAA,aAAU;AAJF,SAAAA;AAAA,GAAA;AAOL,IAAK,aAAL,kBAAKC,gBAAL;AACH,EAAAA,YAAA,aAAU;AACV,EAAAA,YAAA,SAAM;AACN,EAAAA,YAAA,UAAO;AACP,EAAAA,YAAA,SAAM;AACN,EAAAA,YAAA,WAAQ;AACR,EAAAA,YAAA,cAAW;AACX,EAAAA,YAAA,WAAQ;AAPA,SAAAA;AAAA,GAAA;AAUL,IAAM,gBAAgB;AAAA,EACzB,CAAC,uBAAkB,GAAG;AAAA,EACtB,CAAC,eAAc,GAAG;AAAA,EAClB,CAAC,iBAAe,GAAG;AAAA,EACnB,CAAC,eAAc,GAAG;AAAA,EAClB,CAAC,mBAAgB,GAAG;AAAA,EACpB,CAAC,yBAAmB,GAAG;AAAA,EACvB,CAAC,mBAAgB,GAAG;AACxB;AAEO,IAAM,eAAe;AAAA,EACxB,OAAO;AAAA,EACP,OAAO;AACX;AAEO,IAAM,QAAQ,IAAI,yCAAgB,uBAAuB;AAEzD,IAAM,aAAa;AAAA,EACtB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACJ;",
6
6
  "names": ["PackageManager", "Registry", "Software", "ProjectType", "CommitType"]
7
7
  }
package/dist/index.js CHANGED
@@ -44,6 +44,7 @@ var import_getCommitMessage = require("./utils/getCommitMessage");
44
44
  var import_getHeaders = require("./utils/getHeaders");
45
45
  var import_readPackageJsonSync = require("./utils/readPackageJsonSync");
46
46
  var import_replaceAssets = require("./utils/replaceAssets");
47
+ var import_setBun = require("./utils/setBun");
47
48
  var import_setGlobal = require("./utils/setGlobal");
48
49
  var import_upgradeRsbuild = require("./utils/upgradeRsbuild");
49
50
  var import_upgradeTailwind = require("./utils/upgradeTailwind");
@@ -107,5 +108,6 @@ program.command("upgrade-tailwind").alias("ut").description("升级 tailwind").o
107
108
  (0, import_setGlobal.setGlobal)(options);
108
109
  await (0, import_actionWithBackup.actionWithBackup)(() => (0, import_upgradeTailwind.upgradeTailwind)())();
109
110
  });
111
+ program.command("bun").description("设置 bun").action(import_setBun.setBun);
110
112
  program.parse();
111
113
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/index.ts"],
4
- "sourcesContent": ["#!/usr/bin/env node\n\nimport { CommitType } from \"@constant/index\"\nimport { addAntd } from \"@utils/addAntd\"\nimport { addGitignore } from \"@utils/addGitignore\"\nimport { addFolderPathAlias, replacePathAlias } from \"@utils/addPathAlias\"\nimport { addPrettier } from \"@utils/addPrettier\"\nimport { addPrisma } from \"@utils/addPrisma\"\nimport { arrowToFunction } from \"@utils/arrowToFunction\"\nimport { betaVersion } from \"@utils/betaVersion\"\nimport { checkType } from \"@utils/checkType\"\nimport { code2Snippet } from \"@utils/code2Snippet\"\nimport { downloadLatestSoftware } from \"@utils/downloadLatestSoftware\"\nimport { downloadNpm } from \"@utils/downloadNpm\"\nimport { generatePrisma } from \"@utils/generatePrisma\"\nimport { initProject } from \"@utils/initProject\"\nimport { interfaceToType } from \"@utils/interfaceToType\"\nimport { killProcessByPort } from \"@utils/killProcessByPort\"\nimport { next } from \"@utils/next\"\nimport { pnpm } from \"@utils/pnpm\"\nimport { reinstall } from \"@utils/reinstall\"\nimport { removeComment } from \"@utils/removeComment\"\nimport { removeESLint } from \"@utils/removeESLint\"\nimport { removeFileOrFolderFromGit } from \"@utils/removeFileOrFolderFromGit\"\nimport { rollup } from \"@utils/rollup\"\nimport { rsbuild } from \"@utils/rsbuild\"\nimport { setFatherConfig } from \"@utils/setFatherConfig\"\nimport { setGitProxy } from \"@utils/setGitProxy\"\nimport { setRegistry } from \"@utils/setRegistry\"\nimport { setShellProxy } from \"@utils/setShellProxy\"\nimport { sortPackageJson } from \"@utils/sortPackageJson\"\nimport { syncVscode } from \"@utils/syncVscode\"\nimport { tailwind } from \"@utils/tailwind\"\nimport { upgradeDependency } from \"@utils/upgradeDependency\"\nimport { vite } from \"@utils/vite\"\nimport { Command } from \"commander\"\nimport { resolve } from \"path\"\nimport { actionWithBackup } from \"./utils/actionWithBackup\"\nimport { addStartScript } from \"./utils/addStartScript\"\nimport { addZipDist } from \"./utils/addZipDist\"\nimport { createBrowserlistrc } from \"./utils/createBrowserlistrc\"\nimport { getCommitMessage } from \"./utils/getCommitMessage\"\nimport { getHeaders } from \"./utils/getHeaders\"\nimport { readPackageJsonSync } from \"./utils/readPackageJsonSync\"\nimport { replaceAssets } from \"./utils/replaceAssets\"\nimport { setGlobal } from \"./utils/setGlobal\"\nimport { upgradeRsbuild } from \"./utils/upgradeRsbuild\"\nimport { upgradeTailwind } from \"./utils/upgradeTailwind\"\nimport { upgradeWorkspaceDependceny } from \"./utils/upgradeWorkspaceDependceny\"\n\nconst program = new Command()\n\nconst pkg = readPackageJsonSync(resolve(__dirname, \"../\"))\n\nprogram.name(\"格数科技\").version(pkg.version)\n\nprogram\n .command(\"eslint\")\n .description(\"删除 ESLint 相关配置\")\n .action(actionWithBackup(removeESLint, getCommitMessage(CommitType.feature, \"删除 ESLint 相关配置\")))\n\nprogram\n .command(\"prettier\")\n .description(\"添加 prettier 配置\")\n .action(actionWithBackup(addPrettier, getCommitMessage(CommitType.feature, \"添加 prettier 配置文件\")))\n\nprogram\n .command(\"vite\")\n .description(\"初始化 vite 配置\")\n .action(actionWithBackup(vite, getCommitMessage(CommitType.feature, \"初始化 vite 配置\")))\n\nprogram\n .command(\"rsbuild\")\n .description(\"初始化 rsbuild 配置\")\n .action(actionWithBackup(rsbuild, getCommitMessage(CommitType.feature, \"初始化 rsbuild 配置\")))\n\nprogram\n .command(\"next\")\n .description(\"初始化 next 配置\")\n .action(actionWithBackup(next, getCommitMessage(CommitType.feature, \"初始化 next 配置\")))\n\nprogram\n .command(\"tailwind\")\n .description(\"添加 tailwind 配置\")\n .action(actionWithBackup(tailwind, getCommitMessage(CommitType.feature, \"添加 tailwind 配置\")))\n\nprogram\n .command(\"remove-comment\")\n .description(\"删除文件注释\")\n .argument(\"path\", \"文件路径\")\n .action(actionWithBackup(removeComment, getCommitMessage(CommitType.feature, \"删除文件注释\")))\n\nprogram\n .command(\"father\")\n .alias(\"fs\")\n .description(\"初始化 father 项目配置\")\n .action(actionWithBackup(setFatherConfig, getCommitMessage(CommitType.feature, \"初始化 father 项目配置\")))\n\nprogram\n .command(\"upgrade-dependency\")\n .alias(\"ud\")\n .description(\"升级项目依赖\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .action(async optios => {\n setGlobal(optios)\n await actionWithBackup(() => upgradeDependency())()\n })\n\nprogram\n .command(\"upgrade-workspace-dependency\")\n .alias(\"uwd\")\n .description(\"升级工作区项目依赖\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .argument(\"[dir]\", \"项目目录\", \"packages\")\n .action(async (dir, options) => {\n setGlobal(options)\n await upgradeWorkspaceDependceny(dir)\n })\n\nprogram.command(\"registry\").description(\"设置 npm registry\").action(setRegistry)\n\nprogram\n .command(\"sort-package-json\")\n .alias(\"spj\")\n .description(\"对 package.json 中的依赖进行排序\")\n .action(actionWithBackup(sortPackageJson, getCommitMessage(CommitType.feature, \"对 package.json 中的依赖进行排序\")))\n\nprogram\n .command(\"arrow-to-function\")\n .alias(\"a2f\")\n .description(\"将箭头函数组件转换为函数组件\")\n .action(actionWithBackup(arrowToFunction, getCommitMessage(CommitType.feature, \"将箭头函数组件转换为函数组件\")))\n\nprogram\n .command(\"interface-to-type\")\n .alias(\"i2t\")\n .description(\"将 interface 转换为 type\")\n .action(actionWithBackup(interfaceToType, getCommitMessage(CommitType.feature, \"将 interface 转换为 type\")))\n\nprogram\n .command(\"gitignore\")\n .description(\"添加 .gitignore 配置\")\n .action(actionWithBackup(addGitignore, getCommitMessage(CommitType.feature, \"添加 .gitignore 配置\")))\n\nprogram.command(\"git-proxy\").alias(\"gp\").description(\"设置 git 代理\").action(setGitProxy)\n\nprogram.command(\"shell-proxy\").alias(\"sp\").description(\"设置 Shell 代理\").action(setShellProxy)\n\nprogram.command(\"download-software\").alias(\"ds\").description(\"下载最新版软件\").action(downloadLatestSoftware)\n\nprogram.command(\"vscode\").alias(\"vsc\").description(\"同步 VS Code 配置\").action(syncVscode)\n\nprogram.command(\"kill-port\").description(\"根据端口号杀死进程\").argument(\"port\", \"端口号\").action(killProcessByPort)\n\nprogram.command(\"rm-git\").argument(\"path\", \"要移除的文件或文件夹\").action(removeFileOrFolderFromGit)\n\nprogram.command(\"npm-download\").alias(\"nd\").description(\"下载 npm 包\").argument(\"name\", \"包名\").action(downloadNpm)\n\nprogram\n .command(\"prisma\")\n .description(\"添加 prisma 配置\")\n .action(actionWithBackup(() => addPrisma(), getCommitMessage(CommitType.feature, \"添加 prisma 配置\")))\n\nprogram.command(\"prisma-generate\").alias(\"pg\").description(\"生成 prisma client\").action(generatePrisma)\n\nprogram\n .command(\"antd\")\n .description(\"添加 antd 配置\")\n .action(actionWithBackup(addAntd, getCommitMessage(CommitType.feature, \"添加 antd 配置\")))\n\nprogram\n .command(\"init\")\n .description(\"初始化项目\")\n .action(actionWithBackup(initProject, getCommitMessage(CommitType.feature, \"初始化项目\")))\n\nprogram.command(\"tsc\").description(\"类型检查\").action(checkType)\n\nprogram.command(\"beta-version\").alias(\"bv\").description(\"设置版本号\").action(betaVersion)\n\nprogram\n .command(\"reinstall\")\n .alias(\"ri\")\n .description(\"重新安装依赖\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .action(async options => {\n setGlobal(options)\n reinstall()\n })\n\nprogram.command(\"snippet\").alias(\"sn\").description(\"生成 vscode snippet\").argument(\"path\", \"文件路径\").action(code2Snippet)\n\nprogram.command(\"add-alias\").alias(\"aa\").description(\"添加路径别名\").action(actionWithBackup(addFolderPathAlias))\n\nprogram.command(\"replace-alias\").alias(\"ra\").description(\"替换路径别名\").action(actionWithBackup(replacePathAlias))\n\nprogram.command(\"pnpm\").description(\"设置 pnpm 配置\").action(pnpm)\n\nprogram.command(\"rollup\").description(\"rollup 打包\").action(rollup)\n\nprogram.command(\"browserlistrc\").alias(\"blr\").description(\"添加 browserlistrc 配置\").action(createBrowserlistrc)\n\nprogram\n .command(\"asset\")\n .description(\"替换文件中的资源地址\")\n .argument(\"input\", \"静态文件夹路径\")\n .option(\"-b, --base <base>\", \"资源地址 BaseUrl\")\n .option(\"-o, --output <output>\", \"输出文件夹\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .action((input, { proxy, base, output }) => replaceAssets({ base, input, proxy, output }))\n\nprogram\n .command(\"upgrade-rsbuild\")\n .alias(\"ur\")\n .description(\"升级 rsbuild\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .action(async options => {\n setGlobal(options)\n await actionWithBackup(() => upgradeRsbuild())()\n })\n\nprogram\n .command(\"add-start-script\")\n .alias(\"ass\")\n .argument(\"type\", \"启动脚本类型:express、next\")\n .option(\"-p, --port <port>\", \"端口地址\")\n .option(\"-c, --core <core>\", \"实例数\")\n .option(\"-h, --hostname <hostname>\", \"主机名\")\n .option(\"-pem, --pemPath <pemPath>\", \"证书目录\")\n .description(\"添加 express 启动脚本\")\n .action(async (type, { port, core, pemPath }) => actionWithBackup(addStartScript)({ type, port, core, pemPath }))\n\nprogram.command(\"headers\").description(\"将浏览器中直接复制的 headers 转换为对象\").action(getHeaders)\n\nprogram\n .command(\"add-zip-dist\")\n .alias(\"azd\")\n .description(\"添加将 dist 压缩的脚本\")\n .action(actionWithBackup(() => addZipDist({ install: true })))\n\nprogram\n .command(\"upgrade-tailwind\")\n .alias(\"ut\")\n .description(\"升级 tailwind\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .action(async options => {\n setGlobal(options)\n await actionWithBackup(() => upgradeTailwind())()\n })\n\nprogram.parse()\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["#!/usr/bin/env node\n\nimport { CommitType } from \"@constant/index\"\nimport { addAntd } from \"@utils/addAntd\"\nimport { addGitignore } from \"@utils/addGitignore\"\nimport { addFolderPathAlias, replacePathAlias } from \"@utils/addPathAlias\"\nimport { addPrettier } from \"@utils/addPrettier\"\nimport { addPrisma } from \"@utils/addPrisma\"\nimport { arrowToFunction } from \"@utils/arrowToFunction\"\nimport { betaVersion } from \"@utils/betaVersion\"\nimport { checkType } from \"@utils/checkType\"\nimport { code2Snippet } from \"@utils/code2Snippet\"\nimport { downloadLatestSoftware } from \"@utils/downloadLatestSoftware\"\nimport { downloadNpm } from \"@utils/downloadNpm\"\nimport { generatePrisma } from \"@utils/generatePrisma\"\nimport { initProject } from \"@utils/initProject\"\nimport { interfaceToType } from \"@utils/interfaceToType\"\nimport { killProcessByPort } from \"@utils/killProcessByPort\"\nimport { next } from \"@utils/next\"\nimport { pnpm } from \"@utils/pnpm\"\nimport { reinstall } from \"@utils/reinstall\"\nimport { removeComment } from \"@utils/removeComment\"\nimport { removeESLint } from \"@utils/removeESLint\"\nimport { removeFileOrFolderFromGit } from \"@utils/removeFileOrFolderFromGit\"\nimport { rollup } from \"@utils/rollup\"\nimport { rsbuild } from \"@utils/rsbuild\"\nimport { setFatherConfig } from \"@utils/setFatherConfig\"\nimport { setGitProxy } from \"@utils/setGitProxy\"\nimport { setRegistry } from \"@utils/setRegistry\"\nimport { setShellProxy } from \"@utils/setShellProxy\"\nimport { sortPackageJson } from \"@utils/sortPackageJson\"\nimport { syncVscode } from \"@utils/syncVscode\"\nimport { tailwind } from \"@utils/tailwind\"\nimport { upgradeDependency } from \"@utils/upgradeDependency\"\nimport { vite } from \"@utils/vite\"\nimport { Command } from \"commander\"\nimport { resolve } from \"path\"\nimport { actionWithBackup } from \"./utils/actionWithBackup\"\nimport { addStartScript } from \"./utils/addStartScript\"\nimport { addZipDist } from \"./utils/addZipDist\"\nimport { createBrowserlistrc } from \"./utils/createBrowserlistrc\"\nimport { getCommitMessage } from \"./utils/getCommitMessage\"\nimport { getHeaders } from \"./utils/getHeaders\"\nimport { readPackageJsonSync } from \"./utils/readPackageJsonSync\"\nimport { replaceAssets } from \"./utils/replaceAssets\"\nimport { setBun } from \"./utils/setBun\"\nimport { setGlobal } from \"./utils/setGlobal\"\nimport { upgradeRsbuild } from \"./utils/upgradeRsbuild\"\nimport { upgradeTailwind } from \"./utils/upgradeTailwind\"\nimport { upgradeWorkspaceDependceny } from \"./utils/upgradeWorkspaceDependceny\"\n\nconst program = new Command()\n\nconst pkg = readPackageJsonSync(resolve(__dirname, \"../\"))\n\nprogram.name(\"格数科技\").version(pkg.version)\n\nprogram\n .command(\"eslint\")\n .description(\"删除 ESLint 相关配置\")\n .action(actionWithBackup(removeESLint, getCommitMessage(CommitType.feature, \"删除 ESLint 相关配置\")))\n\nprogram\n .command(\"prettier\")\n .description(\"添加 prettier 配置\")\n .action(actionWithBackup(addPrettier, getCommitMessage(CommitType.feature, \"添加 prettier 配置文件\")))\n\nprogram\n .command(\"vite\")\n .description(\"初始化 vite 配置\")\n .action(actionWithBackup(vite, getCommitMessage(CommitType.feature, \"初始化 vite 配置\")))\n\nprogram\n .command(\"rsbuild\")\n .description(\"初始化 rsbuild 配置\")\n .action(actionWithBackup(rsbuild, getCommitMessage(CommitType.feature, \"初始化 rsbuild 配置\")))\n\nprogram\n .command(\"next\")\n .description(\"初始化 next 配置\")\n .action(actionWithBackup(next, getCommitMessage(CommitType.feature, \"初始化 next 配置\")))\n\nprogram\n .command(\"tailwind\")\n .description(\"添加 tailwind 配置\")\n .action(actionWithBackup(tailwind, getCommitMessage(CommitType.feature, \"添加 tailwind 配置\")))\n\nprogram\n .command(\"remove-comment\")\n .description(\"删除文件注释\")\n .argument(\"path\", \"文件路径\")\n .action(actionWithBackup(removeComment, getCommitMessage(CommitType.feature, \"删除文件注释\")))\n\nprogram\n .command(\"father\")\n .alias(\"fs\")\n .description(\"初始化 father 项目配置\")\n .action(actionWithBackup(setFatherConfig, getCommitMessage(CommitType.feature, \"初始化 father 项目配置\")))\n\nprogram\n .command(\"upgrade-dependency\")\n .alias(\"ud\")\n .description(\"升级项目依赖\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .action(async optios => {\n setGlobal(optios)\n await actionWithBackup(() => upgradeDependency())()\n })\n\nprogram\n .command(\"upgrade-workspace-dependency\")\n .alias(\"uwd\")\n .description(\"升级工作区项目依赖\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .argument(\"[dir]\", \"项目目录\", \"packages\")\n .action(async (dir, options) => {\n setGlobal(options)\n await upgradeWorkspaceDependceny(dir)\n })\n\nprogram.command(\"registry\").description(\"设置 npm registry\").action(setRegistry)\n\nprogram\n .command(\"sort-package-json\")\n .alias(\"spj\")\n .description(\"对 package.json 中的依赖进行排序\")\n .action(actionWithBackup(sortPackageJson, getCommitMessage(CommitType.feature, \"对 package.json 中的依赖进行排序\")))\n\nprogram\n .command(\"arrow-to-function\")\n .alias(\"a2f\")\n .description(\"将箭头函数组件转换为函数组件\")\n .action(actionWithBackup(arrowToFunction, getCommitMessage(CommitType.feature, \"将箭头函数组件转换为函数组件\")))\n\nprogram\n .command(\"interface-to-type\")\n .alias(\"i2t\")\n .description(\"将 interface 转换为 type\")\n .action(actionWithBackup(interfaceToType, getCommitMessage(CommitType.feature, \"将 interface 转换为 type\")))\n\nprogram\n .command(\"gitignore\")\n .description(\"添加 .gitignore 配置\")\n .action(actionWithBackup(addGitignore, getCommitMessage(CommitType.feature, \"添加 .gitignore 配置\")))\n\nprogram.command(\"git-proxy\").alias(\"gp\").description(\"设置 git 代理\").action(setGitProxy)\n\nprogram.command(\"shell-proxy\").alias(\"sp\").description(\"设置 Shell 代理\").action(setShellProxy)\n\nprogram.command(\"download-software\").alias(\"ds\").description(\"下载最新版软件\").action(downloadLatestSoftware)\n\nprogram.command(\"vscode\").alias(\"vsc\").description(\"同步 VS Code 配置\").action(syncVscode)\n\nprogram.command(\"kill-port\").description(\"根据端口号杀死进程\").argument(\"port\", \"端口号\").action(killProcessByPort)\n\nprogram.command(\"rm-git\").argument(\"path\", \"要移除的文件或文件夹\").action(removeFileOrFolderFromGit)\n\nprogram.command(\"npm-download\").alias(\"nd\").description(\"下载 npm 包\").argument(\"name\", \"包名\").action(downloadNpm)\n\nprogram\n .command(\"prisma\")\n .description(\"添加 prisma 配置\")\n .action(actionWithBackup(() => addPrisma(), getCommitMessage(CommitType.feature, \"添加 prisma 配置\")))\n\nprogram.command(\"prisma-generate\").alias(\"pg\").description(\"生成 prisma client\").action(generatePrisma)\n\nprogram\n .command(\"antd\")\n .description(\"添加 antd 配置\")\n .action(actionWithBackup(addAntd, getCommitMessage(CommitType.feature, \"添加 antd 配置\")))\n\nprogram\n .command(\"init\")\n .description(\"初始化项目\")\n .action(actionWithBackup(initProject, getCommitMessage(CommitType.feature, \"初始化项目\")))\n\nprogram.command(\"tsc\").description(\"类型检查\").action(checkType)\n\nprogram.command(\"beta-version\").alias(\"bv\").description(\"设置版本号\").action(betaVersion)\n\nprogram\n .command(\"reinstall\")\n .alias(\"ri\")\n .description(\"重新安装依赖\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .action(async options => {\n setGlobal(options)\n reinstall()\n })\n\nprogram.command(\"snippet\").alias(\"sn\").description(\"生成 vscode snippet\").argument(\"path\", \"文件路径\").action(code2Snippet)\n\nprogram.command(\"add-alias\").alias(\"aa\").description(\"添加路径别名\").action(actionWithBackup(addFolderPathAlias))\n\nprogram.command(\"replace-alias\").alias(\"ra\").description(\"替换路径别名\").action(actionWithBackup(replacePathAlias))\n\nprogram.command(\"pnpm\").description(\"设置 pnpm 配置\").action(pnpm)\n\nprogram.command(\"rollup\").description(\"rollup 打包\").action(rollup)\n\nprogram.command(\"browserlistrc\").alias(\"blr\").description(\"添加 browserlistrc 配置\").action(createBrowserlistrc)\n\nprogram\n .command(\"asset\")\n .description(\"替换文件中的资源地址\")\n .argument(\"input\", \"静态文件夹路径\")\n .option(\"-b, --base <base>\", \"资源地址 BaseUrl\")\n .option(\"-o, --output <output>\", \"输出文件夹\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .action((input, { proxy, base, output }) => replaceAssets({ base, input, proxy, output }))\n\nprogram\n .command(\"upgrade-rsbuild\")\n .alias(\"ur\")\n .description(\"升级 rsbuild\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .action(async options => {\n setGlobal(options)\n await actionWithBackup(() => upgradeRsbuild())()\n })\n\nprogram\n .command(\"add-start-script\")\n .alias(\"ass\")\n .argument(\"type\", \"启动脚本类型:express、next\")\n .option(\"-p, --port <port>\", \"端口地址\")\n .option(\"-c, --core <core>\", \"实例数\")\n .option(\"-h, --hostname <hostname>\", \"主机名\")\n .option(\"-pem, --pemPath <pemPath>\", \"证书目录\")\n .description(\"添加 express 启动脚本\")\n .action(async (type, { port, core, pemPath }) => actionWithBackup(addStartScript)({ type, port, core, pemPath }))\n\nprogram.command(\"headers\").description(\"将浏览器中直接复制的 headers 转换为对象\").action(getHeaders)\n\nprogram\n .command(\"add-zip-dist\")\n .alias(\"azd\")\n .description(\"添加将 dist 压缩的脚本\")\n .action(actionWithBackup(() => addZipDist({ install: true })))\n\nprogram\n .command(\"upgrade-tailwind\")\n .alias(\"ut\")\n .description(\"升级 tailwind\")\n .option(\"-r, --registry <registry>\", \"npm 源地址,可以是 npm、taobao、tencent 或者自定义地址\")\n .option(\"-p, --proxy\", \"是否使用代理\")\n .action(async options => {\n setGlobal(options)\n await actionWithBackup(() => upgradeTailwind())()\n })\n\nprogram.command(\"bun\").description(\"设置 bun\").action(setBun)\n\nprogram.parse()\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,7 @@
1
1
  import { PackageManager } from "../constant";
2
+ declare global {
3
+ var __ZIXULU_PACKAGE_MANAGER__: PackageManager | undefined;
4
+ }
2
5
  /**
3
6
  * 获取包管理器
4
7
  */
@@ -33,9 +33,11 @@ __export(getPackageManager_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(getPackageManager_exports);
35
35
  var import_constant = require("../constant");
36
+ var import_deepsea_tools = require("deepsea-tools");
36
37
  var import_promises = require("fs/promises");
37
- var import_path = require("path");
38
38
  async function getPackageManager(dir = ".") {
39
+ if (globalThis.__ZIXULU_PACKAGE_MANAGER__)
40
+ return globalThis.__ZIXULU_PACKAGE_MANAGER__;
39
41
  const dir2 = await (0, import_promises.readdir)(dir);
40
42
  if (dir2.includes("yarn.lock"))
41
43
  return import_constant.PackageManager.yarn;
@@ -43,19 +45,16 @@ async function getPackageManager(dir = ".") {
43
45
  return import_constant.PackageManager.npm;
44
46
  if (dir2.includes("pnpm-lock.yaml"))
45
47
  return import_constant.PackageManager.pnpm;
48
+ if (dir2.includes("bun.lockb"))
49
+ return import_constant.PackageManager.bun;
46
50
  const { default: inquirer } = await import("inquirer");
47
51
  const { manager } = await inquirer.prompt({
48
52
  type: "list",
49
53
  name: "manager",
50
54
  message: "请选择包管理器",
51
- choices: ["yarn", "npm", "pnpm"]
55
+ choices: (0, import_deepsea_tools.getEnumValues)(import_constant.PackageManager)
52
56
  });
53
- if (manager === "yarn")
54
- await (0, import_promises.writeFile)((0, import_path.join)(dir, "yarn.lock"), "");
55
- if (manager === "npm")
56
- await (0, import_promises.writeFile)((0, import_path.join)(dir, "package-lock.json"), "");
57
- if (manager === "pnpm")
58
- await (0, import_promises.writeFile)((0, import_path.join)(dir, "pnpm-lock.yaml"), "");
57
+ globalThis.__ZIXULU_PACKAGE_MANAGER__ = manager;
59
58
  return manager;
60
59
  }
61
60
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/getPackageManager.ts"],
4
- "sourcesContent": ["import { PackageManager } from \"@src/constant\"\nimport { readdir, writeFile } from \"fs/promises\"\nimport { join } from \"path\"\n\n/**\n * 获取包管理器\n */\nexport async function getPackageManager(dir = \".\"): Promise<PackageManager> {\n const dir2 = await readdir(dir)\n if (dir2.includes(\"yarn.lock\")) return PackageManager.yarn\n if (dir2.includes(\"package-lock.json\")) return PackageManager.npm\n if (dir2.includes(\"pnpm-lock.yaml\")) return PackageManager.pnpm\n const { default: inquirer } = await import(\"inquirer\")\n const { manager } = await inquirer.prompt<{ manager: PackageManager }>({\n type: \"list\",\n name: \"manager\",\n message: \"请选择包管理器\",\n choices: [\"yarn\", \"npm\", \"pnpm\"],\n })\n if (manager === \"yarn\") await writeFile(join(dir, \"yarn.lock\"), \"\")\n if (manager === \"npm\") await writeFile(join(dir, \"package-lock.json\"), \"\")\n if (manager === \"pnpm\") await writeFile(join(dir, \"pnpm-lock.yaml\"), \"\")\n return manager\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA+B;AAC/B,sBAAmC;AACnC,kBAAqB;AAKrB,eAAsB,kBAAkB,MAAM,KAA8B;AACxE,QAAM,OAAO,UAAM,yBAAQ,GAAG;AAC9B,MAAI,KAAK,SAAS,WAAW;AAAG,WAAO,+BAAe;AACtD,MAAI,KAAK,SAAS,mBAAmB;AAAG,WAAO,+BAAe;AAC9D,MAAI,KAAK,SAAS,gBAAgB;AAAG,WAAO,+BAAe;AAC3D,QAAM,EAAE,SAAS,SAAS,IAAI,MAAM,OAAO,UAAU;AACrD,QAAM,EAAE,QAAQ,IAAI,MAAM,SAAS,OAAoC;AAAA,IACnE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS,CAAC,QAAQ,OAAO,MAAM;AAAA,EACnC,CAAC;AACD,MAAI,YAAY;AAAQ,cAAM,+BAAU,kBAAK,KAAK,WAAW,GAAG,EAAE;AAClE,MAAI,YAAY;AAAO,cAAM,+BAAU,kBAAK,KAAK,mBAAmB,GAAG,EAAE;AACzE,MAAI,YAAY;AAAQ,cAAM,+BAAU,kBAAK,KAAK,gBAAgB,GAAG,EAAE;AACvE,SAAO;AACX;",
4
+ "sourcesContent": ["import { PackageManager } from \"@src/constant\"\nimport { getEnumValues } from \"deepsea-tools\"\nimport { readdir } from \"fs/promises\"\n\ndeclare global {\n var __ZIXULU_PACKAGE_MANAGER__: PackageManager | undefined\n}\n\n/**\n * 获取包管理器\n */\nexport async function getPackageManager(dir = \".\"): Promise<PackageManager> {\n if (globalThis.__ZIXULU_PACKAGE_MANAGER__) return globalThis.__ZIXULU_PACKAGE_MANAGER__\n const dir2 = await readdir(dir)\n if (dir2.includes(\"yarn.lock\")) return PackageManager.yarn\n if (dir2.includes(\"package-lock.json\")) return PackageManager.npm\n if (dir2.includes(\"pnpm-lock.yaml\")) return PackageManager.pnpm\n if (dir2.includes(\"bun.lockb\")) return PackageManager.bun\n const { default: inquirer } = await import(\"inquirer\")\n const { manager } = await inquirer.prompt<{ manager: PackageManager }>({\n type: \"list\",\n name: \"manager\",\n message: \"请选择包管理器\",\n choices: getEnumValues(PackageManager),\n })\n globalThis.__ZIXULU_PACKAGE_MANAGER__ = manager\n return manager\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA+B;AAC/B,2BAA8B;AAC9B,sBAAwB;AASxB,eAAsB,kBAAkB,MAAM,KAA8B;AACxE,MAAI,WAAW;AAA4B,WAAO,WAAW;AAC7D,QAAM,OAAO,UAAM,yBAAQ,GAAG;AAC9B,MAAI,KAAK,SAAS,WAAW;AAAG,WAAO,+BAAe;AACtD,MAAI,KAAK,SAAS,mBAAmB;AAAG,WAAO,+BAAe;AAC9D,MAAI,KAAK,SAAS,gBAAgB;AAAG,WAAO,+BAAe;AAC3D,MAAI,KAAK,SAAS,WAAW;AAAG,WAAO,+BAAe;AACtD,QAAM,EAAE,SAAS,SAAS,IAAI,MAAM,OAAO,UAAU;AACrD,QAAM,EAAE,QAAQ,IAAI,MAAM,SAAS,OAAoC;AAAA,IACnE,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,aAAS,oCAAc,8BAAc;AAAA,EACzC,CAAC;AACD,aAAW,6BAA6B;AACxC,SAAO;AACX;",
6
6
  "names": []
7
7
  }
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * 获取包管理器的源
3
3
  */
4
- export declare function getRegistry(): Promise<string>;
4
+ export declare function getRegistry(): Promise<any>;
@@ -24,11 +24,17 @@ __export(getRegistry_exports, {
24
24
  module.exports = __toCommonJS(getRegistry_exports);
25
25
  var import_constant = require("../constant");
26
26
  var import_soda_nodejs = require("soda-nodejs");
27
+ var import_readBunConfig = require("./readBunConfig");
27
28
  var import_getPackageManager = require("./getPackageManager");
28
29
  async function getRegistry() {
29
30
  if (global.__ZIXULU_REGISTRY__)
30
31
  return global.__ZIXULU_REGISTRY__;
31
32
  const packageManager = await (0, import_getPackageManager.getPackageManager)();
33
+ if (packageManager === import_constant.PackageManager.bun) {
34
+ const config = await (0, import_readBunConfig.readBunConfig)();
35
+ if (config.install?.registry)
36
+ return config.install.registry;
37
+ }
32
38
  const registry = await (0, import_soda_nodejs.execAsync)(
33
39
  `${packageManager === import_constant.PackageManager.yarn || packageManager === import_constant.PackageManager.pnpm ? packageManager : "npm"} config get registry`
34
40
  );
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/getRegistry.ts"],
4
- "sourcesContent": ["import { PackageManager } from \"@src/constant\"\nimport { execAsync } from \"soda-nodejs\"\nimport { getPackageManager } from \"./getPackageManager\"\n\n/**\n * 获取包管理器的源\n */\nexport async function getRegistry() {\n if (global.__ZIXULU_REGISTRY__) return global.__ZIXULU_REGISTRY__\n const packageManager = await getPackageManager()\n const registry = await execAsync(\n `${packageManager === PackageManager.yarn || packageManager === PackageManager.pnpm ? packageManager : \"npm\"} config get registry`,\n )\n return registry\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA+B;AAC/B,yBAA0B;AAC1B,+BAAkC;AAKlC,eAAsB,cAAc;AAChC,MAAI,OAAO;AAAqB,WAAO,OAAO;AAC9C,QAAM,iBAAiB,UAAM,4CAAkB;AAC/C,QAAM,WAAW,UAAM;AAAA,IACnB,GAAG,mBAAmB,+BAAe,QAAQ,mBAAmB,+BAAe,OAAO,iBAAiB;AAAA,EAC3G;AACA,SAAO;AACX;",
4
+ "sourcesContent": ["import { PackageManager } from \"@src/constant\"\nimport { execAsync } from \"soda-nodejs\"\nimport { readBunConfig } from \"./readBunConfig\"\nimport { getPackageManager } from \"./getPackageManager\"\n\n/**\n * 获取包管理器的源\n */\nexport async function getRegistry() {\n if (global.__ZIXULU_REGISTRY__) return global.__ZIXULU_REGISTRY__\n const packageManager = await getPackageManager()\n if (packageManager === PackageManager.bun) {\n const config = await readBunConfig()\n if (config.install?.registry) return config.install.registry\n }\n const registry = await execAsync(\n `${packageManager === PackageManager.yarn || packageManager === PackageManager.pnpm ? packageManager : \"npm\"} config get registry`,\n )\n return registry\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAA+B;AAC/B,yBAA0B;AAC1B,2BAA8B;AAC9B,+BAAkC;AAKlC,eAAsB,cAAc;AAChC,MAAI,OAAO;AAAqB,WAAO,OAAO;AAC9C,QAAM,iBAAiB,UAAM,4CAAkB;AAC/C,MAAI,mBAAmB,+BAAe,KAAK;AACvC,UAAM,SAAS,UAAM,oCAAc;AACnC,QAAI,OAAO,SAAS;AAAU,aAAO,OAAO,QAAQ;AAAA,EACxD;AACA,QAAM,WAAW,UAAM;AAAA,IACnB,GAAG,mBAAmB,+BAAe,QAAQ,mBAAmB,+BAAe,OAAO,iBAAiB;AAAA,EAC3G;AACA,SAAO;AACX;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1 @@
1
+ export declare function readBunConfig(): Promise<any>;
@@ -0,0 +1,41 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // src/utils/readBunConfig.ts
20
+ var readBunConfig_exports = {};
21
+ __export(readBunConfig_exports, {
22
+ readBunConfig: () => readBunConfig
23
+ });
24
+ module.exports = __toCommonJS(readBunConfig_exports);
25
+ var import_toml = require("@iarna/toml");
26
+ var import_fs = require("fs");
27
+ var import_promises = require("fs/promises");
28
+ var import_os = require("os");
29
+ var import_path = require("path");
30
+ async function readBunConfig() {
31
+ const path = (0, import_path.join)((0, import_os.homedir)(), ".bunfig.toml");
32
+ if ((0, import_fs.existsSync)(path) === false)
33
+ return {};
34
+ const str = await (0, import_promises.readFile)((0, import_path.join)((0, import_os.homedir)(), ".bunfig.toml"), "utf-8");
35
+ return (0, import_toml.parse)(str);
36
+ }
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {
39
+ readBunConfig
40
+ });
41
+ //# sourceMappingURL=readBunConfig.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/readBunConfig.ts"],
4
+ "sourcesContent": ["import { parse } from \"@iarna/toml\"\nimport { existsSync } from \"fs\"\nimport { readFile } from \"fs/promises\"\nimport { homedir } from \"os\"\nimport { join } from \"path\"\n\nexport async function readBunConfig() {\n const path = join(homedir(), \".bunfig.toml\")\n if (existsSync(path) === false) return {}\n const str = await readFile(join(homedir(), \".bunfig.toml\"), \"utf-8\")\n return parse(str) as any\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAsB;AACtB,gBAA2B;AAC3B,sBAAyB;AACzB,gBAAwB;AACxB,kBAAqB;AAErB,eAAsB,gBAAgB;AAClC,QAAM,WAAO,sBAAK,mBAAQ,GAAG,cAAc;AAC3C,UAAI,sBAAW,IAAI,MAAM;AAAO,WAAO,CAAC;AACxC,QAAM,MAAM,UAAM,8BAAS,sBAAK,mBAAQ,GAAG,cAAc,GAAG,OAAO;AACnE,aAAO,mBAAM,GAAG;AACpB;",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ export declare function setBun(): Promise<void>;
@@ -0,0 +1,38 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // src/utils/setBun.ts
20
+ var setBun_exports = {};
21
+ __export(setBun_exports, {
22
+ setBun: () => setBun
23
+ });
24
+ module.exports = __toCommonJS(setBun_exports);
25
+ var import_readBunConfig = require("./readBunConfig");
26
+ var import_writeBunConfig = require("./writeBunConfig");
27
+ async function setBun() {
28
+ const config = await (0, import_readBunConfig.readBunConfig)();
29
+ config.install ??= {};
30
+ config.install.cache ??= {};
31
+ config.install.cache.disable = true;
32
+ await (0, import_writeBunConfig.writeBunConfig)(config);
33
+ }
34
+ // Annotate the CommonJS export names for ESM import in node:
35
+ 0 && (module.exports = {
36
+ setBun
37
+ });
38
+ //# sourceMappingURL=setBun.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/setBun.ts"],
4
+ "sourcesContent": ["import { readBunConfig } from \"./readBunConfig\"\r\nimport { writeBunConfig } from \"./writeBunConfig\"\r\n\r\nexport async function setBun() {\r\n const config = await readBunConfig()\r\n config.install ??= {}\r\n config.install.cache ??= {}\r\n config.install.cache.disable = true\r\n await writeBunConfig(config)\r\n}\r\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAA8B;AAC9B,4BAA+B;AAE/B,eAAsB,SAAS;AAC3B,QAAM,SAAS,UAAM,oCAAc;AACnC,SAAO,YAAY,CAAC;AACpB,SAAO,QAAQ,UAAU,CAAC;AAC1B,SAAO,QAAQ,MAAM,UAAU;AAC/B,YAAM,sCAAe,MAAM;AAC/B;",
6
+ "names": []
7
+ }
@@ -33,23 +33,32 @@ __export(setRegistry_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(setRegistry_exports);
35
35
  var import_constant = require("../constant/index");
36
+ var import_deepsea_tools = require("deepsea-tools");
36
37
  var import_soda_nodejs = require("soda-nodejs");
38
+ var import_readBunConfig = require("./readBunConfig");
39
+ var import_writeBunConfig = require("./writeBunConfig");
37
40
  async function setRegistry() {
38
41
  const { default: inquirer } = await import("inquirer");
39
- const { manager } = await inquirer.prompt({
42
+ let { manager } = await inquirer.prompt({
40
43
  type: "list",
41
44
  name: "manager",
42
45
  message: "请选择包管理器",
43
- choices: Object.keys(import_constant.PackageManager)
46
+ choices: (0, import_deepsea_tools.getEnumValues)(import_constant.PackageManager)
44
47
  });
45
48
  const { registry } = await inquirer.prompt({
46
49
  type: "list",
47
50
  name: "registry",
48
51
  message: "请选择要更换的源",
49
- choices: Object.keys(import_constant.Registry)
52
+ choices: (0, import_deepsea_tools.getEnumKeys)(import_constant.Registry)
50
53
  });
51
- const command = `${manager} config set registry ${import_constant.Registry[registry]}`;
52
- await (0, import_soda_nodejs.spawnAsync)(command, { shell: true, stdio: "inherit" });
54
+ if (manager === import_constant.PackageManager.bun) {
55
+ const config = await (0, import_readBunConfig.readBunConfig)();
56
+ config.install ??= {};
57
+ config.install.registry = "https://registry.npmmirror.com";
58
+ await (0, import_writeBunConfig.writeBunConfig)(config);
59
+ return;
60
+ }
61
+ await (0, import_soda_nodejs.spawnAsync)(`${manager} config set registry ${import_constant.Registry[registry]}`, { shell: true, stdio: "inherit" });
53
62
  }
54
63
  // Annotate the CommonJS export names for ESM import in node:
55
64
  0 && (module.exports = {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/utils/setRegistry.ts"],
4
- "sourcesContent": ["import { PackageManager, Registry } from \"@constant/index\"\nimport { spawnAsync } from \"soda-nodejs\"\n\nexport async function setRegistry() {\n const { default: inquirer } = await import(\"inquirer\")\n\n const { manager } = await inquirer.prompt({\n type: \"list\",\n name: \"manager\",\n message: \"请选择包管理器\",\n choices: Object.keys(PackageManager),\n })\n\n const { registry } = await inquirer.prompt({\n type: \"list\",\n name: \"registry\",\n message: \"请选择要更换的源\",\n choices: Object.keys(Registry),\n })\n\n const command = `${manager} config set registry ${Registry[registry as keyof typeof Registry]}`\n await spawnAsync(command, { shell: true, stdio: \"inherit\" })\n}\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAyC;AACzC,yBAA2B;AAE3B,eAAsB,cAAc;AAChC,QAAM,EAAE,SAAS,SAAS,IAAI,MAAM,OAAO,UAAU;AAErD,QAAM,EAAE,QAAQ,IAAI,MAAM,SAAS,OAAO;AAAA,IACtC,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS,OAAO,KAAK,8BAAc;AAAA,EACvC,CAAC;AAED,QAAM,EAAE,SAAS,IAAI,MAAM,SAAS,OAAO;AAAA,IACvC,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,SAAS,OAAO,KAAK,wBAAQ;AAAA,EACjC,CAAC;AAED,QAAM,UAAU,GAAG,+BAA+B,yBAAS,QAAiC;AAC5F,YAAM,+BAAW,SAAS,EAAE,OAAO,MAAM,OAAO,UAAU,CAAC;AAC/D;",
4
+ "sourcesContent": ["import { PackageManager, Registry } from \"@constant/index\"\nimport { getEnumKeys, getEnumValues } from \"deepsea-tools\"\nimport { spawnAsync } from \"soda-nodejs\"\nimport { readBunConfig } from \"./readBunConfig\"\nimport { writeBunConfig } from \"./writeBunConfig\"\n\nexport async function setRegistry() {\n const { default: inquirer } = await import(\"inquirer\")\n\n let { manager } = await inquirer.prompt({\n type: \"list\",\n name: \"manager\",\n message: \"请选择包管理器\",\n choices: getEnumValues(PackageManager),\n })\n\n const { registry } = await inquirer.prompt({\n type: \"list\",\n name: \"registry\",\n message: \"请选择要更换的源\",\n choices: getEnumKeys(Registry),\n })\n\n if (manager === PackageManager.bun) {\n const config = await readBunConfig()\n config.install ??= {}\n config.install.registry = \"https://registry.npmmirror.com\"\n await writeBunConfig(config)\n return\n }\n\n await spawnAsync(`${manager} config set registry ${Registry[registry as keyof typeof Registry]}`, { shell: true, stdio: \"inherit\" })\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAyC;AACzC,2BAA2C;AAC3C,yBAA2B;AAC3B,2BAA8B;AAC9B,4BAA+B;AAE/B,eAAsB,cAAc;AAChC,QAAM,EAAE,SAAS,SAAS,IAAI,MAAM,OAAO,UAAU;AAErD,MAAI,EAAE,QAAQ,IAAI,MAAM,SAAS,OAAO;AAAA,IACpC,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,aAAS,oCAAc,8BAAc;AAAA,EACzC,CAAC;AAED,QAAM,EAAE,SAAS,IAAI,MAAM,SAAS,OAAO;AAAA,IACvC,MAAM;AAAA,IACN,MAAM;AAAA,IACN,SAAS;AAAA,IACT,aAAS,kCAAY,wBAAQ;AAAA,EACjC,CAAC;AAED,MAAI,YAAY,+BAAe,KAAK;AAChC,UAAM,SAAS,UAAM,oCAAc;AACnC,WAAO,YAAY,CAAC;AACpB,WAAO,QAAQ,WAAW;AAC1B,cAAM,sCAAe,MAAM;AAC3B;AAAA,EACJ;AAEA,YAAM,+BAAW,GAAG,+BAA+B,yBAAS,QAAiC,KAAK,EAAE,OAAO,MAAM,OAAO,UAAU,CAAC;AACvI;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1 @@
1
+ export declare function writeBunConfig(config: any): Promise<void>;
@@ -0,0 +1,37 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // src/utils/writeBunConfig.ts
20
+ var writeBunConfig_exports = {};
21
+ __export(writeBunConfig_exports, {
22
+ writeBunConfig: () => writeBunConfig
23
+ });
24
+ module.exports = __toCommonJS(writeBunConfig_exports);
25
+ var import_toml = require("@iarna/toml");
26
+ var import_promises = require("fs/promises");
27
+ var import_os = require("os");
28
+ var import_path = require("path");
29
+ async function writeBunConfig(config) {
30
+ const path = (0, import_path.join)((0, import_os.homedir)(), ".bunfig.toml");
31
+ await (0, import_promises.writeFile)(path, (0, import_toml.stringify)(config), "utf-8");
32
+ }
33
+ // Annotate the CommonJS export names for ESM import in node:
34
+ 0 && (module.exports = {
35
+ writeBunConfig
36
+ });
37
+ //# sourceMappingURL=writeBunConfig.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/utils/writeBunConfig.ts"],
4
+ "sourcesContent": ["import { stringify } from \"@iarna/toml\"\r\nimport { writeFile } from \"fs/promises\"\r\nimport { homedir } from \"os\"\r\nimport { join } from \"path\"\r\n\r\nexport async function writeBunConfig(config: any) {\r\n const path = join(homedir(), \".bunfig.toml\")\r\n await writeFile(path, stringify(config), \"utf-8\")\r\n}\r\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA0B;AAC1B,sBAA0B;AAC1B,gBAAwB;AACxB,kBAAqB;AAErB,eAAsB,eAAe,QAAa;AAC9C,QAAM,WAAO,sBAAK,mBAAQ,GAAG,cAAc;AAC3C,YAAM,2BAAU,UAAM,uBAAU,MAAM,GAAG,OAAO;AACpD;",
6
+ "names": []
7
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zixulu",
3
- "version": "1.46.2",
3
+ "version": "1.48.0",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "bin": {
@@ -30,10 +30,12 @@
30
30
  "url": "git+https://github.com/1adybug/zixulu.git"
31
31
  },
32
32
  "dependencies": {
33
+ "@iarna/toml": "^2.2.5",
33
34
  "clipboardy": "^4.0.0",
34
35
  "commander": "^12.1.0",
35
36
  "consola": "^3.2.3",
36
37
  "dayjs": "^1.11.13",
38
+ "deepsea-tools": "^5.14.0",
37
39
  "https-proxy-agent": "^7.0.5",
38
40
  "inquirer": "^9.3.6",
39
41
  "json5": "^2.2.3",
@@ -4,6 +4,7 @@ export enum PackageManager {
4
4
  npm = "npm",
5
5
  yarn = "yarn",
6
6
  pnpm = "pnpm",
7
+ bun = "bun",
7
8
  }
8
9
 
9
10
  export enum Registry {
package/src/index.ts CHANGED
@@ -43,6 +43,7 @@ import { getCommitMessage } from "./utils/getCommitMessage"
43
43
  import { getHeaders } from "./utils/getHeaders"
44
44
  import { readPackageJsonSync } from "./utils/readPackageJsonSync"
45
45
  import { replaceAssets } from "./utils/replaceAssets"
46
+ import { setBun } from "./utils/setBun"
46
47
  import { setGlobal } from "./utils/setGlobal"
47
48
  import { upgradeRsbuild } from "./utils/upgradeRsbuild"
48
49
  import { upgradeTailwind } from "./utils/upgradeTailwind"
@@ -251,4 +252,6 @@ program
251
252
  await actionWithBackup(() => upgradeTailwind())()
252
253
  })
253
254
 
255
+ program.command("bun").description("设置 bun").action(setBun)
256
+
254
257
  program.parse()
@@ -1,24 +1,28 @@
1
1
  import { PackageManager } from "@src/constant"
2
- import { readdir, writeFile } from "fs/promises"
3
- import { join } from "path"
2
+ import { getEnumValues } from "deepsea-tools"
3
+ import { readdir } from "fs/promises"
4
+
5
+ declare global {
6
+ var __ZIXULU_PACKAGE_MANAGER__: PackageManager | undefined
7
+ }
4
8
 
5
9
  /**
6
10
  * 获取包管理器
7
11
  */
8
12
  export async function getPackageManager(dir = "."): Promise<PackageManager> {
13
+ if (globalThis.__ZIXULU_PACKAGE_MANAGER__) return globalThis.__ZIXULU_PACKAGE_MANAGER__
9
14
  const dir2 = await readdir(dir)
10
15
  if (dir2.includes("yarn.lock")) return PackageManager.yarn
11
16
  if (dir2.includes("package-lock.json")) return PackageManager.npm
12
17
  if (dir2.includes("pnpm-lock.yaml")) return PackageManager.pnpm
18
+ if (dir2.includes("bun.lockb")) return PackageManager.bun
13
19
  const { default: inquirer } = await import("inquirer")
14
20
  const { manager } = await inquirer.prompt<{ manager: PackageManager }>({
15
21
  type: "list",
16
22
  name: "manager",
17
23
  message: "请选择包管理器",
18
- choices: ["yarn", "npm", "pnpm"],
24
+ choices: getEnumValues(PackageManager),
19
25
  })
20
- if (manager === "yarn") await writeFile(join(dir, "yarn.lock"), "")
21
- if (manager === "npm") await writeFile(join(dir, "package-lock.json"), "")
22
- if (manager === "pnpm") await writeFile(join(dir, "pnpm-lock.yaml"), "")
26
+ globalThis.__ZIXULU_PACKAGE_MANAGER__ = manager
23
27
  return manager
24
28
  }
@@ -1,5 +1,6 @@
1
1
  import { PackageManager } from "@src/constant"
2
2
  import { execAsync } from "soda-nodejs"
3
+ import { readBunConfig } from "./readBunConfig"
3
4
  import { getPackageManager } from "./getPackageManager"
4
5
 
5
6
  /**
@@ -8,6 +9,10 @@ import { getPackageManager } from "./getPackageManager"
8
9
  export async function getRegistry() {
9
10
  if (global.__ZIXULU_REGISTRY__) return global.__ZIXULU_REGISTRY__
10
11
  const packageManager = await getPackageManager()
12
+ if (packageManager === PackageManager.bun) {
13
+ const config = await readBunConfig()
14
+ if (config.install?.registry) return config.install.registry
15
+ }
11
16
  const registry = await execAsync(
12
17
  `${packageManager === PackageManager.yarn || packageManager === PackageManager.pnpm ? packageManager : "npm"} config get registry`,
13
18
  )
@@ -0,0 +1,12 @@
1
+ import { parse } from "@iarna/toml"
2
+ import { existsSync } from "fs"
3
+ import { readFile } from "fs/promises"
4
+ import { homedir } from "os"
5
+ import { join } from "path"
6
+
7
+ export async function readBunConfig() {
8
+ const path = join(homedir(), ".bunfig.toml")
9
+ if (existsSync(path) === false) return {}
10
+ const str = await readFile(join(homedir(), ".bunfig.toml"), "utf-8")
11
+ return parse(str) as any
12
+ }
@@ -0,0 +1,10 @@
1
+ import { readBunConfig } from "./readBunConfig"
2
+ import { writeBunConfig } from "./writeBunConfig"
3
+
4
+ export async function setBun() {
5
+ const config = await readBunConfig()
6
+ config.install ??= {}
7
+ config.install.cache ??= {}
8
+ config.install.cache.disable = true
9
+ await writeBunConfig(config)
10
+ }
@@ -1,23 +1,33 @@
1
1
  import { PackageManager, Registry } from "@constant/index"
2
+ import { getEnumKeys, getEnumValues } from "deepsea-tools"
2
3
  import { spawnAsync } from "soda-nodejs"
4
+ import { readBunConfig } from "./readBunConfig"
5
+ import { writeBunConfig } from "./writeBunConfig"
3
6
 
4
7
  export async function setRegistry() {
5
8
  const { default: inquirer } = await import("inquirer")
6
9
 
7
- const { manager } = await inquirer.prompt({
10
+ let { manager } = await inquirer.prompt({
8
11
  type: "list",
9
12
  name: "manager",
10
13
  message: "请选择包管理器",
11
- choices: Object.keys(PackageManager),
14
+ choices: getEnumValues(PackageManager),
12
15
  })
13
16
 
14
17
  const { registry } = await inquirer.prompt({
15
18
  type: "list",
16
19
  name: "registry",
17
20
  message: "请选择要更换的源",
18
- choices: Object.keys(Registry),
21
+ choices: getEnumKeys(Registry),
19
22
  })
20
23
 
21
- const command = `${manager} config set registry ${Registry[registry as keyof typeof Registry]}`
22
- await spawnAsync(command, { shell: true, stdio: "inherit" })
24
+ if (manager === PackageManager.bun) {
25
+ const config = await readBunConfig()
26
+ config.install ??= {}
27
+ config.install.registry = "https://registry.npmmirror.com"
28
+ await writeBunConfig(config)
29
+ return
30
+ }
31
+
32
+ await spawnAsync(`${manager} config set registry ${Registry[registry as keyof typeof Registry]}`, { shell: true, stdio: "inherit" })
23
33
  }
@@ -0,0 +1,9 @@
1
+ import { stringify } from "@iarna/toml"
2
+ import { writeFile } from "fs/promises"
3
+ import { homedir } from "os"
4
+ import { join } from "path"
5
+
6
+ export async function writeBunConfig(config: any) {
7
+ const path = join(homedir(), ".bunfig.toml")
8
+ await writeFile(path, stringify(config), "utf-8")
9
+ }