{"id":19251,"library":"babel-plugin-zova-component","title":"Zova Component Babel Plugin","description":"babel-plugin-zova-component is a Babel plugin for transforming component metadata in the Zova framework. Version 1.1.8 is the latest stable release; the plugin is released as part of the Zova ecosystem with no fixed cadence. It is specifically designed to work with Zova's component system, automatically inserting runtime metadata during the build process. Unlike generic Babel plugins, this one is tightly coupled to Zova's architecture and should only be used within Zova projects. The plugin requires Babel 7+ and is typically used alongside other Zova-specific build tools.","status":"active","version":"1.1.8","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","framework","zova"],"install":[{"cmd":"npm install babel-plugin-zova-component","lang":"bash","label":"npm"},{"cmd":"yarn add babel-plugin-zova-component","lang":"bash","label":"yarn"},{"cmd":"pnpm add babel-plugin-zova-component","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"This package is CJS-only and should be used with require(). ESM import will fail.","wrong":"import plugin from 'babel-plugin-zova-component';","symbol":"default","correct":"module.exports = require('babel-plugin-zova-component');"},{"note":"This is a plugin, not a preset. Do not place it in the presets array.","wrong":"module.exports = {\n  presets: ['babel-plugin-zova-component']\n};","symbol":"babel-plugin-zova-component","correct":"// babel.config.js\nmodule.exports = {\n  plugins: ['babel-plugin-zova-component']\n};"},{"note":"Options should be passed in an array entry, not an object with the plugin name as key.","wrong":"module.exports = {\n  plugins: [\n    { 'babel-plugin-zova-component': { /* options */ } }\n  ]\n};","symbol":"babel-plugin-zova-component (with options)","correct":"// babel.config.js\nmodule.exports = {\n  plugins: [\n    ['babel-plugin-zova-component', { /* options */ }]\n  ]\n};"}],"quickstart":{"code":"// babel.config.js\nmodule.exports = {\n  presets: [\n    ['@babel/preset-env', { targets: { node: 'current' } }]\n  ],\n  plugins: ['babel-plugin-zova-component']\n};\n\n// index.js\nimport { defineComponent } from 'zova';\nexport default defineComponent({\n  // component code\n});\n\n// Run: npx babel index.js --out-file compiled.js","lang":"javascript","description":"Configures Babel with the plugin and shows a typical component definition in Zova."},"warnings":[{"fix":"Ensure your project is built on the Zova framework. If you are not using Zova, remove this plugin.","message":"This plugin only works within Zova projects. Using it in non-Zova projects will produce no transformation or may error.","severity":"gotcha","affected_versions":">=1.0"},{"fix":"Wrap your components with Zova's defineComponent or use Zova's component API.","message":"The plugin expects components to be defined using Zova's 'defineComponent' or similar Zova-specific syntax. Plain React or Vue component definitions will not be processed.","severity":"gotcha","affected_versions":">=1.0"},{"fix":"Update your config to use only documented options. Refer to the plugin's README or source code for the latest list.","message":"Some configuration options from earlier versions have been deprecated. Check the plugin source for current supported options.","severity":"deprecated","affected_versions":"<=1.1.0"},{"fix":"Review your build output for changes in metadata format. If you rely on or parse the inserted metadata, adjust accordingly.","message":"Version 1.1.0 changed the way metadata is inserted, which may break custom serialization or tree-shaking setups.","severity":"breaking","affected_versions":">=1.1.0 <1.1.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run 'npm install babel-plugin-zova-component --save-dev' or 'yarn add babel-plugin-zova-component --dev'.","cause":"The plugin is not installed or not in node_modules.","error":"Error: [BABEL] unknown plugin \"babel-plugin-zova-component\" specified in \"...\""},{"fix":"Use require() in your Babel config: module.exports = { plugins: [require('babel-plugin-zova-component')] };","cause":"Attempting to import the plugin via ES module import instead of require().","error":"TypeError: (0 , _babelPluginZovaComponent.default) is not a function"},{"fix":"Import defineComponent from 'zova' in your component files: import { defineComponent } from 'zova';","cause":"The plugin's transform depends on Zova's defineComponent being available globally or imported.","error":"ReferenceError: defineComponent is not defined"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}