@livechart/sharp-vibrant 0.2.1 → 0.3.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.
Files changed (81) hide show
  1. package/lib/builder.js +10 -5
  2. package/lib/builder.js.map +1 -1
  3. package/lib/color.js +8 -4
  4. package/lib/color.js.map +1 -1
  5. package/lib/filter/default.js +4 -1
  6. package/lib/filter/default.js.map +1 -1
  7. package/lib/filter/index.js +10 -2
  8. package/lib/filter/index.js.map +1 -1
  9. package/lib/generator/default.js +15 -13
  10. package/lib/generator/default.js.map +1 -1
  11. package/lib/generator/index.js +8 -2
  12. package/lib/generator/index.js.map +1 -1
  13. package/lib/image/base.js +3 -1
  14. package/lib/image/base.js.map +1 -1
  15. package/lib/image/sharp.js +35 -41
  16. package/lib/image/sharp.js.map +1 -1
  17. package/lib/index.js +9 -4
  18. package/lib/index.js.map +1 -1
  19. package/lib/quantizer/index.js +7 -2
  20. package/lib/quantizer/index.js.map +1 -1
  21. package/lib/quantizer/mmcq.js +13 -8
  22. package/lib/quantizer/mmcq.js.map +1 -1
  23. package/lib/quantizer/pqueue.js +3 -1
  24. package/lib/quantizer/pqueue.js.map +1 -1
  25. package/lib/quantizer/vbox.js +18 -16
  26. package/lib/quantizer/vbox.js.map +1 -1
  27. package/lib/typing.js +2 -1
  28. package/lib/util.js +44 -28
  29. package/lib/util.js.map +1 -1
  30. package/lib/vibrant.js +54 -16
  31. package/lib/vibrant.js.map +1 -1
  32. package/package.json +17 -18
  33. package/tsconfig.json +5 -15
  34. package/lib/src/builder.d.ts +0 -17
  35. package/lib/src/builder.js +0 -80
  36. package/lib/src/builder.js.map +0 -1
  37. package/lib/src/color.d.ts +0 -30
  38. package/lib/src/color.js +0 -81
  39. package/lib/src/color.js.map +0 -1
  40. package/lib/src/filter/default.d.ts +0 -1
  41. package/lib/src/filter/default.js +0 -7
  42. package/lib/src/filter/default.js.map +0 -1
  43. package/lib/src/filter/index.d.ts +0 -3
  44. package/lib/src/filter/index.js +0 -24
  45. package/lib/src/filter/index.js.map +0 -1
  46. package/lib/src/generator/default.d.ts +0 -20
  47. package/lib/src/generator/default.js +0 -143
  48. package/lib/src/generator/default.js.map +0 -1
  49. package/lib/src/generator/index.d.ts +0 -3
  50. package/lib/src/generator/index.js +0 -9
  51. package/lib/src/generator/index.js.map +0 -1
  52. package/lib/src/image/base.d.ts +0 -11
  53. package/lib/src/image/base.js +0 -29
  54. package/lib/src/image/base.js.map +0 -1
  55. package/lib/src/image/sharp.d.ts +0 -11
  56. package/lib/src/image/sharp.js +0 -81
  57. package/lib/src/image/sharp.js.map +0 -1
  58. package/lib/src/index.d.ts +0 -2
  59. package/lib/src/index.js +0 -9
  60. package/lib/src/index.js.map +0 -1
  61. package/lib/src/quantizer/index.d.ts +0 -2
  62. package/lib/src/quantizer/index.js +0 -8
  63. package/lib/src/quantizer/index.js.map +0 -1
  64. package/lib/src/quantizer/mmcq.d.ts +0 -3
  65. package/lib/src/quantizer/mmcq.js +0 -57
  66. package/lib/src/quantizer/mmcq.js.map +0 -1
  67. package/lib/src/quantizer/pqueue.d.ts +0 -14
  68. package/lib/src/quantizer/pqueue.js +0 -51
  69. package/lib/src/quantizer/pqueue.js.map +0 -1
  70. package/lib/src/quantizer/vbox.d.ts +0 -26
  71. package/lib/src/quantizer/vbox.js +0 -253
  72. package/lib/src/quantizer/vbox.js.map +0 -1
  73. package/lib/src/typing.d.ts +0 -57
  74. package/lib/src/typing.js +0 -3
  75. package/lib/src/typing.js.map +0 -1
  76. package/lib/src/util.d.ts +0 -31
  77. package/lib/src/util.js +0 -201
  78. package/lib/src/util.js.map +0 -1
  79. package/lib/src/vibrant.d.ts +0 -21
  80. package/lib/src/vibrant.js +0 -117
  81. package/lib/src/vibrant.js.map +0 -1
@@ -1,80 +0,0 @@
1
- "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- var _Builder_src, _Builder_opts;
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- // eslint-disable-next-line import/no-cycle
19
- const vibrant_1 = __importDefault(require("./vibrant"));
20
- class Builder {
21
- constructor(src, opts = {}) {
22
- _Builder_src.set(this, void 0);
23
- _Builder_opts.set(this, void 0);
24
- __classPrivateFieldSet(this, _Builder_src, src, "f");
25
- __classPrivateFieldSet(this, _Builder_opts, opts, "f");
26
- if (vibrant_1.default.DefaultOpts.filters) {
27
- __classPrivateFieldGet(this, _Builder_opts, "f").filters = [...vibrant_1.default.DefaultOpts.filters];
28
- }
29
- else {
30
- __classPrivateFieldGet(this, _Builder_opts, "f").filters = [];
31
- }
32
- }
33
- maxColorCount(n) {
34
- __classPrivateFieldGet(this, _Builder_opts, "f").colorCount = n;
35
- return this;
36
- }
37
- maxDimension(d) {
38
- __classPrivateFieldGet(this, _Builder_opts, "f").maxDimension = d;
39
- return this;
40
- }
41
- addFilter(f) {
42
- __classPrivateFieldGet(this, _Builder_opts, "f").filters.push(f);
43
- return this;
44
- }
45
- removeFilter(f) {
46
- const i = __classPrivateFieldGet(this, _Builder_opts, "f").filters.indexOf(f);
47
- if (i > 0)
48
- __classPrivateFieldGet(this, _Builder_opts, "f").filters.splice(i);
49
- return this;
50
- }
51
- clearFilters() {
52
- __classPrivateFieldGet(this, _Builder_opts, "f").filters = [];
53
- return this;
54
- }
55
- quality(q) {
56
- __classPrivateFieldGet(this, _Builder_opts, "f").quality = q;
57
- return this;
58
- }
59
- useImageClass(imageClass) {
60
- __classPrivateFieldGet(this, _Builder_opts, "f").ImageClass = imageClass;
61
- return this;
62
- }
63
- useGenerator(generator) {
64
- __classPrivateFieldGet(this, _Builder_opts, "f").generator = generator;
65
- return this;
66
- }
67
- useQuantizer(quantizer) {
68
- __classPrivateFieldGet(this, _Builder_opts, "f").quantizer = quantizer;
69
- return this;
70
- }
71
- build() {
72
- return new vibrant_1.default(__classPrivateFieldGet(this, _Builder_src, "f"), __classPrivateFieldGet(this, _Builder_opts, "f"));
73
- }
74
- getPalette(cb) {
75
- return this.build().getPalette(cb);
76
- }
77
- }
78
- _Builder_src = new WeakMap(), _Builder_opts = new WeakMap();
79
- exports.default = Builder;
80
- //# sourceMappingURL=builder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../src/builder.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAWA,2CAA2C;AAC3C,wDAAgC;AAEhC,MAAqB,OAAO;IAK1B,YAAY,GAAgB,EAAE,OAAyB,EAAE;QAJzD,+BAAkB;QAElB,gCAAwB;QAGtB,uBAAA,IAAI,gBAAQ,GAAG,MAAA,CAAC;QAChB,uBAAA,IAAI,iBAAS,IAAI,MAAA,CAAC;QAElB,IAAI,iBAAO,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YAChC,uBAAA,IAAI,qBAAM,CAAC,OAAO,GAAG,CAAC,GAAG,iBAAO,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,uBAAA,IAAI,qBAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,aAAa,CAAC,CAAS;QACrB,uBAAA,IAAI,qBAAM,CAAC,UAAU,GAAG,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,CAAS;QACpB,uBAAA,IAAI,qBAAM,CAAC,YAAY,GAAG,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,CAAS;QACjB,uBAAA,IAAI,qBAAM,CAAC,OAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,CAAS;QACpB,MAAM,CAAC,GAAG,uBAAA,IAAI,qBAAM,CAAC,OAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,GAAG,CAAC;YAAE,uBAAA,IAAI,qBAAM,CAAC,OAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY;QACV,uBAAA,IAAI,qBAAM,CAAC,OAAO,GAAG,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,CAAS;QACf,uBAAA,IAAI,qBAAM,CAAC,OAAO,GAAG,CAAC,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,UAAsB;QAClC,uBAAA,IAAI,qBAAM,CAAC,UAAU,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,SAAyB;QACpC,uBAAA,IAAI,qBAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,SAAoB;QAC/B,uBAAA,IAAI,qBAAM,CAAC,SAAS,GAAG,SAAS,CAAC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,OAAO,IAAI,iBAAO,CAAC,uBAAA,IAAI,oBAAK,EAAE,uBAAA,IAAI,qBAAM,CAAC,CAAC;IAC5C,CAAC;IAED,UAAU,CAAC,EAA4B;QACrC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;CACF;;kBArEoB,OAAO"}
@@ -1,30 +0,0 @@
1
- import type { Filter } from './typing';
2
- export type Vec3 = [number, number, number];
3
- export interface Palette {
4
- Vibrant?: Swatch;
5
- Muted?: Swatch;
6
- DarkVibrant?: Swatch;
7
- DarkMuted?: Swatch;
8
- LightVibrant?: Swatch;
9
- LightMuted?: Swatch;
10
- [name: string]: Swatch | undefined;
11
- }
12
- export declare class Swatch {
13
- #private;
14
- static applyFilter(colors: Swatch[], f: Filter): Swatch[];
15
- constructor(rgb: Vec3, population: number);
16
- get r(): number;
17
- get g(): number;
18
- get b(): number;
19
- get rgb(): Vec3;
20
- get hsl(): Vec3;
21
- get hex(): string;
22
- get population(): number;
23
- toJSON(): {
24
- rgb: Vec3;
25
- population: number;
26
- };
27
- private getYiq;
28
- get titleTextColor(): string;
29
- get bodyTextColor(): string;
30
- }
package/lib/src/color.js DELETED
@@ -1,81 +0,0 @@
1
- "use strict";
2
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
- if (kind === "m") throw new TypeError("Private method is not writable");
4
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
- };
13
- var _Swatch_rgb, _Swatch_population, _Swatch_hsl, _Swatch_yiq, _Swatch_hex, _Swatch_titleTextColor, _Swatch_bodyTextColor;
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.Swatch = void 0;
16
- const util_1 = require("./util");
17
- class Swatch {
18
- static applyFilter(colors, f) {
19
- if (typeof f !== 'function') {
20
- return colors;
21
- }
22
- return [].filter.call(colors, ({ r, g, b }) => f(r, g, b, 255));
23
- }
24
- constructor(rgb, population) {
25
- _Swatch_rgb.set(this, void 0);
26
- _Swatch_population.set(this, void 0);
27
- _Swatch_hsl.set(this, void 0);
28
- _Swatch_yiq.set(this, void 0);
29
- _Swatch_hex.set(this, void 0);
30
- _Swatch_titleTextColor.set(this, void 0);
31
- _Swatch_bodyTextColor.set(this, void 0);
32
- __classPrivateFieldSet(this, _Swatch_rgb, rgb, "f");
33
- __classPrivateFieldSet(this, _Swatch_population, population, "f");
34
- }
35
- get r() { return __classPrivateFieldGet(this, _Swatch_rgb, "f")[0]; }
36
- get g() { return __classPrivateFieldGet(this, _Swatch_rgb, "f")[1]; }
37
- get b() { return __classPrivateFieldGet(this, _Swatch_rgb, "f")[2]; }
38
- get rgb() { return __classPrivateFieldGet(this, _Swatch_rgb, "f"); }
39
- get hsl() {
40
- if (!__classPrivateFieldGet(this, _Swatch_hsl, "f")) {
41
- __classPrivateFieldSet(this, _Swatch_hsl, (0, util_1.rgbToHsl)(...__classPrivateFieldGet(this, _Swatch_rgb, "f")), "f");
42
- }
43
- return __classPrivateFieldGet(this, _Swatch_hsl, "f");
44
- }
45
- get hex() {
46
- if (!__classPrivateFieldGet(this, _Swatch_hex, "f")) {
47
- const [r, g, b] = __classPrivateFieldGet(this, _Swatch_rgb, "f");
48
- __classPrivateFieldSet(this, _Swatch_hex, (0, util_1.rgbToHex)(r, g, b), "f");
49
- }
50
- return __classPrivateFieldGet(this, _Swatch_hex, "f");
51
- }
52
- get population() { return __classPrivateFieldGet(this, _Swatch_population, "f"); }
53
- toJSON() {
54
- return {
55
- rgb: this.rgb,
56
- population: this.population,
57
- };
58
- }
59
- getYiq() {
60
- if (!__classPrivateFieldGet(this, _Swatch_yiq, "f")) {
61
- const rgb = __classPrivateFieldGet(this, _Swatch_rgb, "f");
62
- __classPrivateFieldSet(this, _Swatch_yiq, (rgb[0] * 299 + rgb[1] * 587 + rgb[2] * 114) / 1000, "f");
63
- }
64
- return __classPrivateFieldGet(this, _Swatch_yiq, "f");
65
- }
66
- get titleTextColor() {
67
- if (!__classPrivateFieldGet(this, _Swatch_titleTextColor, "f")) {
68
- __classPrivateFieldSet(this, _Swatch_titleTextColor, this.getYiq() < 200 ? '#fff' : '#000', "f");
69
- }
70
- return __classPrivateFieldGet(this, _Swatch_titleTextColor, "f");
71
- }
72
- get bodyTextColor() {
73
- if (!__classPrivateFieldGet(this, _Swatch_bodyTextColor, "f")) {
74
- __classPrivateFieldSet(this, _Swatch_bodyTextColor, this.getYiq() < 150 ? '#fff' : '#000', "f");
75
- }
76
- return __classPrivateFieldGet(this, _Swatch_bodyTextColor, "f");
77
- }
78
- }
79
- exports.Swatch = Swatch;
80
- _Swatch_rgb = new WeakMap(), _Swatch_population = new WeakMap(), _Swatch_hsl = new WeakMap(), _Swatch_yiq = new WeakMap(), _Swatch_hex = new WeakMap(), _Swatch_titleTextColor = new WeakMap(), _Swatch_bodyTextColor = new WeakMap();
81
- //# sourceMappingURL=color.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"color.js","sourceRoot":"","sources":["../../src/color.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- export default function defaultFilter(r: number, g: number, b: number, a: number): boolean;
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = defaultFilter;
4
- function defaultFilter(r, g, b, a) {
5
- return a >= 125 && !(r > 250 && g > 250 && b > 250);
6
- }
7
- //# sourceMappingURL=default.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/filter/default.ts"],"names":[],"mappings":";;AAAA,gCAOC;AAPD,SAAwB,aAAa,CACnC,CAAS,EACT,CAAS,EACT,CAAS,EACT,CAAS;IAET,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;AACtD,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { Filter } from '../typing';
2
- export { default as Default } from './default';
3
- export declare function combineFilters(filters: Filter[]): Filter | null;
@@ -1,24 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Default = void 0;
7
- exports.combineFilters = combineFilters;
8
- var default_1 = require("./default");
9
- Object.defineProperty(exports, "Default", { enumerable: true, get: function () { return __importDefault(default_1).default; } });
10
- function combineFilters(filters) {
11
- // TODO: caching
12
- if (!Array.isArray(filters) || filters.length === 0)
13
- return null;
14
- return (r, g, b, a) => {
15
- if (a === 0)
16
- return false;
17
- for (let i = 0; i < filters.length; i += 1) {
18
- if (!filters[i](r, g, b, a))
19
- return false;
20
- }
21
- return true;
22
- };
23
- }
24
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/filter/index.ts"],"names":[],"mappings":";;;;;;AAIA,wCAWC;AAbD,qCAA+C;AAAtC,mHAAA,OAAO,OAAW;AAE3B,SAAgB,cAAc,CAAC,OAAiB;IAC9C,gBAAgB;IAChB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEjE,OAAO,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,EAAE;QACpD,IAAI,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBAAE,OAAO,KAAK,CAAC;QAC5C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC"}
@@ -1,20 +0,0 @@
1
- import { Generator } from '../typing';
2
- interface DefaultGeneratorOptions {
3
- targetDarkLuma: number;
4
- maxDarkLuma: number;
5
- minLightLuma: number;
6
- targetLightLuma: number;
7
- minNormalLuma: number;
8
- targetNormalLuma: number;
9
- maxNormalLuma: number;
10
- targetMutesSaturation: number;
11
- maxMutesSaturation: number;
12
- targetVibrantSaturation: number;
13
- minVibrantSaturation: number;
14
- weightSaturation: number;
15
- weightLuma: number;
16
- weightPopulation: number;
17
- }
18
- declare const DefaultGenerator: Generator<DefaultGeneratorOptions>;
19
- export default DefaultGenerator;
20
- export { DefaultGeneratorOptions };
@@ -1,143 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /* eslint-disable no-param-reassign */
4
- const color_1 = require("../color");
5
- const util_1 = require("../util");
6
- const DefaultOpts = {
7
- targetDarkLuma: 0.26,
8
- maxDarkLuma: 0.45,
9
- minLightLuma: 0.55,
10
- targetLightLuma: 0.74,
11
- minNormalLuma: 0.3,
12
- targetNormalLuma: 0.5,
13
- maxNormalLuma: 0.7,
14
- targetMutesSaturation: 0.3,
15
- maxMutesSaturation: 0.4,
16
- targetVibrantSaturation: 1.0,
17
- minVibrantSaturation: 0.35,
18
- weightSaturation: 3,
19
- weightLuma: 6.5,
20
- weightPopulation: 0.5,
21
- };
22
- function findMaxPopulation(swatches) {
23
- let p = 0;
24
- swatches.forEach((s) => { p = Math.max(p, s.population); });
25
- return p;
26
- }
27
- function isAlreadySelected(palette, s) {
28
- return palette.Vibrant === s
29
- || palette.DarkVibrant === s
30
- || palette.LightVibrant === s
31
- || palette.Muted === s
32
- || palette.DarkMuted === s
33
- || palette.LightMuted === s;
34
- }
35
- function createComparisonValue(saturation, targetSaturation, luma, targetLuma, population, maxPopulation, opts) {
36
- function weightedMean(...values) {
37
- let sum = 0;
38
- let weightSum = 0;
39
- for (let i = 0; i < values.length; i += 2) {
40
- const value = values[i];
41
- const weight = values[i + 1];
42
- sum += value * weight;
43
- weightSum += weight;
44
- }
45
- return sum / weightSum;
46
- }
47
- function invertDiff(value, targetValue) {
48
- return 1 - Math.abs(value - targetValue);
49
- }
50
- return weightedMean(invertDiff(saturation, targetSaturation), opts.weightSaturation, invertDiff(luma, targetLuma), opts.weightLuma, population / maxPopulation, opts.weightPopulation);
51
- }
52
- function findColorVariation(palette, swatches, maxPopulation, targetLuma, minLuma, maxLuma, targetSaturation, minSaturation, maxSaturation, opts) {
53
- let max = null;
54
- let maxValue = 0;
55
- swatches.forEach((swatch) => {
56
- const [, s, l] = swatch.hsl;
57
- if (s >= minSaturation && s <= maxSaturation
58
- && l >= minLuma && l <= maxLuma
59
- && !isAlreadySelected(palette, swatch)) {
60
- const value = createComparisonValue(s, targetSaturation, l, targetLuma, swatch.population, maxPopulation, opts);
61
- if (max === null || value > maxValue) {
62
- max = swatch;
63
- maxValue = value;
64
- }
65
- }
66
- });
67
- return max;
68
- }
69
- function generateVariationColors(swatches, maxPopulation, opts) {
70
- const palette = {};
71
- // mVibrantSwatch = findColor(TARGET_NORMAL_LUMA, MIN_NORMAL_LUMA, MAX_NORMAL_LUMA,
72
- // TARGET_VIBRANT_SATURATION, MIN_VIBRANT_SATURATION, 1f);
73
- palette.Vibrant = findColorVariation(palette, swatches, maxPopulation, opts.targetNormalLuma, opts.minNormalLuma, opts.maxNormalLuma, opts.targetVibrantSaturation, opts.minVibrantSaturation, 1, opts);
74
- // mLightVibrantSwatch = findColor(TARGET_LIGHT_LUMA, MIN_LIGHT_LUMA, 1f,
75
- // TARGET_VIBRANT_SATURATION, MIN_VIBRANT_SATURATION, 1f);
76
- palette.LightVibrant = findColorVariation(palette, swatches, maxPopulation, opts.targetLightLuma, opts.minLightLuma, 1, opts.targetVibrantSaturation, opts.minVibrantSaturation, 1, opts);
77
- // mDarkVibrantSwatch = findColor(TARGET_DARK_LUMA, 0f, MAX_DARK_LUMA,
78
- // TARGET_VIBRANT_SATURATION, MIN_VIBRANT_SATURATION, 1f);
79
- palette.DarkVibrant = findColorVariation(palette, swatches, maxPopulation, opts.targetDarkLuma, 0, opts.maxDarkLuma, opts.targetVibrantSaturation, opts.minVibrantSaturation, 1, opts);
80
- // mMutedSwatch = findColor(TARGET_NORMAL_LUMA, MIN_NORMAL_LUMA, MAX_NORMAL_LUMA,
81
- // TARGET_MUTED_SATURATION, 0f, MAX_MUTED_SATURATION);
82
- palette.Muted = findColorVariation(palette, swatches, maxPopulation, opts.targetNormalLuma, opts.minNormalLuma, opts.maxNormalLuma, opts.targetMutesSaturation, 0, opts.maxMutesSaturation, opts);
83
- // mLightMutedColor = findColor(TARGET_LIGHT_LUMA, MIN_LIGHT_LUMA, 1f,
84
- // TARGET_MUTED_SATURATION, 0f, MAX_MUTED_SATURATION);
85
- palette.LightMuted = findColorVariation(palette, swatches, maxPopulation, opts.targetLightLuma, opts.minLightLuma, 1, opts.targetMutesSaturation, 0, opts.maxMutesSaturation, opts);
86
- // mDarkMutedSwatch = findColor(TARGET_DARK_LUMA, 0f, MAX_DARK_LUMA,
87
- // TARGET_MUTED_SATURATION, 0f, MAX_MUTED_SATURATION);
88
- palette.DarkMuted = findColorVariation(palette, swatches, maxPopulation, opts.targetDarkLuma, 0, opts.maxDarkLuma, opts.targetMutesSaturation, 0, opts.maxMutesSaturation, opts);
89
- return palette;
90
- }
91
- function withLuminance(hsl, l) {
92
- const [h, s] = hsl;
93
- return [h, s, l];
94
- }
95
- function generateEmptySwatches(palette, maxPopulation, opts) {
96
- if (palette.Vibrant === null && palette.DarkVibrant === null && palette.LightVibrant === null) {
97
- if (palette.DarkVibrant === null && palette.DarkMuted !== null) {
98
- const [h, s, l] = withLuminance(palette.DarkMuted.hsl, opts.targetDarkLuma);
99
- palette.DarkVibrant = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
100
- }
101
- if (palette.LightVibrant === null && palette.LightMuted !== null) {
102
- const [h, s, l] = withLuminance(palette.LightMuted.hsl, opts.targetDarkLuma);
103
- palette.DarkVibrant = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
104
- }
105
- }
106
- if (palette.Vibrant === null && palette.DarkVibrant !== null) {
107
- const [h, s, l] = withLuminance(palette.DarkVibrant.hsl, opts.targetNormalLuma);
108
- palette.Vibrant = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
109
- }
110
- else if (palette.Vibrant === null && palette.LightVibrant !== null) {
111
- const [h, s, l] = withLuminance(palette.LightVibrant.hsl, opts.targetNormalLuma);
112
- palette.Vibrant = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
113
- }
114
- if (palette.DarkVibrant === null && palette.Vibrant !== null) {
115
- const [h, s, l] = withLuminance(palette.Vibrant.hsl, opts.targetDarkLuma);
116
- palette.DarkVibrant = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
117
- }
118
- if (palette.LightVibrant === null && palette.Vibrant !== null) {
119
- const [h, s, l] = withLuminance(palette.Vibrant.hsl, opts.targetLightLuma);
120
- palette.LightVibrant = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
121
- }
122
- if (palette.Muted === null && palette.Vibrant !== null) {
123
- const [h, s, l] = withLuminance(palette.Vibrant.hsl, opts.targetMutesSaturation);
124
- palette.Muted = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
125
- }
126
- if (palette.DarkMuted === null && palette.DarkVibrant !== null) {
127
- const [h, s, l] = withLuminance(palette.DarkVibrant.hsl, opts.targetMutesSaturation);
128
- palette.DarkMuted = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
129
- }
130
- if (palette.LightMuted === null && palette.LightVibrant !== null) {
131
- const [h, s, l] = withLuminance(palette.LightVibrant.hsl, opts.targetMutesSaturation);
132
- palette.LightMuted = new color_1.Swatch((0, util_1.hslToRgb)(h, s, l), 0);
133
- }
134
- }
135
- const DefaultGenerator = (swatches, opts) => {
136
- const optsWithDefaults = Object.assign(Object.assign({}, DefaultOpts), opts);
137
- const maxPopulation = findMaxPopulation(swatches);
138
- const palette = generateVariationColors(swatches, maxPopulation, optsWithDefaults);
139
- generateEmptySwatches(palette, maxPopulation, optsWithDefaults);
140
- return palette;
141
- };
142
- exports.default = DefaultGenerator;
143
- //# sourceMappingURL=default.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"default.js","sourceRoot":"","sources":["../../../src/generator/default.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import Default from './default';
2
- import type { Generator } from '../typing';
3
- export { Generator, Default };
@@ -1,9 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Default = void 0;
7
- const default_1 = __importDefault(require("./default"));
8
- exports.Default = default_1.default;
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generator/index.ts"],"names":[],"mappings":";;;;;;AAAA,wDAAgC;AAGZ,kBAHb,iBAAO,CAGa"}
@@ -1,11 +0,0 @@
1
- import type { Filter, Image, ImageData, ImageSource, ComputedOptions } from '../typing';
2
- declare abstract class ImageBase implements Image {
3
- abstract load(image: ImageSource, opts: ComputedOptions): Promise<ImageBase>;
4
- abstract readonly pixelCount: number;
5
- abstract readonly imageData: ImageData;
6
- abstract readonly width: number;
7
- abstract readonly height: number;
8
- abstract cleanup(): void;
9
- applyFilter(filter: Filter): Promise<ImageData>;
10
- }
11
- export default ImageBase;
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- class ImageBase {
4
- applyFilter(filter) {
5
- const { imageData } = this;
6
- if (typeof filter === 'function') {
7
- const pixels = imageData.data;
8
- const n = pixels.length / 4;
9
- let offset;
10
- let r;
11
- let g;
12
- let b;
13
- let a;
14
- for (let i = 0; i < n; i += 1) {
15
- offset = i * 4;
16
- r = pixels[offset + 0];
17
- g = pixels[offset + 1];
18
- b = pixels[offset + 2];
19
- a = pixels[offset + 3];
20
- // Mark ignored color
21
- if (!filter(r, g, b, a))
22
- pixels[offset + 3] = 0;
23
- }
24
- }
25
- return Promise.resolve(imageData);
26
- }
27
- }
28
- exports.default = ImageBase;
29
- //# sourceMappingURL=base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../src/image/base.ts"],"names":[],"mappings":";;AAIA,MAAe,SAAS;IAatB,WAAW,CAAC,MAAc;QACxB,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC;QAE3B,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;YACjC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC;YAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;YAC5B,IAAI,MAAM,CAAC;YACX,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,CAAC;YACN,IAAI,CAAC,CAAC;YAEN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;gBACf,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACvB,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACvB,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACvB,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACvB,qBAAqB;gBACrB,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAClD,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;CACF;AAED,kBAAe,SAAS,CAAC"}
@@ -1,11 +0,0 @@
1
- import type { ImageData, ImageSource, ComputedOptions } from '../typing';
2
- import ImageBase from './base';
3
- export default class SharpImage extends ImageBase {
4
- #private;
5
- load(image: ImageSource, opts: ComputedOptions): Promise<ImageBase>;
6
- get pixelCount(): number;
7
- get imageData(): ImageData;
8
- get width(): number;
9
- get height(): number;
10
- cleanup(): void;
11
- }
@@ -1,81 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
12
- if (kind === "m") throw new TypeError("Private method is not writable");
13
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
14
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
15
- return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
16
- };
17
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
18
- if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
19
- if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
20
- return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
21
- };
22
- var __importDefault = (this && this.__importDefault) || function (mod) {
23
- return (mod && mod.__esModule) ? mod : { "default": mod };
24
- };
25
- var _SharpImage_imageData;
26
- Object.defineProperty(exports, "__esModule", { value: true });
27
- const sharp_1 = __importDefault(require("sharp"));
28
- const base_1 = __importDefault(require("./base"));
29
- class SharpImage extends base_1.default {
30
- constructor() {
31
- super(...arguments);
32
- _SharpImage_imageData.set(this, void 0);
33
- }
34
- load(image, opts) {
35
- return __awaiter(this, void 0, void 0, function* () {
36
- let sharpInstance;
37
- // Check to see if image is a sharp instance.
38
- // Because sharp doesn't return a class, there's not much else we can do to verify type.
39
- if (typeof image === 'object' && 'resize' in image) {
40
- sharpInstance = image;
41
- }
42
- else if (typeof image === 'string' || image instanceof Buffer) {
43
- sharpInstance = (0, sharp_1.default)(image);
44
- }
45
- else {
46
- return Promise.reject(new Error(`Cannot load image of type ${typeof image}`));
47
- }
48
- if (opts.maxDimension > 0) {
49
- sharpInstance = sharpInstance.resize(opts.maxDimension, opts.maxDimension, {
50
- fit: 'inside',
51
- withoutEnlargement: true,
52
- });
53
- }
54
- const buffer = yield sharpInstance.ensureAlpha().raw().toBuffer({ resolveWithObject: true });
55
- __classPrivateFieldSet(this, _SharpImage_imageData, {
56
- data: buffer.data,
57
- width: buffer.info.width,
58
- height: buffer.info.height,
59
- }, "f");
60
- return this;
61
- });
62
- }
63
- get pixelCount() {
64
- return this.imageData.width * this.imageData.height;
65
- }
66
- get imageData() {
67
- return __classPrivateFieldGet(this, _SharpImage_imageData, "f");
68
- }
69
- get width() {
70
- return this.imageData.width;
71
- }
72
- get height() {
73
- return this.imageData.height;
74
- }
75
- // eslint-disable-next-line class-methods-use-this
76
- cleanup() {
77
- }
78
- }
79
- _SharpImage_imageData = new WeakMap();
80
- exports.default = SharpImage;
81
- //# sourceMappingURL=sharp.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sharp.js","sourceRoot":"","sources":["../../../src/image/sharp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAG1B,kDAA+B;AAE/B,MAAqB,UAAW,SAAQ,cAAS;IAAjD;;QACE,wCAAuB;IAqDzB,CAAC;IAnDO,IAAI,CAAC,KAAkB,EAAE,IAAqB;;YAClD,IAAI,aAAoB,CAAC;YAEzB,6CAA6C;YAC7C,wFAAwF;YACxF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,IAAI,KAAK,EAAE,CAAC;gBACnD,aAAa,GAAmB,KAAK,CAAC;YACxC,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;gBAChE,aAAa,GAAG,IAAA,eAAK,EAAC,KAAK,CAAC,CAAC;YAC/B,CAAC;iBAAM,CAAC;gBACN,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC;YAChF,CAAC;YAED,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;gBAC1B,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;oBACzE,GAAG,EAAE,QAAQ;oBACb,kBAAkB,EAAE,IAAI;iBACzB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAC;YAE7F,uBAAA,IAAI,yBAAc;gBAChB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK;gBACxB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM;aAC3B,MAAA,CAAC;YAEF,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IACtD,CAAC;IAED,IAAI,SAAS;QACX,OAAO,uBAAA,IAAI,6BAAY,CAAC;IAC1B,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;IAC9B,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;IAC/B,CAAC;IAED,kDAAkD;IAClD,OAAO;IAEP,CAAC;CACF;;kBAtDoB,UAAU"}
@@ -1,2 +0,0 @@
1
- import Vibrant from './vibrant';
2
- export = Vibrant;
package/lib/src/index.js DELETED
@@ -1,9 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- const vibrant_1 = __importDefault(require("./vibrant"));
6
- const sharp_1 = __importDefault(require("./image/sharp"));
7
- vibrant_1.default.DefaultOpts.ImageClass = sharp_1.default;
8
- module.exports = vibrant_1.default;
9
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,wDAAgC;AAChC,0DAAuC;AAEvC,iBAAO,CAAC,WAAW,CAAC,UAAU,GAAG,eAAU,CAAC;AAE5C,iBAAS,iBAAO,CAAC"}
@@ -1,2 +0,0 @@
1
- import MMCQ from './mmcq';
2
- export default MMCQ;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const mmcq_1 = __importDefault(require("./mmcq"));
7
- exports.default = mmcq_1.default;
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/quantizer/index.ts"],"names":[],"mappings":";;;;;AAAA,kDAA0B;AAE1B,kBAAe,cAAI,CAAC"}