{"_id":"@blueprint1453/element-ui-cli","name":"@blueprint1453/element-ui-cli","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@blueprint1453/element-ui-cli","version":"0.1.0","type":"module","publishConfig":{"access":"public"},"bin":{"element-ui-cli":"dist/index.js"},"repository":{"type":"git","url":"git+https://github.com/blueprint1453/element-ui-cli.git"},"bugs":{"url":"https://github.com/blueprint1453/element-ui-cli/issues"},"homepage":"https://github.com/blueprint1453/element-ui-cli#readme","scripts":{"build":"tsup src/index.ts --format esm --dts --clean","dev":"tsx src/index.ts","start":"node dist/index.js","extract:data":"tsx scripts/extract.ts","sync:data":"tsx scripts/sync.ts","test":"npm run build && node --test tests/*.test.mjs"},"dependencies":{"commander":"^12.1.0"},"devDependencies":{"tsup":"^8.2.4","tsx":"^4.19.2","typescript":"^5.6.2"},"gitHead":"8d55493b6797eed90e85fa2ce09b5130ecdbcc0d","_id":"@blueprint1453/element-ui-cli@0.1.0","description":"一个面向 **Element UI (Vue2)** 的离线文档命令行工具。","_nodeVersion":"24.11.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-5RvMb8QK3sDhI1+hGDz76S2mM2V0UasypavSi6KqjxdEK9Lk0nxQ8URl0jQrBASKdD0wy62PvPzpClx8UXKkPA==","shasum":"a1f549fc05ecc13986dae16edc0daca077f21c67","tarball":"https://registry.npmjs.org/@blueprint1453/element-ui-cli/-/element-ui-cli-0.1.0.tgz","fileCount":7,"unpackedSize":2671021,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFqzegwNNs+ECieqUtIOxwEHqWgVTL89E3BZURhXNvVZAiAlTq/zwNkbvp0THHmzdol3agyaA51g8++xzXPoaoNxiw=="}]},"_npmUser":{"name":"blueprint1453","email":"845791483@qq.com"},"directories":{},"maintainers":[{"name":"blueprint1453","email":"845791483@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/element-ui-cli_0.1.0_1775141989984_0.5844454587303376"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-02T14:59:49.916Z","0.1.0":"2026-04-02T14:59:50.162Z","modified":"2026-04-02T14:59:50.340Z"},"maintainers":[{"name":"blueprint1453","email":"845791483@qq.com"}],"description":"一个面向 **Element UI (Vue2)** 的离线文档命令行工具。","homepage":"https://github.com/blueprint1453/element-ui-cli#readme","repository":{"type":"git","url":"git+https://github.com/blueprint1453/element-ui-cli.git"},"bugs":{"url":"https://github.com/blueprint1453/element-ui-cli/issues"},"readme":"# @blueprint1453/element-ui-cli\n\n一个面向 **Element UI (Vue2)** 的离线文档命令行工具。\n\n它基于仓库内置的离线元数据（`data/*.json`），可在无网络环境下快速查询：\n\n- 组件文档（`doc`）\n- 组件属性（`props`）\n- 关键词搜索（`search`）\n- 组件清单（`list`）\n- 组件变更记录（`changelog`）\n\n---\n\n## 功能特性\n\n- 离线可用：无需访问线上文档\n- 支持中英文文档输出（`--lang zh|en`）\n- 支持文本 / JSON 两种输出格式（`--format text|json`）\n- 支持指定 Element UI 版本快照（`--element-version`）\n- 内置统一退出码，便于 CI / 脚本集成\n\n---\n\n## 环境要求\n\n- Node.js 18+\n- npm 9+\n\n---\n\n## 安装与启动\n\n### 本地开发运行\n\n```bash\nnpm install\nnpm run build\nnode dist/index.js --help\n```\n\n### 作为命令使用（当前仓库）\n\n```bash\nnpm run build\nnpm link\nelement-ui-cli --help\n```\n\n### 全局安装（npm）\n\n```bash\nnpm install -g @blueprint1453/element-ui-cli\nelement-ui-cli --help\n```\n\n---\n\n## 快速开始\n\n```bash\n# 列出所有组件\nnode dist/index.js list\n\n# 查看 Button 文档（中文）\nnode dist/index.js doc Button --lang zh\n\n# 查看 Button props（JSON）\nnode dist/index.js props Button --format json\n\n# 搜索关键词\nnode dist/index.js search 输入 --lang zh\n\n# 查看 changelog（最多 3 条）\nnode dist/index.js changelog Button --limit 3\n```\n\n---\n\n## 命令说明\n\n### `list`\n\n列出离线组件清单。\n\n```bash\nelement-ui-cli list [--category <category>] [--format text|json] [--element-version <version>]\n```\n\n示例：\n\n```bash\nelement-ui-cli list --category Basic\nelement-ui-cli list --format json\n```\n\n---\n\n### `doc <component>`\n\n输出指定组件离线文档。\n\n```bash\nelement-ui-cli doc <component> [--lang zh|en] [--format text|json] [--element-version <version>]\n```\n\n示例：\n\n```bash\nelement-ui-cli doc Button --lang zh\nelement-ui-cli doc input --lang en --format json\n```\n\n> 支持组件名或文档 slug（大小写不敏感），例如 `Button` / `button`。\n\n---\n\n### `props <component>`\n\n输出指定组件 props。\n\n```bash\nelement-ui-cli props <component> [--required] [--format text|json] [--element-version <version>]\n```\n\n示例：\n\n```bash\nelement-ui-cli props Button\nelement-ui-cli props Input --required\nelement-ui-cli props Button --format json\n```\n\n---\n\n### `search <keyword>`\n\n按关键词搜索组件（名称、slug、描述、文档内容等）。\n\n```bash\nelement-ui-cli search <keyword> [--lang zh|en] [--format text|json] [--element-version <version>]\n```\n\n示例：\n\n```bash\nelement-ui-cli search 按钮 --lang zh\nelement-ui-cli search input --lang en --format json\n```\n\n---\n\n### `changelog <component>`\n\n输出组件离线 changelog。\n\n```bash\nelement-ui-cli changelog <component> [--limit <n>] [--format text|json] [--element-version <version>]\n```\n\n示例：\n\n```bash\nelement-ui-cli changelog Button --limit 5\nelement-ui-cli changelog Button --format json\n```\n\n> 当离线数据中不存在 changelog 时，会返回“数据缺失”错误码（见下文退出码说明）。\n\n---\n\n## 退出码约定\n\n- `0`：执行成功\n- `2`：参数错误（例如 `--format` 非法、`--limit` 非法）\n- `3`：数据缺失（例如组件存在但无文档 / changelog）\n- `4`：未命中（例如组件不存在、搜索无结果）\n\n---\n\n## 版本与数据文件\n\n项目默认版本为 `2.15.14`。\n\n- 主快照：`data/element-v2.json`\n- 版本索引：`data/element-versions.json`\n- 指定版本快照：`data/element-v<tag>.json`\n\n当传入未知或不支持的版本时，会自动回退到默认快照（`element-v2.json`）。\n\n---\n\n## 开发脚本\n\n```bash\n# 构建 CLI（输出 dist）\nnpm run build\n\n# 开发模式运行（直接执行 TS 入口）\nnpm run dev -- --help\n\n# 运行测试（先 build 再执行 node:test）\nnpm test\n\n# 从原始数据提取快照\nnpm run extract:data\n\n# 同步 / 处理版本数据\nnpm run sync:data\n```\n\n---\n\n## 项目结构\n\n```text\n.\n├── src/\n│   ├── index.ts               # CLI 入口\n│   ├── commands/              # 各子命令实现\n│   └── element/               # 元数据加载与类型\n├── data/                      # 离线数据快照\n├── scripts/                   # 数据提取/同步脚本\n├── tests/                     # CLI 集成测试\n└── dist/                      # 构建产物\n```\n\n---\n\n## 注意事项\n\n- `dist/` 为构建产物，提交前请先执行 `npm run build`。\n- 若你直接修改了 `data/`，建议同时补充测试，确保命令行为稳定。\n- 本项目聚焦 Element UI v2 离线检索，不包含在线抓取逻辑。\n","readmeFilename":"README.md","_rev":"1-1fe5e10cac3f463959afb40322039e85"}