12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- export var Interp;
- (function (Interp) {
- Interp.number = (a, b) => {
- const d = b - a;
- return (t) => {
- return a + d * t;
- };
- };
- Interp.object = (a, b) => {
- const keys = Object.keys(a);
- return (t) => {
- const ret = {};
- for (let i = keys.length - 1; i !== -1; i -= 1) {
- const key = keys[i];
- ret[key] = a[key] + (b[key] - a[key]) * t;
- }
- return ret;
- };
- };
- Interp.unit = (a, b) => {
- const reg = /(-?[0-9]*.[0-9]*)(px|em|cm|mm|in|pt|pc|%)/;
- const ma = reg.exec(a);
- const mb = reg.exec(b);
- const pb = mb ? mb[1] : '';
- const aa = ma ? +ma[1] : 0;
- const bb = mb ? +mb[1] : 0;
- const index = pb.indexOf('.');
- const precision = index > 0 ? pb[1].length - index - 1 : 0;
- const d = bb - aa;
- const u = ma ? ma[2] : '';
- return (t) => {
- return (aa + d * t).toFixed(precision) + u;
- };
- };
- Interp.color = (a, b) => {
- const ca = parseInt(a.slice(1), 16);
- const cb = parseInt(b.slice(1), 16);
- const ra = ca & 0x0000ff;
- const rd = (cb & 0x0000ff) - ra;
- const ga = ca & 0x00ff00;
- const gd = (cb & 0x00ff00) - ga;
- const ba = ca & 0xff0000;
- const bd = (cb & 0xff0000) - ba;
- return (t) => {
- const r = (ra + rd * t) & 0x000000ff;
- const g = (ga + gd * t) & 0x0000ff00;
- const b = (ba + bd * t) & 0x00ff0000;
- return `#${((1 << 24) | r | g | b).toString(16).slice(1)}`;
- };
- };
- })(Interp || (Interp = {}));
- //# sourceMappingURL=interp.js.map
|