1. babel-plugin-inline-replace-variables
babel plugin to inline replace variables
babel-plugin-inline-replace-variables
Package: babel-plugin-inline-replace-variables
Created by: wssgcg1213
Last modified: Mon, 13 Jun 2022 04:01:45 GMT
Version: 1.3.1
License: MIT
Downloads: 21,639
Repository: https://github.com/wssgcg1213/babel-plugin-inline-replace-variables

Install

npm install babel-plugin-inline-replace-variables
yarn add babel-plugin-inline-replace-variables

babel-plugin-inline-replace-variables

Build Status

It replace an Identifier to a literial (LVal), if you want to transfrom a identifier to another identifier, you can see: babel-plugin-replace-identifiers

Usage

 npm i babel-plugin-inline-replace-variables --save-dev

configure in .babelrc(should transfer to json format) or any babel queries:

 {
  plugins: [
    ['inline-replace-variables', {
      "__SERVER__": true,
      "__VERSION__": "v1.2.3"
    }]
  ]
}

EFFECT:

 if (__SERVER__) {
  console.log('this is server, version: %s', __VERSION__)
} else {
  alert('this is browser')
}

will be transformed to

if (true) {
  console.log('this is server, version: %s', "v1.2.3")
} else {
  alert('this is browser')
}

Support Replace With Expression:

 {
  plugins: [
    ['inline-replace-variables', {
      "__TYPE__": {
        type: 'node',
        replacement: 'process.env.NODE_ENV'
      }
    }]
  ]
}

EFFECT

 if (__TYPE__) {
  // code
}

to

 if (process.env.NODE_ENV) {
  // code
}

Also support babel AST Node

 const t = require('babel-types');
const nodeEnv = t.memberExpression(t.memberExpression(t.identifier('process'), t.identifier('env')), t.identifier('NODE_ENV'));

{
  plugins: [
    ['inline-replace-variables', {
      "__TYPE__": nodeEnv
    }]
  ]
}

EFFECT

The effect is the same above.

tip:

Version 1.0.1 fix the misspelling of 'varibles' to 'variables'

so babel-plugin-inline-replace-varibles is deprecated, you should instead it of babel-plugin-inline-replace-variables

Authors: https://github.com/wssgcg1213, https://github.com/rtsao

Dependencies

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code