Skip to content

Commit

Permalink
feat(animate): add preffix and suffix
Browse files Browse the repository at this point in the history
  • Loading branch information
aadityataparia committed Apr 15, 2019
1 parent 5ddf6b6 commit 28032d1
Show file tree
Hide file tree
Showing 17 changed files with 67 additions and 37 deletions.
12 changes: 8 additions & 4 deletions dist/sifrrelements.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/sifrrelements.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/sifrrelements.min.js

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions dist/sifrrelements.module.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion dist/sifrrelements.module.js.map

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions elements/sifrr-stater/dist/sifrrstater.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion elements/sifrr-stater/dist/sifrrstater.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion elements/sifrr-stater/dist/sifrrstater.min.js

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions elements/sifrr-stater/dist/sifrrstater.module.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion elements/sifrr-stater/dist/sifrrstater.module.js.map

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions elements/sifrr-tabs/dist/sifrrtabs.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion elements/sifrr-tabs/dist/sifrrtabs.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion elements/sifrr-tabs/dist/sifrrtabs.min.js

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions elements/sifrr-tabs/dist/sifrrtabs.module.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion elements/sifrr-tabs/dist/sifrrtabs.module.js.map

Large diffs are not rendered by default.

12 changes: 8 additions & 4 deletions helpers/animate.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,10 @@ class Bezier {
}

function animate(who, what, to, time = 300, { preffix = false, suffix = false, type = 'ease' } = {}) {
const f = who[what].toString();
const from = Number(f.slice(preffix ? preffix.length : 0, suffix ? -1 * suffix.length : f.length));
let from = who[what].toString(), toBefore = to;
to = to.toString();
from = Number(from.slice(preffix ? preffix.length : 0, suffix ? -1 * suffix.length : from.length));
to = Number(to.slice(preffix ? preffix.length : 0, suffix ? -1 * suffix.length : to.length));
const diff = to - from;
const animeFxn = new Bezier(animate.types[type] || type);
let startTime;
Expand All @@ -56,10 +58,12 @@ function animate(who, what, to, time = 300, { preffix = false, suffix = false, t
startTime = startTime || currentTime;
const percent = (currentTime - startTime) / time;
if (percent >= 1) {
who[what] = to;
who[what] = toBefore;
return res();
}
who[what] = Math.round(animeFxn(percent) * diff + from);
let next = animeFxn(percent) * diff + from;
if (!suffix && !preffix) who[what] = next;
else who[what] = (preffix ? preffix : '') + next + (suffix ? suffix : '');
window.requestAnimationFrame(frame);
}
window.requestAnimationFrame(frame);
Expand Down
2 changes: 2 additions & 0 deletions src/sifrrelements.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,5 @@ export { default as SifrrProgressRound } from '../elements/sifrr-progress-round/

// helpers
export { default as animate } from '../helpers/animate';
// import animate from '../helpers/animate';
// window.animate = animate;

0 comments on commit 28032d1

Please sign in to comment.