{"_id":"@aicblock/vite-plugin-import-component","_rev":"4-95395bfb06f9bac93b4d817548e4d41e","name":"@aicblock/vite-plugin-import-component","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@aicblock/vite-plugin-import-component","version":"1.0.0","keywords":["vite","vite-plugin","aicblock","import-component"],"author":{"name":"jieYang;aicblock"},"license":"MIT","_id":"@aicblock/vite-plugin-import-component@1.0.0","maintainers":[{"name":"aicdyangj","email":"yangj@aicblock.cn"}],"dist":{"shasum":"f10f30f1a1a4fa18278645d690361628bda3e5ac","tarball":"https://registry.npmjs.org/@aicblock/vite-plugin-import-component/-/vite-plugin-import-component-1.0.0.tgz","fileCount":7,"integrity":"sha512-nx3QwHbqQ0X0dpnV/lBxfpHeOu349QORzPXhjEUT24OjZRB5uZZ0Ce1Q5Nx5HGL+0JFbRhEJ5kcPG9VhLgfqNw==","signatures":[{"sig":"MEUCIFodRVIyjkRpU4XJeFwGZntm3Vqlj4NEAWTrsLc4u/WbAiEAjkOeuOVwxU7SocTc24TCISBArKnlM+rkW1gNz6SV2Rc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8350},"main":"lib/index.js","husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS,"}},"types":"./lib/index.d.ts","module":"lib/index.esm.js","browser":"lib/index.browser.js","gitHead":"20b25fe79e6be7fdfac8605b7f2ae0657ffece57","scripts":{"package":"ts-node ./scripts/index.ts && tsc","prepare":"husky install","package:dev":"ts-node ./scripts/index.ts --dev && tsc"},"_npmUser":{"name":"aicdyangj","email":"yangj@aicblock.cn"},"_npmVersion":"10.9.2","description":"🛠️ Vite 插件组件按需引入","directories":{},"_nodeVersion":"22.16.0","_hasShrinkwrap":false,"devDependencies":{"husky":"^9.1.7","esbuild":"^0.24.0","ts-node":"^10.9.2","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.1","@commitlint/cli":"^19.6.0","@dpapejs/node-utils":"^0.1.0","@commitlint/config-conventional":"^19.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vite-plugin-import-component_1.0.0_1773738280219_0.8177050789433953","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@aicblock/vite-plugin-import-component","version":"1.0.1","keywords":["vite","vite-plugin","aicblock","import-component"],"author":{"name":"jieYang;aicblock"},"license":"MIT","_id":"@aicblock/vite-plugin-import-component@1.0.1","maintainers":[{"name":"aicdyangj","email":"yangj@aicblock.cn"}],"dist":{"shasum":"163efd50ce54f2b14fec37495aafc923f9ad80e6","tarball":"https://registry.npmjs.org/@aicblock/vite-plugin-import-component/-/vite-plugin-import-component-1.0.1.tgz","fileCount":8,"integrity":"sha512-ERL75jZMVETDX78Dpq5vwOG1kf3vORyBoh/jyCXev6/r5XBJ5yBQrk9Eq9LCslAhuSOVMxcVqrRWCPwD6R4pPA==","signatures":[{"sig":"MEUCIA+q97xKHLlPFWOodfjyGOrJiMtCoHEVt8htqHXUvSA1AiEAp8Tyf6UG1rhGc1niXxc/L38tmaqRz4Q8RURLOdb+H7g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11437},"main":"lib/index.js","husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS,"}},"types":"./lib/index.d.ts","module":"lib/index.esm.js","browser":"lib/index.browser.js","gitHead":"dd70913ec698ca84aab8a03b90d297e94073eedb","scripts":{"test":"jest --coverage","package":"ts-node ./scripts/index.ts && tsc","prepare":"husky install","package:dev":"ts-node ./scripts/index.ts --dev && tsc"},"_npmUser":{"name":"aicdyangj","email":"yangj@aicblock.cn"},"_npmVersion":"10.9.2","description":"🛠️ Vite 插件组件按需引入","directories":{},"_nodeVersion":"22.16.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^30.3.0","husky":"^9.1.7","esbuild":"^0.24.0","ts-jest":"^29.4.6","ts-node":"^10.9.2","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.1","@commitlint/cli":"^19.6.0","@dpapejs/node-utils":"^0.1.0","@commitlint/config-conventional":"^19.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vite-plugin-import-component_1.0.1_1774520800992_0.5224498435976586","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@aicblock/vite-plugin-import-component","version":"1.0.2","keywords":["vite","vite-plugin","aicblock","import-component"],"author":{"name":"jieYang;aicblock"},"license":"MIT","_id":"@aicblock/vite-plugin-import-component@1.0.2","maintainers":[{"name":"aicdyangj","email":"yangj@aicblock.cn"}],"dist":{"shasum":"e2f2fd2c9de594a98d6de45e141bff5d853437a7","tarball":"https://registry.npmjs.org/@aicblock/vite-plugin-import-component/-/vite-plugin-import-component-1.0.2.tgz","fileCount":7,"integrity":"sha512-R1JwwrHXwzpDFa2FBExj6Nypb/Dp6qY3v2jJNUTV2dguZHV9J+v4GwG4reBMIzCVGbgDE25TDDo5bwbZNZ3YHA==","signatures":[{"sig":"MEUCIDRTGj01qC1ThIypWN6zZKW9Arcl1yraRwLAXt+roQDJAiEA+4UVe48x3QaeEjspIKqMpVEIER9pLTszqGzyW7bPuNA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":11292},"main":"lib/index.js","husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS,"}},"types":"./lib/index.d.ts","module":"lib/index.esm.js","browser":"lib/index.browser.js","gitHead":"a7e4c38304b842e75c854fbc38f58cb9e6557c48","scripts":{"test":"jest --coverage","package":"ts-node ./scripts/index.ts","prepare":"husky install","package:dev":"ts-node ./scripts/index.ts --dev"},"_npmUser":{"name":"aicdyangj","email":"yangj@aicblock.cn"},"_npmVersion":"10.9.2","description":"🛠️ Vite 插件组件按需引入","directories":{},"_nodeVersion":"22.16.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^30.3.0","husky":"^9.1.7","esbuild":"^0.24.0","ts-jest":"^29.4.6","ts-node":"^10.9.2","typescript":"^5.7.2","@types/jest":"^29.5.14","@types/node":"^22.10.1","@commitlint/cli":"^19.6.0","@dpapejs/node-utils":"^0.1.0","@commitlint/config-conventional":"^19.6.0"},"_npmOperationalInternal":{"tmp":"tmp/vite-plugin-import-component_1.0.2_1774537653983_0.6770503670415158","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@aicblock/vite-plugin-import-component","description":"🛠️ Vite 插件组件按需引入","version":"1.0.3","main":"lib/index.js","module":"lib/index.esm.js","browser":"lib/index.browser.js","scripts":{"package:dev":"ts-node ./scripts/index.ts --dev","package":"ts-node ./scripts/index.ts","prepare":"husky install","test":"jest --coverage"},"devDependencies":{"@commitlint/cli":"^19.6.0","@commitlint/config-conventional":"^19.6.0","@dpapejs/node-utils":"^0.1.0","@types/jest":"^29.5.14","@types/node":"^22.10.1","esbuild":"^0.24.0","husky":"^9.1.7","jest":"^30.3.0","ts-jest":"^29.4.6","ts-node":"^10.9.2","typescript":"^5.7.2"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS,"}},"keywords":["vite","vite-plugin","aicblock","import-component"],"author":{"name":"jieYang;aicblock"},"license":"MIT","_id":"@aicblock/vite-plugin-import-component@1.0.3","gitHead":"a7e4c38304b842e75c854fbc38f58cb9e6557c48","types":"./lib/index.d.ts","_nodeVersion":"22.16.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-UsNiMneC0D+k4Oe0Fe2GEc4xQ8ei/ogtUJfSNpvG1K2lKIfCOplDGJMSIMADC+dSCi4wDFQJlsa5fYiLPFO50A==","shasum":"fb0f5af38f9de7c9b2bd2eff7a4d588ffa9f3beb","tarball":"https://registry.npmjs.org/@aicblock/vite-plugin-import-component/-/vite-plugin-import-component-1.0.3.tgz","fileCount":7,"unpackedSize":11306,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIE+VtnosnnuaI+p9pqP7X8be1rmrbJ4IPatkY7zZMFyGAiBXsQb378H+nST9sDcbCCDjYP3Xbb8IzIhNFBV8keVj0Q=="}]},"_npmUser":{"name":"aicdyangj","email":"yangj@aicblock.cn"},"directories":{},"maintainers":[{"name":"aicdyangj","email":"yangj@aicblock.cn"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vite-plugin-import-component_1.0.3_1774539056706_0.18111911337283626"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-17T09:04:39.739Z","modified":"2026-03-26T15:30:56.972Z","1.0.0":"2026-03-17T09:04:40.360Z","1.0.1":"2026-03-26T10:26:41.143Z","1.0.2":"2026-03-26T15:07:34.144Z","1.0.3":"2026-03-26T15:30:56.843Z"},"author":{"name":"jieYang;aicblock"},"license":"MIT","keywords":["vite","vite-plugin","aicblock","import-component"],"description":"🛠️ Vite 插件组件按需引入","maintainers":[{"name":"aicdyangj","email":"yangj@aicblock.cn"}],"readme":"# @dpapejs/vite-plugin-import-component\n\nModular import plugin for Vite, compatible with [Element UI 2.X](https://element.eleme.cn/#/zh-CN), [Ant Design Vue](https://antdv.com/), and so on.\n\n## Features\n\n- ✅ Support single configuration object\n- ✅ Support multiple configuration objects (array)\n- ✅ Support component aliases (e.g., `import { Button as ElButton }`)\n- ✅ Support different style configurations (css, less, styleDir)\n- ✅ Support custom library directory\n- ✅ High test coverage (90%+)\n\n## Use\n\n### Install\n\n```sh\nnpm i @dpapejs/vite-plugin-import-component -D\n# OR\nyarn add @dpapejs/vite-plugin-import-component -D\n```\n\n### `vite.config.js`\n\n#### Single configuration\n\n```ts\nimport { defineConfig } from 'vite'\nimport usePluginImport from '@dpapejs/vite-plugin-import-component'\n\nexport default defineConfig({\n  plugins: [\n    ...// other plugins\n    usePluginImport({\n      libraryName: '@dpapejs/cmod-ui',\n      libraryDirectory: 'es',\n      type: 'js',\n      style: true\n    })\n  ]\n})\n```\n\n#### Multiple configurations\n\n```ts\nimport { defineConfig } from 'vite'\nimport usePluginImport from '@dpapejs/vite-plugin-import-component'\n\nexport default defineConfig({\n  plugins: [\n    ...// other plugins\n    usePluginImport([\n      {\n        libraryName: '@aicblock/aibui-vue',\n        libraryDirectory: 'es',\n        type: 'js',\n        style: true\n      },\n      {\n        libraryName: 'element-ui',\n        libraryDirectory: 'lib',\n        type: 'js',\n        style: true\n      },\n      {\n        libraryName: 'ant-design-vue',\n        libraryDirectory: 'es',\n        type: 'js',\n        style: true\n      }\n    ])\n  ]\n})\n```\n\n## API\n\n### Configuration options\n\n| Option             | Type                         | Default | Description                    |\n| ------------------ | ---------------------------- | ------- | ------------------------------ |\n| `libraryName`      | string                       | -       | Component library name         |\n| `libraryDirectory` | string                       | `lib`   | Component directory            |\n| `type`             | `'style' \\| 'js'`            | `js`    | Component type                 |\n| `style`            | `boolean \\| 'css' \\| 'less'` | `true`  | Style import mode              |\n| `styleDir`         | boolean                      | `false` | Whether to use style directory |\n\n### Examples\n\n#### Basic usage\n\n```javascript\n// Input\nimport { Button } from '@dpapejs/cmod-ui'\n\n// Output\nimport Button from '@dpapejs/cmod-ui/es/button/index.js'\nimport '@dpapejs/cmod-ui/es/button/style.js'\n```\n\n#### With aliases\n\n```javascript\n// Input\nimport { Button as ElButton } from 'element-ui'\n\n// Output\nimport ElButton from 'element-ui/lib/button/index.js'\nimport 'element-ui/lib/button/style.js'\n```\n\n#### With different style options\n\n```javascript\n// style: 'css'\nimport Button from '@dpapejs/cmod-ui/es/button/index.js'\nimport '@dpapejs/cmod-ui/es/button/css.js'\n\n// style: 'less'\nimport Button from '@dpapejs/cmod-ui/es/button/index.js'\nimport '@dpapejs/cmod-ui/es/button/less.js'\n\n// style: true, styleDir: true\nimport Button from '@dpapejs/cmod-ui/es/button/index.js'\nimport '@dpapejs/cmod-ui/es/button/style/index.js'\n```\n\n## Test Coverage\n\n| Metric     | Value  |\n| ---------- | ------ |\n| Statements | 98.11% |\n| Branches   | 92.68% |\n| Functions  | 100%   |\n| Lines      | 100%   |\n\n## LICENSE\n\n[MIT](./LICENSE)\n","readmeFilename":"README.md"}