{"id":22815,"library":"vite-plugin-resolve-umd-format","title":"vite-plugin-resolve-umd-format","description":"Vite plugin that forces UMD format output to use .js extension instead of .cjs, fixing Content-Type header issues. Current version 1.0.0, compatible with Vite >=4.0.0. Addresses a specific Vite v3+ behavior where UMD modules get .cjs extension and 'application/node' MIME type; this plugin renames output to .js for correct browser consumption. Differentiates from generic output manipulation by targeting UMD format only and being lightweight. Ships TypeScript types.","status":"active","version":"1.0.0","language":"javascript","source_language":"en","source_url":"https://github.com/bent10/vite-plugins","tags":["javascript","vite","vite-plugin","umd","typescript"],"install":[{"cmd":"npm install vite-plugin-resolve-umd-format","lang":"bash","label":"npm"},{"cmd":"yarn add vite-plugin-resolve-umd-format","lang":"bash","label":"yarn"},{"cmd":"pnpm add vite-plugin-resolve-umd-format","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency; plugin works with Vite >=4.0.0","package":"vite","optional":false}],"imports":[{"note":"default export; requires ESM. CommonJS require will not work because package is ESM-only.","wrong":"import { umdFormatResolver } from 'vite-plugin-resolve-umd-format'","symbol":"default","correct":"import umdFormatResolver from 'vite-plugin-resolve-umd-format'"},{"note":"For CommonJS in Node; package is ESM but can be required due to dual CJS/ESM? Actually package.json has exports, but no 'require' field; use ESM import.","wrong":"const { default: umdFormatResolver } = require('vite-plugin-resolve-umd-format')","symbol":"default","correct":"const umdFormatResolver = require('vite-plugin-resolve-umd-format')"},{"note":"Correct default import, not namespace import.","wrong":"import * as umdFormatResolver from 'vite-plugin-resolve-umd-format'","symbol":"default","correct":"import umdFormatResolver from 'vite-plugin-resolve-umd-format'"}],"quickstart":{"code":"// vite.config.js\nimport { defineConfig } from 'vite'\nimport umdFormatResolver from 'vite-plugin-resolve-umd-format'\n\nexport default defineConfig({\n  plugins: [umdFormatResolver()],\n  build: {\n    rollupOptions: {\n      output: {\n        format: 'umd',\n        name: 'MyLib',\n        entryFileNames: 'my-lib.js'\n      }\n    }\n  }\n})","lang":"javascript","description":"Shows basic usage: import the default export, add to plugins array, and configure UMD output."},"warnings":[{"fix":"Ensure build output format is set to 'umd' for plugin to take effect.","message":"Plugin only affects UMD format; other formats (es, cjs) are unchanged.","severity":"gotcha","affected_versions":"all"},{"fix":"Monitor Vite changelogs; if native option is added, consider removing plugin.","message":"Vite 3+ changed UMD output extension to .cjs; this plugin reverses that. In future Vite versions, this behavior may be configurable natively.","severity":"deprecated","affected_versions":">3.0.0"},{"fix":"Upgrade Vite to version 4 or later, or use an alternative workaround.","message":"Plugin requires Vite >=4.0.0; may not work with older versions.","severity":"gotcha","affected_versions":"<4.0.0"},{"fix":"Use default import: import umdFormatResolver from 'vite-plugin-resolve-umd-format'","message":"Incorrect import style (named instead of default) will cause 'undefined is not a function' error.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-04-27T00:00:00.000Z","next_check":"2026-07-26T00:00:00.000Z","problems":[{"fix":"Change to: import umdFormatResolver from 'vite-plugin-resolve-umd-format'","cause":"Using named import instead of default import.","error":"TypeError: umdFormatResolver is not a function"},{"fix":"Use import syntax or set \"type\": \"module\" in package.json.","cause":"Package is ESM-only and cannot be required in CommonJS environment.","error":"Error: The module \"vite-plugin-resolve-umd-format\" cannot be used with require()"},{"fix":"Run: npm install vite-plugin-resolve-umd-format --save-dev","cause":"Package not installed or not in node_modules.","error":"[vite] Internal server error: Cannot find module 'vite-plugin-resolve-umd-format'"},{"fix":"Set build.rollupOptions.output.format to 'umd'.","cause":"Build output format is set to something other than 'umd'.","error":"WARN: This plugin doesn't have any effect because output format is not 'umd'."}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}