animated.macro

0.0.5 • Public • Published

animated.macro

A tiny language for arithmetic over React Native's Animated values.

Codeship Status for motiz88/animated.macro npm version Babel Macro

MIT license semantic-release Try it on Expo Snack

JS animated.macro
Animated.add(x, y) animated`${x} + ${y}`
Animated.multiply(x, y) animated`${x} * ${y}`
Animated.divide(x, y) animated`${x} / ${y}`
Animated.add(x, Animated.multiply(-1, y)) animated`${x} - ${y}`
Animated.modulo(x, y) animated`${x} % ${y}`

Installation

npm install --save-dev animated.macro

For the best experience, install and configure babel-plugin-macros if you haven't already. Alternatively, this package also exports a standalone Babel plugin for use with Babel 6 or 7, under the name animated.macro/plugin.

Note: Whether you use the macro or the plugin, always import animated from "animated.macro", as seen below.

Example

import { Animated } from "react-native";
import animated from "animated.macro";
 
const a = new Animated.Value(1);
const b = animated`1 / ${a}`;
 
Animated.spring(a, { toValue: 2 }).start();

Runtime compiler

This package also includes a pure-runtime implementation, mainly intended for use in sandbox environments like Expo Snack, where setting up babel-plugin-macros is impractical. You should not rely on it for real-world use in your app, as the compilation overhead may be noticeable.

Package Sidebar

Install

npm i animated.macro

Weekly Downloads

2

Version

0.0.5

License

MIT

Unpacked Size

57.2 kB

Total Files

22

Last publish

Collaborators

  • motiz88