@budarin/babel-plugin-remove-logger-methods
v1.0.4
Published
babel plugin to remove logger methods
Readme
@budarin/babel-plugin-remove-logger-methods
Babel-плагин для удаления вызовов методов логгера из production-сборки.
Установка
npm install --save-dev @budarin/babel-plugin-remove-logger-methodsили
pnpm add -D @budarin/babel-plugin-remove-logger-methodsИспользование
Базовая настройка
В .babelrc или babel.config.js:
{
"plugins": ["@budarin/babel-plugin-remove-logger-methods"]
}По умолчанию плагин удаляет вызовы методов debug и trace.
Только для production
// babel.config.js
module.exports = {
plugins: [
process.env.NODE_ENV === 'production' && [
'@budarin/babel-plugin-remove-logger-methods',
{ methods: ['debug', 'trace'] },
],
].filter(Boolean),
};Использование в конфигурации Vite
// vite.config.js
import removeLoggerMethods from '@budarin/babel-plugin-remove-logger-methods';
export default defineConfig({
plugins: [
react({
babel: {
plugins: [
[
removeLoggerMethods,
{ methods: [ 'trace' ] }
]
],
},
}),
]
}Примеры трансформации
Входной код
logger.debug('Debug message');
logger.trace('Trace message');
logger.info('Info message');Выходной код (по умолчанию)
logger.info('Info message');Опции
methods
Тип: string[]
По умолчанию: ['debug', 'trace']
Массив имён методов, которые нужно удалить.
Важно: если передать пустой массив, плагин выдаст ошибку.
Поддерживаемые конструкции
Плагин удаляет вызовы вида:
logger.debug(...)this.logger.trace(...)obj.logger.debug(...)
Лицензия
MIT © Vadim Budarin
