@tsparticles/updater-roll 3.9.1 → 4.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/386.min.js +2 -0
- package/386.min.js.LICENSE.txt +1 -0
- package/browser/RollUpdater.js +1 -3
- package/browser/index.js +8 -6
- package/cjs/Options/Classes/Roll.js +10 -14
- package/cjs/Options/Classes/RollLight.js +4 -8
- package/cjs/Options/Interfaces/IRoll.js +1 -2
- package/cjs/Options/Interfaces/IRollLight.js +1 -2
- package/cjs/RollMode.js +2 -5
- package/cjs/RollUpdater.js +6 -12
- package/cjs/Types.js +1 -2
- package/cjs/Utils.js +15 -19
- package/cjs/index.js +8 -9
- package/dist_browser_RollUpdater_js.js +70 -0
- package/esm/RollUpdater.js +1 -3
- package/esm/index.js +8 -6
- package/package.json +4 -3
- package/report.html +5 -4
- package/tsparticles.updater.roll.js +209 -70
- package/tsparticles.updater.roll.min.js +1 -1
- package/tsparticles.updater.roll.min.js.LICENSE.txt +1 -1
- package/types/index.d.ts +1 -1
- package/umd/RollUpdater.js +1 -3
- package/umd/index.js +43 -7
package/386.min.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/*! For license information please see 386.min.js.LICENSE.txt */
|
|
2
|
+
(this.webpackChunk_tsparticles_updater_roll=this.webpackChunk_tsparticles_updater_roll||[]).push([[386],{386(e,l,a){a.d(l,{RollUpdater:()=>s});var n,o=a(303);!function(e){e.both="both",e.horizontal="horizontal",e.vertical="vertical"}(n||(n={}));const t=2*Math.PI;class r{constructor(){this.enable=!1,this.value=0}load(e){(0,o.isNull)(e)||(void 0!==e.enable&&(this.enable=e.enable),void 0!==e.value&&(this.value=(0,o.setRangeValue)(e.value)))}}class i{constructor(){this.darken=new r,this.enable=!1,this.enlighten=new r,this.mode=n.vertical,this.speed=25}load(e){(0,o.isNull)(e)||(void 0!==e.backColor&&(this.backColor=o.OptionsColor.create(this.backColor,e.backColor)),this.darken.load(e.darken),void 0!==e.enable&&(this.enable=e.enable),this.enlighten.load(e.enlighten),void 0!==e.mode&&(this.mode=e.mode),void 0!==e.speed&&(this.speed=(0,o.setRangeValue)(e.speed)))}}class s{constructor(e){this._engine=e}getTransformValues(e){const l=e.roll?.enable&&e.roll,a=l&&l.horizontal,n=l&&l.vertical;return{a:a?Math.cos(l.angle):void 0,d:n?Math.sin(l.angle):void 0}}init(e){!function(e,l){const a=l.options.roll;if(a?.enable)if(l.roll={enable:a.enable,horizontal:a.mode===n.horizontal||a.mode===n.both,vertical:a.mode===n.vertical||a.mode===n.both,angle:(0,o.getRandom)()*t,speed:(0,o.getRangeValue)(a.speed)/360},a.backColor)l.backColor=(0,o.rangeColorToHsl)(e,a.backColor);else if(a.darken.enable&&a.enlighten.enable){const e=(0,o.getRandom)()>=o.half?o.AlterType.darken:o.AlterType.enlighten;l.roll.alter={type:e,value:(0,o.getRangeValue)(e===o.AlterType.darken?a.darken.value:a.enlighten.value)}}else a.darken.enable?l.roll.alter={type:o.AlterType.darken,value:(0,o.getRangeValue)(a.darken.value)}:a.enlighten.enable&&(l.roll.alter={type:o.AlterType.enlighten,value:(0,o.getRangeValue)(a.enlighten.value)});else l.roll={enable:!1,horizontal:!1,vertical:!1,angle:0,speed:0}}(this._engine,e)}isEnabled(e){const l=e.options.roll;return!e.destroyed&&!e.spawning&&!!l?.enable}loadOptions(e,...l){e.roll??=new i;for(const a of l)e.roll.load(a?.roll)}update(e,l){this.isEnabled(e)&&function(e,l){const a=e.options.roll,n=e.roll;if(!n||!a?.enable)return;const o=n.speed*l.factor,r=t;n.angle+=o,n.angle>r&&(n.angle-=r)}(e,l)}}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
/*! tsParticles Roll Updater v4.0.0-alpha.1 by Matteo Bruni */
|
package/browser/RollUpdater.js
CHANGED
|
@@ -19,9 +19,7 @@ export class RollUpdater {
|
|
|
19
19
|
return !particle.destroyed && !particle.spawning && !!roll?.enable;
|
|
20
20
|
}
|
|
21
21
|
loadOptions(options, ...sources) {
|
|
22
|
-
|
|
23
|
-
options.roll = new Roll();
|
|
24
|
-
}
|
|
22
|
+
options.roll ??= new Roll();
|
|
25
23
|
for (const source of sources) {
|
|
26
24
|
options.roll.load(source?.roll);
|
|
27
25
|
}
|
package/browser/index.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
engine.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
export function loadRollUpdater(engine) {
|
|
2
|
+
engine.checkVersion("4.0.0-alpha.1");
|
|
3
|
+
engine.register(e => {
|
|
4
|
+
e.addParticleUpdater("roll", async () => {
|
|
5
|
+
const { RollUpdater } = await import("./RollUpdater.js");
|
|
6
|
+
return new RollUpdater(e);
|
|
7
|
+
});
|
|
8
|
+
});
|
|
7
9
|
}
|
|
@@ -1,23 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const RollLight_js_1 = require("./RollLight.js");
|
|
6
|
-
const RollMode_js_1 = require("../../RollMode.js");
|
|
7
|
-
class Roll {
|
|
1
|
+
import { OptionsColor, isNull, setRangeValue, } from "@tsparticles/engine";
|
|
2
|
+
import { RollLight } from "./RollLight.js";
|
|
3
|
+
import { RollMode } from "../../RollMode.js";
|
|
4
|
+
export class Roll {
|
|
8
5
|
constructor() {
|
|
9
|
-
this.darken = new
|
|
6
|
+
this.darken = new RollLight();
|
|
10
7
|
this.enable = false;
|
|
11
|
-
this.enlighten = new
|
|
12
|
-
this.mode =
|
|
8
|
+
this.enlighten = new RollLight();
|
|
9
|
+
this.mode = RollMode.vertical;
|
|
13
10
|
this.speed = 25;
|
|
14
11
|
}
|
|
15
12
|
load(data) {
|
|
16
|
-
if (
|
|
13
|
+
if (isNull(data)) {
|
|
17
14
|
return;
|
|
18
15
|
}
|
|
19
16
|
if (data.backColor !== undefined) {
|
|
20
|
-
this.backColor =
|
|
17
|
+
this.backColor = OptionsColor.create(this.backColor, data.backColor);
|
|
21
18
|
}
|
|
22
19
|
this.darken.load(data.darken);
|
|
23
20
|
if (data.enable !== undefined) {
|
|
@@ -28,8 +25,7 @@ class Roll {
|
|
|
28
25
|
this.mode = data.mode;
|
|
29
26
|
}
|
|
30
27
|
if (data.speed !== undefined) {
|
|
31
|
-
this.speed =
|
|
28
|
+
this.speed = setRangeValue(data.speed);
|
|
32
29
|
}
|
|
33
30
|
}
|
|
34
31
|
}
|
|
35
|
-
exports.Roll = Roll;
|
|
@@ -1,22 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.RollLight = void 0;
|
|
4
|
-
const engine_1 = require("@tsparticles/engine");
|
|
5
|
-
class RollLight {
|
|
1
|
+
import { isNull, setRangeValue } from "@tsparticles/engine";
|
|
2
|
+
export class RollLight {
|
|
6
3
|
constructor() {
|
|
7
4
|
this.enable = false;
|
|
8
5
|
this.value = 0;
|
|
9
6
|
}
|
|
10
7
|
load(data) {
|
|
11
|
-
if (
|
|
8
|
+
if (isNull(data)) {
|
|
12
9
|
return;
|
|
13
10
|
}
|
|
14
11
|
if (data.enable !== undefined) {
|
|
15
12
|
this.enable = data.enable;
|
|
16
13
|
}
|
|
17
14
|
if (data.value !== undefined) {
|
|
18
|
-
this.value =
|
|
15
|
+
this.value = setRangeValue(data.value);
|
|
19
16
|
}
|
|
20
17
|
}
|
|
21
18
|
}
|
|
22
|
-
exports.RollLight = RollLight;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
export {};
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
export {};
|
package/cjs/RollMode.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RollMode = void 0;
|
|
4
|
-
var RollMode;
|
|
1
|
+
export var RollMode;
|
|
5
2
|
(function (RollMode) {
|
|
6
3
|
RollMode["both"] = "both";
|
|
7
4
|
RollMode["horizontal"] = "horizontal";
|
|
8
5
|
RollMode["vertical"] = "vertical";
|
|
9
|
-
})(RollMode || (
|
|
6
|
+
})(RollMode || (RollMode = {}));
|
package/cjs/RollUpdater.js
CHANGED
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const Utils_js_1 = require("./Utils.js");
|
|
5
|
-
const Roll_js_1 = require("./Options/Classes/Roll.js");
|
|
6
|
-
class RollUpdater {
|
|
1
|
+
import { initParticle, updateRoll } from "./Utils.js";
|
|
2
|
+
import { Roll } from "./Options/Classes/Roll.js";
|
|
3
|
+
export class RollUpdater {
|
|
7
4
|
constructor(engine) {
|
|
8
5
|
this._engine = engine;
|
|
9
6
|
}
|
|
@@ -15,16 +12,14 @@ class RollUpdater {
|
|
|
15
12
|
};
|
|
16
13
|
}
|
|
17
14
|
init(particle) {
|
|
18
|
-
|
|
15
|
+
initParticle(this._engine, particle);
|
|
19
16
|
}
|
|
20
17
|
isEnabled(particle) {
|
|
21
18
|
const roll = particle.options.roll;
|
|
22
19
|
return !particle.destroyed && !particle.spawning && !!roll?.enable;
|
|
23
20
|
}
|
|
24
21
|
loadOptions(options, ...sources) {
|
|
25
|
-
|
|
26
|
-
options.roll = new Roll_js_1.Roll();
|
|
27
|
-
}
|
|
22
|
+
options.roll ??= new Roll();
|
|
28
23
|
for (const source of sources) {
|
|
29
24
|
options.roll.load(source?.roll);
|
|
30
25
|
}
|
|
@@ -33,7 +28,6 @@ class RollUpdater {
|
|
|
33
28
|
if (!this.isEnabled(particle)) {
|
|
34
29
|
return;
|
|
35
30
|
}
|
|
36
|
-
|
|
31
|
+
updateRoll(particle, delta);
|
|
37
32
|
}
|
|
38
33
|
}
|
|
39
|
-
exports.RollUpdater = RollUpdater;
|
package/cjs/Types.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
1
|
+
export {};
|
package/cjs/Utils.js
CHANGED
|
@@ -1,11 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.initParticle = initParticle;
|
|
4
|
-
exports.updateRoll = updateRoll;
|
|
5
|
-
const engine_1 = require("@tsparticles/engine");
|
|
6
|
-
const RollMode_js_1 = require("./RollMode.js");
|
|
1
|
+
import { AlterType, getRandom, getRangeValue, half, rangeColorToHsl, } from "@tsparticles/engine";
|
|
2
|
+
import { RollMode } from "./RollMode.js";
|
|
7
3
|
const double = 2, doublePI = Math.PI * double, maxAngle = 360;
|
|
8
|
-
function initParticle(engine, particle) {
|
|
4
|
+
export function initParticle(engine, particle) {
|
|
9
5
|
const rollOpt = particle.options.roll;
|
|
10
6
|
if (!rollOpt?.enable) {
|
|
11
7
|
particle.roll = {
|
|
@@ -19,35 +15,35 @@ function initParticle(engine, particle) {
|
|
|
19
15
|
}
|
|
20
16
|
particle.roll = {
|
|
21
17
|
enable: rollOpt.enable,
|
|
22
|
-
horizontal: rollOpt.mode ===
|
|
23
|
-
vertical: rollOpt.mode ===
|
|
24
|
-
angle:
|
|
25
|
-
speed:
|
|
18
|
+
horizontal: rollOpt.mode === RollMode.horizontal || rollOpt.mode === RollMode.both,
|
|
19
|
+
vertical: rollOpt.mode === RollMode.vertical || rollOpt.mode === RollMode.both,
|
|
20
|
+
angle: getRandom() * doublePI,
|
|
21
|
+
speed: getRangeValue(rollOpt.speed) / maxAngle,
|
|
26
22
|
};
|
|
27
23
|
if (rollOpt.backColor) {
|
|
28
|
-
particle.backColor =
|
|
24
|
+
particle.backColor = rangeColorToHsl(engine, rollOpt.backColor);
|
|
29
25
|
}
|
|
30
26
|
else if (rollOpt.darken.enable && rollOpt.enlighten.enable) {
|
|
31
|
-
const alterType =
|
|
27
|
+
const alterType = getRandom() >= half ? AlterType.darken : AlterType.enlighten;
|
|
32
28
|
particle.roll.alter = {
|
|
33
29
|
type: alterType,
|
|
34
|
-
value:
|
|
30
|
+
value: getRangeValue(alterType === AlterType.darken ? rollOpt.darken.value : rollOpt.enlighten.value),
|
|
35
31
|
};
|
|
36
32
|
}
|
|
37
33
|
else if (rollOpt.darken.enable) {
|
|
38
34
|
particle.roll.alter = {
|
|
39
|
-
type:
|
|
40
|
-
value:
|
|
35
|
+
type: AlterType.darken,
|
|
36
|
+
value: getRangeValue(rollOpt.darken.value),
|
|
41
37
|
};
|
|
42
38
|
}
|
|
43
39
|
else if (rollOpt.enlighten.enable) {
|
|
44
40
|
particle.roll.alter = {
|
|
45
|
-
type:
|
|
46
|
-
value:
|
|
41
|
+
type: AlterType.enlighten,
|
|
42
|
+
value: getRangeValue(rollOpt.enlighten.value),
|
|
47
43
|
};
|
|
48
44
|
}
|
|
49
45
|
}
|
|
50
|
-
function updateRoll(particle, delta) {
|
|
46
|
+
export function updateRoll(particle, delta) {
|
|
51
47
|
const roll = particle.options.roll, data = particle.roll;
|
|
52
48
|
if (!data || !roll?.enable) {
|
|
53
49
|
return;
|
package/cjs/index.js
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}, refresh);
|
|
1
|
+
export function loadRollUpdater(engine) {
|
|
2
|
+
engine.checkVersion("4.0.0-alpha.1");
|
|
3
|
+
engine.register(e => {
|
|
4
|
+
e.addParticleUpdater("roll", async () => {
|
|
5
|
+
const { RollUpdater } = await import("./RollUpdater.js");
|
|
6
|
+
return new RollUpdater(e);
|
|
7
|
+
});
|
|
8
|
+
});
|
|
10
9
|
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Author : Matteo Bruni
|
|
3
|
+
* MIT license: https://opensource.org/licenses/MIT
|
|
4
|
+
* Demo / Generator : https://particles.js.org/
|
|
5
|
+
* GitHub : https://www.github.com/matteobruni/tsparticles
|
|
6
|
+
* How to use? : Check the GitHub README
|
|
7
|
+
* v4.0.0-alpha.1
|
|
8
|
+
*/
|
|
9
|
+
"use strict";
|
|
10
|
+
/*
|
|
11
|
+
* ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").
|
|
12
|
+
* This devtool is neither made for production nor for readable output files.
|
|
13
|
+
* It uses "eval()" calls to create a separate source file in the browser devtools.
|
|
14
|
+
* If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/)
|
|
15
|
+
* or disable the default devtool with "devtool: false".
|
|
16
|
+
* If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/).
|
|
17
|
+
*/
|
|
18
|
+
(this["webpackChunk_tsparticles_updater_roll"] = this["webpackChunk_tsparticles_updater_roll"] || []).push([["dist_browser_RollUpdater_js"],{
|
|
19
|
+
|
|
20
|
+
/***/ "./dist/browser/Options/Classes/Roll.js"
|
|
21
|
+
/*!**********************************************!*\
|
|
22
|
+
!*** ./dist/browser/Options/Classes/Roll.js ***!
|
|
23
|
+
\**********************************************/
|
|
24
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
25
|
+
|
|
26
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ Roll: () => (/* binding */ Roll)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _RollLight_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RollLight.js */ \"./dist/browser/Options/Classes/RollLight.js\");\n/* harmony import */ var _RollMode_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../RollMode.js */ \"./dist/browser/RollMode.js\");\n\n\n\nclass Roll {\n constructor() {\n this.darken = new _RollLight_js__WEBPACK_IMPORTED_MODULE_1__.RollLight();\n this.enable = false;\n this.enlighten = new _RollLight_js__WEBPACK_IMPORTED_MODULE_1__.RollLight();\n this.mode = _RollMode_js__WEBPACK_IMPORTED_MODULE_2__.RollMode.vertical;\n this.speed = 25;\n }\n load(data) {\n if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isNull)(data)) {\n return;\n }\n if (data.backColor !== undefined) {\n this.backColor = _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.OptionsColor.create(this.backColor, data.backColor);\n }\n this.darken.load(data.darken);\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n this.enlighten.load(data.enlighten);\n if (data.mode !== undefined) {\n this.mode = data.mode;\n }\n if (data.speed !== undefined) {\n this.speed = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.setRangeValue)(data.speed);\n }\n }\n}\n\n//# sourceURL=webpack://@tsparticles/updater-roll/./dist/browser/Options/Classes/Roll.js?\n}");
|
|
27
|
+
|
|
28
|
+
/***/ },
|
|
29
|
+
|
|
30
|
+
/***/ "./dist/browser/Options/Classes/RollLight.js"
|
|
31
|
+
/*!***************************************************!*\
|
|
32
|
+
!*** ./dist/browser/Options/Classes/RollLight.js ***!
|
|
33
|
+
\***************************************************/
|
|
34
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
35
|
+
|
|
36
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RollLight: () => (/* binding */ RollLight)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n\nclass RollLight {\n constructor() {\n this.enable = false;\n this.value = 0;\n }\n load(data) {\n if ((0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.isNull)(data)) {\n return;\n }\n if (data.enable !== undefined) {\n this.enable = data.enable;\n }\n if (data.value !== undefined) {\n this.value = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.setRangeValue)(data.value);\n }\n }\n}\n\n//# sourceURL=webpack://@tsparticles/updater-roll/./dist/browser/Options/Classes/RollLight.js?\n}");
|
|
37
|
+
|
|
38
|
+
/***/ },
|
|
39
|
+
|
|
40
|
+
/***/ "./dist/browser/RollMode.js"
|
|
41
|
+
/*!**********************************!*\
|
|
42
|
+
!*** ./dist/browser/RollMode.js ***!
|
|
43
|
+
\**********************************/
|
|
44
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
45
|
+
|
|
46
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RollMode: () => (/* binding */ RollMode)\n/* harmony export */ });\nvar RollMode;\n(function (RollMode) {\n RollMode[\"both\"] = \"both\";\n RollMode[\"horizontal\"] = \"horizontal\";\n RollMode[\"vertical\"] = \"vertical\";\n})(RollMode || (RollMode = {}));\n\n//# sourceURL=webpack://@tsparticles/updater-roll/./dist/browser/RollMode.js?\n}");
|
|
47
|
+
|
|
48
|
+
/***/ },
|
|
49
|
+
|
|
50
|
+
/***/ "./dist/browser/RollUpdater.js"
|
|
51
|
+
/*!*************************************!*\
|
|
52
|
+
!*** ./dist/browser/RollUpdater.js ***!
|
|
53
|
+
\*************************************/
|
|
54
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
55
|
+
|
|
56
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ RollUpdater: () => (/* binding */ RollUpdater)\n/* harmony export */ });\n/* harmony import */ var _Utils_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Utils.js */ \"./dist/browser/Utils.js\");\n/* harmony import */ var _Options_Classes_Roll_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Options/Classes/Roll.js */ \"./dist/browser/Options/Classes/Roll.js\");\n\n\nclass RollUpdater {\n constructor(engine) {\n this._engine = engine;\n }\n getTransformValues(particle) {\n const roll = particle.roll?.enable && particle.roll,\n rollHorizontal = roll && roll.horizontal,\n rollVertical = roll && roll.vertical;\n return {\n a: rollHorizontal ? Math.cos(roll.angle) : undefined,\n d: rollVertical ? Math.sin(roll.angle) : undefined\n };\n }\n init(particle) {\n (0,_Utils_js__WEBPACK_IMPORTED_MODULE_0__.initParticle)(this._engine, particle);\n }\n isEnabled(particle) {\n const roll = particle.options.roll;\n return !particle.destroyed && !particle.spawning && !!roll?.enable;\n }\n loadOptions(options, ...sources) {\n options.roll ??= new _Options_Classes_Roll_js__WEBPACK_IMPORTED_MODULE_1__.Roll();\n for (const source of sources) {\n options.roll.load(source?.roll);\n }\n }\n update(particle, delta) {\n if (!this.isEnabled(particle)) {\n return;\n }\n (0,_Utils_js__WEBPACK_IMPORTED_MODULE_0__.updateRoll)(particle, delta);\n }\n}\n\n//# sourceURL=webpack://@tsparticles/updater-roll/./dist/browser/RollUpdater.js?\n}");
|
|
57
|
+
|
|
58
|
+
/***/ },
|
|
59
|
+
|
|
60
|
+
/***/ "./dist/browser/Utils.js"
|
|
61
|
+
/*!*******************************!*\
|
|
62
|
+
!*** ./dist/browser/Utils.js ***!
|
|
63
|
+
\*******************************/
|
|
64
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
65
|
+
|
|
66
|
+
eval("{__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ initParticle: () => (/* binding */ initParticle),\n/* harmony export */ updateRoll: () => (/* binding */ updateRoll)\n/* harmony export */ });\n/* harmony import */ var _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tsparticles/engine */ \"@tsparticles/engine\");\n/* harmony import */ var _RollMode_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./RollMode.js */ \"./dist/browser/RollMode.js\");\n\n\nconst double = 2,\n doublePI = Math.PI * double,\n maxAngle = 360;\nfunction initParticle(engine, particle) {\n const rollOpt = particle.options.roll;\n if (!rollOpt?.enable) {\n particle.roll = {\n enable: false,\n horizontal: false,\n vertical: false,\n angle: 0,\n speed: 0\n };\n return;\n }\n particle.roll = {\n enable: rollOpt.enable,\n horizontal: rollOpt.mode === _RollMode_js__WEBPACK_IMPORTED_MODULE_1__.RollMode.horizontal || rollOpt.mode === _RollMode_js__WEBPACK_IMPORTED_MODULE_1__.RollMode.both,\n vertical: rollOpt.mode === _RollMode_js__WEBPACK_IMPORTED_MODULE_1__.RollMode.vertical || rollOpt.mode === _RollMode_js__WEBPACK_IMPORTED_MODULE_1__.RollMode.both,\n angle: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() * doublePI,\n speed: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(rollOpt.speed) / maxAngle\n };\n if (rollOpt.backColor) {\n particle.backColor = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.rangeColorToHsl)(engine, rollOpt.backColor);\n } else if (rollOpt.darken.enable && rollOpt.enlighten.enable) {\n const alterType = (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRandom)() >= _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.half ? _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.AlterType.darken : _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.AlterType.enlighten;\n particle.roll.alter = {\n type: alterType,\n value: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(alterType === _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.AlterType.darken ? rollOpt.darken.value : rollOpt.enlighten.value)\n };\n } else if (rollOpt.darken.enable) {\n particle.roll.alter = {\n type: _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.AlterType.darken,\n value: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(rollOpt.darken.value)\n };\n } else if (rollOpt.enlighten.enable) {\n particle.roll.alter = {\n type: _tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.AlterType.enlighten,\n value: (0,_tsparticles_engine__WEBPACK_IMPORTED_MODULE_0__.getRangeValue)(rollOpt.enlighten.value)\n };\n }\n}\nfunction updateRoll(particle, delta) {\n const roll = particle.options.roll,\n data = particle.roll;\n if (!data || !roll?.enable) {\n return;\n }\n const speed = data.speed * delta.factor,\n max = doublePI;\n data.angle += speed;\n if (data.angle > max) {\n data.angle -= max;\n }\n}\n\n//# sourceURL=webpack://@tsparticles/updater-roll/./dist/browser/Utils.js?\n}");
|
|
67
|
+
|
|
68
|
+
/***/ }
|
|
69
|
+
|
|
70
|
+
}]);
|
package/esm/RollUpdater.js
CHANGED
|
@@ -19,9 +19,7 @@ export class RollUpdater {
|
|
|
19
19
|
return !particle.destroyed && !particle.spawning && !!roll?.enable;
|
|
20
20
|
}
|
|
21
21
|
loadOptions(options, ...sources) {
|
|
22
|
-
|
|
23
|
-
options.roll = new Roll();
|
|
24
|
-
}
|
|
22
|
+
options.roll ??= new Roll();
|
|
25
23
|
for (const source of sources) {
|
|
26
24
|
options.roll.load(source?.roll);
|
|
27
25
|
}
|
package/esm/index.js
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
engine.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
export function loadRollUpdater(engine) {
|
|
2
|
+
engine.checkVersion("4.0.0-alpha.1");
|
|
3
|
+
engine.register(e => {
|
|
4
|
+
e.addParticleUpdater("roll", async () => {
|
|
5
|
+
const { RollUpdater } = await import("./RollUpdater.js");
|
|
6
|
+
return new RollUpdater(e);
|
|
7
|
+
});
|
|
8
|
+
});
|
|
7
9
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tsparticles/updater-roll",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "4.0.0-alpha.1",
|
|
4
4
|
"description": "tsParticles particles roll updater",
|
|
5
5
|
"homepage": "https://particles.js.org",
|
|
6
6
|
"repository": {
|
|
@@ -87,9 +87,10 @@
|
|
|
87
87
|
"./package.json": "./package.json"
|
|
88
88
|
},
|
|
89
89
|
"dependencies": {
|
|
90
|
-
"@tsparticles/engine": "
|
|
90
|
+
"@tsparticles/engine": "4.0.0-alpha.1"
|
|
91
91
|
},
|
|
92
92
|
"publishConfig": {
|
|
93
93
|
"access": "public"
|
|
94
|
-
}
|
|
94
|
+
},
|
|
95
|
+
"type": "module"
|
|
95
96
|
}
|