@cordis-tavern/build-tsdown
v1.0.0-alpha.2
Published
cordis-tavern 插件构建工具:基于 tsdown,统一处理前后端双入口、CSS 资源、外部依赖
Readme
@cordis-tavern/build-tsdown
cordis-tavern 插件构建工具,基于 tsdown。
统一处理:前端 + 后端双入口、CSS 资源拷贝、外部依赖表。
用法
import { buildPlugin, buildAll } from '@cordis-tavern/build-tsdown'
// 构建单个插件
await buildPlugin({ dir: 'path/to/ct-ui-theme' })
// 批量构建目录下所有插件(含 ct 字段的包)
await buildAll({ root: 'path/to/plugins' })自动发现
| 来源 | 发现内容 |
|---|---|
| exports["."].source | 后端入口 → dist/index.js(node, esm) |
| exports["./client"].source | 前端入口 → dist/client/entry.js(browser, iife) |
| src/*.css | CSS 资源 → 拷贝到 dist/ 同级 |
| ct.client.external | 插件级外部依赖 |
外部依赖(自动标 external)
- 内核库:
@cordis-tavern/cordis等 5 包($CT_HOME提供单实例) - 前端库:
react/react-dom/scheduler(宿主页面提供) - 插件级:
ct.client.external声明的库
与旧构建工具的区别
| | 旧 scripts/build.mjs | @cordis-tavern/build-tsdown |
|---|---|---|
| 后端入口 | ✅ | ✅ |
| 前端入口 | ❌ 只有 dist/index.js | ✅ dist/client/entry.js |
| CSS 拷贝 | 手动加在 build.mjs | ✅ 自动 |
| 打包器 | esbuild | tsdown(rolldown) |
