Home

Awesome

babel-plugin-pure-calls-annotation

test codecov npm dep

Automated annotate /*#__PURE__*/ to call expression which in variable declarator, assignment expression, arguments of call expression and other expressions as values

Purpose

help to annotate /*#__PURE__*/ to drop dead code in Webpack for uglyfiy and tree shaking

Will transform

export const call = (s) => {
    return "call" + s
}

export const stringA = call("a")
export const stringB = (() => call("b"))()

to

export const call = (s) => {
    return "call" + s
}

export const stringA = /*#__PURE__*/call("a")
export const stringB = /*#__PURE__*/(() => call("b"))()

Notice:

code like below will not be pure call

const a = setInterval(() => {
    console.log(a)
}, 1000)