Skip to content

Commit 4fc2a0f

Browse files
committed
Merge branch 'hotfix/2.2.1'
2 parents 9f3d08b + 9eaef1d commit 4fc2a0f

File tree

10 files changed

+50
-48
lines changed

10 files changed

+50
-48
lines changed

package-lock.json

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@studiometa/js-toolkit-workspace",
3-
"version": "2.2.0",
3+
"version": "2.2.1",
44
"private": true,
55
"workspaces": [
66
"packages/*"

packages/demo/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@studiometa/js-toolkit-demo",
3-
"version": "2.2.0",
3+
"version": "2.2.1",
44
"private": true,
55
"type": "commonjs",
66
"scripts": {

packages/docs/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@studiometa/js-toolkit-docs",
3-
"version": "2.2.0",
3+
"version": "2.2.1",
44
"type": "module",
55
"private": true,
66
"scripts": {

packages/js-toolkit/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@studiometa/js-toolkit",
3-
"version": "2.2.0",
3+
"version": "2.2.1",
44
"description": "A set of useful little bits of JavaScript to boost your project! 🚀",
55
"publishConfig": {
66
"access": "public"

packages/js-toolkit/utils/css/animate.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -145,22 +145,21 @@ function render(element, from, to, progress) {
145145

146146
/**
147147
* @typedef {import('./transform.js').TransformProps} TransformProps
148-
* @typedef {import('../math/ease.js').EasingFunction} EasingFn
149148
* @typedef {[number, number, number, number]} BezierCurve
150149
* @typedef {{
151150
* duration?: number;
152-
* easing?: EasingFn|BezierCurve;
151+
* easing?: import('../math/createEases.js').EasingFunction|BezierCurve;
153152
* onProgress?: (progress: number, easedProgress: number) => void;
154153
* onFinish?: (progress: number, easedProgress: number) => void;
155154
* }} Options
156155
* @typedef {TransformProps & {
157156
* opacity?: number;
158157
* transformOrigin?: string;
159-
* easing?: EasingFn|BezierCurve;
158+
* easing?: import('../math/createEases.js').EasingFunction|BezierCurve;
160159
* offset?: number;
161160
* }} Keyframe
162161
* @typedef {Keyframe & {
163-
* easing: EasingFn;
162+
* easing: import('../math/createEases.js').EasingFunction;
164163
* offset: number;
165164
* }} NormalizedKeyframe
166165
* @typedef {{
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/**
2+
* @typedef {(progress: number) => number} EasingFunction
3+
*/
4+
5+
/**
6+
* Create an out easing function.
7+
*
8+
* @param {EasingFunction} easeIn The ease in function.
9+
* @returns {EasingFunction} The out function.
10+
*/
11+
export function createEaseOut(easeIn) {
12+
return (progress) => 1 - easeIn(1 - progress);
13+
}
14+
15+
/**
16+
* Create an in-out easing function.
17+
*
18+
* @param {EasingFunction} easeIn The ease in function.
19+
* @returns {EasingFunction} The in-out function.
20+
*/
21+
export function createEaseInOut(easeIn) {
22+
/* eslint-disable no-nested-ternary */
23+
return (progress) =>
24+
progress === 0
25+
? 0
26+
: progress === 1
27+
? 1
28+
: progress < 0.5
29+
? easeIn(progress * 2) / 2
30+
: 1 - easeIn((1 - progress) * 2) / 2;
31+
}

packages/js-toolkit/utils/math/ease.js

Lines changed: 3 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,8 @@
1-
/**
2-
* @typedef {(progress: number) => number} EasingFunction
3-
*/
4-
5-
/**
6-
* Create an out easing function.
7-
*
8-
* @param {EasingFunction} easeIn The ease in function.
9-
* @returns {EasingFunction} The out function.
10-
*/
11-
export function createEaseOut(easeIn) {
12-
return (progress) => 1 - easeIn(1 - progress);
13-
}
1+
import { createEaseOut, createEaseInOut } from './createEases.js';
142

153
/**
16-
* Create an in-out easing function.
17-
*
18-
* @param {EasingFunction} easeIn The ease in function.
19-
* @returns {EasingFunction} The in-out function.
20-
*/
21-
export function createEaseInOut(easeIn) {
22-
/* eslint-disable no-nested-ternary */
23-
return (progress) =>
24-
progress === 0
25-
? 0
26-
: progress === 1
27-
? 1
28-
: progress < 0.5
29-
? easeIn(progress * 2) / 2
30-
: 1 - easeIn((1 - progress) * 2) / 2;
31-
}
32-
33-
/**
34-
* @type {EasingFunction}
4+
* @param {number} progress Progress value betwen 0 and 1.
5+
* @returns {number} Eased value between 0 and 1.
356
*/
367
export function easeInQuad(progress) {
378
return progress ** 2;

packages/js-toolkit/utils/math/index.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ export { default as map } from './map.js';
77
export { default as round } from './round.js';
88
export * from './ease.js';
99
export * as ease from './ease.js';
10+
export * from './createEases.js';

packages/tests/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@studiometa/js-toolkit-tests",
3-
"version": "2.2.0",
3+
"version": "2.2.1",
44
"private": true,
55
"type": "module",
66
"scripts": {

0 commit comments

Comments
 (0)