{"_id":"@anontokyo/plugin-vue2-jsx","name":"@anontokyo/plugin-vue2-jsx","dist-tags":{"latest":"1.1.1"},"versions":{"1.1.1":{"name":"@anontokyo/plugin-vue2-jsx","version":"1.1.1","license":"MIT","author":{"name":"Evan You"},"packageManager":"bun@1.3.13","workspaces":["playground/*"],"main":"./dist/index.cjs","module":"./dist/index.mjs","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs"}},"scripts":{"dev":"unbuild --stub","build":"unbuild && bun run patch-cjs","patch-cjs":"bun ./scripts/patchCJS.ts","prepublishOnly":"bun run build","test":"bun run build && bun run --cwd playground/basic build && bun run --cwd playground/ssr build"},"engines":{"node":">=20.19.0"},"repository":{"type":"git","url":"git+https://github.com/vitejs/vite-plugin-vue2-jsx.git"},"bugs":{"url":"https://github.com/vitejs/vite-plugin-vue2-jsx/issues"},"homepage":"https://github.com/vitejs/vite-plugin-vue2-jsx#readme","dependencies":{"@babel/core":"^7.20.5","@babel/plugin-syntax-import-meta":"^7.10.4","@babel/plugin-transform-typescript":"^7.20.2","@rollup/pluginutils":"^5.0.2","@vue/babel-preset-jsx":"^1.4.0"},"devDependencies":{"@types/babel__core":"^7.1.20","@types/node":"^20.19.0","picocolors":"^1.0.0","typescript":"^5.5.4","unbuild":"^2.0.0","vite":"^8.0.0","vue":"^2.7.14"},"peerDependencies":{"vite":"^8.0.0","vue":"^2.7.0"},"publishConfig":{"access":"public"},"gitHead":"531aa0705eee8eae922dfb5b60bee0b1d303ca11","_id":"@anontokyo/plugin-vue2-jsx@1.1.1","description":"> [!CAUTION] > Vue 2 has reached EOL, and this project is no longer actively maintained.","_nodeVersion":"26.7.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-vmyVJg3rCmYOpZVGS/tXkYtgtMUwbNOTahGJaH+eSqB4tjCgSKXlsLaCP14diICh9WdIXAw5QVhc5kLoGViV2A==","shasum":"b662bd7a3fa2b395b69d92625b0c0c5bfa603d47","tarball":"https://registry.npmjs.org/@anontokyo/plugin-vue2-jsx/-/plugin-vue2-jsx-1.1.1.tgz","fileCount":8,"unpackedSize":34385,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBzNXPV+Hm1XVOzrqsMdjhh0Rh5gpmqeLho5ydnaSP0oAiEA9T5YOht+l61o7nFi0CqYKqLHVvEpXiLBInEvUnjPKP0="}]},"_npmUser":{"name":"reach!","email":"paopaothemonster@gmail.com"},"directories":{},"maintainers":[{"name":"reach!","email":"paopaothemonster@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/plugin-vue2-jsx_1.1.1_1786957993196_0.9990554689138331"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-17T09:13:12.229Z","1.1.1":"2026-08-17T09:13:13.312Z","modified":"2026-08-17T09:13:13.668Z"},"maintainers":[{"name":"reach!","email":"paopaothemonster@gmail.com"}],"description":"> [!CAUTION] > Vue 2 has reached EOL, and this project is no longer actively maintained.","homepage":"https://github.com/vitejs/vite-plugin-vue2-jsx#readme","repository":{"type":"git","url":"git+https://github.com/vitejs/vite-plugin-vue2-jsx.git"},"author":{"name":"Evan You"},"bugs":{"url":"https://github.com/vitejs/vite-plugin-vue2-jsx/issues"},"license":"MIT","readme":"# @vitejs/plugin-vue2-jsx [![npm](https://img.shields.io/npm/v/@vitejs/plugin-vue2-jsx.svg)](https://npmjs.com/package/@vitejs/plugin-vue2-jsx)\n\n> [!CAUTION]\n> Vue 2 has reached EOL, and this project is no longer actively maintained.\n\n---\n\nProvides Vue 2 JSX & TSX support with HMR.\n\n```js\n// vite.config.js\nimport vueJsx from '@vitejs/plugin-vue2-jsx'\n\nexport default {\n  plugins: [\n    vueJsx({\n      // options are passed on to @vue/babel-preset-jsx\n    })\n  ]\n}\n```\n\n## Options\n\n### include\n\nType: `(string | RegExp)[] | string | RegExp | null`\n\nDefault: `/\\.[jt]sx$/`\n\nA [picomatch pattern](https://github.com/micromatch/picomatch), or array of patterns, which specifies the files the plugin should operate on.\n\n### exclude\n\nType: `(string | RegExp)[] | string | RegExp | null`\n\nDefault: `undefined`\n\nA [picomatch pattern](https://github.com/micromatch/picomatch), or array of patterns, which specifies the files to be ignored by the plugin.\n\n> See [@vue/babel-preset-jsx](https://github.com/vuejs/jsx-vue2/tree/dev/packages/babel-preset-jsx#readme) for other options.\n\n## HMR Detection\n\nThis plugin supports HMR of Vue JSX components. The detection requirements are:\n\n- The component must be exported.\n- The component must be declared by calling `defineComponent` via a root-level statement, either variable declaration or export declaration.\n\n### Supported patterns\n\n```jsx\nimport { defineComponent } from 'vue'\n\n// named exports w/ variable declaration: ok\nexport const Foo = defineComponent({})\n\n// named exports referencing variable declaration: ok\nconst Bar = defineComponent({ render() { return <div>Test</div> }})\nexport { Bar }\n\n// default export call: ok\nexport default defineComponent({ render() { return <div>Test</div> }})\n\n// default export referencing variable declaration: ok\nconst Baz = defineComponent({ render() { return <div>Test</div> }})\nexport default Baz\n```\n\n### Non-supported patterns\n\n```jsx\n// not using `defineComponent` call\nexport const Bar = { ... }\n\n// not exported\nconst Foo = defineComponent(...)\n```\n\n## Unfinished Features\n\n- SSR support\n- Share the same HMR runtime with `@vitejs/plugin-vue2`\n","readmeFilename":"README.md","_rev":"1-36ed9bc035c4ce069fb60d63ef028b9e"}