UNPKG

711 BJavaScriptView Raw
1// These styles need to be nested in a transform array
2const TRANSFORM_STYLE_PROPERTIES = [
3 'perspective',
4 'rotate',
5 'rotateX',
6 'rotateY',
7 'rotateZ',
8 'scale',
9 'scaleX',
10 'scaleY',
11 'skewX',
12 'skewY',
13 'translateX',
14 'translateY',
15];
16
17// Transforms { translateX: 1 } to { transform: [{ translateX: 1 }]}
18export default function wrapStyleTransforms(style) {
19 const wrapped = {};
20 Object.keys(style).forEach(key => {
21 if (TRANSFORM_STYLE_PROPERTIES.indexOf(key) !== -1) {
22 if (!wrapped.transform) {
23 wrapped.transform = [];
24 }
25 wrapped.transform.push({
26 [key]: style[key],
27 });
28 } else {
29 wrapped[key] = style[key];
30 }
31 });
32 return wrapped;
33}