1.0.5 • Published 6 years ago

babel-plugin-inline-env-vars v1.0.5

Weekly downloads
8
License
MIT
Repository
github
Last release
6 years ago

babel-plugin-inline-env-vars

Plugin which replaces all instances of process.env.*** with the environment variable value.

Aims to have the same functionality as inline-environment-variables-webpack-plugin

Install

npm install --save-dev babel-plugin-inline-env-vars

Usage

Inline all environment variables

If you would like to inline all environment variables then you can just instantiate the plugin without passing any config, as in the following example.

{
  "plugins": [
    "inline-env-vars"
  ]
}

Inline only selected environment variables

You can optionally pass a config in "vars" property of plugin options to select which environment variables you would like to inline.

A config can be either a string an object or an array.

string config

A string config is defined like

{
  "plugins": [
    ["inline-env-vars", {
      "vars": "NODE_ENV"
    }]
  ]
}

The above config will inline process.env.NODE_ENV with the value of process.env.NODE_ENV at build time

object config

an object config is defined like

{
  "plugins": [
    ["inline-env-vars", {
      "vars": { "NODE_ENV": "production" }
    }]
  ]
}

The above config will inline process.env.NODE_ENV with the value specified in the config. So in the above example it would change it to 'production';

array config

and array config is just a list of string and object configs. It would be defined like

{
  "plugins": [
    ["inline-env-vars", {
      "vars": [
        "SOME_VAR",
        "ANOTHER_ONE",
        {
          "NODE_ENV": "production",
          "ONE_MORE": true
        }
      ]
    }]
  ]
}

Disable warnings

Pass in an object with warnings set to false.

{
  "plugins": [
    ["inline-env-vars", {
      "vars": { "NODE_ENV": "production" },
      "warnings": false
    }]
  ]
}

Credits

This plugin is based on: