wasm-image-optimization 1.1.2 → 1.1.3

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.
@@ -4,7 +4,7 @@ export declare const optimizeImage: ({ image, width, height, quality, format, }:
4
4
  height?: number;
5
5
  quality?: number;
6
6
  format?: "jpeg" | "png" | "webp" | "avif";
7
- }) => Promise<Uint8Array<ArrayBufferLike> | undefined>;
7
+ }) => Promise<Buffer<ArrayBuffer> | undefined>;
8
8
  export declare const optimizeImageExt: ({ image, width, height, quality, format, }: {
9
9
  image: BufferSource;
10
10
  width?: number;
@@ -12,9 +12,10 @@ export declare const optimizeImageExt: ({ image, width, height, quality, format,
12
12
  quality?: number;
13
13
  format?: "jpeg" | "png" | "webp" | "avif";
14
14
  }) => Promise<{
15
- data: Uint8Array;
15
+ data: Buffer<ArrayBuffer>;
16
16
  originalWidth: number;
17
17
  originalHeight: number;
18
18
  width: number;
19
19
  height: number;
20
- } | null>;
20
+ index: number;
21
+ } | undefined>;
package/dist/cjs/index.js CHANGED
@@ -10,13 +10,15 @@ const libImage_1 = __importDefault(require("../workers/libImage"));
10
10
  const libImage = (0, libImage_1.default)({
11
11
  wasmBinary: fs_1.default.readFileSync(path_1.default.resolve(__dirname, "../esm/libImage.wasm")),
12
12
  });
13
- const optimizeImage = async ({ image, width = 0, height = 0, quality = 100, format = "avif", }) => libImage.then(({ optimize }) => {
14
- const result = optimize(image, width, height, quality, format);
15
- return result?.data;
16
- });
13
+ const result = (result) => {
14
+ const r = result ? { ...result, data: Buffer.from(result.data) } : undefined;
15
+ if (r) {
16
+ libImage.then(({ releaseResult }) => releaseResult(r.index));
17
+ }
18
+ return r;
19
+ };
20
+ const optimizeImage = async ({ image, width = 0, height = 0, quality = 100, format = "avif", }) => (0, exports.optimizeImageExt)({ image, width, height, quality, format }).then((r) => r?.data);
17
21
  exports.optimizeImage = optimizeImage;
18
- const optimizeImageExt = async ({ image, width = 0, height = 0, quality = 100, format = "avif", }) => libImage.then(({ optimize }) => {
19
- return optimize(image, width, height, quality, format);
20
- });
22
+ const optimizeImageExt = async ({ image, width = 0, height = 0, quality = 100, format = "avif", }) => libImage.then(({ optimize }) => result(optimize(image, width, height, quality, format)));
21
23
  exports.optimizeImageExt = optimizeImageExt;
22
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cjs/index.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,mEAA2C;AAE3C,MAAM,QAAQ,GAAG,IAAA,kBAAQ,EAAC;IACxB,UAAU,EAAE,YAAE,CAAC,YAAY,CACzB,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,sBAAsB,CAAC,CACvC;CACX,CAAC,CAAC;AAEI,MAAM,aAAa,GAAG,KAAK,EAAE,EAClC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,GAOhB,EAAE,EAAE,CACH,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7B,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,OAAO,MAAM,EAAE,IAAI,CAAC;AACtB,CAAC,CAAC,CAAC;AAhBQ,QAAA,aAAa,iBAgBrB;AAEE,MAAM,gBAAgB,GAAG,KAAK,EAAE,EACrC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,GAOhB,EAAE,EAAE,CACH,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7B,OAAO,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AAfQ,QAAA,gBAAgB,oBAexB","sourcesContent":["import fs from \"fs\";\nimport path from \"path\";\nimport LibImage from \"../workers/libImage\";\n\nconst libImage = LibImage({\n wasmBinary: fs.readFileSync(\n path.resolve(__dirname, \"../esm/libImage.wasm\")\n ) as never,\n});\n\nexport const optimizeImage = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n}: {\n image: BufferSource;\n width?: number;\n height?: number;\n quality?: number;\n format?: \"jpeg\" | \"png\" | \"webp\" | \"avif\";\n}) =>\n libImage.then(({ optimize }) => {\n const result = optimize(image, width, height, quality, format);\n return result?.data;\n });\n\nexport const optimizeImageExt = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n}: {\n image: BufferSource;\n width?: number;\n height?: number;\n quality?: number;\n format?: \"jpeg\" | \"png\" | \"webp\" | \"avif\";\n}) =>\n libImage.then(({ optimize }) => {\n return optimize(image, width, height, quality, format);\n });\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cjs/index.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,mEAA2C;AAG3C,MAAM,QAAQ,GAAG,IAAA,kBAAQ,EAAC;IACxB,UAAU,EAAE,YAAE,CAAC,YAAY,CACzB,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,sBAAsB,CAAC,CACvC;CACX,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,CAAC,MAA2C,EAAE,EAAE;IAC7D,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,IAAI,CAAC,EAAE,CAAC;QACN,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACK,MAAM,aAAa,GAAG,KAAK,EAAE,EAClC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,GAOhB,EAAE,EAAE,CACH,IAAA,wBAAgB,EAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CACf,CAAC;AAfS,QAAA,aAAa,iBAetB;AAEG,MAAM,gBAAgB,GAAG,KAAK,EAAE,EACrC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,GAOhB,EAAE,EAAE,CACH,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAC7B,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CACxD,CAAC;AAfS,QAAA,gBAAgB,oBAezB","sourcesContent":["import fs from \"fs\";\nimport path from \"path\";\nimport LibImage from \"../workers/libImage\";\nimport type { ModuleType } from \"../esm/libImage\";\n\nconst libImage = LibImage({\n wasmBinary: fs.readFileSync(\n path.resolve(__dirname, \"../esm/libImage.wasm\")\n ) as never,\n});\n\nconst result = (result?: ReturnType<ModuleType[\"optimize\"]>) => {\n const r = result ? { ...result, data: Buffer.from(result.data) } : undefined;\n if (r) {\n libImage.then(({ releaseResult }) => releaseResult(r.index));\n }\n return r;\n};\nexport const optimizeImage = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n}: {\n image: BufferSource;\n width?: number;\n height?: number;\n quality?: number;\n format?: \"jpeg\" | \"png\" | \"webp\" | \"avif\";\n}) =>\n optimizeImageExt({ image, width, height, quality, format }).then(\n (r) => r?.data\n );\n\nexport const optimizeImageExt = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n}: {\n image: BufferSource;\n width?: number;\n height?: number;\n quality?: number;\n format?: \"jpeg\" | \"png\" | \"webp\" | \"avif\";\n}) =>\n libImage.then(({ optimize }) =>\n result(optimize(image, width, height, quality, format))\n );\n"]}
@@ -4,7 +4,7 @@ export declare const optimizeImage: ({ image, width, height, quality, format, }:
4
4
  height?: number;
5
5
  quality?: number;
6
6
  format?: "jpeg" | "png" | "webp" | "avif";
7
- }) => Promise<Uint8Array<ArrayBufferLike> | undefined>;
7
+ }) => Promise<Buffer<ArrayBuffer> | undefined>;
8
8
  export declare const optimizeImageExt: ({ image, width, height, quality, format, }: {
9
9
  image: BufferSource;
10
10
  width?: number;
@@ -12,9 +12,10 @@ export declare const optimizeImageExt: ({ image, width, height, quality, format,
12
12
  quality?: number;
13
13
  format?: "jpeg" | "png" | "webp" | "avif";
14
14
  }) => Promise<{
15
- data: Uint8Array;
15
+ data: Buffer<ArrayBuffer>;
16
16
  originalWidth: number;
17
17
  originalHeight: number;
18
18
  width: number;
19
19
  height: number;
20
- } | null>;
20
+ index: number;
21
+ } | undefined>;
package/dist/esm/index.js CHANGED
@@ -1,10 +1,12 @@
1
1
  import LibImage from "./libImage.js";
2
2
  const libImage = LibImage();
3
- export const optimizeImage = async ({ image, width = 0, height = 0, quality = 100, format = "webp", }) => libImage.then(({ optimize }) => {
4
- const result = optimize(image, width, height, quality, format);
5
- return result?.data;
6
- });
7
- export const optimizeImageExt = async ({ image, width = 0, height = 0, quality = 100, format = "avif", }) => libImage.then(({ optimize }) => {
8
- return optimize(image, width, height, quality, format);
9
- });
3
+ const result = (result) => {
4
+ const r = result ? { ...result, data: Buffer.from(result.data) } : undefined;
5
+ if (r) {
6
+ libImage.then(({ releaseResult }) => releaseResult(r.index));
7
+ }
8
+ return r;
9
+ };
10
+ export const optimizeImage = async ({ image, width = 0, height = 0, quality = 100, format = "avif", }) => optimizeImageExt({ image, width, height, quality, format }).then((r) => r?.data);
11
+ export const optimizeImageExt = async ({ image, width = 0, height = 0, quality = 100, format = "avif", }) => libImage.then(({ optimize }) => result(optimize(image, width, height, quality, format)));
10
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/esm/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,MAAM,QAAQ,GAAG,QAAQ,EAAE,CAAC;AAE5B,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,EAClC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,GAOhB,EAAE,EAAE,CACH,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7B,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,OAAO,MAAM,EAAE,IAAI,CAAC;AACtB,CAAC,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,EACrC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,GAOhB,EAAE,EAAE,CACH,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC7B,OAAO,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC","sourcesContent":["import LibImage from \"./libImage.js\";\n\nconst libImage = LibImage();\n\nexport const optimizeImage = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"webp\",\n}: {\n image: BufferSource;\n width?: number;\n height?: number;\n quality?: number;\n format?: \"jpeg\" | \"png\" | \"webp\" | \"avif\";\n}) =>\n libImage.then(({ optimize }) => {\n const result = optimize(image, width, height, quality, format);\n return result?.data;\n });\n\nexport const optimizeImageExt = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n}: {\n image: BufferSource;\n width?: number;\n height?: number;\n quality?: number;\n format?: \"jpeg\" | \"png\" | \"webp\" | \"avif\";\n}) =>\n libImage.then(({ optimize }) => {\n return optimize(image, width, height, quality, format);\n });\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/esm/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAA6B,MAAM,eAAe,CAAC;AAE1D,MAAM,QAAQ,GAAG,QAAQ,EAAE,CAAC;AAE5B,MAAM,MAAM,GAAG,CAAC,MAA2C,EAAE,EAAE;IAC7D,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7E,IAAI,CAAC,EAAE,CAAC;QACN,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,EAClC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,GAOhB,EAAE,EAAE,CACH,gBAAgB,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,CAC9D,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CACf,CAAC;AAEJ,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,EACrC,KAAK,EACL,KAAK,GAAG,CAAC,EACT,MAAM,GAAG,CAAC,EACV,OAAO,GAAG,GAAG,EACb,MAAM,GAAG,MAAM,GAOhB,EAAE,EAAE,CACH,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAC7B,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CACxD,CAAC","sourcesContent":["import LibImage, { type ModuleType } from \"./libImage.js\";\n\nconst libImage = LibImage();\n\nconst result = (result?: ReturnType<ModuleType[\"optimize\"]>) => {\n const r = result ? { ...result, data: Buffer.from(result.data) } : undefined;\n if (r) {\n libImage.then(({ releaseResult }) => releaseResult(r.index));\n }\n return r;\n};\nexport const optimizeImage = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n}: {\n image: BufferSource;\n width?: number;\n height?: number;\n quality?: number;\n format?: \"jpeg\" | \"png\" | \"webp\" | \"avif\";\n}) =>\n optimizeImageExt({ image, width, height, quality, format }).then(\n (r) => r?.data\n );\n\nexport const optimizeImageExt = async ({\n image,\n width = 0,\n height = 0,\n quality = 100,\n format = \"avif\",\n}: {\n image: BufferSource;\n width?: number;\n height?: number;\n quality?: number;\n format?: \"jpeg\" | \"png\" | \"webp\" | \"avif\";\n}) =>\n libImage.then(({ optimize }) =>\n result(optimize(image, width, height, quality, format))\n );\n"]}