{"_id":"@composy/gantt-vue","name":"@composy/gantt-vue","dist-tags":{"latest":"0.0.1"},"versions":{"0.0.1":{"name":"@composy/gantt-vue","version":"0.0.1","description":"企业级甘特图 Vue 3 组件","keywords":["gantt","vue","vue3","gantt-chart","project-management"],"author":{"name":"ldesign"},"license":"MIT","type":"module","sideEffects":["**/*.css"],"exports":{".":{"types":"./es/index.d.ts","import":"./es/index.js","require":"./lib/index.cjs","default":"./es/index.js"},"./composables/*":{"types":"./es/composables/*.d.ts","import":"./es/composables/*.js","require":"./lib/composables/*.cjs","default":"./es/composables/*.js"},"./plugins/*":{"types":"./es/plugins/*.d.ts","import":"./es/plugins/*.js","require":"./lib/plugins/*.cjs","default":"./es/plugins/*.js"},"./es/index.css":"./es/index.css","./package.json":"./package.json"},"main":"./lib/index.cjs","module":"./es/index.js","types":"./es/index.d.ts","unpkg":"./dist/index.js","jsdelivr":"./dist/index.js","scripts":{"build":"ldesign-builder build && node --experimental-strip-types ../../../../scripts/index.ts workspace:ensure-package-outputs --cwd ../.. --target vue","lint":"eslint . --cache","lint:check":"eslint . --cache --max-warnings 0","lint:fix":"eslint . --cache --fix","type-check":"vue-tsc --noEmit","test":"ltesting run:unit","test:run":"ltesting run:unit"},"peerDependencies":{"vue":"^3.5.32"},"devDependencies":{"@antfu/eslint-config":"9.1.0","@composy/builder":"^0.0.1","@composy/testing":"^0.0.1","eslint":"10.7.0","typescript":"5.9.3"},"typings":"./es/index.d.ts","browser":"./dist/index.js","_id":"@composy/gantt-vue@0.0.1","_nodeVersion":"23.11.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-sIRycyZy+HLiBKcme6TfV8zDZVtqAJ3HztMEiiI27b56fZdQWvr2U7g+GylRE5uHSfZQLPuG4thsAWbnOpwVjw==","shasum":"98fedd2d07bb607b11b0cc8a79b53df31ad1cb4a","tarball":"https://registry.npmjs.org/@composy/gantt-vue/-/gantt-vue-0.0.1.tgz","fileCount":74,"unpackedSize":531536,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGEDUSAdqBkuqzA2+H5E1QBpZ90Lo4bIYOYHzX7GBw/zAiEAr9ro2lJJWpkHNavM6xES1UIoLNk/68syQ5ZkdEvJSy0="}]},"_npmUser":{"name":"swimly","email":"979741120@qq.com"},"directories":{},"maintainers":[{"name":"swimly","email":"979741120@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/gantt-vue_0.0.1_1786948439710_0.39250808249262326"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-17T06:33:58.383Z","0.0.1":"2026-08-17T06:33:59.858Z","modified":"2026-08-17T06:34:01.550Z"},"maintainers":[{"name":"swimly","email":"979741120@qq.com"}],"description":"企业级甘特图 Vue 3 组件","keywords":["gantt","vue","vue3","gantt-chart","project-management"],"author":{"name":"ldesign"},"license":"MIT","readme":"# @composy/gantt-vue\n\n企业级甘特图 Vue 3 组件，基于 `@composy/gantt-core` 封装。\n\n## 安装\n\n```bash\npnpm add @composy/gantt-vue @composy/gantt-core\n```\n\n## 使用\n\n### 组件方式\n\n```vue\n<template>\n  <GanttChart\n    :tasks=\"tasks\"\n    :dependencies=\"dependencies\"\n    time-scale=\"day\"\n    theme=\"light\"\n    @ready=\"onReady\"\n  />\n</template>\n\n<script setup>\nimport { GanttChart } from '@composy/gantt-vue'\nimport '@composy/gantt-vue/style'\n</script>\n```\n\n### Composable 方式\n\n```vue\n<script setup>\nimport { useGantt } from '@composy/gantt-vue'\n\nconst { containerRef, ganttInstance, tasks } = useGantt({\n  tasks: [...],\n})\n</script>\n```\n\n### Plugin 安装\n\n```ts\nimport { createApp } from 'vue'\nimport { GanttPlugin } from '@composy/gantt-vue'\nimport '@composy/gantt-vue/style'\n\nconst app = createApp(App)\napp.use(GanttPlugin)\n```\n\n## Props\n\n| Prop | 类型 | 默认值 | 说明 |\n|---|---|---|---|\n| `tasks` | `Task[]` | (必填) | 任务列表 |\n| `dependencies` | `Dependency[]` | `[]` | 依赖关系 |\n| `timeScale` | `TimeScale` | `'day'` | 时间刻度 |\n| `theme` | `'light' \\| 'dark' \\| 'auto'` | `'light'` | 主题 |\n| `height` | `number \\| string` | `600` | 容器高度 |\n| `readonly` | `boolean` | `false` | 只读模式 |\n\n## Events\n\n| 事件 | 参数 | 说明 |\n|---|---|---|\n| `ready` | `gantt: GanttChart` | 甘特图就绪 |\n| `task-click` | `task: Task` | 任务点击 |\n| `task-dblclick` | `task: Task` | 任务双击 |\n| `task-update` | `task, changes` | 任务更新 |\n| `zoom-change` | `scale: string` | 缩放变化 |\n\n## 样式导入\n\n```ts\nimport '@composy/gantt-vue/style'\n```\n\n## 产物目录\n\n```\ndist/index.js       # UMD\ndist/index.min.js   # UMD minified\ndist/index.css      # 样式\ndist/index.min.css  # 样式 minified\nes/index.js         # ESM\nlib/index.cjs       # CJS\n```\n","readmeFilename":"README.md","_rev":"1-99d34f58f5ecf4ff2de868b2373ba800"}