Socket
Socket
Sign inDemoInstall

d3-interpolate

Package Overview
Dependencies
Maintainers
1
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

d3-interpolate - npm Package Compare versions

Comparing version 0.5.2 to 0.6.0

src/transform/decompose.js

2

build/bundle.js

@@ -1,1 +0,1 @@

var version = "0.5.2"; export * from "../index"; export {version};
var version = "0.6.0"; export * from "../index"; export {version};
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('d3-color')) :
typeof define === 'function' && define.amd ? define(['exports', 'd3-color'], factory) :
(factory((global.d3_interpolate = {}),global.d3_color));
(factory((global.d3_interpolate = global.d3_interpolate || {}),global.d3_color));
}(this, function (exports,d3Color) { 'use strict';

@@ -25,3 +25,3 @@

function hue(a, b) {
function interpolateHue(a, b) {
var d = b - a;

@@ -203,104 +203,119 @@ return d ? linear(a, d > 180 || d < -180 ? d - 360 * Math.round(d / 360) : d) : constant(isNaN(a) ? b : a);

var rad2deg = 180 / Math.PI;
var identity = {a: 1, b: 0, c: 0, d: 1, e: 0, f: 0};
var g;
// Compute x-scale and normalize the first row.
// Compute shear and make second row orthogonal to first.
// Compute y-scale and normalize the second row.
// Finally, compute the rotation.
function Transform(string) {
if (!g) g = document.createElementNS("http://www.w3.org/2000/svg", "g");
if (string) g.setAttribute("transform", string), t = g.transform.baseVal.consolidate();
var t,
m = t ? t.matrix : identity,
r0 = [m.a, m.b],
r1 = [m.c, m.d],
kx = normalize(r0),
kz = dot(r0, r1),
ky = normalize(combine(r1, r0, -kz)) || 0;
var identity = {
translateX: 0,
translateY: 0,
rotate: 0,
skewX: 0,
scaleX: 1,
scaleY: 1
};
if (r0[0] * r1[1] < r1[0] * r0[1]) {
r0[0] *= -1;
r0[1] *= -1;
kx *= -1;
kz *= -1;
}
function decompose(a, b, c, d, e, f) {
if (a * d === b * c) return null;
this.rotate = (kx ? Math.atan2(r0[1], r0[0]) : Math.atan2(-r1[0], r1[1])) * rad2deg;
this.translate = [m.e, m.f];
this.scale = [kx, ky];
this.skew = ky ? Math.atan2(kz, ky) * rad2deg : 0;
}
var scaleX = Math.sqrt(a * a + b * b);
a /= scaleX, b /= scaleX;
function dot(a, b) {
return a[0] * b[0] + a[1] * b[1];
}
var skewX = a * c + b * d;
c -= a * skewX, d -= b * skewX;
function normalize(a) {
var k = Math.sqrt(dot(a, a));
if (k) a[0] /= k, a[1] /= k;
return k;
var scaleY = Math.sqrt(c * c + d * d);
c /= scaleY, d /= scaleY, skewX /= scaleY;
if (a * d < b * c) a = -a, b = -b, skewX = -skewX, scaleX = -scaleX;
return {
translateX: e,
translateY: f,
rotate: Math.atan2(b, a) * rad2deg,
skewX: Math.atan(skewX) * rad2deg,
scaleX: scaleX,
scaleY: scaleY
};
}
function combine(a, b, k) {
a[0] += k * b[0];
a[1] += k * b[1];
return a;
var cssNode;
var cssRoot;
var cssView;
var svgNode;
function parseCss(value) {
if (value === "none") return identity;
if (!cssNode) cssNode = document.createElement("DIV"), cssRoot = document.documentElement, cssView = document.defaultView;
cssNode.style.transform = value;
cssRoot.appendChild(cssNode);
value = cssView.getComputedStyle(cssNode, null).getPropertyValue("transform");
cssRoot.removeChild(cssNode);
var m = value.slice(7, -1).split(",");
return decompose(+m[0], +m[1], +m[2], +m[3], +m[4], +m[5]);
}
function pop(s) {
return s.length ? s.pop() + "," : "";
function parseSvg(value) {
if (!svgNode) svgNode = document.createElementNS("http://www.w3.org/2000/svg", "g");
svgNode.setAttribute("transform", value == null ? "" : value);
var m = svgNode.transform.baseVal.consolidate().matrix;
return decompose(m.a, m.b, m.c, m.d, m.e, m.f);
}
function translate(ta, tb, s, q) {
if (ta[0] !== tb[0] || ta[1] !== tb[1]) {
var i = s.push("translate(", null, ",", null, ")");
q.push({i: i - 4, x: number(ta[0], tb[0])}, {i: i - 2, x: number(ta[1], tb[1])});
} else if (tb[0] || tb[1]) {
s.push("translate(" + tb + ")");
function interpolateTransform(parse, pxComma, pxParen, degParen) {
function pop(s) {
return s.length ? s.pop() + " " : "";
}
}
function rotate(ra, rb, s, q) {
if (ra !== rb) {
if (ra - rb > 180) rb += 360; else if (rb - ra > 180) ra += 360; // shortest path
q.push({i: s.push(pop(s) + "rotate(", null, ")") - 2, x: number(ra, rb)});
} else if (rb) {
s.push(pop(s) + "rotate(" + rb + ")");
function translate(xa, ya, xb, yb, s, q) {
if (xa !== xb || ya !== yb) {
var i = s.push("translate(", null, pxComma, null, pxParen);
q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});
} else if (xb || yb) {
s.push("translate(" + xb + pxComma + yb + pxParen);
}
}
}
function skew(wa, wb, s, q) {
if (wa !== wb) {
q.push({i: s.push(pop(s) + "skewX(", null, ")") - 2, x: number(wa, wb)});
} else if (wb) {
s.push(pop(s) + "skewX(" + wb + ")");
function rotate(a, b, s, q) {
if (a !== b) {
if (a - b > 180) b += 360; else if (b - a > 180) a += 360; // shortest path
q.push({i: s.push(pop(s) + "rotate(", null, degParen) - 2, x: number(a, b)});
} else if (b) {
s.push(pop(s) + "rotate(" + b + degParen);
}
}
}
function scale(ka, kb, s, q) {
if (ka[0] !== kb[0] || ka[1] !== kb[1]) {
var i = s.push(pop(s) + "scale(", null, ",", null, ")");
q.push({i: i - 4, x: number(ka[0], kb[0])}, {i: i - 2, x: number(ka[1], kb[1])});
} else if (kb[0] !== 1 || kb[1] !== 1) {
s.push(pop(s) + "scale(" + kb + ")");
function skewX(a, b, s, q) {
if (a !== b) {
q.push({i: s.push(pop(s) + "skewX(", null, degParen) - 2, x: number(a, b)});
} else if (b) {
s.push(pop(s) + "skewX(" + b + degParen);
}
}
}
function transform(a, b) {
var s = [], // string constants and placeholders
q = []; // number interpolators
a = new Transform(a), b = new Transform(b);
translate(a.translate, b.translate, s, q);
rotate(a.rotate, b.rotate, s, q);
skew(a.skew, b.skew, s, q);
scale(a.scale, b.scale, s, q);
a = b = null; // gc
return function(t) {
var i = -1, n = q.length, o;
while (++i < n) s[(o = q[i]).i] = o.x(t);
return s.join("");
function scale(xa, ya, xb, yb, s, q) {
if (xa !== xb || ya !== yb) {
var i = s.push(pop(s) + "scale(", null, ",", null, ")");
q.push({i: i - 4, x: number(xa, xb)}, {i: i - 2, x: number(ya, yb)});
} else if (xb !== 1 || yb !== 1) {
s.push(pop(s) + "scale(" + xb + "," + yb + ")");
}
}
return function(a, b) {
var s = [], // string constants and placeholders
q = []; // number interpolators
a = parse(a), b = parse(b);
translate(a.translateX, a.translateY, b.translateX, b.translateY, s, q);
rotate(a.rotate, b.rotate, s, q);
skewX(a.skewX, b.skewX, s, q);
scale(a.scaleX, a.scaleY, b.scaleX, b.scaleY, s, q);
a = b = null; // gc
return function(t) {
var i = -1, n = q.length, o;
while (++i < n) s[(o = q[i]).i] = o.x(t);
return s.join("");
};
};
}
var interpolateTransformCss = interpolateTransform(parseCss, "px, ", "px)", "deg)");
var interpolateTransformSvg = interpolateTransform(parseSvg, ", ", ")", ")");
var rho = Math.SQRT2;

@@ -371,3 +386,3 @@ var rho2 = 2;

function interpolateHsl(start, end) {
var h = hue((start = d3Color.hsl(start)).h, (end = d3Color.hsl(end)).h),
var h = interpolateHue((start = d3Color.hsl(start)).h, (end = d3Color.hsl(end)).h),
s = nogamma(start.s, end.s),

@@ -414,3 +429,3 @@ l = nogamma(start.l, end.l),

function interpolateHcl(start, end) {
var h = hue((start = d3Color.hcl(start)).h, (end = d3Color.hcl(end)).h),
var h = interpolateHue((start = d3Color.hcl(start)).h, (end = d3Color.hcl(end)).h),
c = nogamma(start.c, end.c),

@@ -446,3 +461,3 @@ l = nogamma(start.l, end.l),

function interpolateCubehelix(start, end) {
var h = hue((start = d3Color.cubehelix(start)).h, (end = d3Color.cubehelix(end)).h),
var h = interpolateHue((start = d3Color.cubehelix(start)).h, (end = d3Color.cubehelix(end)).h),
s = nogamma(start.s, end.s),

@@ -487,3 +502,3 @@ l = nogamma(start.l, end.l),

var version = "0.5.2";
var version = "0.6.0";

@@ -498,3 +513,4 @@ exports.version = version;

exports.interpolateString = string;
exports.interpolateTransform = transform;
exports.interpolateTransformCss = interpolateTransformCss;
exports.interpolateTransformSvg = interpolateTransformSvg;
exports.interpolateZoom = zoom;

@@ -501,0 +517,0 @@ exports.interpolateRgb = rgb$1;

@@ -1,1 +0,1 @@

!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("d3-color")):"function"==typeof define&&define.amd?define(["exports","d3-color"],n):n(t.d3_interpolate={},t.d3_color)}(this,function(t,n){"use strict";function r(t){return function(){return t}}function e(t,n){return function(r){return t+r*n}}function o(t,n,r){return t=Math.pow(t,r),n=Math.pow(n,r)-t,r=1/r,function(e){return Math.pow(t+e*n,r)}}function u(t,n){var o=n-t;return o?e(t,o>180||-180>o?o-360*Math.round(o/360):o):r(isNaN(t)?n:t)}function i(t){return 1===(t=+t)?a:function(n,e){return e-n?o(n,e,t):r(isNaN(n)?e:n)}}function a(t,n){var o=n-t;return o?e(t,o):r(isNaN(t)?n:t)}function c(t,n){var r,e=[],o=[],u=t?t.length:0,i=n?n.length:0,a=Math.min(u,i);for(r=0;a>r;++r)e.push(y(t[r],n[r]));for(;u>r;++r)o[r]=t[r];for(;i>r;++r)o[r]=n[r];return function(t){for(r=0;a>r;++r)o[r]=e[r](t);return o}}function l(t,n){return t=+t,n-=t,function(r){return t+n*r}}function f(t,n){var r,e={},o={};(null===t||"object"!=typeof t)&&(t={}),(null===n||"object"!=typeof n)&&(n={});for(r in t)r in n?e[r]=y(t[r],n[r]):o[r]=t[r];for(r in n)r in t||(o[r]=n[r]);return function(t){for(r in e)o[r]=e[r](t);return o}}function s(t){return function(){return t}}function h(t){return function(n){return t(n)+""}}function p(t,n){var r,e,o,u=_.lastIndex=O.lastIndex=0,i=-1,a=[],c=[];for(t+="",n+="";(r=_.exec(t))&&(e=O.exec(n));)(o=e.index)>u&&(o=n.slice(u,o),a[i]?a[i]+=o:a[++i]=o),(r=r[0])===(e=e[0])?a[i]?a[i]+=e:a[++i]=e:(a[++i]=null,c.push({i:i,x:l(r,e)})),u=O.lastIndex;return u<n.length&&(o=n.slice(u),a[i]?a[i]+=o:a[++i]=o),a.length<2?c[0]?h(c[0].x):s(n):(n=c.length,function(t){for(var r,e=0;n>e;++e)a[(r=c[e]).i]=r.x(t);return a.join("")})}function y(t,n){for(var r,e=P.length;--e>=0&&!(r=P[e](t,n)););return r}function g(t,n){return t=+t,n-=t,function(r){return Math.round(t+n*r)}}function x(t){T||(T=document.createElementNS("http://www.w3.org/2000/svg","g")),t&&(T.setAttribute("transform",t),n=T.transform.baseVal.consolidate());var n,r=n?n.matrix:V,e=[r.a,r.b],o=[r.c,r.d],u=b(e),i=v(e,o),a=b(d(o,e,-i))||0;e[0]*o[1]<o[0]*e[1]&&(e[0]*=-1,e[1]*=-1,u*=-1,i*=-1),this.rotate=(u?Math.atan2(e[1],e[0]):Math.atan2(-o[0],o[1]))*Q,this.translate=[r.e,r.f],this.scale=[u,a],this.skew=a?Math.atan2(i,a)*Q:0}function v(t,n){return t[0]*n[0]+t[1]*n[1]}function b(t){var n=Math.sqrt(v(t,t));return n&&(t[0]/=n,t[1]/=n),n}function d(t,n,r){return t[0]+=r*n[0],t[1]+=r*n[1],t}function M(t){return t.length?t.pop()+",":""}function m(t,n,r,e){if(t[0]!==n[0]||t[1]!==n[1]){var o=r.push("translate(",null,",",null,")");e.push({i:o-4,x:l(t[0],n[0])},{i:o-2,x:l(t[1],n[1])})}else(n[0]||n[1])&&r.push("translate("+n+")")}function w(t,n,r,e){t!==n?(t-n>180?n+=360:n-t>180&&(t+=360),e.push({i:r.push(M(r)+"rotate(",null,")")-2,x:l(t,n)})):n&&r.push(M(r)+"rotate("+n+")")}function N(t,n,r,e){t!==n?e.push({i:r.push(M(r)+"skewX(",null,")")-2,x:l(t,n)}):n&&r.push(M(r)+"skewX("+n+")")}function j(t,n,r,e){if(t[0]!==n[0]||t[1]!==n[1]){var o=r.push(M(r)+"scale(",null,",",null,")");e.push({i:o-4,x:l(t[0],n[0])},{i:o-2,x:l(t[1],n[1])})}else(1!==n[0]||1!==n[1])&&r.push(M(r)+"scale("+n+")")}function k(t,n){var r=[],e=[];return t=new x(t),n=new x(n),m(t.translate,n.translate,r,e),w(t.rotate,n.rotate,r,e),N(t.skew,n.skew,r,e),j(t.scale,n.scale,r,e),t=n=null,function(t){for(var n,o=-1,u=e.length;++o<u;)r[(n=e[o]).i]=n.x(t);return r.join("")}}function q(t){return((t=Math.exp(t))+1/t)/2}function A(t){return((t=Math.exp(t))-1/t)/2}function H(t){return((t=Math.exp(2*t))-1)/(t+1)}function I(t,n){var r,e,o=t[0],u=t[1],i=t[2],a=n[0],c=n[1],l=n[2],f=a-o,s=c-u,h=f*f+s*s;if(D>h)e=Math.log(l/i)/Z,r=function(t){return[o+t*f,u+t*s,i*Math.exp(Z*t*e)]};else{var p=Math.sqrt(h),y=(l*l-i*i+B*h)/(2*i*z*p),g=(l*l-i*i-B*h)/(2*l*z*p),x=Math.log(Math.sqrt(y*y+1)-y),v=Math.log(Math.sqrt(g*g+1)-g);e=(v-x)/Z,r=function(t){var n=t*e,r=q(x),a=i/(z*p)*(r*H(Z*n+x)-A(x));return[o+a*f,u+a*s,i*r/q(Z*n+x)]}}return r.duration=1e3*e,r}function L(t,r){var e=u((t=n.hsl(t)).h,(r=n.hsl(r)).h),o=a(t.s,r.s),i=a(t.l,r.l),c=a(t.opacity,r.opacity);return function(n){return t.h=e(n),t.s=o(n),t.l=i(n),t.opacity=c(n),t+""}}function R(t,r){var e=a((t=n.hsl(t)).h,(r=n.hsl(r)).h),o=a(t.s,r.s),u=a(t.l,r.l),i=a(t.opacity,r.opacity);return function(n){return t.h=e(n),t.s=o(n),t.l=u(n),t.opacity=i(n),t+""}}function E(t,r){var e=a((t=n.lab(t)).l,(r=n.lab(r)).l),o=a(t.a,r.a),u=a(t.b,r.b),i=a(t.opacity,r.opacity);return function(n){return t.l=e(n),t.a=o(n),t.b=u(n),t.opacity=i(n),t+""}}function S(t,r){var e=u((t=n.hcl(t)).h,(r=n.hcl(r)).h),o=a(t.c,r.c),i=a(t.l,r.l),c=a(t.opacity,r.opacity);return function(n){return t.h=e(n),t.c=o(n),t.l=i(n),t.opacity=c(n),t+""}}function C(t,r){var e=a((t=n.hcl(t)).h,(r=n.hcl(r)).h),o=a(t.c,r.c),u=a(t.l,r.l),i=a(t.opacity,r.opacity);return function(n){return t.h=e(n),t.c=o(n),t.l=u(n),t.opacity=i(n),t+""}}var T,X=function K(t){function r(t,r){var o=e((t=n.rgb(t)).r,(r=n.rgb(r)).r),u=e(t.g,r.g),i=e(t.b,r.b),a=e(t.opacity,r.opacity);return function(n){return t.r=o(n),t.g=u(n),t.b=i(n),t.opacity=a(n),t+""}}var e=i(t);return r.gamma=K,r}(1),_=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,O=new RegExp(_.source,"g"),P=[function(t,r){var e,o=typeof r;return("string"===o?(e=n.color(r))?(r=e,X):p:r instanceof n.color?X:Array.isArray(r)?c:"object"===o&&isNaN(r)?f:l)(t,r)}],Q=180/Math.PI,V={a:1,b:0,c:0,d:1,e:0,f:0},Z=Math.SQRT2,z=2,B=4,D=1e-12,F=function U(t){function r(r,e){var o=u((r=n.cubehelix(r)).h,(e=n.cubehelix(e)).h),i=a(r.s,e.s),c=a(r.l,e.l),l=a(r.opacity,e.opacity);return function(n){return r.h=o(n),r.s=i(n),r.l=c(Math.pow(n,t)),r.opacity=l(n),r+""}}return t=+t,r.gamma=U,r}(1),G=function W(t){function r(r,e){var o=a((r=n.cubehelix(r)).h,(e=n.cubehelix(e)).h),u=a(r.s,e.s),i=a(r.l,e.l),c=a(r.opacity,e.opacity);return function(n){return r.h=o(n),r.s=u(n),r.l=i(Math.pow(n,t)),r.opacity=c(n),r+""}}return t=+t,r.gamma=W,r}(1),J="0.5.2";t.version=J,t.interpolate=y,t.interpolators=P,t.interpolateArray=c,t.interpolateNumber=l,t.interpolateObject=f,t.interpolateRound=g,t.interpolateString=p,t.interpolateTransform=k,t.interpolateZoom=I,t.interpolateRgb=X,t.interpolateHsl=L,t.interpolateHslLong=R,t.interpolateLab=E,t.interpolateHcl=S,t.interpolateHclLong=C,t.interpolateCubehelix=F,t.interpolateCubehelixLong=G});
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("d3-color")):"function"==typeof define&&define.amd?define(["exports","d3-color"],n):n(t.d3_interpolate=t.d3_interpolate||{},t.d3_color)}(this,function(t,n){"use strict";function r(t){return function(){return t}}function e(t,n){return function(r){return t+r*n}}function o(t,n,r){return t=Math.pow(t,r),n=Math.pow(n,r)-t,r=1/r,function(e){return Math.pow(t+e*n,r)}}function a(t,n){var o=n-t;return o?e(t,o>180||-180>o?o-360*Math.round(o/360):o):r(isNaN(t)?n:t)}function u(t){return 1===(t=+t)?i:function(n,e){return e-n?o(n,e,t):r(isNaN(n)?e:n)}}function i(t,n){var o=n-t;return o?e(t,o):r(isNaN(t)?n:t)}function l(t,n){var r,e=[],o=[],a=t?t.length:0,u=n?n.length:0,i=Math.min(a,u);for(r=0;i>r;++r)e.push(d(t[r],n[r]));for(;a>r;++r)o[r]=t[r];for(;u>r;++r)o[r]=n[r];return function(t){for(r=0;i>r;++r)o[r]=e[r](t);return o}}function c(t,n){return t=+t,n-=t,function(r){return t+n*r}}function s(t,n){var r,e={},o={};null!==t&&"object"==typeof t||(t={}),null!==n&&"object"==typeof n||(n={});for(r in t)r in n?e[r]=d(t[r],n[r]):o[r]=t[r];for(r in n)r in t||(o[r]=n[r]);return function(t){for(r in e)o[r]=e[r](t);return o}}function f(t){return function(){return t}}function p(t){return function(n){return t(n)+""}}function h(t,n){var r,e,o,a=H.lastIndex=L.lastIndex=0,u=-1,i=[],l=[];for(t+="",n+="";(r=H.exec(t))&&(e=L.exec(n));)(o=e.index)>a&&(o=n.slice(a,o),i[u]?i[u]+=o:i[++u]=o),(r=r[0])===(e=e[0])?i[u]?i[u]+=e:i[++u]=e:(i[++u]=null,l.push({i:u,x:c(r,e)})),a=L.lastIndex;return a<n.length&&(o=n.slice(a),i[u]?i[u]+=o:i[++u]=o),i.length<2?l[0]?p(l[0].x):f(n):(n=l.length,function(t){for(var r,e=0;n>e;++e)i[(r=l[e]).i]=r.x(t);return i.join("")})}function d(t,n){for(var r,e=R.length;--e>=0&&!(r=R[e](t,n)););return r}function y(t,n){return t=+t,n-=t,function(r){return Math.round(t+n*r)}}function g(t,n,r,e,o,a){if(t*e===n*r)return null;var u=Math.sqrt(t*t+n*n);t/=u,n/=u;var i=t*r+n*e;r-=t*i,e-=n*i;var l=Math.sqrt(r*r+e*e);return r/=l,e/=l,i/=l,n*r>t*e&&(t=-t,n=-n,i=-i,u=-u),{translateX:o,translateY:a,rotate:Math.atan2(n,t)*V,skewX:Math.atan(i)*V,scaleX:u,scaleY:l}}function v(t){if("none"===t)return T;C||(C=document.createElement("DIV"),E=document.documentElement,I=document.defaultView),C.style.transform=t,E.appendChild(C),t=I.getComputedStyle(C,null).getPropertyValue("transform"),E.removeChild(C);var n=t.slice(7,-1).split(",");return g(+n[0],+n[1],+n[2],+n[3],+n[4],+n[5])}function x(t){S||(S=document.createElementNS("http://www.w3.org/2000/svg","g")),S.setAttribute("transform",null==t?"":t);var n=S.transform.baseVal.consolidate().matrix;return g(n.a,n.b,n.c,n.d,n.e,n.f)}function m(t,n,r,e){function o(t){return t.length?t.pop()+" ":""}function a(t,e,o,a,u,i){if(t!==o||e!==a){var l=u.push("translate(",null,n,null,r);i.push({i:l-4,x:c(t,o)},{i:l-2,x:c(e,a)})}else(o||a)&&u.push("translate("+o+n+a+r)}function u(t,n,r,a){t!==n?(t-n>180?n+=360:n-t>180&&(t+=360),a.push({i:r.push(o(r)+"rotate(",null,e)-2,x:c(t,n)})):n&&r.push(o(r)+"rotate("+n+e)}function i(t,n,r,a){t!==n?a.push({i:r.push(o(r)+"skewX(",null,e)-2,x:c(t,n)}):n&&r.push(o(r)+"skewX("+n+e)}function l(t,n,r,e,a,u){if(t!==r||n!==e){var i=a.push(o(a)+"scale(",null,",",null,")");u.push({i:i-4,x:c(t,r)},{i:i-2,x:c(n,e)})}else 1===r&&1===e||a.push(o(a)+"scale("+r+","+e+")")}return function(n,r){var e=[],o=[];return n=t(n),r=t(r),a(n.translateX,n.translateY,r.translateX,r.translateY,e,o),u(n.rotate,r.rotate,e,o),i(n.skewX,r.skewX,e,o),l(n.scaleX,n.scaleY,r.scaleX,r.scaleY,e,o),n=r=null,function(t){for(var n,r=-1,a=o.length;++r<a;)e[(n=o[r]).i]=n.x(t);return e.join("")}}}function b(t){return((t=Math.exp(t))+1/t)/2}function M(t){return((t=Math.exp(t))-1/t)/2}function w(t){return((t=Math.exp(2*t))-1)/(t+1)}function X(t,n){var r,e,o=t[0],a=t[1],u=t[2],i=n[0],l=n[1],c=n[2],s=i-o,f=l-a,p=s*s+f*f;if(Z>p)e=Math.log(c/u)/D,r=function(t){return[o+t*s,a+t*f,u*Math.exp(D*t*e)]};else{var h=Math.sqrt(p),d=(c*c-u*u+Q*p)/(2*u*O*h),y=(c*c-u*u-Q*p)/(2*c*O*h),g=Math.log(Math.sqrt(d*d+1)-d),v=Math.log(Math.sqrt(y*y+1)-y);e=(v-g)/D,r=function(t){var n=t*e,r=b(g),i=u/(O*h)*(r*w(D*n+g)-M(g));return[o+i*s,a+i*f,u*r/b(D*n+g)]}}return r.duration=1e3*e,r}function N(t,r){var e=a((t=n.hsl(t)).h,(r=n.hsl(r)).h),o=i(t.s,r.s),u=i(t.l,r.l),l=i(t.opacity,r.opacity);return function(n){return t.h=e(n),t.s=o(n),t.l=u(n),t.opacity=l(n),t+""}}function Y(t,r){var e=i((t=n.hsl(t)).h,(r=n.hsl(r)).h),o=i(t.s,r.s),a=i(t.l,r.l),u=i(t.opacity,r.opacity);return function(n){return t.h=e(n),t.s=o(n),t.l=a(n),t.opacity=u(n),t+""}}function j(t,r){var e=i((t=n.lab(t)).l,(r=n.lab(r)).l),o=i(t.a,r.a),a=i(t.b,r.b),u=i(t.opacity,r.opacity);return function(n){return t.l=e(n),t.a=o(n),t.b=a(n),t.opacity=u(n),t+""}}function k(t,r){var e=a((t=n.hcl(t)).h,(r=n.hcl(r)).h),o=i(t.c,r.c),u=i(t.l,r.l),l=i(t.opacity,r.opacity);return function(n){return t.h=e(n),t.c=o(n),t.l=u(n),t.opacity=l(n),t+""}}function q(t,r){var e=i((t=n.hcl(t)).h,(r=n.hcl(r)).h),o=i(t.c,r.c),a=i(t.l,r.l),u=i(t.opacity,r.opacity);return function(n){return t.h=e(n),t.c=o(n),t.l=a(n),t.opacity=u(n),t+""}}var C,E,I,S,A=function G(t){function r(t,r){var o=e((t=n.rgb(t)).r,(r=n.rgb(r)).r),a=e(t.g,r.g),u=e(t.b,r.b),i=e(t.opacity,r.opacity);return function(n){return t.r=o(n),t.g=a(n),t.b=u(n),t.opacity=i(n),t+""}}var e=u(t);return r.gamma=G,r}(1),H=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,L=new RegExp(H.source,"g"),R=[function(t,r){var e,o=typeof r;return("string"===o?(e=n.color(r))?(r=e,A):h:r instanceof n.color?A:Array.isArray(r)?l:"object"===o&&isNaN(r)?s:c)(t,r)}],V=180/Math.PI,T={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1},_=m(v,"px, ","px)","deg)"),P=m(x,", ",")",")"),D=Math.SQRT2,O=2,Q=4,Z=1e-12,z=function J(t){function r(r,e){var o=a((r=n.cubehelix(r)).h,(e=n.cubehelix(e)).h),u=i(r.s,e.s),l=i(r.l,e.l),c=i(r.opacity,e.opacity);return function(n){return r.h=o(n),r.s=u(n),r.l=l(Math.pow(n,t)),r.opacity=c(n),r+""}}return t=+t,r.gamma=J,r}(1),B=function K(t){function r(r,e){var o=i((r=n.cubehelix(r)).h,(e=n.cubehelix(e)).h),a=i(r.s,e.s),u=i(r.l,e.l),l=i(r.opacity,e.opacity);return function(n){return r.h=o(n),r.s=a(n),r.l=u(Math.pow(n,t)),r.opacity=l(n),r+""}}return t=+t,r.gamma=K,r}(1),F="0.6.0";t.version=F,t.interpolate=d,t.interpolators=R,t.interpolateArray=l,t.interpolateNumber=c,t.interpolateObject=s,t.interpolateRound=y,t.interpolateString=h,t.interpolateTransformCss=_,t.interpolateTransformSvg=P,t.interpolateZoom=X,t.interpolateRgb=A,t.interpolateHsl=N,t.interpolateHslLong=Y,t.interpolateLab=j,t.interpolateHcl=k,t.interpolateHclLong=q,t.interpolateCubehelix=z,t.interpolateCubehelixLong=B});

@@ -8,3 +8,3 @@ export {default as interpolate} from "./src/value";

export {default as interpolateString} from "./src/string";
export {default as interpolateTransform} from "./src/transform";
export {interpolateTransformCss, interpolateTransformSvg} from "./src/transform/index";
export {default as interpolateZoom} from "./src/zoom";

@@ -11,0 +11,0 @@ export {default as interpolateRgb} from "./src/rgb";

{
"name": "d3-interpolate",
"version": "0.5.2",
"version": "0.6.0",
"description": "Interpolate numbers, colors, strings, arrays, objects, whatever!",

@@ -27,3 +27,3 @@ "keywords": [

"prepublish": "npm run test && uglifyjs build/d3-interpolate.js -c -m -o build/d3-interpolate.min.js && rm -f build/d3-interpolate.zip && zip -j build/d3-interpolate.zip -- LICENSE README.md build/d3-interpolate.js build/d3-interpolate.min.js",
"postpublish": "VERSION=`node -e 'console.log(require(\"./package.json\").version)'`; git push && git tag -am \"Release $VERSION.\" v${VERSION} && git push --tags && cp build/d3-interpolate.js ../d3.github.com/d3-interpolate.v0.5.js && cp build/d3-interpolate.min.js ../d3.github.com/d3-interpolate.v0.5.min.js && cd ../d3.github.com && git add d3-interpolate.v0.5.js d3-interpolate.v0.5.min.js && git commit -m \"d3-interpolate ${VERSION}\" && git push"
"postpublish": "VERSION=`node -e 'console.log(require(\"./package.json\").version)'`; git push && git push --tags && cp build/d3-interpolate.js ../d3.github.com/d3-interpolate.v0.6.js && cp build/d3-interpolate.min.js ../d3.github.com/d3-interpolate.v0.6.min.js && cd ../d3.github.com && git add d3-interpolate.v0.6.js d3-interpolate.v0.6.min.js && git commit -m \"d3-interpolate ${VERSION}\" && git push"
},

@@ -30,0 +30,0 @@ "dependencies": {

@@ -34,10 +34,15 @@ # d3-interpolate

If you use NPM, `npm install d3-interpolate`. Otherwise, download the [latest release](https://github.com/d3/d3-interpolate/releases/latest). The released bundle supports AMD, CommonJS, and vanilla environments. Create a custom build using [Rollup](https://github.com/rollup/rollup) or your preferred bundler. You can also load directly from [d3js.org](https://d3js.org):
If you use NPM, `npm install d3-interpolate`. Otherwise, download the [latest release](https://github.com/d3/d3-interpolate/releases/latest). You can also load directly from [d3js.org](https://d3js.org), either as a [standalone library](https://d3js.org/d3-interpolate.v0.6.min.js) or as part of [D3 4.0 alpha](https://github.com/mbostock/d3/tree/4). AMD, CommonJS, and vanilla environments are supported. In vanilla, a `d3_interpolate` global is exported:
```html
<script src="https://d3js.org/d3-color.v0.4.min.js"></script>
<script src="https://d3js.org/d3-interpolate.v0.5.min.js"></script>
<script src="https://d3js.org/d3-interpolate.v0.6.min.js"></script>
<script>
var interpolate = d3_interpolate.interpolateRgb("steelblue", "brown");
</script>
```
In a vanilla environment, a `d3_interpolate` global is exported. [Try d3-interpolate in your browser.](https://tonicdev.com/npm/d3-interpolate)
[Try d3-interpolate in your browser.](https://tonicdev.com/npm/d3-interpolate)

@@ -121,6 +126,10 @@ ## API Reference

<a name="interpolateTransform" href="#interpolateTransform">#</a> d3.<b>interpolateTransform</b>(<i>a</i>, <i>b</i>)
<a name="interpolateTransformCss" href="#interpolateTransformCss">#</a> d3.<b>interpolateTransformCss</b>(<i>a</i>, <i>b</i>)
Returns an interpolator between the two 2D affine transforms represented by *a* and *b*. Each transform is decomposed to a standard representation of translate, rotate, *x*-skew and scale; these component transformations are then interpolated. This behavior is standardized by CSS: see [matrix decomposition for animation](http://www.w3.org/TR/css3-2d-transforms/#matrix-decomposition).
Returns an interpolator between the two 2D CSS transforms represented by *a* and *b*. Each transform is decomposed to a standard representation of translate, rotate, *x*-skew and scale; these component transformations are then interpolated. This behavior is standardized by CSS: see [matrix decomposition for animation](http://www.w3.org/TR/css3-2d-transforms/#matrix-decomposition).
<a name="interpolateTransformSvg" href="#interpolateTransformSvg">#</a> d3.<b>interpolateTransformSvg</b>(<i>a</i>, <i>b</i>)
Returns an interpolator between the two 2D SVG transforms represented by *a* and *b*. Each transform is decomposed to a standard representation of translate, rotate, *x*-skew and scale; these component transformations are then interpolated. This behavior is standardized by CSS: see [matrix decomposition for animation](http://www.w3.org/TR/css3-2d-transforms/#matrix-decomposition).
<a name="interpolateZoom" href="#interpolateZoom">#</a> d3.<b>interpolateZoom</b>(<i>a</i>, <i>b</i>)

@@ -127,0 +136,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc