npm.io
0.1.6 • Published 5 years ago

@vasiliicuhar/invariant.macro

Licence
MIT
Version
0.1.6
Deps
1
Size
8 kB
Vulns
0
Weekly
0
DeprecatedThis package is deprecated

invariant.macro

Invariant assertions implemented as babel-plugin-macros macro.


build version downloads MIT License

Install

# npm
npm install @vasiliicuhar/invariant.macro

# yarn
yarn add @vasiliicuhar/invariant.macro

Usage

import invariant from "@vasiliicuhar/invariant.macro"

let sum = 2 + 3
invariant(sum === 4, `expected 4, got ${sum}`)
// throws new InvariantError('Invariant failed: expected 4, got 5')

In production error messages are stripped from resulting bundle

invariant(condition, `error message ${prettyPrint(obj)}`)
// is transpiled to
invariant(condition)

Development only invariants

invariant(condition, "invariant failed", { env: "development" })

Keywords