@tsparticles/plugin-hsv-color 3.0.0-alpha.1 → 3.0.0-beta.0
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/README.md +15 -11
- package/browser/HsvColorManager.js +19 -9
- package/browser/index.js +1 -1
- package/cjs/HsvColorManager.js +18 -8
- package/cjs/index.js +1 -1
- package/esm/HsvColorManager.js +19 -9
- package/esm/index.js +1 -1
- package/package.json +10 -5
- package/report.html +4 -4
- package/tsparticles.plugin.hsvColor.js +21 -19
- package/tsparticles.plugin.hsvColor.min.js +1 -1
- package/tsparticles.plugin.hsvColor.min.js.LICENSE.txt +1 -8
- package/types/HsvColorManager.d.ts +1 -1
- package/types/index.d.ts +1 -1
- package/umd/HsvColorManager.js +18 -8
- package/umd/index.js +1 -1
package/README.md
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
# tsParticles HSV Color Plugin
|
|
4
4
|
|
|
5
|
-
[](https://www.jsdelivr.com/package/npm/@tsparticles/plugin-hsv-color)
|
|
6
|
+
[](https://www.npmjs.com/package/@tsparticles/plugin-hsv-color)
|
|
7
|
+
[](https://www.npmjs.com/package/@tsparticles/plugin-hsv-color) [](https://github.com/sponsors/matteobruni)
|
|
8
8
|
|
|
9
9
|
[tsParticles](https://github.com/matteobruni/tsparticles) plugin for adding the HSV color support.
|
|
10
10
|
|
|
@@ -42,29 +42,33 @@ Once the scripts are loaded you can set up `tsParticles` and the plugin like thi
|
|
|
42
42
|
This package is compatible also with ES or CommonJS modules, firstly this needs to be installed, like this:
|
|
43
43
|
|
|
44
44
|
```shell
|
|
45
|
-
$ npm install tsparticles
|
|
45
|
+
$ npm install @tsparticles/plugin-hsv-color
|
|
46
46
|
```
|
|
47
47
|
|
|
48
48
|
or
|
|
49
49
|
|
|
50
50
|
```shell
|
|
51
|
-
$ yarn add tsparticles
|
|
51
|
+
$ yarn add @tsparticles/plugin-hsv-color
|
|
52
52
|
```
|
|
53
53
|
|
|
54
54
|
Then you need to import it in the app, like this:
|
|
55
55
|
|
|
56
56
|
```javascript
|
|
57
|
-
const { tsParticles } = require("tsparticles
|
|
58
|
-
const { loadHsvColorPlugin } = require("tsparticles
|
|
57
|
+
const { tsParticles } = require("@tsparticles/engine");
|
|
58
|
+
const { loadHsvColorPlugin } = require("@tsparticles/plugin-hsv-color");
|
|
59
59
|
|
|
60
|
-
|
|
60
|
+
(async () => {
|
|
61
|
+
await loadHsvColorPlugin();
|
|
62
|
+
})();
|
|
61
63
|
```
|
|
62
64
|
|
|
63
65
|
or
|
|
64
66
|
|
|
65
67
|
```javascript
|
|
66
|
-
import { tsParticles } from "tsparticles
|
|
67
|
-
import { loadHsvColorPlugin } from "tsparticles
|
|
68
|
+
import { tsParticles } from "@tsparticles/engine";
|
|
69
|
+
import { loadHsvColorPlugin } from "@tsparticles/plugin-hsv-color";
|
|
68
70
|
|
|
69
|
-
|
|
71
|
+
(async () => {
|
|
72
|
+
await loadHsvColorPlugin();
|
|
73
|
+
})();
|
|
70
74
|
```
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getRangeValue, getStyleFromHsl, parseAlpha } from "@tsparticles/engine";
|
|
1
|
+
import { getRangeValue, getStyleFromHsl, parseAlpha, } from "@tsparticles/engine";
|
|
2
2
|
export function rgbToHsv(rgb) {
|
|
3
3
|
const rgbPercent = {
|
|
4
4
|
r: rgb.r / 255,
|
|
@@ -23,7 +23,10 @@ export function rgbToHsv(rgb) {
|
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
25
|
export function rgbaToHsva(rgba) {
|
|
26
|
-
return
|
|
26
|
+
return {
|
|
27
|
+
a: rgba.a,
|
|
28
|
+
...rgbToHsv(rgba),
|
|
29
|
+
};
|
|
27
30
|
}
|
|
28
31
|
export function getStyleFromHsv(color, opacity) {
|
|
29
32
|
return getStyleFromHsl(hsvToHsl(color), opacity);
|
|
@@ -37,7 +40,10 @@ export function hslToHsv(hsl) {
|
|
|
37
40
|
};
|
|
38
41
|
}
|
|
39
42
|
export function hslaToHsva(hsla) {
|
|
40
|
-
return
|
|
43
|
+
return {
|
|
44
|
+
a: hsla.a,
|
|
45
|
+
...hslToHsv(hsla),
|
|
46
|
+
};
|
|
41
47
|
}
|
|
42
48
|
export function hsvToHsl(hsv) {
|
|
43
49
|
const v = hsv.v / 100, sv = hsv.s / 100, l = v * (1 - sv / 2), sl = l === 0 || l === 1 ? 0 : (v - l) / Math.min(l, 1 - l);
|
|
@@ -48,7 +54,10 @@ export function hsvToHsl(hsv) {
|
|
|
48
54
|
};
|
|
49
55
|
}
|
|
50
56
|
export function hsvaToHsla(hsva) {
|
|
51
|
-
return
|
|
57
|
+
return {
|
|
58
|
+
a: hsva.a,
|
|
59
|
+
...hsvToHsl(hsva),
|
|
60
|
+
};
|
|
52
61
|
}
|
|
53
62
|
export function hsvToRgb(hsv) {
|
|
54
63
|
const result = { b: 0, g: 0, r: 0 }, hsvPercent = {
|
|
@@ -108,7 +117,10 @@ export function hsvToRgb(hsv) {
|
|
|
108
117
|
return result;
|
|
109
118
|
}
|
|
110
119
|
export function hsvaToRgba(hsva) {
|
|
111
|
-
return
|
|
120
|
+
return {
|
|
121
|
+
a: hsva.a,
|
|
122
|
+
...hsvToRgb(hsva),
|
|
123
|
+
};
|
|
112
124
|
}
|
|
113
125
|
export class HsvColorManager {
|
|
114
126
|
constructor() {
|
|
@@ -116,15 +128,13 @@ export class HsvColorManager {
|
|
|
116
128
|
this.stringPrefix = "hsv";
|
|
117
129
|
}
|
|
118
130
|
handleColor(color) {
|
|
119
|
-
|
|
120
|
-
const colorValue = color.value, hsvColor = (_a = colorValue.hsv) !== null && _a !== void 0 ? _a : color.value;
|
|
131
|
+
const colorValue = color.value, hsvColor = colorValue.hsv ?? color.value;
|
|
121
132
|
if (hsvColor.h !== undefined && hsvColor.v !== undefined) {
|
|
122
133
|
return hsvToRgb(hsvColor);
|
|
123
134
|
}
|
|
124
135
|
}
|
|
125
136
|
handleRangeColor(color) {
|
|
126
|
-
|
|
127
|
-
const colorValue = color.value, hsvColor = (_a = colorValue.hsv) !== null && _a !== void 0 ? _a : color.value;
|
|
137
|
+
const colorValue = color.value, hsvColor = colorValue.hsv ?? color.value;
|
|
128
138
|
if (hsvColor.h !== undefined && hsvColor.v !== undefined) {
|
|
129
139
|
return hsvToRgb({
|
|
130
140
|
h: getRangeValue(hsvColor.h),
|
package/browser/index.js
CHANGED
package/cjs/HsvColorManager.js
CHANGED
|
@@ -27,7 +27,10 @@ function rgbToHsv(rgb) {
|
|
|
27
27
|
}
|
|
28
28
|
exports.rgbToHsv = rgbToHsv;
|
|
29
29
|
function rgbaToHsva(rgba) {
|
|
30
|
-
return
|
|
30
|
+
return {
|
|
31
|
+
a: rgba.a,
|
|
32
|
+
...rgbToHsv(rgba),
|
|
33
|
+
};
|
|
31
34
|
}
|
|
32
35
|
exports.rgbaToHsva = rgbaToHsva;
|
|
33
36
|
function getStyleFromHsv(color, opacity) {
|
|
@@ -44,7 +47,10 @@ function hslToHsv(hsl) {
|
|
|
44
47
|
}
|
|
45
48
|
exports.hslToHsv = hslToHsv;
|
|
46
49
|
function hslaToHsva(hsla) {
|
|
47
|
-
return
|
|
50
|
+
return {
|
|
51
|
+
a: hsla.a,
|
|
52
|
+
...hslToHsv(hsla),
|
|
53
|
+
};
|
|
48
54
|
}
|
|
49
55
|
exports.hslaToHsva = hslaToHsva;
|
|
50
56
|
function hsvToHsl(hsv) {
|
|
@@ -57,7 +63,10 @@ function hsvToHsl(hsv) {
|
|
|
57
63
|
}
|
|
58
64
|
exports.hsvToHsl = hsvToHsl;
|
|
59
65
|
function hsvaToHsla(hsva) {
|
|
60
|
-
return
|
|
66
|
+
return {
|
|
67
|
+
a: hsva.a,
|
|
68
|
+
...hsvToHsl(hsva),
|
|
69
|
+
};
|
|
61
70
|
}
|
|
62
71
|
exports.hsvaToHsla = hsvaToHsla;
|
|
63
72
|
function hsvToRgb(hsv) {
|
|
@@ -119,7 +128,10 @@ function hsvToRgb(hsv) {
|
|
|
119
128
|
}
|
|
120
129
|
exports.hsvToRgb = hsvToRgb;
|
|
121
130
|
function hsvaToRgba(hsva) {
|
|
122
|
-
return
|
|
131
|
+
return {
|
|
132
|
+
a: hsva.a,
|
|
133
|
+
...hsvToRgb(hsva),
|
|
134
|
+
};
|
|
123
135
|
}
|
|
124
136
|
exports.hsvaToRgba = hsvaToRgba;
|
|
125
137
|
class HsvColorManager {
|
|
@@ -128,15 +140,13 @@ class HsvColorManager {
|
|
|
128
140
|
this.stringPrefix = "hsv";
|
|
129
141
|
}
|
|
130
142
|
handleColor(color) {
|
|
131
|
-
|
|
132
|
-
const colorValue = color.value, hsvColor = (_a = colorValue.hsv) !== null && _a !== void 0 ? _a : color.value;
|
|
143
|
+
const colorValue = color.value, hsvColor = colorValue.hsv ?? color.value;
|
|
133
144
|
if (hsvColor.h !== undefined && hsvColor.v !== undefined) {
|
|
134
145
|
return hsvToRgb(hsvColor);
|
|
135
146
|
}
|
|
136
147
|
}
|
|
137
148
|
handleRangeColor(color) {
|
|
138
|
-
|
|
139
|
-
const colorValue = color.value, hsvColor = (_a = colorValue.hsv) !== null && _a !== void 0 ? _a : color.value;
|
|
149
|
+
const colorValue = color.value, hsvColor = colorValue.hsv ?? color.value;
|
|
140
150
|
if (hsvColor.h !== undefined && hsvColor.v !== undefined) {
|
|
141
151
|
return hsvToRgb({
|
|
142
152
|
h: (0, engine_1.getRangeValue)(hsvColor.h),
|
package/cjs/index.js
CHANGED
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.loadHsvColorPlugin = void 0;
|
|
4
4
|
const HsvColorManager_1 = require("./HsvColorManager");
|
|
5
5
|
const engine_1 = require("@tsparticles/engine");
|
|
6
|
-
function loadHsvColorPlugin() {
|
|
6
|
+
async function loadHsvColorPlugin() {
|
|
7
7
|
(0, engine_1.addColorManager)(new HsvColorManager_1.HsvColorManager());
|
|
8
8
|
}
|
|
9
9
|
exports.loadHsvColorPlugin = loadHsvColorPlugin;
|
package/esm/HsvColorManager.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getRangeValue, getStyleFromHsl, parseAlpha } from "@tsparticles/engine";
|
|
1
|
+
import { getRangeValue, getStyleFromHsl, parseAlpha, } from "@tsparticles/engine";
|
|
2
2
|
export function rgbToHsv(rgb) {
|
|
3
3
|
const rgbPercent = {
|
|
4
4
|
r: rgb.r / 255,
|
|
@@ -23,7 +23,10 @@ export function rgbToHsv(rgb) {
|
|
|
23
23
|
};
|
|
24
24
|
}
|
|
25
25
|
export function rgbaToHsva(rgba) {
|
|
26
|
-
return
|
|
26
|
+
return {
|
|
27
|
+
a: rgba.a,
|
|
28
|
+
...rgbToHsv(rgba),
|
|
29
|
+
};
|
|
27
30
|
}
|
|
28
31
|
export function getStyleFromHsv(color, opacity) {
|
|
29
32
|
return getStyleFromHsl(hsvToHsl(color), opacity);
|
|
@@ -37,7 +40,10 @@ export function hslToHsv(hsl) {
|
|
|
37
40
|
};
|
|
38
41
|
}
|
|
39
42
|
export function hslaToHsva(hsla) {
|
|
40
|
-
return
|
|
43
|
+
return {
|
|
44
|
+
a: hsla.a,
|
|
45
|
+
...hslToHsv(hsla),
|
|
46
|
+
};
|
|
41
47
|
}
|
|
42
48
|
export function hsvToHsl(hsv) {
|
|
43
49
|
const v = hsv.v / 100, sv = hsv.s / 100, l = v * (1 - sv / 2), sl = l === 0 || l === 1 ? 0 : (v - l) / Math.min(l, 1 - l);
|
|
@@ -48,7 +54,10 @@ export function hsvToHsl(hsv) {
|
|
|
48
54
|
};
|
|
49
55
|
}
|
|
50
56
|
export function hsvaToHsla(hsva) {
|
|
51
|
-
return
|
|
57
|
+
return {
|
|
58
|
+
a: hsva.a,
|
|
59
|
+
...hsvToHsl(hsva),
|
|
60
|
+
};
|
|
52
61
|
}
|
|
53
62
|
export function hsvToRgb(hsv) {
|
|
54
63
|
const result = { b: 0, g: 0, r: 0 }, hsvPercent = {
|
|
@@ -108,7 +117,10 @@ export function hsvToRgb(hsv) {
|
|
|
108
117
|
return result;
|
|
109
118
|
}
|
|
110
119
|
export function hsvaToRgba(hsva) {
|
|
111
|
-
return
|
|
120
|
+
return {
|
|
121
|
+
a: hsva.a,
|
|
122
|
+
...hsvToRgb(hsva),
|
|
123
|
+
};
|
|
112
124
|
}
|
|
113
125
|
export class HsvColorManager {
|
|
114
126
|
constructor() {
|
|
@@ -116,15 +128,13 @@ export class HsvColorManager {
|
|
|
116
128
|
this.stringPrefix = "hsv";
|
|
117
129
|
}
|
|
118
130
|
handleColor(color) {
|
|
119
|
-
|
|
120
|
-
const colorValue = color.value, hsvColor = (_a = colorValue.hsv) !== null && _a !== void 0 ? _a : color.value;
|
|
131
|
+
const colorValue = color.value, hsvColor = colorValue.hsv ?? color.value;
|
|
121
132
|
if (hsvColor.h !== undefined && hsvColor.v !== undefined) {
|
|
122
133
|
return hsvToRgb(hsvColor);
|
|
123
134
|
}
|
|
124
135
|
}
|
|
125
136
|
handleRangeColor(color) {
|
|
126
|
-
|
|
127
|
-
const colorValue = color.value, hsvColor = (_a = colorValue.hsv) !== null && _a !== void 0 ? _a : color.value;
|
|
137
|
+
const colorValue = color.value, hsvColor = colorValue.hsv ?? color.value;
|
|
128
138
|
if (hsvColor.h !== undefined && hsvColor.v !== undefined) {
|
|
129
139
|
return hsvToRgb({
|
|
130
140
|
h: getRangeValue(hsvColor.h),
|
package/esm/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tsparticles/plugin-hsv-color",
|
|
3
|
-
"version": "3.0.0-
|
|
3
|
+
"version": "3.0.0-beta.0",
|
|
4
4
|
"description": "tsParticles HSV color plugin",
|
|
5
5
|
"homepage": "https://particles.js.org",
|
|
6
6
|
"repository": {
|
|
@@ -72,6 +72,10 @@
|
|
|
72
72
|
"type": "github",
|
|
73
73
|
"url": "https://github.com/sponsors/matteobruni"
|
|
74
74
|
},
|
|
75
|
+
{
|
|
76
|
+
"type": "github",
|
|
77
|
+
"url": "https://github.com/sponsors/tsparticles"
|
|
78
|
+
},
|
|
75
79
|
{
|
|
76
80
|
"type": "buymeacoffee",
|
|
77
81
|
"url": "https://www.buymeacoffee.com/matteobruni"
|
|
@@ -82,10 +86,11 @@
|
|
|
82
86
|
"unpkg": "tsparticles.plugin.hsvColor.min.js",
|
|
83
87
|
"module": "esm/index.js",
|
|
84
88
|
"types": "types/index.d.ts",
|
|
89
|
+
"sideEffects": false,
|
|
90
|
+
"dependencies": {
|
|
91
|
+
"@tsparticles/engine": "^3.0.0-beta.0"
|
|
92
|
+
},
|
|
85
93
|
"publishConfig": {
|
|
86
94
|
"access": "public"
|
|
87
|
-
},
|
|
88
|
-
"dependencies": {
|
|
89
|
-
"@tsparticles/engine": "^3.0.0-alpha.1"
|
|
90
95
|
}
|
|
91
|
-
}
|
|
96
|
+
}
|