@visulima/storage 1.0.9 → 1.0.10
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/CHANGELOG.md +7 -0
- package/dist/adapter/nuxt/module.d.ts +8 -8
- package/dist/ai/ai-sdk/index.d.ts +51 -59
- package/dist/ai/claude/index.d.ts +104 -119
- package/dist/ai/openai/index.d.ts +86 -99
- package/dist/ai/tanstack/index.d.ts +53 -61
- package/dist/handler/http/fetch/index.d.ts +201 -201
- package/dist/handler/http/hono/index.d.ts +59 -59
- package/dist/handler/http/nextjs/index.d.ts +54 -54
- package/dist/handler/http/node/index.d.ts +233 -246
- package/dist/handler/http/solid-start/index.d.ts +54 -54
- package/dist/index.d.ts +70 -70
- package/dist/index.js +1 -1
- package/dist/packem_shared/{AwsLightStorage-BK-WPL0h.js → AwsLightStorage-EsqkAtU5.js} +1 -1
- package/dist/packem_shared/{AzureStorage-1UvDIQZd.js → AzureStorage-DL-U7qFG.js} +1 -1
- package/dist/packem_shared/BoxMetaStorage-CHWrhgg2.js +1 -0
- package/dist/packem_shared/{BoxStorage-DbGqBLux.js → BoxStorage-B8_oCz27.js} +1 -1
- package/dist/packem_shared/BunS3MetaStorage-CHWrhgg2.js +1 -0
- package/dist/packem_shared/{BunS3Storage-DNvimm9e.js → BunS3Storage-_PVXu_na.js} +1 -1
- package/dist/packem_shared/BunnyMetaStorage-CHWrhgg2.js +1 -0
- package/dist/packem_shared/{BunnyStorage-C7d0opLL.js → BunnyStorage-BsoWjScH.js} +1 -1
- package/dist/packem_shared/CloudinaryMetaStorage-BI9YXcwU.js +1 -0
- package/dist/packem_shared/{CloudinaryStorage-Dc3XA2lP.js → CloudinaryStorage-BNwiLF9V.js} +1 -1
- package/dist/packem_shared/{DiskStorage-CI07TVNu.js → DiskStorage-D-NtQDms.js} +1 -1
- package/dist/packem_shared/{DiskStorageWithChecksum-vFCubS6K.js → DiskStorageWithChecksum-UnCtyEvs.js} +1 -1
- package/dist/packem_shared/DropboxMetaStorage-CHWrhgg2.js +1 -0
- package/dist/packem_shared/{DropboxStorage-CY9Ggu3m.js → DropboxStorage-BS9kj0nH.js} +1 -1
- package/dist/packem_shared/FirebaseMetaStorage-BI9YXcwU.js +1 -0
- package/dist/packem_shared/{FirebaseStorage-D6O9CJXN.js → FirebaseStorage-DNquii2p.js} +1 -1
- package/dist/packem_shared/FtpMetaStorage-CHWrhgg2.js +1 -0
- package/dist/packem_shared/{FtpStorage-DbEjbq8z.js → FtpStorage-Bd004--s.js} +1 -1
- package/dist/packem_shared/{GCSMetaStorage-DT8K6zdm.js → GCSMetaStorage-Bf4qDFB1.js} +1 -1
- package/dist/packem_shared/{GCStorage-6BHkFlEs.js → GCStorage-ChqEpgqR.js} +1 -1
- package/dist/packem_shared/GoogleDriveMetaStorage-xlHfKwmR.js +1 -0
- package/dist/packem_shared/{GoogleDriveStorage-Bklsz7Bh.js → GoogleDriveStorage-v1glykjd.js} +1 -1
- package/dist/packem_shared/{LocalMetaStorage-BhicZnNl.js → LocalMetaStorage-YWPBYEe7.js} +1 -1
- package/dist/packem_shared/NetlifyBlobMetaStorage-BI9YXcwU.js +1 -0
- package/dist/packem_shared/{NetlifyBlobStorage-CkpCCoN1.js → NetlifyBlobStorage-BPyEWSnx.js} +1 -1
- package/dist/packem_shared/OneDriveMetaStorage-xlHfKwmR.js +1 -0
- package/dist/packem_shared/{OneDriveStorage-CP6MvGAa.js → OneDriveStorage-BJ3Kzxc5.js} +1 -1
- package/dist/packem_shared/PocketBaseMetaStorage-DnrxOQhO.js +1 -0
- package/dist/packem_shared/{PocketBaseStorage-2qhbI2PW.js → PocketBaseStorage-DqKHbbvn.js} +1 -1
- package/dist/packem_shared/{S3Storage-YGeNk3Tt.js → S3Storage-BiI2k6d1.js} +1 -1
- package/dist/packem_shared/SftpMetaStorage-CHWrhgg2.js +1 -0
- package/dist/packem_shared/{SftpStorage-2Hz396Xr.js → SftpStorage-w8XdtZtw.js} +1 -1
- package/dist/packem_shared/SharePointMetaStorage-CHWrhgg2.js +1 -0
- package/dist/packem_shared/{SharePointStorage-CrX2Pk6C.js → SharePointStorage-DpDpI7Ln.js} +1 -1
- package/dist/packem_shared/SupabaseMetaStorage-xlHfKwmR.js +1 -0
- package/dist/packem_shared/{SupabaseStorage-Dc_DBX29.js → SupabaseStorage-B_ugUCs7.js} +1 -1
- package/dist/packem_shared/UploadThingMetaStorage-BI9YXcwU.js +1 -0
- package/dist/packem_shared/{UploadThingStorage-BChykYSe.js → UploadThingStorage-_H45IVqX.js} +1 -1
- package/dist/packem_shared/VercelBlobMetaStorage-CHWrhgg2.js +1 -0
- package/dist/packem_shared/{VercelBlobStorage-CsRyPfw3.js → VercelBlobStorage-U1YMKeHs.js} +1 -1
- package/dist/packem_shared/{approval.d-CMAYH9GF.d.ts → approval.d-C-d-t94D.d.ts} +6 -6
- package/dist/packem_shared/disk-storage-BwPk2IRa.js +1 -0
- package/dist/packem_shared/disk-storage-with-checksum.d-CQucFacO.d.ts +146 -0
- package/dist/packem_shared/{executors.d-BZP2rWo3.d.ts → executors.d-DeDH3Ilt.d.ts} +2 -2
- package/dist/packem_shared/files.d-D8H_ge9Y.d.ts +655 -0
- package/dist/packem_shared/{gcs-meta-storage-B7BnctnV.js → gcs-meta-storage-DQGu_cHq.js} +1 -1
- package/dist/packem_shared/local-meta-storage-DJDcuxf1.js +11 -0
- package/dist/packem_shared/{local-meta-storage.d-D9PBfkn6.d.ts → local-meta-storage.d-DuTEzyii.d.ts} +7 -7
- package/dist/packem_shared/media-transformer.d-CvMFjINm.d.ts +331 -0
- package/dist/packem_shared/{memory-storage.d-4EU1cMt1.d.ts → memory-storage.d-BRdTiY8y.d.ts} +32 -40
- package/dist/packem_shared/{s3-base-storage-BoTyhuzO.js → s3-base-storage-CMUui93V.js} +1 -1
- package/dist/packem_shared/{s3-base-storage.d-BQgP5B-t.d.ts → s3-base-storage.d-Cg7m4FuH.d.ts} +64 -70
- package/dist/packem_shared/storage.d-DIav_lF1.d.ts +1163 -0
- package/dist/packem_shared/tus-base.d-BiEg5t4t.d.ts +102 -0
- package/dist/packem_shared/{types.d-CrUWY4On.d.ts → types.d-CAAzKiI6.d.ts} +134 -134
- package/dist/packem_shared/types.d-DgHhkCAl.d.ts +104 -0
- package/dist/packem_shared/{types.d-CggTCgXr.d.ts → types.d-jAs_Rp_v.d.ts} +3 -3
- package/dist/storage/aws/clients/index.d.ts +388 -388
- package/dist/storage/aws/index.d.ts +109 -113
- package/dist/storage/aws/index.js +1 -1
- package/dist/storage/aws-light/index.d.ts +63 -67
- package/dist/storage/aws-light/index.js +1 -1
- package/dist/storage/azure/index.d.ts +133 -139
- package/dist/storage/azure/index.js +1 -1
- package/dist/storage/box/index.d.ts +88 -92
- package/dist/storage/box/index.js +1 -1
- package/dist/storage/bun-s3/index.d.ts +70 -76
- package/dist/storage/bun-s3/index.js +1 -1
- package/dist/storage/bunny/index.d.ts +51 -55
- package/dist/storage/bunny/index.js +1 -1
- package/dist/storage/cloudinary/index.d.ts +53 -59
- package/dist/storage/cloudinary/index.js +1 -1
- package/dist/storage/dropbox/index.d.ts +58 -62
- package/dist/storage/dropbox/index.js +1 -1
- package/dist/storage/firebase/index.d.ts +73 -79
- package/dist/storage/firebase/index.js +1 -1
- package/dist/storage/ftp/index.d.ts +37 -43
- package/dist/storage/ftp/index.js +1 -1
- package/dist/storage/gcs/index.d.ts +89 -95
- package/dist/storage/gcs/index.js +1 -1
- package/dist/storage/google-drive/index.d.ts +68 -72
- package/dist/storage/google-drive/index.js +1 -1
- package/dist/storage/local/index.d.ts +3 -3
- package/dist/storage/local/index.js +1 -1
- package/dist/storage/memory/index.d.ts +2 -2
- package/dist/storage/netlify-blob/index.d.ts +85 -93
- package/dist/storage/netlify-blob/index.js +1 -1
- package/dist/storage/onedrive/index.d.ts +43 -53
- package/dist/storage/onedrive/index.js +1 -1
- package/dist/storage/pocketbase/index.d.ts +66 -72
- package/dist/storage/pocketbase/index.js +1 -1
- package/dist/storage/sftp/index.d.ts +39 -45
- package/dist/storage/sftp/index.js +1 -1
- package/dist/storage/sharepoint/index.d.ts +95 -95
- package/dist/storage/sharepoint/index.js +1 -1
- package/dist/storage/supabase/index.d.ts +49 -55
- package/dist/storage/supabase/index.js +1 -1
- package/dist/storage/uploadthing/index.d.ts +33 -37
- package/dist/storage/uploadthing/index.js +1 -1
- package/dist/storage/vercel-blob/index.d.ts +109 -115
- package/dist/storage/vercel-blob/index.js +1 -1
- package/dist/transformer/audio-transformer.d.ts +96 -96
- package/dist/transformer/image-transformer.d.ts +422 -422
- package/dist/transformer/index.d.ts +34 -34
- package/dist/transformer/video-transformer.d.ts +111 -111
- package/package.json +1 -1
- package/dist/packem_shared/BoxMetaStorage-BSn6Qfnf.js +0 -1
- package/dist/packem_shared/BunS3MetaStorage-BSn6Qfnf.js +0 -1
- package/dist/packem_shared/BunnyMetaStorage-BSn6Qfnf.js +0 -1
- package/dist/packem_shared/CloudinaryMetaStorage-DPVnmNe5.js +0 -1
- package/dist/packem_shared/DropboxMetaStorage-BSn6Qfnf.js +0 -1
- package/dist/packem_shared/FirebaseMetaStorage-DPVnmNe5.js +0 -1
- package/dist/packem_shared/FtpMetaStorage-BSn6Qfnf.js +0 -1
- package/dist/packem_shared/GoogleDriveMetaStorage-Cbwa1CHV.js +0 -1
- package/dist/packem_shared/NetlifyBlobMetaStorage-DPVnmNe5.js +0 -1
- package/dist/packem_shared/OneDriveMetaStorage-Cbwa1CHV.js +0 -1
- package/dist/packem_shared/PocketBaseMetaStorage-DOTLwVE7.js +0 -1
- package/dist/packem_shared/SftpMetaStorage-BSn6Qfnf.js +0 -1
- package/dist/packem_shared/SharePointMetaStorage-BSn6Qfnf.js +0 -1
- package/dist/packem_shared/SupabaseMetaStorage-Cbwa1CHV.js +0 -1
- package/dist/packem_shared/UploadThingMetaStorage-DPVnmNe5.js +0 -1
- package/dist/packem_shared/VercelBlobMetaStorage-BSn6Qfnf.js +0 -1
- package/dist/packem_shared/disk-storage-CsQcYW3s.js +0 -1
- package/dist/packem_shared/disk-storage-with-checksum.d-B-VGEsfl.d.ts +0 -156
- package/dist/packem_shared/files.d-CH0iLBNC.d.ts +0 -655
- package/dist/packem_shared/local-meta-storage-iuJnu90B.js +0 -11
- package/dist/packem_shared/media-transformer.d-Quf4ai47.d.ts +0 -331
- package/dist/packem_shared/storage.d-CEM1upWM.d.ts +0 -1176
- package/dist/packem_shared/tus-base.d-DLzKE54M.d.ts +0 -106
- package/dist/packem_shared/types.d-Bon9GVVe.d.ts +0 -104
|
@@ -1,576 +1,576 @@
|
|
|
1
1
|
import { Readable } from 'node:stream';
|
|
2
|
-
import { F as File, g as FileReturn, B as BaseStorage } from "../packem_shared/storage.d-
|
|
3
|
-
import { I as ImageTransformerConfig, T as TransformResult, R as ResizeOptions, C as CropOptions, g as RotateOptions, h as ImageFormat, i as TransformOptions, S as SharpenOptions, j as BlurOptions, k as MedianOptions, l as CLAHEOptions, m as ConvolveOptions, n as ThresholdOptions, o as BooleanOptions, L as LinearOptions, p as RecombineOptions, q as ModulateOptions, r as TintOptions, G as GreyscaleOptions, s as ColourspaceOptions, E as ExtractChannelOptions, J as JoinChannelOptions, t as BandboolOptions, u as AffineOptions, D as DilateOptions, v as ErodeOptions, P as PipelineColourspaceOptions, w as ToColourspaceOptions, x as RemoveAlphaOptions, y as EnsureAlphaOptions, z as TransformationStep, B as BaseTransformer } from "../packem_shared/types.d-
|
|
2
|
+
import { F as File, g as FileReturn, B as BaseStorage } from "../packem_shared/storage.d-DIav_lF1.js";
|
|
3
|
+
import { I as ImageTransformerConfig, T as TransformResult, R as ResizeOptions, C as CropOptions, g as RotateOptions, h as ImageFormat, i as TransformOptions, S as SharpenOptions, j as BlurOptions, k as MedianOptions, l as CLAHEOptions, m as ConvolveOptions, n as ThresholdOptions, o as BooleanOptions, L as LinearOptions, p as RecombineOptions, q as ModulateOptions, r as TintOptions, G as GreyscaleOptions, s as ColourspaceOptions, E as ExtractChannelOptions, J as JoinChannelOptions, t as BandboolOptions, u as AffineOptions, D as DilateOptions, v as ErodeOptions, P as PipelineColourspaceOptions, w as ToColourspaceOptions, x as RemoveAlphaOptions, y as EnsureAlphaOptions, z as TransformationStep, B as BaseTransformer } from "../packem_shared/types.d-CAAzKiI6.js";
|
|
4
4
|
import 'node:crypto';
|
|
5
5
|
import 'node:http';
|
|
6
6
|
import 'lru-cache';
|
|
7
7
|
/**
|
|
8
|
-
* Image transformer that uses storage backends to retrieve and transform images.
|
|
9
|
-
* @template TFile The file type used by this transformer.
|
|
10
|
-
* @template TFileReturn The return type for file retrieval operations.
|
|
11
|
-
*
|
|
12
|
-
* Supports URL-based transformations with query parameters for on-demand image processing.
|
|
13
|
-
* @example
|
|
14
|
-
* ```ts
|
|
15
|
-
* const transformer = new ImageTransformer(storage, {
|
|
16
|
-
* maxImageSize: 10 * 1024 * 1024, // 10MB
|
|
17
|
-
* cache: new Map()
|
|
18
|
-
* });
|
|
19
|
-
*
|
|
20
|
-
* // Programmatic usage - resize an image
|
|
21
|
-
* const result = await transformer.resize('image-id', {
|
|
22
|
-
* width: 800,
|
|
23
|
-
* height: 600,
|
|
24
|
-
* fit: 'cover'
|
|
25
|
-
* });
|
|
26
|
-
*
|
|
27
|
-
* // URL-based transformations
|
|
28
|
-
* // GET /files/image-id?width=300&height=200&fit=cover&quality=80
|
|
29
|
-
* // GET /files/image-id?width=800&quality=90&lossless=true
|
|
30
|
-
* ```
|
|
31
|
-
*
|
|
32
|
-
* ## Supported Query Parameters
|
|
33
|
-
*
|
|
34
|
-
* - `width`: Width in pixels (Number)
|
|
35
|
-
* - `height`: Height in pixels (Number)
|
|
36
|
-
* - `fit`: Resize fit mode - cover/contain/fill/inside/outside
|
|
37
|
-
* - `position`: Position for cover/contain fits - center/top/right/bottom/left etc.
|
|
38
|
-
* - `quality`: Quality for JPEG/WebP (0-100)
|
|
39
|
-
* - `lossless`: Use lossless compression for WebP (Boolean)
|
|
40
|
-
* - `effort`: CPU effort for AVIF (0-10, higher = slower but better)
|
|
41
|
-
* - `alphaQuality`: Quality of alpha layer for WebP (0-100)
|
|
42
|
-
* - `loop`: GIF animation iterations, 0 for infinite (Number)
|
|
43
|
-
* - `delay`: GIF delay between frames in milliseconds (Number)
|
|
44
|
-
*/
|
|
8
|
+
* Image transformer that uses storage backends to retrieve and transform images.
|
|
9
|
+
* @template TFile The file type used by this transformer.
|
|
10
|
+
* @template TFileReturn The return type for file retrieval operations.
|
|
11
|
+
*
|
|
12
|
+
* Supports URL-based transformations with query parameters for on-demand image processing.
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* const transformer = new ImageTransformer(storage, {
|
|
16
|
+
* maxImageSize: 10 * 1024 * 1024, // 10MB
|
|
17
|
+
* cache: new Map()
|
|
18
|
+
* });
|
|
19
|
+
*
|
|
20
|
+
* // Programmatic usage - resize an image
|
|
21
|
+
* const result = await transformer.resize('image-id', {
|
|
22
|
+
* width: 800,
|
|
23
|
+
* height: 600,
|
|
24
|
+
* fit: 'cover'
|
|
25
|
+
* });
|
|
26
|
+
*
|
|
27
|
+
* // URL-based transformations
|
|
28
|
+
* // GET /files/image-id?width=300&height=200&fit=cover&quality=80
|
|
29
|
+
* // GET /files/image-id?width=800&quality=90&lossless=true
|
|
30
|
+
* ```
|
|
31
|
+
*
|
|
32
|
+
* ## Supported Query Parameters
|
|
33
|
+
*
|
|
34
|
+
* - `width`: Width in pixels (Number)
|
|
35
|
+
* - `height`: Height in pixels (Number)
|
|
36
|
+
* - `fit`: Resize fit mode - cover/contain/fill/inside/outside
|
|
37
|
+
* - `position`: Position for cover/contain fits - center/top/right/bottom/left etc.
|
|
38
|
+
* - `quality`: Quality for JPEG/WebP (0-100)
|
|
39
|
+
* - `lossless`: Use lossless compression for WebP (Boolean)
|
|
40
|
+
* - `effort`: CPU effort for AVIF (0-10, higher = slower but better)
|
|
41
|
+
* - `alphaQuality`: Quality of alpha layer for WebP (0-100)
|
|
42
|
+
* - `loop`: GIF animation iterations, 0 for infinite (Number)
|
|
43
|
+
* - `delay`: GIF delay between frames in milliseconds (Number)
|
|
44
|
+
*/
|
|
45
45
|
declare class ImageTransformer<TFile extends File = File, TFileReturn extends FileReturn = FileReturn> extends BaseTransformer<ImageTransformerConfig, TransformResult<TFileReturn>, TFile, TFileReturn> {
|
|
46
46
|
/**
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
47
|
+
* Creates a new ImageTransformer instance.
|
|
48
|
+
* @param storage The storage backend for retrieving and storing image files.
|
|
49
|
+
* @param config Configuration options for image transformation including cache settings and size limits.
|
|
50
|
+
*/
|
|
51
51
|
constructor(storage: BaseStorage<TFile, TFileReturn>, config?: ImageTransformerConfig);
|
|
52
52
|
/**
|
|
53
|
-
|
|
54
|
-
|
|
53
|
+
* Returns a sharp() invocation that applies the transformer's configured decompression-bomb defenses.
|
|
54
|
+
*/
|
|
55
55
|
private openImage;
|
|
56
56
|
/**
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
57
|
+
* Resizes an image to specified dimensions with optional fit mode.
|
|
58
|
+
* @param fileId Unique identifier of the image file to resize.
|
|
59
|
+
* @param options Resize options including width, height, and fit mode.
|
|
60
|
+
* @returns Promise resolving to transformed image result.
|
|
61
|
+
*/
|
|
62
62
|
resize(fileId: string, options: ResizeOptions): Promise<TransformResult<TFileReturn>>;
|
|
63
63
|
/**
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
64
|
+
* Crops an image to the specified region.
|
|
65
|
+
* @param fileId Unique identifier of the image file to crop.
|
|
66
|
+
* @param options Crop options including region coordinates.
|
|
67
|
+
* @returns Promise resolving to transformed image result.
|
|
68
|
+
*/
|
|
69
69
|
crop(fileId: string, options: CropOptions): Promise<TransformResult<TFileReturn>>;
|
|
70
70
|
/**
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
* Rotates an image by the specified angle.
|
|
72
|
+
* @param fileId Unique identifier of the image file to rotate.
|
|
73
|
+
* @param options Rotate options including angle.
|
|
74
|
+
* @returns Promise resolving to transformed image result.
|
|
75
|
+
*/
|
|
76
76
|
rotate(fileId: string, options: RotateOptions): Promise<TransformResult<TFileReturn>>;
|
|
77
77
|
/**
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
78
|
+
* Converts an image to the specified format.
|
|
79
|
+
* @param fileId Unique identifier of the image file to convert.
|
|
80
|
+
* @param format Target image format (e.g., "jpeg", "png", "webp").
|
|
81
|
+
* @param options Additional transform options.
|
|
82
|
+
* @returns Promise resolving to transformed image result.
|
|
83
|
+
*/
|
|
84
84
|
convertFormat(fileId: string, format: ImageFormat, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
85
85
|
/**
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
86
|
+
* Applies sharpening filter to an image.
|
|
87
|
+
* @param fileId Unique identifier of the image file to sharpen.
|
|
88
|
+
* @param options Sharpen options including sigma and flat/jagged threshold.
|
|
89
|
+
* @returns Promise resolving to transformed image result.
|
|
90
|
+
*/
|
|
91
91
|
sharpen(fileId: string, options?: SharpenOptions): Promise<TransformResult<TFileReturn>>;
|
|
92
92
|
/**
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
93
|
+
* Applies blurring filter to an image.
|
|
94
|
+
* @param fileId Unique identifier of the image file to blur.
|
|
95
|
+
* @param options Blur options including sigma.
|
|
96
|
+
* @returns Promise resolving to transformed image result.
|
|
97
|
+
*/
|
|
98
98
|
blur(fileId: string, options?: BlurOptions): Promise<TransformResult<TFileReturn>>;
|
|
99
99
|
/**
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
100
|
+
* Applies median filter to an image for noise reduction.
|
|
101
|
+
* @param fileId Unique identifier of the image file to process.
|
|
102
|
+
* @param options Median filter options including radius.
|
|
103
|
+
* @returns Promise resolving to transformed image result.
|
|
104
|
+
*/
|
|
105
105
|
median(fileId: string, options?: MedianOptions): Promise<TransformResult<TFileReturn>>;
|
|
106
106
|
/**
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
107
|
+
* Applies CLAHE (Contrast Limited Adaptive Histogram Equalization) to an image.
|
|
108
|
+
* @param fileId Unique identifier of the image file to process.
|
|
109
|
+
* @param options CLAHE options including width, height, and maxSlope.
|
|
110
|
+
* @returns Promise resolving to transformed image result.
|
|
111
|
+
*/
|
|
112
112
|
clahe(fileId: string, options?: CLAHEOptions): Promise<TransformResult<TFileReturn>>;
|
|
113
113
|
/**
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
114
|
+
* Applies convolution kernel to an image.
|
|
115
|
+
* @param fileId Unique identifier of the image file to process.
|
|
116
|
+
* @param options Convolve options including kernel matrix.
|
|
117
|
+
* @returns Promise resolving to transformed image result.
|
|
118
|
+
*/
|
|
119
119
|
convolve(fileId: string, options: ConvolveOptions): Promise<TransformResult<TFileReturn>>;
|
|
120
120
|
/**
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
121
|
+
* Applies thresholding to an image to create a binary image.
|
|
122
|
+
* @param fileId Unique identifier of the image file to process.
|
|
123
|
+
* @param options Threshold options including threshold value.
|
|
124
|
+
* @returns Promise resolving to transformed image result.
|
|
125
|
+
*/
|
|
126
126
|
threshold(fileId: string, options?: ThresholdOptions): Promise<TransformResult<TFileReturn>>;
|
|
127
127
|
/**
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
128
|
+
* Applies boolean operation to an image.
|
|
129
|
+
* @param fileId Unique identifier of the image file to process.
|
|
130
|
+
* @param options Boolean operation options including operator and operand.
|
|
131
|
+
* @returns Promise resolving to transformed image result.
|
|
132
|
+
*/
|
|
133
133
|
boolean(fileId: string, options: BooleanOptions): Promise<TransformResult<TFileReturn>>;
|
|
134
134
|
/**
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
135
|
+
* Applies linear transformation to an image.
|
|
136
|
+
* @param fileId Unique identifier of the image file to process.
|
|
137
|
+
* @param options Linear transformation options including a and b coefficients.
|
|
138
|
+
* @returns Promise resolving to transformed image result.
|
|
139
|
+
*/
|
|
140
140
|
linear(fileId: string, options: LinearOptions): Promise<TransformResult<TFileReturn>>;
|
|
141
141
|
/**
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
142
|
+
* Applies recombine transformation to an image using a matrix.
|
|
143
|
+
* @param fileId Unique identifier of the image file to process.
|
|
144
|
+
* @param options Recombine options including matrix coefficients.
|
|
145
|
+
* @returns Promise resolving to transformed image result.
|
|
146
|
+
*/
|
|
147
147
|
recombine(fileId: string, options: RecombineOptions): Promise<TransformResult<TFileReturn>>;
|
|
148
148
|
/**
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
149
|
+
* Applies modulation (brightness, saturation, hue) to an image.
|
|
150
|
+
* @param fileId Unique identifier of the image file to process.
|
|
151
|
+
* @param options Modulate options including brightness, saturation, and hue.
|
|
152
|
+
* @returns Promise resolving to transformed image result.
|
|
153
|
+
*/
|
|
154
154
|
modulate(fileId: string, options: ModulateOptions): Promise<TransformResult<TFileReturn>>;
|
|
155
155
|
/**
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
156
|
+
* Applies tinting to an image.
|
|
157
|
+
* @param fileId Unique identifier of the image file to process.
|
|
158
|
+
* @param options Tint options including RGB color values.
|
|
159
|
+
* @returns Promise resolving to transformed image result.
|
|
160
|
+
*/
|
|
161
161
|
tint(fileId: string, options: TintOptions): Promise<TransformResult<TFileReturn>>;
|
|
162
162
|
/**
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
163
|
+
* Converts an image to greyscale.
|
|
164
|
+
* @param fileId Unique identifier of the image file to convert.
|
|
165
|
+
* @param options Greyscale conversion options.
|
|
166
|
+
* @returns Promise resolving to transformed image result.
|
|
167
|
+
*/
|
|
168
168
|
greyscale(fileId: string, options?: GreyscaleOptions): Promise<TransformResult<TFileReturn>>;
|
|
169
169
|
/**
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
170
|
+
* Converts an image to a different colourspace.
|
|
171
|
+
* @param fileId Unique identifier of the image file to convert.
|
|
172
|
+
* @param options Colourspace conversion options including target colourspace.
|
|
173
|
+
* @returns Promise resolving to transformed image result.
|
|
174
|
+
*/
|
|
175
175
|
colourspace(fileId: string, options: ColourspaceOptions): Promise<TransformResult<TFileReturn>>;
|
|
176
176
|
/**
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
177
|
+
* Extracts a specific channel from an image.
|
|
178
|
+
* @param fileId Unique identifier of the image file to process.
|
|
179
|
+
* @param options Extract channel options including channel index.
|
|
180
|
+
* @returns Promise resolving to transformed image result.
|
|
181
|
+
*/
|
|
182
182
|
extractChannel(fileId: string, options: ExtractChannelOptions): Promise<TransformResult<TFileReturn>>;
|
|
183
183
|
/**
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
184
|
+
* Joins channels to an image.
|
|
185
|
+
* @param fileId Unique identifier of the image file to process.
|
|
186
|
+
* @param options Join channel options including channel sources.
|
|
187
|
+
* @returns Promise resolving to transformed image result.
|
|
188
|
+
*/
|
|
189
189
|
joinChannel(fileId: string, options: JoinChannelOptions): Promise<TransformResult<TFileReturn>>;
|
|
190
190
|
/**
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
191
|
+
* Applies band boolean operation to an image.
|
|
192
|
+
* @param fileId Unique identifier of the image file to process.
|
|
193
|
+
* @param options Band boolean options including operator.
|
|
194
|
+
* @returns Promise resolving to transformed image result.
|
|
195
|
+
*/
|
|
196
196
|
bandbool(fileId: string, options: BandboolOptions): Promise<TransformResult<TFileReturn>>;
|
|
197
197
|
/**
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
198
|
+
* Auto-orients an image based on EXIF orientation data.
|
|
199
|
+
* @param fileId Unique identifier of the image file to orient.
|
|
200
|
+
* @param options Additional transform options.
|
|
201
|
+
* @returns Promise resolving to transformed image result.
|
|
202
|
+
*/
|
|
203
203
|
autoOrient(fileId: string, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
204
204
|
/**
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
205
|
+
* Flips an image vertically.
|
|
206
|
+
* @param fileId Unique identifier of the image file to flip.
|
|
207
|
+
* @param options Additional transform options.
|
|
208
|
+
* @returns Promise resolving to transformed image result.
|
|
209
|
+
*/
|
|
210
210
|
flip(fileId: string, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
211
211
|
/**
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
212
|
+
* Flops an image horizontally.
|
|
213
|
+
* @param fileId Unique identifier of the image file to flop.
|
|
214
|
+
* @param options Additional transform options.
|
|
215
|
+
* @returns Promise resolving to transformed image result.
|
|
216
|
+
*/
|
|
217
217
|
flop(fileId: string, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
218
218
|
/**
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
219
|
+
* Flattens an image alpha channel onto a background color.
|
|
220
|
+
* @param fileId Unique identifier of the image file to flatten.
|
|
221
|
+
* @param options Additional transform options.
|
|
222
|
+
* @returns Promise resolving to transformed image result.
|
|
223
|
+
*/
|
|
224
224
|
flatten(fileId: string, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
225
225
|
/**
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
226
|
+
* Unflattens an image alpha channel.
|
|
227
|
+
* @param fileId Unique identifier of the image file to unflatten.
|
|
228
|
+
* @param options Additional transform options.
|
|
229
|
+
* @returns Promise resolving to transformed image result.
|
|
230
|
+
*/
|
|
231
231
|
unflatten(fileId: string, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
232
232
|
/**
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
233
|
+
* Applies gamma correction to an image.
|
|
234
|
+
* @param fileId Unique identifier of the image file to process.
|
|
235
|
+
* @param options Additional transform options.
|
|
236
|
+
* @returns Promise resolving to transformed image result.
|
|
237
|
+
*/
|
|
238
238
|
gamma(fileId: string, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
239
239
|
/**
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
240
|
+
* Negates (inverts) an image.
|
|
241
|
+
* @param fileId Unique identifier of the image file to negate.
|
|
242
|
+
* @param options Additional transform options.
|
|
243
|
+
* @returns Promise resolving to transformed image result.
|
|
244
|
+
*/
|
|
245
245
|
negate(fileId: string, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
246
246
|
/**
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
247
|
+
* Normalises an image by enhancing contrast.
|
|
248
|
+
* @param fileId Unique identifier of the image file to normalise.
|
|
249
|
+
* @param options Additional transform options.
|
|
250
|
+
* @returns Promise resolving to transformed image result.
|
|
251
|
+
*/
|
|
252
252
|
normalise(fileId: string, options?: TransformOptions): Promise<TransformResult<TFileReturn>>;
|
|
253
253
|
/**
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
254
|
+
* Applies affine transformation to an image.
|
|
255
|
+
* @param fileId Unique identifier of the image file to transform.
|
|
256
|
+
* @param options Affine transformation options including matrix.
|
|
257
|
+
* @returns Promise resolving to transformed image result.
|
|
258
|
+
*/
|
|
259
259
|
affine(fileId: string, options: AffineOptions): Promise<TransformResult<TFileReturn>>;
|
|
260
260
|
/**
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
261
|
+
* Applies dilation (morphological operation) to an image.
|
|
262
|
+
* @param fileId Unique identifier of the image file to process.
|
|
263
|
+
* @param options Dilate options including iterations.
|
|
264
|
+
* @returns Promise resolving to transformed image result.
|
|
265
|
+
*/
|
|
266
266
|
dilate(fileId: string, options?: DilateOptions): Promise<TransformResult<TFileReturn>>;
|
|
267
267
|
/**
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
268
|
+
* Applies erosion (morphological operation) to an image.
|
|
269
|
+
* @param fileId Unique identifier of the image file to process.
|
|
270
|
+
* @param options Erode options including iterations.
|
|
271
|
+
* @returns Promise resolving to transformed image result.
|
|
272
|
+
*/
|
|
273
273
|
erode(fileId: string, options?: ErodeOptions): Promise<TransformResult<TFileReturn>>;
|
|
274
274
|
/**
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
275
|
+
* Sets pipeline colourspace for an image.
|
|
276
|
+
* @param fileId Unique identifier of the image file to process.
|
|
277
|
+
* @param options Pipeline colourspace options including colourspace.
|
|
278
|
+
* @returns Promise resolving to transformed image result.
|
|
279
|
+
*/
|
|
280
280
|
pipelineColourspace(fileId: string, options: PipelineColourspaceOptions): Promise<TransformResult<TFileReturn>>;
|
|
281
281
|
/**
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
282
|
+
* Converts colourspace of an image.
|
|
283
|
+
* @param fileId Unique identifier of the image file to convert.
|
|
284
|
+
* @param options ToColourspace options including target colourspace.
|
|
285
|
+
* @returns Promise resolving to transformed image result.
|
|
286
|
+
*/
|
|
287
287
|
toColourspace(fileId: string, options: ToColourspaceOptions): Promise<TransformResult<TFileReturn>>;
|
|
288
288
|
/**
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
289
|
+
* Removes alpha channel from an image.
|
|
290
|
+
* @param fileId Unique identifier of the image file to process.
|
|
291
|
+
* @param options RemoveAlpha transformation options.
|
|
292
|
+
* @returns Promise resolving to transformed image result.
|
|
293
|
+
*/
|
|
294
294
|
removeAlpha(fileId: string, options?: RemoveAlphaOptions): Promise<TransformResult<TFileReturn>>;
|
|
295
295
|
/**
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
296
|
+
* Ensures alpha channel exists in an image.
|
|
297
|
+
* @param fileId Unique identifier of the image file to process.
|
|
298
|
+
* @param options EnsureAlpha transformation options.
|
|
299
|
+
* @returns Promise resolving to transformed image result.
|
|
300
|
+
*/
|
|
301
301
|
ensureAlpha(fileId: string, options?: EnsureAlphaOptions): Promise<TransformResult<TFileReturn>>;
|
|
302
302
|
/**
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
303
|
+
* Applies a custom transformation pipeline to an image.
|
|
304
|
+
* @param fileId Unique identifier of the image file to transform.
|
|
305
|
+
* @param steps Array of transformation steps to apply in sequence.
|
|
306
|
+
* @returns Promise resolving to transformed image result.
|
|
307
|
+
*/
|
|
308
308
|
transform(fileId: string, steps: TransformationStep[]): Promise<TransformResult<TFileReturn>>;
|
|
309
309
|
/**
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
310
|
+
* Streams transform of a file (for large files, falls back to regular transform).
|
|
311
|
+
* @param fileId Unique identifier of the image file to transform.
|
|
312
|
+
* @param steps Array of transformation steps to apply in sequence.
|
|
313
|
+
* @returns Promise resolving to stream with headers and size information.
|
|
314
|
+
*/
|
|
315
315
|
override transformStream(fileId: string, steps: TransformationStep[]): Promise<{
|
|
316
316
|
headers?: Record<string, string>;
|
|
317
317
|
size?: number;
|
|
318
318
|
stream: Readable;
|
|
319
319
|
}>;
|
|
320
320
|
/**
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
321
|
+
* Applies multiple transformations in sequence using Sharp.
|
|
322
|
+
* @param buffer The original image buffer.
|
|
323
|
+
* @param steps Array of transformation steps to apply.
|
|
324
|
+
* @returns Promise resolving to transformed image buffer.
|
|
325
|
+
* @private
|
|
326
|
+
*/
|
|
327
327
|
private applyTransformations;
|
|
328
328
|
/**
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
329
|
+
* Applies resize transformation using Sharp.
|
|
330
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
331
|
+
* @param options Resize transformation options.
|
|
332
|
+
* @returns Modified Sharp instance with resize applied.
|
|
333
|
+
* @private
|
|
334
|
+
*/
|
|
335
335
|
private applyResize;
|
|
336
336
|
/**
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
337
|
+
* Applies crop transformation using Sharp.
|
|
338
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
339
|
+
* @param options Crop transformation options.
|
|
340
|
+
* @returns Modified Sharp instance with crop applied.
|
|
341
|
+
* @private
|
|
342
|
+
*/
|
|
343
343
|
private applyCrop;
|
|
344
344
|
/**
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
345
|
+
* Applies rotate transformation using Sharp.
|
|
346
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
347
|
+
* @param options Rotate transformation options.
|
|
348
|
+
* @returns Modified Sharp instance with rotation applied.
|
|
349
|
+
* @private
|
|
350
|
+
*/
|
|
351
351
|
private applyRotate;
|
|
352
352
|
/**
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
353
|
+
* Applies sharpen transformation using Sharp.
|
|
354
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
355
|
+
* @param options Sharpen transformation options.
|
|
356
|
+
* @returns Modified Sharp instance with sharpening applied.
|
|
357
|
+
* @private
|
|
358
|
+
*/
|
|
359
359
|
private applySharpen;
|
|
360
360
|
/**
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
361
|
+
* Applies blur transformation using Sharp.
|
|
362
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
363
|
+
* @param options Blur transformation options.
|
|
364
|
+
* @returns Modified Sharp instance with blurring applied.
|
|
365
|
+
* @private
|
|
366
|
+
*/
|
|
367
367
|
private applyBlur;
|
|
368
368
|
/**
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
369
|
+
* Applies median filter using Sharp.
|
|
370
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
371
|
+
* @param options Median transformation options.
|
|
372
|
+
* @returns Modified Sharp instance with median filter applied.
|
|
373
|
+
* @private
|
|
374
|
+
*/
|
|
375
375
|
private applyMedian;
|
|
376
376
|
/**
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
377
|
+
* Applies CLAHE (Contrast Limited Adaptive Histogram Equalization) using Sharp.
|
|
378
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
379
|
+
* @param options CLAHE transformation options.
|
|
380
|
+
* @returns Modified Sharp instance with CLAHE applied.
|
|
381
|
+
* @private
|
|
382
|
+
*/
|
|
383
383
|
private applyCLAHE;
|
|
384
384
|
/**
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
385
|
+
* Applies convolution using Sharp.
|
|
386
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
387
|
+
* @param options Convolution transformation options.
|
|
388
|
+
* @returns Modified Sharp instance with convolution applied.
|
|
389
|
+
* @private
|
|
390
|
+
*/
|
|
391
391
|
private applyConvolve;
|
|
392
392
|
/**
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
393
|
+
* Applies threshold using Sharp.
|
|
394
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
395
|
+
* @param options Threshold transformation options.
|
|
396
|
+
* @returns Modified Sharp instance with thresholding applied.
|
|
397
|
+
* @private
|
|
398
|
+
*/
|
|
399
399
|
private applyThreshold;
|
|
400
400
|
/**
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
401
|
+
* Applies boolean operation using Sharp.
|
|
402
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
403
|
+
* @param options Boolean operation options.
|
|
404
|
+
* @returns Modified Sharp instance with boolean operation applied.
|
|
405
|
+
* @private
|
|
406
|
+
*/
|
|
407
407
|
private applyBoolean;
|
|
408
408
|
/**
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
409
|
+
* Applies linear transformation using Sharp.
|
|
410
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
411
|
+
* @param options Linear transformation options.
|
|
412
|
+
* @returns Modified Sharp instance with linear transformation applied.
|
|
413
|
+
* @private
|
|
414
|
+
*/
|
|
415
415
|
private applyLinear;
|
|
416
416
|
/**
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
417
|
+
* Applies recombine transformation using Sharp.
|
|
418
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
419
|
+
* @param options Recombine transformation options.
|
|
420
|
+
* @returns Modified Sharp instance with recombine applied.
|
|
421
|
+
* @private
|
|
422
|
+
*/
|
|
423
423
|
private applyRecombine;
|
|
424
424
|
/**
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
425
|
+
* Applies modulate transformation using Sharp.
|
|
426
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
427
|
+
* @param options Modulate transformation options.
|
|
428
|
+
* @returns Modified Sharp instance with modulation applied.
|
|
429
|
+
* @private
|
|
430
|
+
*/
|
|
431
431
|
private applyModulate;
|
|
432
432
|
/**
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
433
|
+
* Applies tint using Sharp.
|
|
434
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
435
|
+
* @param options Tint transformation options.
|
|
436
|
+
* @returns Modified Sharp instance with tinting applied.
|
|
437
|
+
* @private
|
|
438
|
+
*/
|
|
439
439
|
private applyTint;
|
|
440
440
|
/**
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
441
|
+
* Applies greyscale conversion using Sharp.
|
|
442
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
443
|
+
* @param options Greyscale transformation options.
|
|
444
|
+
* @returns Modified Sharp instance converted to greyscale.
|
|
445
|
+
* @private
|
|
446
|
+
*/
|
|
447
447
|
private applyGreyscale;
|
|
448
448
|
/**
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
449
|
+
* Applies colourspace conversion using Sharp.
|
|
450
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
451
|
+
* @param options Colourspace transformation options.
|
|
452
|
+
* @returns Modified Sharp instance with colourspace conversion.
|
|
453
|
+
* @private
|
|
454
|
+
*/
|
|
455
455
|
private applyColourspace;
|
|
456
456
|
/**
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
457
|
+
* Extracts channel using Sharp.
|
|
458
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
459
|
+
* @param options Channel extraction options including channel index.
|
|
460
|
+
* @returns Modified Sharp instance with channel extracted.
|
|
461
|
+
* @private
|
|
462
|
+
*/
|
|
463
463
|
private applyExtractChannel;
|
|
464
464
|
/**
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
465
|
+
* Joins channels using Sharp.
|
|
466
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
467
|
+
* @param options Channel joining options including image sources.
|
|
468
|
+
* @returns Modified Sharp instance with channels joined.
|
|
469
|
+
* @private
|
|
470
|
+
*/
|
|
471
471
|
private applyJoinChannel;
|
|
472
472
|
/**
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
473
|
+
* Applies band boolean operation using Sharp.
|
|
474
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
475
|
+
* @param options Band boolean options including operator.
|
|
476
|
+
* @returns Modified Sharp instance with band boolean operation applied.
|
|
477
|
+
* @private
|
|
478
|
+
*/
|
|
479
479
|
private applyBandbool;
|
|
480
480
|
/**
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
481
|
+
* Applies affine transformation using Sharp.
|
|
482
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
483
|
+
* @param options Affine transformation options including matrix.
|
|
484
|
+
* @returns Modified Sharp instance with affine transformation applied.
|
|
485
|
+
* @private
|
|
486
|
+
*/
|
|
487
487
|
private applyAffine;
|
|
488
488
|
/**
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
489
|
+
* Applies dilation using Sharp.
|
|
490
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
491
|
+
* @param options Dilate options including kernel size.
|
|
492
|
+
* @returns Modified Sharp instance with dilation applied.
|
|
493
|
+
* @private
|
|
494
|
+
*/
|
|
495
495
|
private applyDilate;
|
|
496
496
|
/**
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
497
|
+
* Applies erosion using Sharp.
|
|
498
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
499
|
+
* @param options Erode options including kernel size.
|
|
500
|
+
* @returns Modified Sharp instance with erosion applied.
|
|
501
|
+
* @private
|
|
502
|
+
*/
|
|
503
503
|
private applyErode;
|
|
504
504
|
/**
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
505
|
+
* Applies pipeline colourspace using Sharp.
|
|
506
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
507
|
+
* @param options Pipeline colourspace options including target colourspace.
|
|
508
|
+
* @returns Modified Sharp instance with pipeline colourspace applied.
|
|
509
|
+
* @private
|
|
510
|
+
*/
|
|
511
511
|
private applyPipelineColourspace;
|
|
512
512
|
/**
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
513
|
+
* Applies to colourspace conversion using Sharp.
|
|
514
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
515
|
+
* @param options To colourspace options including target colourspace.
|
|
516
|
+
* @returns Modified Sharp instance with colourspace conversion applied.
|
|
517
|
+
* @private
|
|
518
|
+
*/
|
|
519
519
|
private applyToColourspace;
|
|
520
520
|
/**
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
521
|
+
* Applies remove alpha using Sharp.
|
|
522
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
523
|
+
* @param options Remove alpha transformation options.
|
|
524
|
+
* @returns Modified Sharp instance with alpha channel removed.
|
|
525
|
+
* @private
|
|
526
|
+
*/
|
|
527
527
|
private applyRemoveAlpha;
|
|
528
528
|
/**
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
529
|
+
* Applies ensure alpha using Sharp.
|
|
530
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
531
|
+
* @param options Ensure alpha transformation options.
|
|
532
|
+
* @returns Modified Sharp instance with alpha channel ensured.
|
|
533
|
+
* @private
|
|
534
|
+
*/
|
|
535
535
|
private applyEnsureAlpha;
|
|
536
536
|
/**
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
537
|
+
* Applies format and quality transformation using Sharp.
|
|
538
|
+
* @param sharpInstance The Sharp instance to modify.
|
|
539
|
+
* @param options Format and quality transformation options.
|
|
540
|
+
* @returns Modified Sharp instance with format and quality settings applied.
|
|
541
|
+
* @private
|
|
542
|
+
*/
|
|
543
543
|
private applyFormatAndQuality;
|
|
544
544
|
/**
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
545
|
+
* Gets format-specific options for Sharp.
|
|
546
|
+
* @param options Transform options containing format-specific settings.
|
|
547
|
+
* @returns Record of format options for Sharp processing.
|
|
548
|
+
* @private
|
|
549
|
+
*/
|
|
550
550
|
private getFormatOptions;
|
|
551
551
|
/**
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
552
|
+
* Validates that the file is a supported image.
|
|
553
|
+
* @param file The file to validate.
|
|
554
|
+
* @returns Promise that resolves if validation passes.
|
|
555
|
+
* @throws Error if file size exceeds limits, wrong content type, unsupported format, or invalid image.
|
|
556
|
+
* @private
|
|
557
|
+
*/
|
|
558
558
|
private validateImage;
|
|
559
559
|
/**
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
560
|
+
* Creates transformation result with metadata.
|
|
561
|
+
* @param buffer The transformed image buffer.
|
|
562
|
+
* @param originalFile The original file information.
|
|
563
|
+
* @returns Image transformation result with metadata.
|
|
564
|
+
* @private
|
|
565
|
+
*/
|
|
566
566
|
private createTransformResult;
|
|
567
567
|
/**
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
568
|
+
* Generates cache key for transformation.
|
|
569
|
+
* @param fileId The file identifier.
|
|
570
|
+
* @param steps Array of transformation steps.
|
|
571
|
+
* @returns Unique cache key string.
|
|
572
|
+
* @private
|
|
573
|
+
*/
|
|
574
574
|
private generateCacheKey;
|
|
575
575
|
}
|
|
576
576
|
export { ImageTransformer as default };
|