{"library":"rollup-pluginutils","title":"rollup-pluginutils","description":"Utility functions commonly needed by Rollup plugins, including file filtering (createFilter), scope analysis (attachScopes), identifier sanitization (makeLegalIdentifier), data-to-ESM conversion (dataToEsm), and extension handling (addExtension). This package is at version 2.8.2 and is stable but in maintenance mode; it has been superseded by `@rollup/pluginutils` for Rollup >= 1.0. TypeScript type definitions are included. Unlike ad-hoc implementations, these utilities are optimized for Rollup's plugin lifecycle and AST walking.","language":"javascript","status":"maintenance","last_verified":"Mon Apr 27","install":{"commands":["npm install rollup-pluginutils"],"cli":null},"imports":["import { createFilter } from 'rollup-pluginutils'","import { addExtension } from 'rollup-pluginutils'","import { attachScopes } from 'rollup-pluginutils'","import { dataToEsm } from 'rollup-pluginutils'"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import { createFilter } from 'rollup-pluginutils';\nimport { rollup } from 'rollup';\n\nconst filter = createFilter(['src/**'], ['node_modules/**']);\n\nasync function build() {\n  const bundle = await rollup({\n    input: 'src/index.js',\n    plugins: [{\n      name: 'example',\n      transform(code, id) {\n        if (!filter(id)) return null;\n        // transform code\n        return code.replace(/__VERSION__/g, '1.0.0');\n      }\n    }]\n  });\n  await bundle.write({ file: 'dist/bundle.js', format: 'es' });\n}\n\nbuild().catch(err => console.error(err));","lang":"javascript","description":"Demonstrates using createFilter to include only files under src/ and exclude node_modules, then applying a simple transform.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}