wasm-image-optimization 1.2.29 → 1.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.
package/README.md CHANGED
@@ -37,23 +37,25 @@ https://next-image-convert.vercel.app/
37
37
 
38
38
  ```ts
39
39
  optimizeImage({
40
- image: ArrayBuffer,
41
- width?: number,
42
- height?:number,
43
- quality?: number, // quality: 1-100
44
- format?: "png" | "jpeg" | "avif" | "webp" | "none"}
45
- speed?: number // avif-speed: 0-10 (Slow-Fast, default: 6)
40
+ image: BufferSource | Buffer | string; // The input image data
41
+ width?: number; // The desired output width (optional)
42
+ height?: number; // The desired output height (optional)
43
+ quality?: number; // The desired output quality (0-100, optional)
44
+ format?: "jpeg" | "png" | "webp" | "avif" | "none"; // The desired output format (optional)
45
+ speed?: number; // The desired speed (0-10, Slow-Fast, Optional)
46
+ filter?: boolean; // resize filter (default true)
46
47
  ):
47
48
  Promise<
48
49
  ArrayBuffer>
49
50
 
50
51
  optimizeImageExt({
51
- image: ArrayBuffer,
52
- width?: number,
53
- height?:number,
54
- quality?: number,
55
- format?: "png" | "jpeg" | "avif" | "webp" | "none"}
56
- speed?: number // avif-speed: 0-10 (Slow-Fast, default: 6)
52
+ image: BufferSource | Buffer | string; // The input image data
53
+ width?: number; // The desired output width (optional)
54
+ height?: number; // The desired output height (optional)
55
+ quality?: number; // The desired output quality (0-100, optional)
56
+ format?: "jpeg" | "png" | "webp" | "avif" | "none"; // The desired output format (optional)
57
+ speed?: number; // The desired speed (0-10, Slow-Fast, Optional)
58
+ filter?: boolean; // resize filter (default true)
57
59
  ):
58
60
  Promise<{
59
61
  data: Uint8Array,
@@ -83,7 +85,10 @@ To use Vite, the following settings are required
83
85
  import wasmImageOptimizationPlugin from "wasm-image-optimization/vite-plugin";
84
86
 
85
87
  export default defineConfig(() => ({
86
- plugins: [wasmImageOptimizationPlugin()],
88
+ plugins: [
89
+ wasmImageOptimizationPlugin(),
90
+ //wasmImageOptimizationPlugin("build/client/assets") // optional: assetsPath
91
+ ],
87
92
  }));
88
93
  ```
89
94
 
@@ -91,7 +96,7 @@ export default defineConfig(() => ({
91
96
 
92
97
  - Cloudflare workers
93
98
  `import { optimizeImage } from 'wasm-image-optimization';`
94
- - Next.js (Webpack)
99
+ - Next.js (webpack)
95
100
  `import { optimizeImage } from 'wasm-image-optimization/next';`
96
101
  - ESM (import base) & Deno Deploy
97
102
  `import { optimizeImage } from 'wasm-image-optimization';`
@@ -1,9 +1,9 @@
1
1
  import type { ModuleType } from "../esm/libImage.js";
2
2
  import type { OptimizeParams } from "../types/index.js";
3
- export declare const _optimizeImage: ({ image, width, height, quality, format, speed, libImage, }: OptimizeParams & {
3
+ export declare const _optimizeImage: ({ image, width, height, quality, format, speed, filter, libImage, }: OptimizeParams & {
4
4
  libImage: Promise<ModuleType>;
5
5
  }) => Promise<Uint8Array<ArrayBuffer> | undefined>;
6
- export declare const _optimizeImageExt: ({ image, width, height, quality, format, speed, libImage, }: OptimizeParams & {
6
+ export declare const _optimizeImageExt: ({ image, width, height, quality, format, speed, filter, libImage, }: OptimizeParams & {
7
7
  libImage: Promise<ModuleType>;
8
8
  }) => Promise<{
9
9
  data: Uint8Array<ArrayBuffer>;
@@ -8,16 +8,17 @@ const result = (result, releaseResult) => {
8
8
  releaseResult();
9
9
  return r;
10
10
  };
11
- const _optimizeImage = async ({ image, width = 0, height = 0, quality = 100, format = "avif", speed = 6, libImage, }) => (0, exports._optimizeImageExt)({
11
+ const _optimizeImage = async ({ image, width = 0, height = 0, quality = 100, format = "avif", speed = 6, filter = true, libImage, }) => (0, exports._optimizeImageExt)({
12
12
  image,
13
13
  width,
14
14
  height,
15
15
  quality,
16
16
  format,
17
17
  speed,
18
+ filter,
18
19
  libImage,
19
20
  }).then((r) => r?.data);
20
21
  exports._optimizeImage = _optimizeImage;
21
- const _optimizeImageExt = async ({ image, width = 0, height = 0, quality = 100, format = "avif", speed = 6, libImage, }) => libImage.then(({ optimize, releaseResult }) => result(optimize(image, width, height, quality, format, speed), releaseResult));
22
+ const _optimizeImageExt = async ({ image, width = 0, height = 0, quality = 100, format = "avif", speed = 6, filter = true, libImage, }) => libImage.then(({ optimize, releaseResult }) => result(optimize(image, width, height, quality, format, speed, filter), releaseResult));
22
23
  exports._optimizeImageExt = _optimizeImageExt;
23
24
  //# sourceMappingURL=optimizeImage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"optimizeImage.js","sourceRoot":"","sources":["../../../src/lib/optimizeImage.ts"],"names":[],"mappings":";;;AAGA,MAAM,MAAM,GAAG,CACb,MAAsD,EACtD,aAAyB,EACzB,EAAE;IACF,MAAM,CAAC,GAAG,MAAM;QACd,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QACnD,CAAC,CAAC,SAAS,CAAC;IACd,aAAa,EAAE,CAAC;IAChB,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACK,MAAM,cAAc,GAAG,KAAK,EAAE,EACnC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,EACf,KAAK,GAAG,CAAC,EACT,QAAQ,GAGT,EAAE,EAAE,CACH,IAAA,yBAAiB,EAAC;IAChB,KAAK;IACL,KAAK;IACL,MAAM;IACN,OAAO;IACP,MAAM;IACN,KAAK;IACL,QAAQ;CACT,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAnBb,QAAA,cAAc,kBAmBD;AAEnB,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,EACf,KAAK,GAAG,CAAC,EACT,QAAQ,GAGT,EAAE,EAAE,CACH,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,CAC5C,MAAM,CACJ,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EACtD,aAAa,CACd,CACF,CAAC;AAhBS,QAAA,iBAAiB,qBAgB1B","sourcesContent":["import type { ModuleType } from \"../esm/libImage.js\";\nimport type { OptimizeParams } from \"../types/index.js\";\n\nconst result = (\n result: ReturnType<ModuleType[\"optimize\"]> | undefined,\n releaseResult: () => void,\n) => {\n const r = result\n ? { ...result, data: Uint8Array.from(result.data) }\n : undefined;\n releaseResult();\n return r;\n};\nexport const _optimizeImage = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n speed = 6,\n libImage,\n}: OptimizeParams & {\n libImage: Promise<ModuleType>;\n}) =>\n _optimizeImageExt({\n image,\n width,\n height,\n quality,\n format,\n speed,\n libImage,\n }).then((r) => r?.data);\n\nexport const _optimizeImageExt = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n speed = 6,\n libImage,\n}: OptimizeParams & {\n libImage: Promise<ModuleType>;\n}) =>\n libImage.then(({ optimize, releaseResult }) =>\n result(\n optimize(image, width, height, quality, format, speed),\n releaseResult,\n ),\n );\n"]}
1
+ {"version":3,"file":"optimizeImage.js","sourceRoot":"","sources":["../../../src/lib/optimizeImage.ts"],"names":[],"mappings":";;;AAGA,MAAM,MAAM,GAAG,CACb,MAAsD,EACtD,aAAyB,EACzB,EAAE;IACF,MAAM,CAAC,GAAG,MAAM;QACd,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QACnD,CAAC,CAAC,SAAS,CAAC;IACd,aAAa,EAAE,CAAC;IAChB,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACK,MAAM,cAAc,GAAG,KAAK,EAAE,EACnC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,EACf,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,IAAI,EACb,QAAQ,GAGT,EAAE,EAAE,CACH,IAAA,yBAAiB,EAAC;IAChB,KAAK;IACL,KAAK;IACL,MAAM;IACN,OAAO;IACP,MAAM;IACN,KAAK;IACL,MAAM;IACN,QAAQ;CACT,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AArBb,QAAA,cAAc,kBAqBD;AAEnB,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACtC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,EACf,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,IAAI,EACb,QAAQ,GAGT,EAAE,EAAE,CACH,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE,CAC5C,MAAM,CACJ,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAC9D,aAAa,CACd,CACF,CAAC;AAjBS,QAAA,iBAAiB,qBAiB1B","sourcesContent":["import type { ModuleType } from \"../esm/libImage.js\";\nimport type { OptimizeParams } from \"../types/index.js\";\n\nconst result = (\n result: ReturnType<ModuleType[\"optimize\"]> | undefined,\n releaseResult: () => void\n) => {\n const r = result\n ? { ...result, data: Uint8Array.from(result.data) }\n : undefined;\n releaseResult();\n return r;\n};\nexport const _optimizeImage = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n speed = 6,\n filter = true,\n libImage,\n}: OptimizeParams & {\n libImage: Promise<ModuleType>;\n}) =>\n _optimizeImageExt({\n image,\n width,\n height,\n quality,\n format,\n speed,\n filter,\n libImage,\n }).then((r) => r?.data);\n\nexport const _optimizeImageExt = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n speed = 6,\n filter = true,\n libImage,\n}: OptimizeParams & {\n libImage: Promise<ModuleType>;\n}) =>\n libImage.then(({ optimize, releaseResult }) =>\n result(\n optimize(image, width, height, quality, format, speed, filter),\n releaseResult\n )\n );\n"]}