imagescript 1.2.15 → 1.2.17

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 (53) hide show
  1. package/ImageScript.d.ts +233 -223
  2. package/ImageScript.js +1658 -1646
  3. package/LICENSE +12 -619
  4. package/LICENSE.AGPL-3.0 +619 -0
  5. package/LICENSE.MIT +19 -0
  6. package/README.md +51 -46
  7. package/bench/_.mjs +165 -165
  8. package/bench/all.mjs +3 -3
  9. package/bench/blur.mjs +58 -58
  10. package/bench/flip.mjs +62 -62
  11. package/bench/overlay.mjs +34 -34
  12. package/bench/package.json +6 -6
  13. package/bench/readme.md +63 -63
  14. package/bench/resize.mjs +51 -51
  15. package/codecs/LICENSE +20 -20
  16. package/codecs/lib.d.ts +49 -49
  17. package/codecs/lib.js +5 -5
  18. package/codecs/node/index.js +2 -2
  19. package/codecs/node/index.mjs +5 -5
  20. package/codecs/package.json +13 -13
  21. package/codecs/readme.md +37 -37
  22. package/package.json +41 -41
  23. package/png/node.js +1137 -1137
  24. package/png/src/crc.mjs +48 -48
  25. package/png/src/mem.mjs +23 -23
  26. package/png/src/png.mjs +254 -254
  27. package/png/src/zlib.mjs +617 -617
  28. package/tsconfig.json +21 -21
  29. package/utils/mem.js +25 -25
  30. package/v2/codecs/magic.js +24 -24
  31. package/v2/framebuffer.d.ts +66 -66
  32. package/v2/framebuffer.js +2352 -2352
  33. package/v2/framebuffer.mjs +125 -125
  34. package/v2/framebuffer.rs +1263 -1263
  35. package/v2/index.d.ts +83 -83
  36. package/v2/index.js +260 -260
  37. package/v2/ops/blur.mjs +302 -302
  38. package/v2/ops/color.mjs +276 -276
  39. package/v2/ops/crop.mjs +63 -63
  40. package/v2/ops/fill.mjs +32 -32
  41. package/v2/ops/flip.mjs +32 -32
  42. package/v2/ops/index.mjs +8 -8
  43. package/v2/ops/iterator.mjs +33 -33
  44. package/v2/ops/overlay.mjs +62 -62
  45. package/v2/ops/resize.mjs +165 -165
  46. package/v2/ops/rotate.mjs +116 -116
  47. package/v2/util/mem.mjs +23 -23
  48. package/wasm/node/font.js +141 -141
  49. package/wasm/node/gif.js +76 -76
  50. package/wasm/node/jpeg.js +91 -91
  51. package/wasm/node/png.js +49 -49
  52. package/wasm/node/svg.js +55 -55
  53. package/wasm/node/tiff.js +46 -46
package/v2/index.d.ts CHANGED
@@ -1,84 +1,84 @@
1
- import { Color } from './framebuffer';
2
- import type framebuffer from './framebuffer';
3
-
4
- export { Color };
5
- export function load(buffer: BufferSource): Image | Animation;
6
-
7
- type svg_options = {
8
- /** image fit options */
9
- fit?: svg_fit_zoom | svg_fit_width | svg_fit_height,
10
- };
11
-
12
- type png_options = {
13
- compression?: 'fast' | 'best' | 'default',
14
- filter?: 'up' | 'sub' | 'none' | 'paeth' | 'average',
15
- }
16
-
17
- type svg_fit_zoom = {
18
- /** zoom by factor */
19
- zoom: number,
20
- width?: undefined,
21
- height?: undefined,
22
- };
23
- type svg_fit_width = {
24
- /** scale to width */
25
- width: number,
26
- zoom?: undefined,
27
- height?: undefined,
28
- };
29
-
30
- type svg_fit_height = {
31
- /** scale to height */
32
- height: number,
33
- zoom?: undefined,
34
- width?: undefined,
35
- };
36
-
37
- export class Frame {
38
- image: Image;
39
- timestamp: number;
40
- dispose: 'any' | 'keep' | 'previous' | 'background';
41
-
42
- constructor(width: number, height: number, buffer?: Image | BufferSource);
43
- static from(framebuffer: { width: number, height: number, u8?: BufferSource, timestamp?: number, buffer?: BufferSource, dispose: 'any' | 'keep' | 'previous' | 'background' }): Frame;
44
-
45
- clone(): this;
46
- get width(): number;
47
- get height(): number;
48
- }
49
-
50
- // @ts-ignore
51
- export class Image extends framebuffer {
52
- clone(): this;
53
- static from(framebuffer: { width: number, height: number, u8?: BufferSource, buffer?: BufferSource }): Image;
54
-
55
- encode(format: 'png', options?: png_options): Promise<Uint8Array>;
56
- encode(format: 'png', options: png_options & { sync: true }): Uint8Array;
57
- encode(format: 'jpeg', options?: { quality?: number }): Promise<Uint8Array>;
58
- encode(format: 'webp', options?: { quality?: number }): Promise<Uint8Array>;
59
- encode(format: 'jpeg', options: { quality?: number } & { sync: true }): Uint8Array;
60
- encode(format: 'webp', options: { quality?: number } & { sync: true }): Uint8Array;
61
-
62
- static decode(format: 'png', buffer: BufferSource): Promise<Image>;
63
- static decode(format: 'jpeg', buffer: BufferSource): Promise<Image>;
64
- static decode(format: 'tiff', buffer: BufferSource): Promise<Image>;
65
- static decode(format: 'auto', buffer: string | BufferSource, options?: any): Promise<Image>;
66
- static decode(format: 'svg', buffer: string | BufferSource, options?: svg_options): Promise<Image>;
67
- }
68
-
69
- export class Animation {
70
- repeat: number;
71
- readonly width: number;
72
- readonly height: number;
73
- readonly frames: Frame[];
74
-
75
- constructor(width: number, height: number);
76
- static decode(format: 'gif', buffer: BufferSource, options?: {}): Promise<Animation>;
77
- static decode(format: 'auto', buffer: BufferSource, options?: any): Promise<Animation>;
78
-
79
- clear(): void;
80
- add(frame: Frame): void;
81
- [Symbol.iterator]: Generator<Frame, Frame>;
82
- resize(type: 'cubic' | 'linear' | 'nearest', width: number, height: number): void;
83
- encode(format: 'gif', options?: { repeat?: number, comment?: string, application?: string }): Promise<Uint8Array>;
1
+ import { Color } from './framebuffer';
2
+ import type framebuffer from './framebuffer';
3
+
4
+ export { Color };
5
+ export function load(buffer: BufferSource): Image | Animation;
6
+
7
+ type svg_options = {
8
+ /** image fit options */
9
+ fit?: svg_fit_zoom | svg_fit_width | svg_fit_height,
10
+ };
11
+
12
+ type png_options = {
13
+ compression?: 'fast' | 'best' | 'default',
14
+ filter?: 'up' | 'sub' | 'none' | 'paeth' | 'average',
15
+ }
16
+
17
+ type svg_fit_zoom = {
18
+ /** zoom by factor */
19
+ zoom: number,
20
+ width?: undefined,
21
+ height?: undefined,
22
+ };
23
+ type svg_fit_width = {
24
+ /** scale to width */
25
+ width: number,
26
+ zoom?: undefined,
27
+ height?: undefined,
28
+ };
29
+
30
+ type svg_fit_height = {
31
+ /** scale to height */
32
+ height: number,
33
+ zoom?: undefined,
34
+ width?: undefined,
35
+ };
36
+
37
+ export class Frame {
38
+ image: Image;
39
+ timestamp: number;
40
+ dispose: 'any' | 'keep' | 'previous' | 'background';
41
+
42
+ constructor(width: number, height: number, buffer?: Image | BufferSource);
43
+ static from(framebuffer: { width: number, height: number, u8?: BufferSource, timestamp?: number, buffer?: BufferSource, dispose: 'any' | 'keep' | 'previous' | 'background' }): Frame;
44
+
45
+ clone(): this;
46
+ get width(): number;
47
+ get height(): number;
48
+ }
49
+
50
+ // @ts-ignore
51
+ export class Image extends framebuffer {
52
+ clone(): this;
53
+ static from(framebuffer: { width: number, height: number, u8?: BufferSource, buffer?: BufferSource }): Image;
54
+
55
+ encode(format: 'png', options?: png_options): Promise<Uint8Array>;
56
+ encode(format: 'png', options: png_options & { sync: true }): Uint8Array;
57
+ encode(format: 'jpeg', options?: { quality?: number }): Promise<Uint8Array>;
58
+ encode(format: 'webp', options?: { quality?: number }): Promise<Uint8Array>;
59
+ encode(format: 'jpeg', options: { quality?: number } & { sync: true }): Uint8Array;
60
+ encode(format: 'webp', options: { quality?: number } & { sync: true }): Uint8Array;
61
+
62
+ static decode(format: 'png', buffer: BufferSource): Promise<Image>;
63
+ static decode(format: 'jpeg', buffer: BufferSource): Promise<Image>;
64
+ static decode(format: 'tiff', buffer: BufferSource): Promise<Image>;
65
+ static decode(format: 'auto', buffer: string | BufferSource, options?: any): Promise<Image>;
66
+ static decode(format: 'svg', buffer: string | BufferSource, options?: svg_options): Promise<Image>;
67
+ }
68
+
69
+ export class Animation {
70
+ repeat: number;
71
+ readonly width: number;
72
+ readonly height: number;
73
+ readonly frames: Frame[];
74
+
75
+ constructor(width: number, height: number);
76
+ static decode(format: 'gif', buffer: BufferSource, options?: {}): Promise<Animation>;
77
+ static decode(format: 'auto', buffer: BufferSource, options?: any): Promise<Animation>;
78
+
79
+ clear(): void;
80
+ add(frame: Frame): void;
81
+ [Symbol.iterator]: Generator<Frame, Frame>;
82
+ resize(type: 'cubic' | 'linear' | 'nearest', width: number, height: number): void;
83
+ encode(format: 'gif', options?: { repeat?: number, comment?: string, application?: string }): Promise<Uint8Array>;
84
84
  }