From 15b6cded7056553e13e4cfdb42a6986873c5a722 Mon Sep 17 00:00:00 2001 From: Davlat Date: Mon, 25 Sep 2017 21:29:05 +0500 Subject: [PATCH] deprecate(Tween#seek): it not works as excepted, PR's are welcome for fix without loss (or less loss) of performance config(change): change to latest timing(repeat): now uses delayTime as repeatDelay for reducing config with more complexity feat(startTime): now accepts relative timing --- API.md | 40 +++++----------------------------------- package.json | 3 +-- rollup.config.js | 10 ++++++---- rollup.config.lite.js | 12 +++++++----- ts/Timeline.ts | 5 +---- ts/Tween.ts | 33 ++++++++------------------------- ts/lite.ts | 27 +++++++-------------------- 7 files changed, 35 insertions(+), 95 deletions(-) diff --git a/API.md b/API.md index 560233a..2c847d2 100644 --- a/API.md +++ b/API.md @@ -307,7 +307,6 @@ import {Tween} from 'es6-tween/src/Tween.Lite' let tween = new Tween({x:0}).to( * [.stop()](#Lite+stop) * [.delay(amount)](#Lite+delay) * [.repeat(amount)](#Lite+repeat) - * [.repeatDelay(amount)](#Lite+repeatDelay) * [.reverseDelay(amount)](#Lite+reverseDelay) * [.yoyo(state)](#Lite+yoyo) * [.easing(_easingFunction)](#Lite+easing) @@ -483,21 +482,6 @@ Sets how times tween is repeating ```js tween.repeat(2) ``` - - -### lite.repeatDelay(amount) -Set delay of each repeat of tween - -**Kind**: instance method of [Lite](#Lite) - -| Param | Type | Description | -| --- | --- | --- | -| amount | number | Sets tween repeat delay / repeat wait duration | - -**Example** -```js -tween.repeatDelay(500) -``` ### lite.reverseDelay(amount) @@ -703,14 +687,13 @@ let tween = new Tween(myNode, {width:'100px'}).to({width:'300px'}, 2000).start() * [.pause()](#Tween+pause) * [.play()](#Tween+play) * [.restart([noDelay])](#Tween+restart) - * [.seek(time, [keepPlaying])](#Tween+seek) + * ~~[.seek(time, [keepPlaying])](#Tween+seek)~~ * [.duration(amount)](#Tween+duration) * [.to(properties, [duration])](#Tween+to) * [.start(time)](#Tween+start) * [.stop()](#Tween+stop) * [.delay(amount)](#Tween+delay) * [.repeat(amount)](#Tween+repeat) - * [.repeatDelay(amount)](#Tween+repeatDelay) * [.reverseDelay(amount)](#Tween+reverseDelay) * [.yoyo(state, [_easingReverse])](#Tween+yoyo) * [.easing(_easingFunction)](#Tween+easing) @@ -799,8 +782,10 @@ tween.restart() ``` -### tween.seek(time, [keepPlaying]) -Seek tween value by `time` +### ~~tween.seek(time, [keepPlaying])~~ +***Deprecated*** + +Seek tween value by `time`. Note: Not works as excepted. PR are welcome **Kind**: instance method of [Tween](#Tween) @@ -899,21 +884,6 @@ Sets how times tween is repeating ```js tween.repeat(5) ``` - - -### tween.repeatDelay(amount) -Set delay of each repeat of tween - -**Kind**: instance method of [Tween](#Tween) - -| Param | Type | Description | -| --- | --- | --- | -| amount | number | Sets tween repeat delay / repeat wait duration | - -**Example** -```js -tween.repeatDelay(400) -``` ### tween.reverseDelay(amount) diff --git a/package.json b/package.json index 51cd06b..91a5382 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "es6-tween", - "version": "3.8.22", + "version": "3.8.23", "description": "ES6 implementation of amazing tween.js", "browser": "full/Tween.min.js", "cdn": "full/Tween.min.js", @@ -9,7 +9,6 @@ "directories": { "example": "examples" }, - "types": "typings/Tween.d.ts", "scripts": { "source": "rollup -c", "minify": "uglifyjs full/Tween.js -c -m -o full/Tween.min.js --source-map \"filename='full/Tween.min.js.map'\"", diff --git a/rollup.config.js b/rollup.config.js index 6e6d16d..befc900 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -13,14 +13,16 @@ var plugins = [ ] export default { - entry: 'src/index.js', + input: 'src/index.js', + output: { format: 'umd', - dest: 'full/Tween.js', + file: 'full/Tween.js' + }, globals: { 'intertween': 'InterTween' }, - sourceMap: true, + sourcemap: true, context: 'this', - moduleName: 'TWEEN', + name: 'TWEEN', plugins: plugins } \ No newline at end of file diff --git a/rollup.config.lite.js b/rollup.config.lite.js index 1bfc866..a3eabd8 100644 --- a/rollup.config.lite.js +++ b/rollup.config.lite.js @@ -1,8 +1,10 @@ export default { - entry: 'src/index.lite.js', - dest: 'lite/Tween.js', - format: 'umd', - sourceMap: true, + input: 'src/index.lite.js', + output: { + file: 'lite/Tween.js', + format: 'umd' + }, + sourcemap: true, context: 'this', - moduleName: 'TWEEN' + name: 'TWEEN' } \ No newline at end of file diff --git a/ts/Timeline.ts b/ts/Timeline.ts index e708736..3899295 100644 --- a/ts/Timeline.ts +++ b/ts/Timeline.ts @@ -246,7 +246,6 @@ class Timeline extends Tween { const { _tweens, _duration, - _repeatDelayTime, _reverseDelayTime, _startTime, _reversed, @@ -290,9 +289,7 @@ class Timeline extends Tween { this.timingOrder(timing => timing.reverse()); } - if (!_reversed && _repeatDelayTime) { - this._startTime = time + _repeatDelayTime; - } else if (_reversed && _reverseDelayTime) { + if (_reversed && _reverseDelayTime) { this._startTime = time + _reverseDelayTime; } else { this._startTime = time; diff --git a/ts/Tween.ts b/ts/Tween.ts index 817e038..954f768 100644 --- a/ts/Tween.ts +++ b/ts/Tween.ts @@ -52,7 +52,6 @@ class Tween extends EventClass { public _startTime: number; public _initTime: number; public _delayTime: number; - public _repeatDelayTime: number; public _reverseDelayTime: number; public _repeat: number; public _yoyo: boolean; @@ -244,23 +243,20 @@ class Tween extends EventClass { } /** - * Seek tween value by `time` + * Seek tween value by `time`. Note: Not works as excepted. PR are welcome * @param {Time} time Tween update time * @param {boolean=} keepPlaying When this param is set to `false`, tween pausing after seek * @example tween.seek(500) * @memberof Tween + * @deprecated */ public seek(time: number, keepPlaying?: boolean) { - const { _duration, _repeat, _initTime } = this; + const { _duration, _repeat, _initTime, _startTime } = this; - let updateTime: number = _initTime + time; + let updateTime: number = _startTime + time; this._isPlaying = true; - if (keepPlaying) { - add(this); - } - - this.update(updateTime, false, true); + this.update(time, false); this.emit(EVENT_SEEK, time, this.object); @@ -439,19 +435,6 @@ class Tween extends EventClass { return this; } - /** - * Set delay of each repeat of tween - * @param {number} amount Sets tween repeat delay / repeat wait duration - * @example tween.repeatDelay(400) - * @memberof Tween - */ - public repeatDelay(amount: number) { - this._repeatDelayTime = - typeof amount === 'function' ? amount(this._repeatDelayTime) : amount; - - return this; - } - /** * Set delay of each repeat alternate of tween * @param {number} amount Sets tween repeat alternate delay / repeat alternate wait duration @@ -536,7 +519,7 @@ class Tween extends EventClass { _easingFunction, _easingReverse, _repeat, - _repeatDelayTime, + _delayTime, _reverseDelayTime, _yoyo, _reversed, @@ -603,9 +586,9 @@ class Tween extends EventClass { this.emit(_yoyo && !_reversed ? EVENT_REVERSE : EVENT_REPEAT, object); if (_reversed && _reverseDelayTime) { - this._startTime += _duration - _reverseDelayTime; + this._startTime = time - _reverseDelayTime; } else { - this._startTime += _duration; + this._startTime = time + _delayTime; } return true; diff --git a/ts/lite.ts b/ts/lite.ts index 676691b..dd3846b 100644 --- a/ts/lite.ts +++ b/ts/lite.ts @@ -26,7 +26,6 @@ class Lite { public _interpolationFunction: Function; public _startTime: number; public _delayTime: number; - public _repeatDelayTime: number; public _reverseDelayTime: number; public _repeat: number; public _yoyo: boolean; @@ -196,7 +195,10 @@ class Lite { * @memberof Lite */ public start(time?: number) { - this._startTime = time !== undefined ? time : now(); + this._startTime = + time !== undefined + ? typeof time === 'string' ? now() + parseFloat(time) : time + : now(); this._startTime += this._delayTime; const { @@ -334,19 +336,6 @@ class Lite { return this; } - /** - * Set delay of each repeat of tween - * @param {number} amount Sets tween repeat delay / repeat wait duration - * @example tween.repeatDelay(500) - * @memberof Lite - */ - public repeatDelay(amount: number) { - this._repeatDelayTime = - typeof amount === 'function' ? amount(this._repeatDelayTime) : amount; - - return this; - } - /** * Set delay of each repeat alternate of tween * @param {number} amount Sets tween repeat alternate delay / repeat alternate wait duration @@ -415,7 +404,7 @@ class Lite { _onStartCallbackFired, _easingFunction, _repeat, - _repeatDelayTime, + _delayTime, _reverseDelayTime, _yoyo, _reversed, @@ -490,12 +479,10 @@ class Lite { this._reversed = !_reversed; } - if (!_reversed && _repeatDelayTime) { - this._startTime = time + _repeatDelayTime; - } else if (_reversed && _reverseDelayTime) { + if (_reversed && _reverseDelayTime) { this._startTime = time + _reverseDelayTime; } else { - this._startTime = time; + this._startTime = time + _delayTime; } return true;