@longzai-intelligence-bun/cli 0.0.24 → 0.0.25

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.
Files changed (2) hide show
  1. package/dist/index.js +3 -2
  2. package/package.json +2 -2
package/dist/index.js CHANGED
@@ -181,11 +181,12 @@ ${q.default.gray(ru+tu.repeat(i+2)+iu)}
181
181
  `);let d=0,f=0;p(),a=setInterval(()=>{if(r&&s===c)return;h(),c=s;let n=q.default.magenta(t[d]);if(r)process.stdout.write(`${n} ${s}...`);else if(e===`timer`)process.stdout.write(`${n} ${s} ${_(l)}`);else{let e=`.`.repeat(Math.floor(f)).slice(0,3);process.stdout.write(`${n} ${s}${e}`)}d=d+1<t.length?d+1:0,f=f<t.length?f+.125:0},n)},y=(t=``,n=0)=>{o=!1,clearInterval(a),h();let r=n===0?q.default.green(Zl):n===1?q.default.red(Yl):q.default.red(Xl);s=g(t??s),e===`timer`?process.stdout.write(`${r} ${s} ${_(l)}
182
182
  `):process.stdout.write(`${r} ${s}
183
183
  `),m(),i()};return{start:v,stop:y,message:(e=``)=>{s=g(e??s)}}},_u={red:e=>q.default.red(e),green:e=>q.default.green(e),yellow:e=>q.default.yellow(e),blue:e=>q.default.blue(e),cyan:e=>q.default.cyan(e),magenta:e=>q.default.magenta(e),gray:e=>q.default.gray(e),bold:e=>q.default.bold(e),dim:e=>q.default.dim(e)},vu={async select(e,t){let n=await pu({message:e,options:t.map(e=>({value:e.value,label:e.label,hint:e.hint}))});return Pl(n)&&(hu(`操作已取消`),process.exit(0)),typeof n==`string`?n:String(n)},async textInput(e,t){let n=await du({message:e,placeholder:t?.placeholder,defaultValue:t?.defaultValue});return Pl(n)&&(hu(`操作已取消`),process.exit(0)),typeof n==`string`?n:String(n)},async confirm(e,t){let n=await fu({message:e,initialValue:t?.defaultValue??!1});return Pl(n)&&(hu(`操作已取消`),process.exit(0)),typeof n==`boolean`?n:!!n},spinner(){let e=gu();return{start(t){e.start(t)},stop(t){e.stop(t)}}},note(e,t){mu(e,t)},log:{info(e){Q.info(q.default.blue(e))},success(e){Q.success(q.default.green(e))},warn(e){Q.warn(q.default.yellow(e))},error(e){Q.error(q.default.red(e))},step(e){Q.step(e)}}},$=`https://registry.npmjs.org/`,yu=/* @__PURE__ */ new Map([[`longzai-intelligence`,$],[`longzai-intelligence-agent-tools`,$],[`longzai-intelligence-audit`,$],[`longzai-intelligence-auth`,$],[`longzai-intelligence-builder`,$],[`longzai-intelligence-bun`,$],[`longzai-intelligence-cache`,$],[`longzai-intelligence-cli`,$],[`longzai-intelligence-config`,$],[`longzai-intelligence-design-system`,$],[`longzai-intelligence-dev-tools`,$],[`longzai-intelligence-electron`,$],[`longzai-intelligence-error`,$],[`longzai-intelligence-event-bus`,$],[`longzai-intelligence-logger`,$],[`longzai-intelligence-oxfmt`,$],[`longzai-intelligence-okr`,$],[`longzai-intelligence-oxlint`,$],[`longzai-intelligence-plugin`,$],[`longzai-intelligence-shared-config`,$],[`longzai-intelligence-shared-kernel`,$],[`longzai-intelligence-transport`,$],[`longzai-intelligence-typescript`,$],[`longzai-intelligence-zod`,$],[`longzai-intelligence-prettier`,$],[`longzai-intelligence-tsdown`,$],[`longzai-intelligence-vitest`,$],[`longzai-intelligence-academy`,$],[`longzai-intelligence-accounting`,$],[`longzai-intelligence-activity`,$],[`longzai-intelligence-administration`,$],[`longzai-intelligence-agent`,$],[`longzai-intelligence-agent-collaboration`,$],[`longzai-intelligence-agent-endless`,$],[`longzai-intelligence-agent-session`,$],[`longzai-intelligence-agent-swarm`,$],[`longzai-intelligence-agent-ui`,$],[`longzai-intelligence-analytics`,$],[`longzai-intelligence-api`,$],[`longzai-intelligence-app-store`,$],[`longzai-intelligence-architecture`,$],[`longzai-intelligence-arkts`,$],[`longzai-intelligence-art`,$],[`longzai-intelligence-arxiv`,$],[`longzai-intelligence-atomic`,$],[`longzai-intelligence-attention`,$],[`longzai-intelligence-audio`,$],[`longzai-intelligence-audio-assistant`,$],[`longzai-intelligence-auto-research`,$],[`longzai-intelligence-automate`,$],[`longzai-intelligence-benchmark`,$],[`longzai-intelligence-billing`,$],[`longzai-intelligence-board`,$],[`longzai-intelligence-broker`,$],[`longzai-intelligence-business-plan`,$],[`longzai-intelligence-calendar`,$],[`longzai-intelligence-canvas`,$],[`longzai-intelligence-capture`,$],[`longzai-intelligence-changeset`,$],[`longzai-intelligence-chat`,$],[`longzai-intelligence-chess`,$],[`longzai-intelligence-circuit`,$],[`longzai-intelligence-claude-code`,$],[`longzai-intelligence-clipboard-share`,$],[`longzai-intelligence-cloud`,$],[`longzai-intelligence-code`,$],[`longzai-intelligence-code-agent`,$],[`longzai-intelligence-code-reviewer`,$],[`longzai-intelligence-codebase-research`,$],[`longzai-intelligence-collaboration`,$],[`longzai-intelligence-commerce`,$],[`longzai-intelligence-concrete`,$],[`longzai-intelligence-context`,$],[`longzai-intelligence-contract`,$],[`longzai-intelligence-contract-parity`,$],[`longzai-intelligence-cookery`,$],[`longzai-intelligence-country`,$],[`longzai-intelligence-creativity`,$],[`longzai-intelligence-cross-platform`,$],[`longzai-intelligence-crypto`,$],[`longzai-intelligence-customer-service`,$],[`longzai-intelligence-cut`,$],[`longzai-intelligence-dashboard`,$],[`longzai-intelligence-data`,$],[`longzai-intelligence-data-science`,$],[`longzai-intelligence-database`,$],[`longzai-intelligence-decenterlization`,$],[`longzai-intelligence-decision`,$],[`longzai-intelligence-design`,$],[`longzai-intelligence-design-lab`,$],[`longzai-intelligence-device`,$],[`longzai-intelligence-discipline`,$],[`longzai-intelligence-discovery`,$],[`longzai-intelligence-distill`,$],[`longzai-intelligence-docs`,$],[`longzai-intelligence-document`,$],[`longzai-intelligence-drone`,$],[`longzai-intelligence-edge`,$],[`longzai-intelligence-electrobun`,$],[`longzai-intelligence-elysia`,$],[`longzai-intelligence-embodied`,$],[`longzai-intelligence-empowerment`,$],[`longzai-intelligence-engineering`,$],[`longzai-intelligence-equilibrium`,$],[`longzai-intelligence-eslint`,$],[`longzai-intelligence-event`,$],[`longzai-intelligence-evolution`,$],[`longzai-intelligence-exchange-rate`,$],[`longzai-intelligence-execution`,$],[`longzai-intelligence-experience`,$],[`longzai-intelligence-expert-thinking`,$],[`longzai-intelligence-feature-flags`,$],[`longzai-intelligence-federation`,$],[`longzai-intelligence-feed`,$],[`longzai-intelligence-file-processing`,$],[`longzai-intelligence-fitness`,$],[`longzai-intelligence-game`,$],[`longzai-intelligence-gateway`,$],[`longzai-intelligence-geo`,$],[`longzai-intelligence-git`,$],[`longzai-intelligence-git-insight`,$],[`longzai-intelligence-gitcode`,$],[`longzai-intelligence-github-trending`,$],[`longzai-intelligence-hardware`,$],[`longzai-intelligence-harness`,$],[`longzai-intelligence-healthcare`,$],[`longzai-intelligence-history`,$],[`longzai-intelligence-horizon`,$],[`longzai-intelligence-human-resource`,$],[`longzai-intelligence-i18n`,$],[`longzai-intelligence-idea`,$],[`longzai-intelligence-identity`,$],[`longzai-intelligence-ime`,$],[`longzai-intelligence-impact-maker`,$],[`longzai-intelligence-intellectual-property`,$],[`longzai-intelligence-key-management`,$],[`longzai-intelligence-knowledge`,$],[`longzai-intelligence-language-model`,$],[`longzai-intelligence-legal`,$],[`longzai-intelligence-loop`,$],[`longzai-intelligence-machine-learning`,$],[`longzai-intelligence-mail`,$],[`longzai-intelligence-mandala`,$],[`longzai-intelligence-map`,$],[`longzai-intelligence-markdown`,$],[`longzai-intelligence-marketing`,$],[`longzai-intelligence-marketplace`,$],[`longzai-intelligence-math`,$],[`longzai-intelligence-mcn`,$],[`longzai-intelligence-mcp`,$],[`longzai-intelligence-memory`,$],[`longzai-intelligence-mentor`,$],[`longzai-intelligence-messaging`,$],[`longzai-intelligence-mindset`,$],[`longzai-intelligence-mission-control`,$],[`longzai-intelligence-model-fusion`,$],[`longzai-intelligence-model-gateway`,$],[`longzai-intelligence-moment`,$],[`longzai-intelligence-montage`,$],[`longzai-intelligence-movie`,$],[`longzai-intelligence-narrative-analyzer`,$],[`longzai-intelligence-nginx`,$],[`longzai-intelligence-notification`,$],[`longzai-intelligence-npm`,$],[`longzai-intelligence-npm-registry`,$],[`longzai-intelligence-observability`,$],[`longzai-intelligence-office-industry`,$],[`longzai-intelligence-older`,$],[`longzai-intelligence-one`,$],[`longzai-intelligence-ontology`,$],[`longzai-intelligence-open-pencil`,$],[`longzai-intelligence-opencode`,$],[`longzai-intelligence-opportunity`,$],[`longzai-intelligence-orchestry`,$],[`longzai-intelligence-organization`,$],[`longzai-intelligence-orm`,$],[`longzai-intelligence-outfit`,$],[`longzai-intelligence-outsourcing`,$],[`longzai-intelligence-overseas`,$],[`longzai-intelligence-pagination`,$],[`longzai-intelligence-panel`,$],[`longzai-intelligence-paper-reader`,$],[`longzai-intelligence-parametric-industry`,$],[`longzai-intelligence-partner`,$],[`longzai-intelligence-payment`,$],[`longzai-intelligence-personal-assistant`,$],[`longzai-intelligence-pii`,$],[`longzai-intelligence-policy-research`,$],[`longzai-intelligence-portal`,$],[`longzai-intelligence-prezi`,$],[`longzai-intelligence-product-requirement`,$],[`longzai-intelligence-product-research`,$],[`longzai-intelligence-programming-language`,$],[`longzai-intelligence-project`,$],[`longzai-intelligence-project-portfolio`,$],[`longzai-intelligence-promotion`,$],[`longzai-intelligence-prospect`,$],[`longzai-intelligence-publication`,$],[`longzai-intelligence-qcloud`,$],[`longzai-intelligence-quant`,$],[`longzai-intelligence-queue`,$],[`longzai-intelligence-react-devtools`,$],[`longzai-intelligence-reasoning`,$],[`longzai-intelligence-recruitment`,$],[`longzai-intelligence-reliability`,$],[`longzai-intelligence-report`,$],[`longzai-intelligence-repository`,$],[`longzai-intelligence-repository-handover`,$],[`longzai-intelligence-resilience`,$],[`longzai-intelligence-reverse-engineering`,$],[`longzai-intelligence-reviewer`,$],[`longzai-intelligence-risk`,$],[`longzai-intelligence-router`,$],[`longzai-intelligence-sales`,$],[`longzai-intelligence-scheduler`,$],[`longzai-intelligence-schema`,$],[`longzai-intelligence-scrape`,$],[`longzai-intelligence-search`,$],[`longzai-intelligence-security`,$],[`longzai-intelligence-security-inventory`,$],[`longzai-intelligence-serverless`,$],[`longzai-intelligence-share`,$],[`longzai-intelligence-skill`,$],[`longzai-intelligence-slider`,$],[`longzai-intelligence-smart-transition`,$],[`longzai-intelligence-sms`,$],[`longzai-intelligence-soul`,$],[`longzai-intelligence-sports`,$],[`longzai-intelligence-ssl`,$],[`longzai-intelligence-storage`,$],[`longzai-intelligence-strategy`,$],[`longzai-intelligence-supply-chain`,$],[`longzai-intelligence-talk`,$],[`longzai-intelligence-taro`,$],[`longzai-intelligence-task`,$],[`longzai-intelligence-templates`,$],[`longzai-intelligence-tenant`,$],[`longzai-intelligence-testing`,$],[`longzai-intelligence-thinking`,$],[`longzai-intelligence-token-exchange`,$],[`longzai-intelligence-token-finance`,$],[`longzai-intelligence-token-handover`,$],[`longzai-intelligence-topology`,$],[`longzai-intelligence-trader`,$],[`longzai-intelligence-trae`,$],[`longzai-intelligence-training-data`,$],[`longzai-intelligence-translator`,$],[`longzai-intelligence-travel`,$],[`longzai-intelligence-trending`,$],[`longzai-intelligence-tsgo`,$],[`longzai-intelligence-twitter`,$],[`longzai-intelligence-typeorm`,$],[`longzai-intelligence-usecase`,$],[`longzai-intelligence-user-research`,$],[`longzai-intelligence-userscript`,$],[`longzai-intelligence-utils`,$],[`longzai-intelligence-value-chain`,$],[`longzai-intelligence-vector-search`,$],[`longzai-intelligence-vendor`,$],[`longzai-intelligence-venture-capital`,$],[`longzai-intelligence-voice`,$],[`longzai-intelligence-vscode-developer`,$],[`longzai-intelligence-warehouse`,$],[`longzai-intelligence-wealth`,$],[`longzai-intelligence-web3`,$],[`longzai-intelligence-webhook`,$],[`longzai-intelligence-websocket`,$],[`longzai-intelligence-wechat`,$],[`longzai-intelligence-wechat-miniprogram`,$],[`longzai-intelligence-wechat-pay`,$],[`longzai-intelligence-wiki`,$],[`longzai-intelligence-work`,$],[`longzai-intelligence-worker`,$],[`longzai-intelligence-workflow`,$],[`longzai-intelligence-workspace`,$],[`longzai-intelligence-writer`,$],[`longzai-intelligence-zcode`,$]]),bu=`LZI_GLOBALS_ROOT`,xu=/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/;var Su=class extends Error{details;constructor(e,t=`install.extraScopes`){super(`${t} 校验失败:\n${e.map(e=>`- ${e}`).join(`
184
- `)}`),this.name=`InstallScopesError`,this.details=e}};function Cu(e){if(typeof e!=`string`)return!1;try{let t=new URL(e);return t.protocol===`http:`||t.protocol===`https:`}catch{return!1}}function wu(e,t,n,r){let i=e instanceof Map?Object.fromEntries(e):{...e},a=[],o={};for(let[n,i]of Object.entries(t??{})){let t=n.replace(/^@+/,``);if(t.length===0||!xu.test(t)){a.push(`\`${n}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,@ 前缀可省略)`);continue}if(!Cu(i)){a.push(`\`${n}\` 的安装源 \`${String(i)}\` 不是合法的 http/https URL`);continue}if(o[t]!==void 0&&o[t]!==i){a.push(`\`${t}\` 在 extraScopes 内重复声明且安装源不一致`);continue}if(e instanceof Map?e.has(t):Object.hasOwn(e,t)){a.push(`\`${t}\` 与预定义 scope 冲突(预定义不可覆盖,如需调整请在 ${r} 维护)`);continue}o[t]=i}let s=/* @__PURE__ */ new Set;for(let e of n??[]){let t=e.replace(/^@+/,``);if(t.length===0||!xu.test(t)){a.push(`\`${e}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,@ 前缀可省略)`);continue}if(o[t]!==void 0){a.push(`\`${t}\` 同时出现在 extraScopes 与 privateScopes(追加公网安装源与私有轨声明矛盾)`);continue}s.add(t)}if(a.length>0)throw new Su(a);for(let[e,t]of Object.entries(o))i[e]=t;for(let e of s)delete i[e];return i}function Tu(e,t,n){return wu(e,t,n,`globals 仓 lzi-bun-install.config.ts`)}function Eu(e){let t=[];if(typeof e!=`object`||!e)throw new Su([`default export 必须是对象({ scopes: { ... } })`],`globals 预设 lzi-bun-install.config.ts`);let n=typeof e==`object`&&e&&`scopes`in e?e.scopes:void 0;if(typeof n!=`object`||!n||Array.isArray(n))throw new Su([`scopes 必须是 scope → registry 的对象映射`],`globals 预设 lzi-bun-install.config.ts`);let r={};for(let[e,i]of Object.entries(n)){if(!xu.test(e)){t.push(`\`${e}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,不含 @ 前缀)`);continue}if(typeof i!=`string`||!Cu(i)){t.push(`\`${e}\` 的安装源 \`${String(i)}\` 不是合法的 http/https URL`);continue}r[e]=i}if(t.length>0)throw new Su(t,`globals 预设 lzi-bun-install.config.ts`);if(Object.keys(r).length===0)throw new Su([`scopes 清单为空(真源不允许空清单)`],`globals 预设 lzi-bun-install.config.ts`);return r}var Du=class extends Error{configPath;constructor(e,t){super(e),this.name=`SharedConfigError`,this.configPath=t}},Ou=class extends Du{cause;constructor(e,t){super(`加载配置文件 ${e} 失败`,e),this.name=`SharedConfigLoadError`,this.cause=t}},ku=class extends Du{searchFrom;constructor(e){super(`未在 ${e} 及其上级目录中找到 lzi.config.ts 配置文件`,e),this.name=`SharedConfigNotFoundError`,this.searchFrom=e}};const Au=[`packages/*`,`apps/*`];function ju(e){let r=s(e,`package.json`);if(!t(r))throw new ku(e);let i;try{i=JSON.parse(n(r,`utf8`)).workspaces}catch(e){throw new Ou(r,e)}let a=Array.isArray(i)?i:i?.packages;return a&&a.length>0?a:Au}async function Mu(e,r={}){let i=ju(e),a=/* @__PURE__ */ new Set,o=[];for(let c of i){let i=new Bun.Glob(`${c}/package.json`);for await(let c of i.scan({cwd:e,absolute:!0,onlyFiles:!0})){let e=s(c,`..`);if(a.has(e))continue;let i;try{i=JSON.parse(n(c,`utf8`))}catch{continue}typeof i.name==`string`&&i.name.length!==0&&(r.configFileName!==void 0&&!t(s(e,r.configFileName))||(a.add(e),o.push({name:i.name,dir:e})))}}return o}function Nu(e=process.cwd()){let n=s(e);for(;;){let e=o(n,`lzi.config.ts`);if(t(e))return e;let r=a(n);if(r===n)return null;n=r}}async function Pu(e={}){let t=e.cwd??process.cwd(),n=Nu(t);if(n===null)throw new ku(t);let r=s(n,`..`);try{return{config:(await import(n)).default,configPath:r,configFilePath:n}}catch(e){throw new Ou(n,e)}}function Fu(e,n=process.cwd()){let r=Array.isArray(e)?e:[e],i=s(n);for(;;){for(let e of r){let n=o(i,e);if(t(n))return n}let e=a(i);if(e===i)return null;i=e}}async function Iu(e={}){let t=e.cwd??s(process.cwd());if(e.standaloneFile){let n=Fu(e.standaloneFile,t);if(n)try{let e=await import(n);return{success:!0,config:e.default??e,source:`standalone`,configFilePath:n}}catch(e){throw new Ou(n,e)}}if(e.unifiedField)try{let{config:n,configFilePath:r}=await Pu({cwd:t}),i=n?.[e.unifiedField];if(i!==void 0)return{success:!0,config:i,source:`unified`,configFilePath:r}}catch{}return{success:!1,configFilePath:null}}var Lu=class extends Error{bunfigPath;constructor(e){super(`${e} 已存在且非 lzi-bun-cli 生成(缺少 @lzi-bun-cli 自动生成,请勿编辑 标记),如需 lzi-bun-cli 接管,请删除该文件或手动合并后重试`),this.name=`BunfigProtectedError`,this.bunfigPath=e}};function Ru(e){return`"${e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}"`}function zu(e){return`[${e.map(e=>Ru(e)).join(`, `)}]`}function Bu(e){let t=[];return e.lines!==void 0&&t.push(`lines = ${e.lines}`),e.functions!==void 0&&t.push(`functions = ${e.functions}`),e.statements!==void 0&&t.push(`statements = ${e.statements}`),`{ ${t.join(`, `)} }`}function Vu(e){let t=[`registry = ${Ru(e.registry)}`],n=Uu(`linker`,e.linker);n&&t.push(n);let r=Uu(`globalStore`,e.globalStore);r&&t.push(r);let i=Object.entries(e.scopes).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${Ru(`@${e}`)} = ${Ru(t)}`),a=[`[install]\n${t.join(`
184
+ `)}`),this.name=`InstallScopesError`,this.details=e}};function Cu(e){if(typeof e!=`string`)return!1;try{let t=new URL(e);return t.protocol===`http:`||t.protocol===`https:`}catch{return!1}}function wu(e,t,n,r){let i=e instanceof Map?Object.fromEntries(e):{...e},a=[],o={};for(let[n,i]of Object.entries(t??{})){let t=n.replace(/^@+/,``);if(t.length===0||!xu.test(t)){a.push(`\`${n}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,@ 前缀可省略)`);continue}if(!Cu(i)){a.push(`\`${n}\` 的安装源 \`${String(i)}\` 不是合法的 http/https URL`);continue}if(o[t]!==void 0&&o[t]!==i){a.push(`\`${t}\` 在 extraScopes 内重复声明且安装源不一致`);continue}if(e instanceof Map?e.has(t):Object.hasOwn(e,t)){a.push(`\`${t}\` 与预定义 scope 冲突(预定义不可覆盖,如需调整请在 ${r} 维护)`);continue}o[t]=i}let s=/* @__PURE__ */ new Set;for(let e of n??[]){let t=e.replace(/^@+/,``);if(t.length===0||!xu.test(t)){a.push(`\`${e}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,@ 前缀可省略)`);continue}if(o[t]!==void 0){a.push(`\`${t}\` 同时出现在 extraScopes 与 privateScopes(追加公网安装源与私有轨声明矛盾)`);continue}s.add(t)}if(a.length>0)throw new Su(a);for(let[e,t]of Object.entries(o))i[e]=t;for(let e of s)delete i[e];return i}function Tu(e,t,n){return wu(e,t,n,`globals 仓 lzi-bun-install.config.ts`)}function Eu(e){let t=[];if(typeof e!=`object`||!e)throw new Su([`default export 必须是对象({ scopes: { ... } })`],`globals 预设 lzi-bun-install.config.ts`);let n=typeof e==`object`&&e&&`scopes`in e?e.scopes:void 0;if(typeof n!=`object`||!n||Array.isArray(n))throw new Su([`scopes 必须是 scope → registry 的对象映射`],`globals 预设 lzi-bun-install.config.ts`);let r={};for(let[e,i]of Object.entries(n)){if(!xu.test(e)){t.push(`\`${e}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,不含 @ 前缀)`);continue}if(typeof i!=`string`||!Cu(i)){t.push(`\`${e}\` 的安装源 \`${String(i)}\` 不是合法的 http/https URL`);continue}r[e]=i}if(t.length>0)throw new Su(t,`globals 预设 lzi-bun-install.config.ts`);if(Object.keys(r).length===0)throw new Su([`scopes 清单为空(真源不允许空清单)`],`globals 预设 lzi-bun-install.config.ts`);return r}var Du=class extends Error{configPath;constructor(e,t){super(e),this.name=`SharedConfigError`,this.configPath=t}},Ou=class extends Du{cause;constructor(e,t){super(`加载配置文件 ${e} 失败`,e),this.name=`SharedConfigLoadError`,this.cause=t}},ku=class extends Du{searchFrom;constructor(e){super(`未在 ${e} 及其上级目录中找到 lzi.config.ts 配置文件`,e),this.name=`SharedConfigNotFoundError`,this.searchFrom=e}};const Au=[`packages/*`,`apps/*`];function ju(e){let r=s(e,`package.json`);if(!t(r))throw new ku(e);let i;try{i=JSON.parse(n(r,`utf8`)).workspaces}catch(e){throw new Ou(r,e)}let a=Array.isArray(i)?i:i?.packages;return a&&a.length>0?a:Au}async function Mu(e,r={}){let i=ju(e),a=/* @__PURE__ */ new Set,o=[];for(let c of i){let i=new Bun.Glob(`${c}/package.json`);for await(let c of i.scan({cwd:e,absolute:!0,onlyFiles:!0})){let e=s(c,`..`);if(a.has(e))continue;let i;try{i=JSON.parse(n(c,`utf8`))}catch{continue}typeof i.name==`string`&&i.name.length!==0&&(r.configFileName!==void 0&&!t(s(e,r.configFileName))||(a.add(e),o.push({name:i.name,dir:e})))}}return o}function Nu(e=process.cwd()){let n=s(e);for(;;){let e=o(n,`lzi.config.ts`);if(t(e))return e;let r=a(n);if(r===n)return null;n=r}}async function Pu(e={}){let t=e.cwd??process.cwd(),n=Nu(t);if(n===null)throw new ku(t);let r=s(n,`..`);try{return{config:(await import(n)).default,configPath:r,configFilePath:n}}catch(e){throw new Ou(n,e)}}function Fu(e,n=process.cwd()){let r=Array.isArray(e)?e:[e],i=s(n);for(;;){for(let e of r){let n=o(i,e);if(t(n))return n}let e=a(i);if(e===i)return null;i=e}}async function Iu(e={}){let t=e.cwd??s(process.cwd());if(e.standaloneFile){let n=Fu(e.standaloneFile,t);if(n)try{let e=await import(n);return{success:!0,config:e.default??e,source:`standalone`,configFilePath:n}}catch(e){throw new Ou(n,e)}}if(e.unifiedField)try{let{config:n,configFilePath:r}=await Pu({cwd:t}),i=n?.[e.unifiedField];if(i!==void 0)return{success:!0,config:i,source:`unified`,configFilePath:r}}catch{}return{success:!1,configFilePath:null}}var Lu=class extends Error{bunfigPath;constructor(e){super(`${e} 已存在且非 lzi-bun-cli 生成(缺少 @lzi-bun-cli 自动生成,请勿编辑 标记),如需 lzi-bun-cli 接管,请删除该文件或手动合并后重试`),this.name=`BunfigProtectedError`,this.bunfigPath=e}};function Ru(e){return`"${e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`)}"`}function zu(e,t){let n=e.map(e=>Ru(e)),r=`[${n.join(`, `)}]`;return`${t} = `.length+r.length<=100?r:`[\n${n.map(e=>` ${e},`).join(`
185
+ `)}\n]`}function Bu(e){let t=[];return e.lines!==void 0&&t.push(`lines = ${e.lines}`),e.functions!==void 0&&t.push(`functions = ${e.functions}`),e.statements!==void 0&&t.push(`statements = ${e.statements}`),`{ ${t.join(`, `)} }`}function Vu(e){let t=[`registry = ${Ru(e.registry)}`],n=Uu(`linker`,e.linker);n&&t.push(n);let r=Uu(`globalStore`,e.globalStore);r&&t.push(r);let i=Object.entries(e.scopes).sort(([e],[t])=>e.localeCompare(t)).map(([e,t])=>`${Ru(`@${e}`)} = ${Ru(t)}`),a=[`[install]\n${t.join(`
185
186
  `)}`];return i.length>0&&a.push(`[install.scopes]\n${i.join(`
186
187
  `)}`),a.join(`
187
188
 
188
- `)}function Hu(e,t){return{registry:`https://mirrors.cloud.tencent.com/npm/`,scopes:Tu(t,e?.extraScopes,e?.privateScopes),linker:e?.linker,globalStore:e?.globalStore}}function Uu(e,t){if(t!==void 0){if(typeof t==`boolean`||typeof t==`number`)return`${e} = ${t}`;if(typeof t==`string`)return`${e} = ${Ru(t)}`;if(Array.isArray(t))return t.length===0?void 0:`${e} = ${zu(t)}`}}function Wu(e){let t=[];e.install&&t.push(Vu(e.install));let n=e.test,r=[],i=Uu(`preload`,n.preload);i&&r.push(i);let a=Uu(`coverage`,n.coverage);a&&r.push(a);let o=Uu(`coverageSkipTestFiles`,n.coverageSkipTestFiles);o&&r.push(o);let s=Uu(`coverageReporter`,n.coverageReporter);s&&r.push(s);let c=Uu(`coverageDir`,n.coverageDir);c&&r.push(c);let l=Uu(`coveragePathIgnorePatterns`,n.coveragePathIgnorePatterns);l&&r.push(l),n.coverageThreshold!==void 0&&(typeof n.coverageThreshold==`number`?r.push(`coverageThreshold = ${n.coverageThreshold}`):r.push(`coverageThreshold = ${Bu(n.coverageThreshold)}`));let u=Uu(`coverageIgnoreSourcemaps`,n.coverageIgnoreSourcemaps);u&&r.push(u);let d=Uu(`timeout`,n.timeout);return d&&r.push(d),r.length>0&&t.push(`[test]\n${r.join(`
189
+ `)}function Hu(e,t){return{registry:`https://mirrors.cloud.tencent.com/npm/`,scopes:Tu(t,e?.extraScopes,e?.privateScopes),linker:e?.linker,globalStore:e?.globalStore}}function Uu(e,t){if(t!==void 0){if(typeof t==`boolean`||typeof t==`number`)return`${e} = ${t}`;if(typeof t==`string`)return`${e} = ${Ru(t)}`;if(Array.isArray(t))return t.length===0?void 0:`${e} = ${zu(t,e)}`}}function Wu(e){let t=[];e.install&&t.push(Vu(e.install));let n=e.test,r=[],i=Uu(`preload`,n.preload);i&&r.push(i);let a=Uu(`coverage`,n.coverage);a&&r.push(a);let o=Uu(`coverageSkipTestFiles`,n.coverageSkipTestFiles);o&&r.push(o);let s=Uu(`coverageReporter`,n.coverageReporter);s&&r.push(s);let c=Uu(`coverageDir`,n.coverageDir);c&&r.push(c);let l=Uu(`coveragePathIgnorePatterns`,n.coveragePathIgnorePatterns);l&&r.push(l),n.coverageThreshold!==void 0&&(typeof n.coverageThreshold==`number`?r.push(`coverageThreshold = ${n.coverageThreshold}`):r.push(`coverageThreshold = ${Bu(n.coverageThreshold)}`));let u=Uu(`coverageIgnoreSourcemaps`,n.coverageIgnoreSourcemaps);u&&r.push(u);let d=Uu(`timeout`,n.timeout);return d&&r.push(d),r.length>0&&t.push(`[test]\n${r.join(`
189
190
  `)}`),`# @lzi-bun-cli 自动生成,请勿编辑\n${t.join(`
190
191
 
191
192
  `)}\n`}function Gu(e,t={}){let n=t.isRoot===!0,r=e?.test,i=r?r.coverage!==void 0||r.coverageThreshold!==void 0||r.coveragePathIgnorePatterns!==void 0||r.coverageReporter!==void 0||r.coverageSkipTestFiles!==void 0||r.coverageDir!==void 0||r.preload!==void 0||r.timeout!==void 0:!1;if(!n&&!i)return null;let a={test:r??{}};if(n){if(t.installScopesPreset===void 0)throw Error(`root bunfig 生成需要 globals 仓 install scopes 预设(LZI_GLOBALS_ROOT 定位 longzai-intelligence-globals → lzi-bun-install.config.ts),调用方应先解析并加载`);a.install=Hu(e?.install,t.installScopesPreset)}return{content:Wu(a),shouldWrite:!0}}function Ku(e){return e.map(e=>{if(typeof e==`string`)return e;if(e instanceof Error)return e.message;try{return JSON.stringify(e)}catch{return String(e)}}).join(` `)}function qu(...e){process.stdout.write(`${Ku(e)}\n`)}function Ju(...e){process.stderr.write(`${Ku(e)}\n`)}const Yu=async(e=process.cwd())=>{let t=await Iu({cwd:e,standaloneFile:`lzi-bun.config.ts`,unifiedField:`bun`});return t.success?t.config:(qu(`提示: 未找到配置文件 lzi-bun.config.ts,使用默认配置`),{})};var Xu=class extends Error{constructor(e){super(e),this.name=`GlobalsUnresolvedError`}};const Zu=e=>`已配置的 globals 定位未能命中(longzai-intelligence-globals),已尝试:\n ${e.join(`
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@longzai-intelligence-bun/cli",
3
- "version": "0.0.24",
3
+ "version": "0.0.25",
4
4
  "description": "Longzai Intelligence bun 工具集 CLI",
5
5
  "license": "UNLICENSED",
6
6
  "bin": {
@@ -33,7 +33,7 @@
33
33
  "test:coverage": "bun test --coverage"
34
34
  },
35
35
  "dependencies": {
36
- "@longzai-intelligence-bun/config": "0.0.24",
36
+ "@longzai-intelligence-bun/config": "0.0.25",
37
37
  "@longzai-intelligence-cli/core": "^0.0.10",
38
38
  "@longzai-intelligence-cli/standard": "^0.0.10",
39
39
  "@longzai-intelligence-shared-config/core": "^0.0.7",