remove-attr

A Vite plugin designed specifically for Vue.js projects that allows the removal of specified attributes in production builds. Useful for excluding attributes like 'data-testid' used in testing. Options include specific file extensions, attributes, ignored
306,079 12
Install
npm install remove-attr
Latest Version:0.0.15
License:GPL-3.0
Last Updated:Aug 22, 2024
Links: GitHub  ·  npm
Maintainer: mustafadalga

Vite Plugin - Remove Attributes

This Vite plugin is specifically designed for Vue.js projects. It allows the removal of specified attributes in production builds, supporting a variety of options like file extensions, attributes, ignored folders, and files.

vue version vue version

Table of Contents

Features

  1. Removes specified attributes in production builds of Vue.js projects.
  2. Allows you to specify the file extensions to be considered.
  3. Can ignore certain folders or files based on configuration.
  4. Ensures clean production code by removing unnecessary attributes, like 'data-testid' used in testing.

Installation

You can install this plugin through npm:

npm install --save-dev remove-attr

Usage

Prerequisites

To use this plugin, you need to have a Vite project set up. Import and use the plugin in your vite.config.js or vite.config.ts file.

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import removeAttr from 'remove-attr'

export default defineConfig({
    plugins: [
        vue(),
        removeAttr({
            extensions: [ 'vue' ],
            attributes: [ 'data-testid' ]
        })
    ]
})

Examples

Example 1: Removing 'data-testid' attributes from '.vue' files

This configuration will remove 'data-testid' attributes from all '.vue' files in the production build.

export default defineConfig({
    plugins: [
        vue(),
        removeAttr({
            extensions: [ 'vue' ],
            attributes: [ 'data-testid' ]
        })
    ]
})
Example 2: Ignoring specific folders and files

This configuration will remove 'data-testid' and 'data-id' attributes from all '.vue', '.ts', and '.js' files, with the exception of those in the 'src/tests' and 'src/utilities' folders, as well as the 'Home.vue', 'src/components/Modal.vue', and 'src/layouts/LayoutAuth.vue' files.

export default defineConfig({
    plugins: [
        vue(),
        removeAttr({
            extensions: [ 'vue', "ts", "ts" ],
            attributes: [ 'data-testid', "data-id" ],
            ignoreFolders: [ 'src/tests', "src/utilities" ],
            ignoreFiles: [ 'Home.vue', 'src/components/Modal.vue', "src/layouts/LayoutAuth.vue" ]
        })
    ]
})

License

License

Related Packages

@tomjs/vite-plugin-iconify

A Vite plugin for handling iconify icon sets in environments without internet ac...

11,231 9
@vitejs/plugin-vue

The official plugin for Vue SFC support in Vite.

333,357,380 686
vite-plugin-checker

Vite plugin that runs TypeScript type checker on a separate process.

133,975,562 1,242
@vitejs/plugin-vue-jsx

Provides Vue 3 JSX & TSX support with HMR.

93,663,827 686
vite-plugin-ssr

Like Next.js/Nuxt but as do-one-thing-do-it-well Vite plugin.

550,634 18

Version History

Version Released License
0.0.15 GPL-3.0
0.0.14 GPL-3.0
0.0.13 GPL-3.0
0.0.12 GPL-3.0
0.0.11 GPL-3.0