bpd

babel-plugin-dedupe-string-literals

Dedupe strings with new variable declarations.

Showing:

Popularity

Downloads/wk

7

GitHub Stars

12

Maintenance

Last Commit

5yrs ago

Contributors

1

Package

Dependencies

0

Size (min+gzip)

0.5KB

License

Type Definitions

Tree-Shakeable

No?

Categories

Readme

babel-plugin-dedupe-string-literals

NPM Status Travis Status Slack Status

Dedupe strings as new variable declarations at the Program/top level.

Ref: https://twitter.com/mathias/status/734168515310194688

This plugin uses a native Map so it only supports node >= 0.12.

Example

In

'use strict';
import z from 'a';
var a = ['a', 'long string', 'long string'];

function b() {
  'use strict';
  g('a');
  h['a'];
}

Out

'use strict';

import z from 'a';
var _ = 'long string';
var a = [_2, _, _];

var _2 = 'a';
function b() {
  'use strict';

  g(_2);
  h[_2];
}

Installation

# if babel isn't already installed, it creates a `babel` cli command
$ npm install babel-cli
$ npm install babel-plugin-dedupe-string-literals

Options

minimumStringLength - The minimum string length that will apply this transform. If the string length is too small, it will leave the string as is.

This means that a string like 'a' with a length of 1 won't get a new variable created for it.

Usage

Check http://babeljs.io/docs/usage/babelrc/ for more info

.babelrc

// without options
{
  "plugins": ["dedupe-string-literals"]
}

// with options
{
  "plugins": [
    ["dedupe-string-literals", {
      "minimumStringLength": 7 // defaults to 0
    }]
  ]
}

Via CLI

Check http://babeljs.io/docs/usage/cli/ for more info

$ babel --plugins dedupe-string-literals script.js

Via Node API

Check http://babeljs.io/docs/usage/api/ for more info

require("babel-core").transform("code", {
  plugins: ["dedupe-string-literals"]
});

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial