{"version":3,"file":"2521-224707241ff86beb6954.js","mappings":"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","sources":["webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryQualityAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryColorSpaceFromICCAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryColorSpaceAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryDPRAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/progressive.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryFormatAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/region/NamedRegion.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/region/RectangleRegion.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/blur/Blur.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/leveled/Accelerate.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/EffectActions/SimpleEffectAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/Cartoonify.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/Outline.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/Vectorize.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/SimulateColorBlind.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/AssistColorBlind.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/GradientFade.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/leveled/FadeOut.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/Shadow.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/StyleTransfer.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/pixelate/Pixelate.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/leveled/FadeIn.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/RemoveBackgroundAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/Theme.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/BackgroundRemoval.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/DropShadow.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/GenerativeRemove.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/GenerativeReplace.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect/GenerativeRecolor.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/effect.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/aspectRatio/AspectRatioQualifierValue.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeSimpleAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/models/createGravityModel.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/autoFocus.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/qualifiers/compass/CompassQualifier.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/models/createGravityFromModel.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeAdvancedAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/background/shared/base/BackgroundQualifier.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ThumbnailAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeCropAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeFillAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeLimitFillAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/resize.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/models/actionToJson.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/models/ActionModel.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/Action.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/dataStructureUtils.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/objectFlip.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/internalConstants.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/models/qualifierToJson.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/models/QualifierModel.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/qualifier/Qualifier.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/qualifier/QualifierValue.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/prepareColor.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/toFloatAsString.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/unsupportedError.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/flag.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/flag/FlagQualifier.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/focusOn.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/format.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/format/FormatQualifier.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/xyCenterGravity/XYCenterGravity.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/GravityQualifier.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/autoGravity/AutoGravity.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/compassGravity/CompassGravity.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/focusOnGravity/FocusOnGravity.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/qualifiers/focusOn/FocusOnValue.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/quality.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/actions/background/actions/BackgroundColor.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/RawAction.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/transformation/Transformation.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/internal/models/IErrorObject.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/transformation/ImageTransformation.js","webpack://freeths/./node_modules/@cloudinary/url-gen/config/BaseConfig.js","webpack://freeths/./node_modules/@cloudinary/url-gen/internal/internalConstants.js","webpack://freeths/./node_modules/@cloudinary/url-gen/config/URLConfig.js","webpack://freeths/./node_modules/@cloudinary/url-gen/sdkAnalytics/stringPad.js","webpack://freeths/./node_modules/@cloudinary/url-gen/sdkAnalytics/base64Map.js","webpack://freeths/./node_modules/@cloudinary/url-gen/sdkAnalytics/encodeVersion.js","webpack://freeths/./node_modules/@cloudinary/url-gen/sdkAnalytics/reverseVersion.js","webpack://freeths/./node_modules/@cloudinary/url-gen/sdkAnalytics/getSDKAnalyticsSignature.js","webpack://freeths/./node_modules/@cloudinary/url-gen/assets/CloudinaryFile.js","webpack://freeths/./node_modules/@cloudinary/url-gen/internal/url/cloudinaryURL.js","webpack://freeths/./node_modules/@cloudinary/url-gen/internal/url/urlUtils/publicIDContainsVersion.js","webpack://freeths/./node_modules/@cloudinary/url-gen/internal/url/urlUtils/isUrl.js","webpack://freeths/./node_modules/@cloudinary/url-gen/internal/url/urlUtils/isFileName.js","webpack://freeths/./node_modules/@cloudinary/url-gen/sdkAnalytics/getAnalyticsOptions.js","webpack://freeths/./node_modules/@cloudinary/url-gen/internal/utils/packageVersion.js","webpack://freeths/./node_modules/@cloudinary/url-gen/assets/CloudinaryTransformable.js","webpack://freeths/./node_modules/@cloudinary/url-gen/assets/CloudinaryImage.js","webpack://freeths/./node_modules/@cloudinary/transformation-builder-sdk/transformation/VideoTransformation.js","webpack://freeths/./node_modules/@cloudinary/url-gen/assets/CloudinaryVideo.js","webpack://freeths/./node_modules/@cloudinary/url-gen/instance/Cloudinary.js"],"sourcesContent":["import { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { DeliveryAction } from \"./DeliveryAction.js\";\nimport { CHROMA_VALUE_TO_CHROMA_MODEL_ENUM, CHROMA_MODEL_ENUM_TO_CHROMA_VALUE, ACTION_TYPE_TO_QUALITY_MODE_MAP } from \"../../internal/internalConstants.js\";\n/**\n * @description Controls the quality of the delivered image or video.\n * @memberOf Actions.Delivery\n * @extends {Actions.Delivery.DeliveryAction}\n * @see Visit {@link Actions.Delivery|Delivery} for an example\n */\nclass DeliveryQualityAction extends DeliveryAction {\n /**\n * @param {Qualifiers.Quality} qualityValue a Quality value\n */\n constructor(qualityValue) {\n super('q', qualityValue.toString(), 'level');\n }\n /**\n * Selet the Chroma sub sampling\n * Learn more: {@link https://cloudinary.com/documentation/image_optimization#toggle_chroma_subsampling|Toggling chroma subsampling}\n * @param {420 | 444 | number} type The chroma sub sampling type\n */\n chromaSubSampling(type) {\n this._actionModel.chromaSubSampling = CHROMA_VALUE_TO_CHROMA_MODEL_ENUM[type];\n const qualityWithSubSampling = new QualifierValue([this._actionModel.level, type]);\n qualityWithSubSampling.setDelimiter(':');\n // We either have chroma or quantization, but not both\n return this.addQualifier(new Qualifier('q', qualityWithSubSampling));\n }\n /**\n * Controls the final quality by setting a maximum quantization percentage\n * @param {number} val\n */\n quantization(val) {\n this._actionModel.quantization = val;\n const qualityWithQuantization = new QualifierValue([this._actionModel.level, `qmax_${val}`]).setDelimiter(':');\n // We either have chroma or quantization, but not both\n return this.addQualifier(new Qualifier('q', qualityWithQuantization));\n }\n static fromJson(actionModel) {\n const { level, chromaSubSampling, quantization } = actionModel;\n const levelType = ACTION_TYPE_TO_QUALITY_MODE_MAP[level] || level;\n const result = new this(levelType);\n if (chromaSubSampling) {\n //Turn strings like 'CHROMA_420' to 420\n const chromaValue = CHROMA_MODEL_ENUM_TO_CHROMA_VALUE[chromaSubSampling.toUpperCase()];\n chromaValue && result.chromaSubSampling(+chromaValue);\n }\n quantization && result.quantization(quantization);\n return result;\n }\n}\nexport { DeliveryQualityAction };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description Specifies the ICC profile to use for the color space.\n * @memberOf Actions.Delivery\n * @extends SDK.Action\n * @see Visit {@link Actions.Delivery|Delivery} for an example\n */\nclass DeliveryColorSpaceFromICCAction extends Action {\n /**\n * @param {string} publicId\n */\n constructor(publicId) {\n super();\n this._actionModel = {};\n this._actionModel.actionType = 'colorSpaceFromICC';\n this._actionModel.publicId = publicId;\n const qualifierValue = new QualifierValue(['icc', publicId]).setDelimiter(':');\n this.addQualifier(new Qualifier('cs', qualifierValue));\n }\n static fromJson(actionModel) {\n const { publicId } = actionModel;\n return new this(publicId);\n }\n}\nexport { DeliveryColorSpaceFromICCAction };\n","import { Action } from \"../../internal/Action.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { ColorSpace } from \"../../qualifiers/colorSpace.js\";\nimport { COLOR_SPACE_MODE_TO_COLOR_SPACE_MODEL_MODE_MAP, COLOR_SPACE_MODEL_MODE_TO_COLOR_SPACE_MODE_MAP } from \"../../internal/internalConstants.js\";\n/**\n * @description Specifies the color space to use.\n * @memberOf Actions.Delivery\n * @extends SDK.Action\n * @see Visit {@link Actions.Delivery|Delivery} for an example\n */\nclass DeliveryColorSpaceAction extends Action {\n /**\n * Create a new DeliveryColorSpaceAction\n * @param mode\n */\n constructor(mode) {\n super();\n this._actionModel = {};\n this._actionModel = {\n actionType: 'colorSpace',\n mode: (COLOR_SPACE_MODE_TO_COLOR_SPACE_MODEL_MODE_MAP[mode] || mode)\n };\n this.addQualifier(new Qualifier('cs', ColorSpace[mode] ? ColorSpace[mode]() : mode));\n }\n static fromJson(actionModel) {\n const { mode } = actionModel;\n const colorSpaceMode = COLOR_SPACE_MODEL_MODE_TO_COLOR_SPACE_MODE_MAP[mode] || mode;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n return new this(colorSpaceMode);\n }\n}\nexport { DeliveryColorSpaceAction };\n","import { Action } from \"../../internal/Action.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { toFloatAsString } from \"../../internal/utils/toFloatAsString.js\";\n/**\n * @description Specifies the dpr.\n * @memberOf Actions.Delivery\n * @extends SDK.Action\n * @see Visit {@link Actions.Delivery|Delivery} for an example\n */\nclass DeliveryDPRAction extends Action {\n /**\n * Create a new DeliveryDPRAction\n * @param dprValue\n */\n constructor(dprValue) {\n super();\n this._actionModel = { actionType: 'dpr' };\n // toFloatAsString is used to ensure 1 turns into 1.0\n const dprAsFloat = toFloatAsString(dprValue);\n this._actionModel.dpr = dprAsFloat;\n this.addQualifier(new Qualifier('dpr', dprAsFloat));\n }\n static fromJson(actionModel) {\n const { dpr } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n return new this(dpr);\n }\n}\nexport { DeliveryDPRAction };\n","/**\n * @description Defines transformations for delivering your assets without changing the visual or audio experience for the end user.\n * @memberOf Actions\n * @namespace Delivery\n * @example\n * See the examples under every method\n */\nimport { DeliveryFormatAction } from \"./delivery/DeliveryFormatAction.js\";\nimport { DeliveryQualityAction } from \"./delivery/DeliveryQualityAction.js\";\nimport { DeliveryColorSpaceFromICCAction } from \"./delivery/DeliveryColorSpaceFromICCAction.js\";\nimport { DeliveryAction } from \"./delivery/DeliveryAction.js\";\nimport { DeliveryColorSpaceAction } from \"./delivery/DeliveryColorSpaceAction.js\";\nimport { DeliveryDPRAction } from \"./delivery/DeliveryDPRAction.js\";\n/**\n * @summary action\n * @description Defines the format of the delivered asset.\n *\n * Learn more:\n * {@link https://cloudinary.com/documentation/image_transformations#image_format_support|Image formats}\n * {@link https://cloudinary.com/documentation/video_manipulation_and_delivery#transcoding_video_to_other_formats|Video formats}\n *\n * @memberOf Actions.Delivery\n * @param {string} format The file format. For a list of supported format types see {@link Qualifiers.Format| format types} for\n * possible values\n * @return {Actions.Delivery.DeliveryFormat}\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {format} from \"@cloudinary/url-gen/actions/delivery\";\n *\n * const yourCldInstance = new Cloudinary({cloud:{cloudName:'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.delivery(\n * format('jpg'),\n * );\n *\n */\nfunction format(format) {\n return new DeliveryFormatAction('f', format);\n}\n/**\n * @summary action\n * @description Deliver the image in the specified device pixel ratio.\n * @memberOf Actions.Delivery\n * @param {string} dpr The DPR (Device Pixel Ratio). Any positive float value.\n * @return {Actions.Delivery.DeliveryAction}\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {dpr} from \"@cloudinary/url-gen/actions/delivery\";\n *\n * const yourCldInstance = new Cloudinary({cloud:{cloudName:'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.delivery(\n * dpr('2.0'),\n * );\n */\nfunction dpr(dpr) {\n return new DeliveryDPRAction(dpr);\n}\n/**\n * @summary action\n * @description Controls the quality of the delivered image or video.\n *\n * Learn more: {@link https://cloudinary.com/documentation/image_optimization#how_to_optimize_image_quality|Image quality}\n * {@link https://cloudinary.com/documentation/video_optimization#how_to_optimize_video_quality|Video quality}\n * @memberOf Actions.Delivery\n * @param {QualityTypes | string | number | Qualifiers.Quality} qualityType For a list of supported quality types see\n * {@link Qualifiers.Quality| quality types} for\n * possible values.\n * @return {Actions.Delivery.DeliveryQualityAction}\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {quality} from \"@cloudinary/url-gen/actions/delivery\";\n * import {quality} from \"@cloudinary/url-gen/qualifiers/quantity\";\n *\n * const yourCldInstance = new Cloudinary({cloud:{cloudName:'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.delivery(\n * quality('auto'),\n * );\n */\nfunction quality(qualityType) {\n return new DeliveryQualityAction(qualityType);\n}\n/**\n * @summary action\n * @description Controls the density to use when delivering an image or when converting a vector file such as a PDF or EPS\n * document to a web image delivery format.\n * @memberOf Actions.Delivery\n * @param {number | string} value The density in dpi.\n * @return {Actions.Delivery.DeliveryAction}\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {density} from \"@cloudinary/url-gen/actions/delivery\";\n *\n * const yourCldInstance = new Cloudinary({cloud:{cloudName:'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.delivery(\n * density(150),\n * );\n */\nfunction density(value) {\n return new DeliveryAction('dn', value, 'density');\n}\n/**\n * @summary action\n * @description Default images can be used in the case that a requested image does not exist.\n * @memberOf Actions.Delivery\n * @param {string} publicIdWithExtension Default image public ID\n * @return {Actions.Delivery.DeliveryAction}\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {defaultImage} from \"@cloudinary/url-gen/actions/delivery\";\n *\n * const yourCldInstance = new Cloudinary({cloud:{cloudName:'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.delivery(\n * defaultImage('sample'),\n * );\n */\nfunction defaultImage(publicIdWithExtension) {\n return new DeliveryAction('d', publicIdWithExtension, 'defaultImage');\n}\n/**\n * @summary action\n * @description Controls the color space used for the delivered image.\n * @memberOf Actions.Delivery\n * @param {string | Qualifiers.ColorSpace} mode The color space.\n * @return {Actions.Delivery.DeliveryAction}\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {colorSpace} from \"@cloudinary/url-gen/actions/delivery\";\n * import {trueColor} from \"@cloudinary/url-gen/qualifiers/colorSpace\";\n *\n * const yourCldInstance = new Cloudinary({cloud:{cloudName:'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.delivery(\n * colorSpace(trueColor()),\n * );\n */\nfunction colorSpace(mode) {\n return new DeliveryColorSpaceAction(mode);\n}\n/**\n * @summary action\n * @description Specifies the ICC profile to use for the color space.\n * The ICC file must be uploaded to your account as a raw, authenticated file.\n * @memberOf Actions.Delivery\n * @param {string} publicId The public ID (including the file extension) of the ICC profile that defines the\n * color space.\n * @return {Actions.Delivery.DeliveryColorSpaceFromICC}\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {colorSpaceFromICC} from \"@cloudinary/url-gen/actions/delivery\";\n * import {trueColor} from \"@cloudinary/url-gen/qualifiers/colorSpace\";\n *\n * const yourCldInstance = new Cloudinary({cloud:{cloudName:'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.delivery(\n * colorSpaceFromICC('sample.icc'),\n * );\n */\nfunction colorSpaceFromICC(publicId) {\n return new DeliveryColorSpaceFromICCAction(publicId);\n}\nconst Delivery = {\n format,\n dpr,\n density,\n defaultImage,\n colorSpace,\n colorSpaceFromICC,\n quality\n};\nexport { Delivery, format, dpr, quality, density, defaultImage, colorSpace, colorSpaceFromICC };\n","import { Action } from \"../../internal/Action.js\";\nimport { FormatQualifier } from \"../../qualifiers/format/FormatQualifier.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { DELIVERY_MODE_TO_ACTION_TYPE_MAP } from \"../../internal/internalConstants.js\";\n/**\n * @description Qualifies the delivery of an asset.\n * @memberOf Actions.Delivery\n * @extends SDK.Action\n */\nclass DeliveryAction extends Action {\n /**\n * @param {string} deliveryKey A generic Delivery Action Key (such as q, f, dn, etc.)\n * @param {string} deliveryType A Format Qualifiers for the action, such as Quality.auto()\n * @param {string} modelProperty internal model property of the action, for example quality uses `level` while dpr uses `density`\n * @see Visit {@link Actions.Delivery|Delivery} for an example\n */\n constructor(deliveryKey, deliveryType, modelProperty) {\n super();\n this._actionModel = {};\n let deliveryTypeValue;\n if (deliveryType instanceof FormatQualifier) {\n deliveryTypeValue = deliveryType.getValue();\n }\n else {\n deliveryTypeValue = deliveryType;\n }\n this._actionModel.actionType = DELIVERY_MODE_TO_ACTION_TYPE_MAP[deliveryKey];\n this._actionModel[modelProperty] = deliveryTypeValue;\n this.addQualifier(new Qualifier(deliveryKey, deliveryType));\n }\n}\nexport { DeliveryAction };\n","/**\n * @description Contains functions to select the mode when using a progressive format.\n * Learn more: {@link https://cloudinary.com/documentation/transformation_reference#fl_progressive|Progressive modes}\n * @memberOf Qualifiers\n * @namespace Progressive\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {format} from \"@cloudinary/url-gen/actions/delivery\";\n * import {jpg} from \"@cloudinary/url-gen/qualifiers/format\";\n * import {steep} from \"@cloudinary/url-gen/qualifiers/progressive\";\n *\n * const yourCldInstance = new Cloudinary({cloud: {cloudName: 'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.delivery(format(jpg()).progressive(steep()))\n */\nimport { FlagQualifier } from \"./flag/FlagQualifier.js\";\nclass ProgressiveQualifier extends FlagQualifier {\n constructor(mode) {\n super('progressive', mode);\n }\n}\n/**\n * @memberOf Qualifiers.Progressive\n */\nfunction none() {\n return new ProgressiveQualifier('none');\n}\n/**\n * @memberOf Qualifiers.Progressive\n */\nfunction semi() {\n return new ProgressiveQualifier('semi');\n}\n/**\n * @memberOf Qualifiers.Progressive\n */\nfunction steep() {\n return new ProgressiveQualifier('steep');\n}\n/**\n * @memberOf Qualifiers.Progressive\n */\nfunction progressive() {\n return new ProgressiveQualifier();\n}\nconst Progressive = {\n semi,\n none,\n steep,\n progressive,\n ProgressiveQualifier\n};\nexport { Progressive, semi, none, steep, progressive, ProgressiveQualifier };\n","import { lossy, preserveTransparency, progressive } from \"../../qualifiers/flag.js\";\nimport { DeliveryAction } from \"./DeliveryAction.js\";\nimport { ProgressiveQualifier } from \"../../qualifiers/progressive.js\";\n/**\n * @memberOf Actions.Delivery\n * @extends {Actions.Delivery.DeliveryAction}\n * @see Visit {@link Actions.Delivery|Delivery} for an example\n */\nclass DeliveryFormatAction extends DeliveryAction {\n constructor(deliveryKey, deliveryType) {\n super(deliveryKey, deliveryType, 'formatType');\n }\n /**\n * @description Uses lossy compression when delivering animated GIF files.\n * @return {this}\n */\n lossy() {\n this._actionModel.lossy = true;\n this.addFlag(lossy());\n return this;\n }\n /**\n * @description Uses progressive compression when delivering JPG file format.\n * @return {this}\n */\n progressive(mode) {\n if (mode instanceof ProgressiveQualifier) {\n this._actionModel.progressive = { mode: mode.getFlagValue() };\n this.addFlag(mode);\n }\n else {\n this._actionModel.progressive = { mode: mode };\n this.addFlag(progressive(mode));\n }\n return this;\n }\n /**\n * @description Ensures that images with a transparency channel are delivered in PNG format.\n */\n preserveTransparency() {\n this._actionModel.preserveTransparency = true;\n this.addFlag(preserveTransparency());\n return this;\n }\n static fromJson(actionModel) {\n const { formatType, lossy, progressive, preserveTransparency } = actionModel;\n let result;\n if (formatType) {\n result = new this('f', formatType);\n }\n else {\n result = new this('f');\n }\n if (progressive) {\n if (progressive.mode) {\n result.progressive(progressive.mode);\n }\n else {\n result.progressive();\n }\n }\n lossy && result.lossy();\n preserveTransparency && result.preserveTransparency();\n return result;\n }\n}\nexport { DeliveryFormatAction };\n","import { Action } from \"../../internal/Action.js\";\n/**\n * @memberOf Qualifiers.Region\n */\nclass NamedRegion extends Action {\n constructor(type) {\n super();\n this.regionType = type;\n }\n}\nexport { NamedRegion };\n","import { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { Action } from \"../../internal/Action.js\";\n/**\n * @memberOf Qualifiers.Region\n */\nclass RectangleRegion extends Action {\n /**\n * Rectangle defines a region where action will be applied\n *\n * @param {number} x The x position in pixels\n * @param {number} y The y position in pixels\n * @param {number} width The width in pixels\n * @param {number} height The height in pixels\n */\n constructor(x, y, width, height) {\n super();\n this.addQualifier(new Qualifier(\"x\", x));\n this.addQualifier(new Qualifier(\"y\", y));\n this.addQualifier(new Qualifier(\"w\", width));\n this.addQualifier(new Qualifier(\"h\", height));\n this._actionModel = {\n x,\n y,\n width,\n height,\n };\n }\n toString() {\n const { x, y, width, height } = this._actionModel;\n return `(x_${x};y_${y};w_${width};h_${height})`;\n }\n}\nexport { RectangleRegion };\n","import { Qualifier } from \"../../../internal/qualifier/Qualifier.js\";\nimport { Action } from \"../../../internal/Action.js\";\nimport { custom, faces } from \"../../../qualifiers/region.js\";\n/**\n * @description The Action class of the blur Builder.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass BlurAction extends Action {\n constructor(strength) {\n super();\n this._actionModel = {};\n this._strength = strength;\n this._actionModel.actionType = 'blur';\n this._actionModel.strength = strength;\n }\n /**\n * @description Specifies the region to blur.\n * @param {NamedRegion} blurRegion\n */\n region(blurRegion) {\n this._actionModel.region = { RegionType: blurRegion.regionType };\n this._region = blurRegion;\n return this;\n }\n /**\n * @description Sets the strength of the blur effect.\n * @param {number | string} strength\n */\n strength(strength) {\n this._strength = strength;\n this._actionModel.strength = strength;\n return this;\n }\n prepareQualifiers() {\n /*\n * Blur with region is a unique object in this codebase.\n * On top of Blur being an Action with Qualifiers,\n * it also accepts a Qualifier called Region.\n *\n * This Qualifier is in itself composite of qualifiers (such as height, or width).\n * The existence of Region changes the output of Blur in non traditional ways\n * which forced this relatively ad-hoc implementation.\n *\n * Aside from all of that, all of the Qualifiers in the component should be alphabetized\n * This happens naturally in the Action class,\n * however since we're dealing with two levels of qualifiers (Blur and Region),\n * these need to be merged.\n *\n * This function will merge the Region qualifiers with Blur\n * and add all needed implicit qualifiers (like g_ocr_text).\n * We're not using the full Gravity Qualifier here to prevent the code import for such a simplistic case\n */\n const str = this._strength ? `:${this._strength}` : '';\n if ('_region' in this) {\n const qualifiers = this._region.qualifiers;\n // Copy qualifiers from the region \"action\" to the blur action\n qualifiers.forEach((q) => this.addQualifier(q));\n if (this._region.regionType === 'named') {\n this.addQualifier(new Qualifier('e', `blur_region${str}`));\n }\n if (this._region.regionType === 'ocr_text') {\n this.addQualifier(new Qualifier('e', `blur_region${str}`));\n this.addQualifier(new Qualifier('g', `ocr_text`));\n }\n if (this._region.regionType === 'faces') {\n this.addQualifier(new Qualifier('e', `blur_faces${str}`));\n }\n }\n else {\n this.addQualifier(new Qualifier('e', `blur${str}`));\n }\n }\n static fromJson(actionModel) {\n const { actionType, strength, region } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this(strength);\n strength && result.strength(strength);\n if (region && region.RegionType === 'faces') {\n result.region(faces());\n }\n if (region && region.RegionType === 'custom') {\n result.region(custom());\n }\n return result;\n }\n}\nexport { BlurAction };\n","import { Action } from \"../../../internal/Action.js\";\nimport { Qualifier } from \"../../../internal/qualifier/Qualifier.js\";\nimport { QualifierValue } from \"../../../internal/qualifier/QualifierValue.js\";\n/**\n * @description Changes the speed of the video playback using the rate() method\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass AccelerationEffectAction extends Action {\n constructor(rate) {\n super();\n this._actionModel = { actionType: 'accelerate' };\n rate && this.rate(rate);\n }\n rate(rate) {\n this._actionModel.rate = rate;\n this._rate = rate;\n return this;\n }\n prepareQualifiers() {\n const qualifierValue = new QualifierValue(['accelerate', this._rate]).setDelimiter(':');\n this.addQualifier(new Qualifier('e', qualifierValue));\n return this;\n }\n static fromJson(actionModel) {\n const { rate } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n // @ts-ignore\n const result = new this();\n rate && result.rate(rate);\n return result;\n }\n}\nexport { AccelerationEffectAction };\n","import { Action } from \"../../../internal/Action.js\";\nimport { QualifierValue } from \"../../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../../internal/qualifier/Qualifier.js\";\nimport { ACTION_TYPE_TO_EFFECT_MODE_MAP, EFFECT_MODE_TO_ACTION_TYPE_MAP } from \"../../../internal/internalConstants.js\";\n/**\n * @description A class that defines a simple effect of the type e_{effectName}\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass SimpleEffectAction extends Action {\n constructor(effectType, level) {\n super();\n this._actionModel = {};\n this._actionModel.actionType = EFFECT_MODE_TO_ACTION_TYPE_MAP[effectType] || effectType;\n const qualifierEffect = this.createEffectQualifier(effectType, level);\n this.addQualifier(qualifierEffect);\n }\n createEffectQualifier(effectType, level) {\n let qualifierValue;\n if (level) {\n qualifierValue = new QualifierValue([effectType, `${level}`]).setDelimiter(':');\n }\n else {\n qualifierValue = new QualifierValue(effectType);\n }\n return new Qualifier('e', qualifierValue);\n }\n static fromJson(actionModel) {\n const { actionType, level, strength } = actionModel;\n const effectType = ACTION_TYPE_TO_EFFECT_MODE_MAP[actionType] || actionType;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n // @ts-ignore\n const result = new this(effectType, level ? level : strength);\n return result;\n }\n}\nexport { SimpleEffectAction };\n","import { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Action } from \"../../internal/Action.js\";\n/**\n * @description Applies a cartoon effect to an image.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass CartoonifyEffect extends Action {\n constructor(effectName, strength) {\n // We don't pass level in the constructor, we'll build it in the prepareParam\n super();\n this._actionModel = {};\n this.cartoonifyStrength = strength;\n this.effectName = effectName;\n this._actionModel.actionType = effectName;\n }\n /**\n * @description Sets the thickness of the lines.\n * @param {number} lineStrength The thickness of the lines. (Range: 0 to 100, Server default: 50)\n * @return {this}\n */\n lineStrength(lineStrength) {\n this.cartoonifyStrength = lineStrength;\n this._actionModel.lineStrength = lineStrength;\n return this;\n }\n /**\n * @description Achieves a black and white cartoon effect.\n * @return {this}\n */\n blackwhite() {\n this._actionModel.blackAndWhite = true;\n this.colorReduction = 'bw';\n return this;\n }\n /**\n * @description\n * Sets the decrease in the number of colors and corresponding saturation boost of the remaining colors.
\n * Higher reduction values result in a less realistic look.\n * @param {number } level The decrease in the number of colors and corresponding saturation boost of the remaining colors. (Range: 0 to 100, Server default: automatically adjusts according to the line_strength value). Set to 'bw' for a black and white cartoon effect.\n * @return {this}\n */\n colorReductionLevel(level) {\n this._actionModel.colorReductionLevel = level;\n this.colorReduction = level;\n return this;\n }\n prepareQualifiers() {\n this.addQualifier(new Qualifier('e', new QualifierValue([this.effectName, this.cartoonifyStrength, this.colorReduction])));\n return;\n }\n static fromJson(actionModel) {\n const { actionType, lineStrength, blackAndWhite, colorReductionLevel } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this(actionType, lineStrength);\n blackAndWhite && result.blackwhite();\n colorReductionLevel && result.colorReductionLevel(colorReductionLevel);\n lineStrength && result.lineStrength(lineStrength);\n return result;\n }\n}\nexport { CartoonifyEffect };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { prepareColor } from \"../../internal/utils/prepareColor.js\";\n/**\n * @description Adds an outline to a transparent image. For examples, see the Image Transformations guide.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass EffectOutline extends Action {\n constructor() {\n super();\n this._actionModel = {};\n this._actionModel.actionType = 'outline';\n }\n /**\n * @description\n * How to apply the outline effect which can be one of the following values:\n * inner, inner_fill, outer, fill.\n * @param {OutlineModeType|string} mode The type of outline effect. Use the constants defined in Outline.\n * @return {this}\n */\n mode(mode) {\n this._actionModel.mode = mode;\n this._mode = mode;\n return this;\n }\n /**\n * The thickness of the outline in pixels. (Range: 1 to 100, Server default: 5)\n * @param {number} width\n * @return {this}\n */\n width(width) {\n this._actionModel.width = width;\n this._width = width;\n return this;\n }\n /**\n * @description\n * The level of blur of the outline.\n * Range: 0 to 2000, Server default: 0\n * @param {number | string} lvl\n * @return {this}\n */\n blurLevel(lvl) {\n this._actionModel.blurLevel = lvl;\n this._blurLevel = lvl;\n return this;\n }\n /**\n * @param {string | Qualifiers.Color} color One of the SDK Color values, string, or rgba: '#fff'\n * @return {this}\n */\n color(color) {\n this._actionModel.color = color;\n return this.addQualifier(new Qualifier('co', prepareColor(color)));\n }\n prepareQualifiers() {\n this.addQualifier(new Qualifier('e', new QualifierValue(['outline', this._mode, this._width, this._blurLevel]).setDelimiter(':')));\n }\n static fromJson(actionModel) {\n const { actionType, mode, color, blurLevel, width } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this();\n mode && result.mode(mode);\n color && result.color(color);\n blurLevel && result.blurLevel(blurLevel);\n width && result.width(width);\n return result;\n }\n}\nexport { EffectOutline };\n","import { Action } from \"../../internal/Action.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\n/**\n * @description Vectorizes the image.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass VectorizeEffectAction extends Action {\n constructor() {\n super();\n this._actionModel = {};\n this._actionModel.actionType = 'vectorize';\n }\n /**\n * @description The number of colors. (Range: 2 to 30, Server default: 10)\n * @param {number | string} num\n * @return {this}\n */\n numOfColors(num) {\n this._actionModel.numOfColors = num;\n this._numOfColors = num;\n return this;\n }\n /**\n * @description The level of detail. Specify either a percentage of the original image (Range: 0.0 to 1.0) or an absolute number of pixels (Range: 0 to 1000). (Server default: 300)\n * @param {number | string} num\n * @return {this}\n */\n detailsLevel(num) {\n this._actionModel.detailLevel = num;\n this._detailsLevel = num;\n return this;\n }\n /**\n * @description The size of speckles to suppress. Specify either a percentage of the original image (Range: 0.0 to 1.0) or an absolute number of pixels (Range: 0 to 100, Server default: 2)\n * @param {number | string} num\n * @return {this}\n */\n despeckleLevel(num) {\n this._actionModel.despeckleLevel = num;\n this._despeckleLevel = num;\n return this;\n }\n /**\n * @description The corner threshold. Specify 100 for no smoothing (polygon corners), 0 for completely smooth corners. (Range: 0 to 100, Default: 25)\n * @param {number | string} num\n * @return {this}\n */\n cornersLevel(num) {\n this._actionModel.cornersLevel = num;\n this._cornersLevel = num;\n return this;\n }\n /**\n * @description The optimization value. Specify 100 for least optimization and the largest file. (Range: 0 to 100, Server default: 100).\n * @param {number} num\n * @return {this}\n */\n paths(num) {\n this._actionModel.paths = num;\n this._paths = num;\n return this;\n }\n prepareQualifiers() {\n let str = 'vectorize';\n if (this._numOfColors) {\n str += `:${new QualifierValue(`colors:${this._numOfColors}`).toString()}`;\n }\n if (this._detailsLevel) {\n str += `:${new QualifierValue(`detail:${this._detailsLevel}`).toString()}`;\n }\n if (this._despeckleLevel) {\n str += `:${new QualifierValue(`despeckle:${this._despeckleLevel}`).toString()}`;\n }\n if (this._paths) {\n str += `:${new QualifierValue(`paths:${this._paths}`).toString()}`;\n }\n if (this._cornersLevel) {\n str += `:${new QualifierValue(`corners:${this._cornersLevel}`).toString()}`;\n }\n this.addQualifier(new Qualifier('e', str));\n }\n static fromJson(actionModel) {\n const { actionType, paths, cornersLevel, despeckleLevel, detailLevel, numOfColors } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this();\n paths && result.paths(paths);\n cornersLevel && result.cornersLevel(cornersLevel);\n despeckleLevel && result.despeckleLevel(despeckleLevel);\n detailLevel && result.detailsLevel(detailLevel);\n numOfColors && result.numOfColors(numOfColors);\n return result;\n }\n}\nexport { VectorizeEffectAction };\n","import { Action } from \"../../internal/Action.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description Simulates the way an image would appear to someone with the specified color blind condition\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass SimulateColorBlindEffectAction extends Action {\n constructor() {\n super();\n this._actionModel = {};\n this._actionModel.actionType = 'simulateColorblind';\n this.addQualifier(new Qualifier('e', `simulate_colorblind`));\n }\n setQualifier(val) {\n const strToAppend = `:${val}`;\n if (val) {\n this.addQualifier(new Qualifier('e', `simulate_colorblind${strToAppend}`));\n }\n return this;\n }\n /**\n * @description Sets the color blind condition to simulate.\n * @param {Qualifiers.simulateColorBlindValues | SimulateColorBlindType | string} cond\n * @return {this}\n */\n condition(cond) {\n this._actionModel.condition = cond;\n return this.setQualifier(cond);\n }\n static fromJson(actionModel) {\n const { actionType, condition } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this();\n condition && result.condition(condition);\n return result;\n }\n}\nexport { SimulateColorBlindEffectAction };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description Applies stripes to the image to help people with common color-blind conditions to differentiate between colors that are similar for them.\n * You can replace colors using the xray() method.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass AssistColorBlindEffectAction extends Action {\n constructor() {\n super();\n this._actionModel = {};\n this._actionModel.actionType = 'assistColorblind';\n this.addQualifier(new Qualifier('e', new QualifierValue('assist_colorblind')));\n }\n /**\n * @description Replaces problematic colors with colors that are easier to differentiate.\n * @return {this}\n */\n xray() {\n this._actionModel.type = 'xray';\n return this.addQualifier(new Qualifier('e', new QualifierValue(['assist_colorblind', 'xray']).setDelimiter(':')));\n }\n /**\n * @description Applies stripes of the specified intensity to help people with common color blind conditions to differentiate between colors that are similar for them.\n * @param {number | string} strength The intensity of the stripes. (Range: 1 to 100, Server default: 10)\n * @return {this}\n */\n stripesStrength(strength) {\n this._actionModel.type = 'stripes';\n this._actionModel.stripesStrength = strength;\n return this.addQualifier(new Qualifier('e', new QualifierValue(['assist_colorblind', strength]).setDelimiter(':')));\n }\n static fromJson(actionModel) {\n const { actionType, type, stripesStrength } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this();\n if (type === 'xray') {\n result.xray();\n }\n if (type === 'stripes') {\n stripesStrength && result.stripesStrength(stripesStrength);\n }\n return result;\n }\n}\nexport { AssistColorBlindEffectAction };\n","import { Action } from \"../../internal/Action.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description Applies a gradient fade effect from one edge of the image.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass GradientFadeEffectAction extends Action {\n constructor() {\n super(...arguments);\n this._actionModel = { actionType: 'gradientFade' };\n }\n /**\n * @description Sets the strength of the fade effect.\n * @param {number} strength The strength of the fade effect. (Range: 0 to 100, Server default: 20)\n */\n strength(strength) {\n this._actionModel.strength = strength;\n this._strength = strength;\n return this;\n }\n /**\n * @description Sets the mode of gradient fade.\n * @param {string | Qualifiers.GradientFade} type The mode of gradient fade.\n */\n type(type) {\n this._actionModel.type = type;\n this._type = type;\n return this;\n }\n /**\n * @description Sets the x dimension of the start point.\n * @param {number | string} x The x dimension of the start point.\n */\n horizontalStartPoint(x) {\n this._actionModel.horizontalStartPoint = x;\n return this.addQualifier(new Qualifier('x', x));\n }\n /**\n * @description Sets the y dimension of the start point.\n * @param {number | string} y The y dimension of the start point.\n */\n verticalStartPoint(y) {\n this._actionModel.verticalStartPoint = y;\n return this.addQualifier(new Qualifier('y', y));\n }\n prepareQualifiers() {\n let str = 'gradient_fade';\n if (this._type) {\n str += `:${this._type}`;\n }\n if (this._strength) {\n str += `:${this._strength}`;\n }\n this.addQualifier(new Qualifier('e', str));\n }\n static fromJson(actionModel) {\n const { actionType, verticalStartPoint, horizontalStartPoint, type, strength } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this();\n verticalStartPoint && result.verticalStartPoint(verticalStartPoint);\n horizontalStartPoint && result.horizontalStartPoint(horizontalStartPoint);\n type && result.type(type);\n strength && result.strength(strength);\n return result;\n }\n}\nexport { GradientFadeEffectAction };\n","import { Action } from \"../../../internal/Action.js\";\nimport { Qualifier } from \"../../../internal/qualifier/Qualifier.js\";\nimport { QualifierValue } from \"../../../internal/qualifier/QualifierValue.js\";\n/**\n * @description Fade out at the end of the video, use the length() method to set the time in ms for the fade to occur. (Server default: 2000)\n * @extends LeveledEffectAction\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass FadeOutEffectAction extends Action {\n constructor(duration) {\n super();\n this._actionModel = { actionType: 'fadeOut' };\n this.addQualifier(new Qualifier('e', new QualifierValue(['fade', `-${duration}`]).setDelimiter(':')));\n duration && (this._actionModel.length = duration);\n }\n /**\n *\n * @description Sets the duration level for the action\n * @param {string | number} duration - The duration of the effect\n */\n duration(duration) {\n this._actionModel.length = duration;\n return this.addQualifier(new Qualifier('e', new QualifierValue(['fade', `-${duration}`]).setDelimiter(':')));\n }\n static fromJson(actionModel) {\n const { length } = actionModel;\n if (length === undefined) {\n return new this(1000);\n }\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this(length);\n return result;\n }\n}\nexport { FadeOutEffectAction };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { prepareColor } from \"../../internal/utils/prepareColor.js\";\n/**\n * @description Applies a shadow filter to the asset.\n * @memberOf Actions.Effect\n * @extends SDK.Action\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass ShadowEffectAction extends Action {\n constructor(effectType, strength) {\n super();\n this._actionModel = {};\n this._actionModel.actionType = effectType;\n this.effectType = effectType;\n this.addQualifier(new Qualifier('e', new QualifierValue(['shadow', strength])));\n }\n /**\n * @description The strength of the shadow. (Range: 0 to 100, Server default: 40)\n * @param {number} strength\n * @return {this}\n */\n strength(strength) {\n this._actionModel.strength = strength;\n return this.addQualifier(new Qualifier('e', new QualifierValue(['shadow', strength])));\n }\n /**\n * @description The X offset the shadow\n * @param {number | SDK.ExpressionQualifier} x\n * @return {this}\n */\n offsetX(x) {\n this._actionModel.offsetX = x;\n return this.addQualifier(new Qualifier('x', new QualifierValue(x)));\n }\n /**\n * @description The Y offset the shadow\n * @param {number | SDK.ExpressionQualifier} y\n * @return {this}\n */\n offsetY(y) {\n this._actionModel.offsetY = y;\n return this.addQualifier(new Qualifier('y', new QualifierValue(y)));\n }\n /**\n * @description The color of the shadow (Server default: gray)\n * @param color\n * @return {this}\n */\n color(color) {\n this._actionModel.color = color;\n return this.addQualifier(new Qualifier('co', new QualifierValue(prepareColor(color))));\n }\n static fromJson(actionModel) {\n const { actionType, strength, offsetX, offsetY, color } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this(actionType, strength);\n offsetX && result.offsetX(offsetX);\n offsetY && result.offsetY(offsetY);\n color && result.color(color);\n return result;\n }\n}\nexport { ShadowEffectAction };\n","import { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Action } from \"../../internal/Action.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description - This Action, while belonging to Effect, acts as a modified overlay.\n * The class implements the Builder pattern, where strength() and preserveColor()\n * are applied to the instance, and toString() is responsible to combining them into the right result.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass StyleTransfer extends Action {\n /**\n * The Image Source used to create the style transfer,\n * Use the Image Source builder to quickly create a source:\n * Import: {@link Qualifiers.Source|import Sources from '@cloudinary/url-gen/qualifiers/sources';}\n * Create: `Source.image('dog')`\n * @param {ImageSource} imageSource\n */\n constructor(imageSource) {\n super();\n this.imageSource = imageSource;\n }\n /**\n * Determines the strength in which the styleTransfer is applied.\n * @param {number} [effectStrength] - The strength level, 1-100, default: 100\n * @return {this}\n */\n strength(effectStrength = null) {\n this.effectStrength = effectStrength;\n return this;\n }\n /**\n * More aggressively preserves the colors of the the target photo,\n * Can be used with `strength()` to enhance this behaviour\n * @param {boolean} bool\n * @return {this}\n */\n preserveColor(bool = true) {\n this.preserve = bool;\n return this;\n }\n /**\n * The `build` phase of the Action, used internally to concat all the options received into a single string.\n * The result of this method is the toString() of the imageLayer provided in the constructor.\n * @return {string}\n */\n toString() {\n const NAME = 'style_transfer';\n const PRES = this.preserve ? 'preserve_color' : null;\n const STRENGTH = this.effectStrength;\n // Create the style effect\n const styleEffect = new Qualifier('e', new QualifierValue([NAME, PRES, STRENGTH]));\n // Handle the source for publicID,\n const sourceOpenString = this.imageSource.getOpenSourceString('l');\n // Handle source transformation\n const imgTx = this.imageSource.getTransformation();\n const sourceTransformation = imgTx ? imgTx.toString() : '';\n return [\n sourceOpenString,\n sourceTransformation,\n `${styleEffect},fl_layer_apply`\n ].filter((a) => a).join('/');\n }\n}\nexport { StyleTransfer };\n","import { Qualifier } from \"../../../internal/qualifier/Qualifier.js\";\nimport { Action } from \"../../../internal/Action.js\";\nimport { custom, faces } from \"../../../qualifiers/region.js\";\n/**\n * @description The Action class of the pixelate Builder\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass Pixelate extends Action {\n constructor(squareSize) {\n super();\n this._actionModel = {};\n this._squareSize = squareSize;\n this._actionModel.actionType = 'pixelate';\n this._actionModel.squareSize = squareSize;\n }\n /**\n * @description Specifies the region to piexlate.\n * @param {NamedRegion} pixelateRegion\n */\n region(pixelateRegion) {\n this._region = pixelateRegion;\n this._actionModel.region = { RegionType: this._region.regionType };\n return this;\n }\n /**\n * @description Sets the squareSize of the pixelate effect.\n * @param {number | string} squareSize\n */\n squareSize(squareSize) {\n this._squareSize = squareSize;\n this._actionModel.squareSize = squareSize;\n return this;\n }\n prepareQualifiers() {\n /*\n * pixelate with region is a unique object in this codebase.\n * On top of pixelate being an Action with Qualifiers,\n * it also accepts a Qualifier called Region.\n *\n * This Qualifier is in itself composite of qualifiers (such as height, or width).\n * The existence of Region changes the output of pixelate in non traditional ways\n * which forced this relatively ad-hoc implementation.\n *\n * Aside from all of that, all of the Qualifiers in the component should be alphabetized\n * This happens naturally in the Action class,\n * however since we're dealing with two levels of qualifiers (pixelate and Region),\n * these need to be merged.\n *\n * This function will merge the Region qualifiers with pixelate\n * and add all needed implicit qualifiers (like g_ocr_text).\n * We're not using the full Gravity Qualifier here to prevent the code import for such a simplistic case\n */\n const str = this._squareSize ? `:${this._squareSize}` : '';\n if ('_region' in this) {\n const qualifiers = this._region.qualifiers;\n // Copy qualifiers from the region \"action\" to the pixelate action\n qualifiers.forEach((q) => this.addQualifier(q));\n if (this._region.regionType === 'named') {\n this.addQualifier(new Qualifier('e', `pixelate_region${str}`));\n }\n if (this._region.regionType === 'ocr_text') {\n this.addQualifier(new Qualifier('e', `pixelate_region${str}`));\n this.addQualifier(new Qualifier('g', `ocr_text`));\n }\n if (this._region.regionType === 'faces') {\n this.addQualifier(new Qualifier('e', `pixelate_faces${str}`));\n }\n }\n else {\n this.addQualifier(new Qualifier('e', `pixelate${str}`));\n }\n }\n static fromJson(actionModel) {\n const { actionType, region, squareSize } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this(squareSize);\n squareSize && result.squareSize(squareSize);\n if (region && region.RegionType === 'faces') {\n result.region(faces());\n }\n if (region && region.RegionType === 'custom') {\n result.region(custom());\n }\n return result;\n }\n}\nexport { Pixelate };\n","import { Action } from \"../../../internal/Action.js\";\nimport { Qualifier } from \"../../../internal/qualifier/Qualifier.js\";\nimport { QualifierValue } from \"../../../internal/qualifier/QualifierValue.js\";\n/**\n * @description Fade out at the end of the video, use the length() method to set the time in ms for the fade to occur. (Server default: 2000)\n * @extends Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass FadeInEffectAction extends Action {\n constructor(duration) {\n super();\n this._actionModel = { actionType: 'fadeIn' };\n this.addQualifier(new Qualifier('e', new QualifierValue(['fade', `${duration}`]).setDelimiter(':')));\n duration && (this._actionModel.length = duration);\n }\n /**\n *\n * @description Sets the duration level for the action\n * @param {string | number} duration - The duration of the effect\n */\n duration(duration) {\n this._actionModel.length = duration;\n return this.addQualifier(new Qualifier('e', new QualifierValue(['fade', `${duration}`]).setDelimiter(':')));\n }\n static fromJson(actionModel) {\n const { length } = actionModel;\n if (length === undefined) {\n return new this(1000);\n }\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this(length);\n return result;\n }\n}\nexport { FadeInEffectAction };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description A class that defines how to remove the background of an asset\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass RemoveBackgroundAction extends Action {\n constructor() {\n super();\n this.overwriteQualifier();\n }\n /**\n * @description Everytime this method is called, it will overwrite the e_bgremoval qualifier with new values\n * @private\n */\n overwriteQualifier() {\n const value = ['bgremoval', this._screen ? 'screen' : '', (this._colorToRemove || '').replace('#', '')];\n return this.addQualifier(new Qualifier('e', new QualifierValue(value)));\n }\n /**\n * @description The strength of the shadow. (Range: 0 to 100, Server default: 40)\n * @param {number} useScreen Boolean, defaults to true\n * @return {this}\n */\n screen(useScreen = true) {\n this._screen = useScreen;\n return this.overwriteQualifier();\n }\n /**\n * @description The color to remove from the background\n * @param {SystemColors} color\n * @return {this}\n */\n colorToRemove(color) {\n this._colorToRemove = color;\n return this.overwriteQualifier();\n }\n}\nexport { RemoveBackgroundAction };\n","import { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Action } from \"../../internal/Action.js\";\n/**\n * @description Changes the main background color to the one specified, as if a 'theme change' was applied (e.g. dark mode vs light mode).\n * @extends SDK.Action\n * @memberOf {Actions.Effect}\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass ThemeEffect extends Action {\n constructor(color) {\n super();\n this.effectName = 'theme';\n this.color = color;\n }\n /**\n * @description The sensitivity to photographic elements of an image.\n * A value of 0 treats the whole image as non-photographic.\n * A value of 200 treats the whole image as photographic, so no theme change is applied.\n * @param {number} photosensitivity\n * @return {this}\n */\n photosensitivity(photosensitivity) {\n this._photosensitivity = photosensitivity;\n return this;\n }\n prepareQualifiers() {\n const sensitivity = this._photosensitivity ? `:photosensitivity_${this._photosensitivity}` : '';\n // Replace # in hex colors (#fff -> fff)\n const val = `${this.effectName}:color_${this.color.replace('#', '')}${sensitivity}`;\n this.addQualifier(new Qualifier('e', new QualifierValue(val)));\n return;\n }\n}\nexport { ThemeEffect };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description A class that defines how to remove the background of an asset\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass BackgroundRemoval extends Action {\n constructor() {\n super();\n this._actionModel.actionType = \"backgroundRemoval\";\n }\n fineEdges(value = true) {\n this._fineEdges = value;\n this._actionModel.fineEdges = this._fineEdges;\n return this;\n }\n hints(...values) {\n if (values.length === 1 && Array.isArray(values[0])) {\n // Handle the case of a single array argument\n this._hints = values[0];\n }\n else if (values.length) {\n this._hints = values;\n }\n if (this._hints) {\n this._actionModel.hints = this._hints;\n }\n return this;\n }\n prepareQualifiers() {\n var _a;\n let str = \"background_removal\";\n const params = [];\n if (this._fineEdges !== undefined) {\n params.push(new QualifierValue(`fineedges_${this._fineEdges ? \"y\" : \"n\"}`).toString());\n }\n if ((_a = this._hints) === null || _a === void 0 ? void 0 : _a.length) {\n params.push(new QualifierValue(`hints_(${this._hints.join(\";\")})`).toString());\n }\n if (params.length > 0) {\n str += `:${params.join(\";\")}`;\n }\n this.addQualifier(new Qualifier(\"e\", str));\n }\n static fromJson(actionModel) {\n const { fineEdges, hints } = actionModel;\n const result = new this();\n if (fineEdges !== undefined) {\n result.fineEdges(fineEdges);\n }\n if (hints === null || hints === void 0 ? void 0 : hints.length) {\n result.hints(hints);\n }\n return result;\n }\n}\nexport { BackgroundRemoval };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description Adds a shadow to the object in an image.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass DropShadow extends Action {\n constructor() {\n super();\n this._actionModel = {};\n this._actionModel.actionType = 'dropshadow';\n }\n /**\n * @description\n * The direction the light is coming from to cause the shadow effect. (Range: 0 to 360, Server default: 215)\n * @param {number} azimuth\n * @return {this}\n */\n azimuth(azimuth) {\n this._actionModel.azimuth = azimuth;\n this._azimuth = azimuth;\n return this;\n }\n /**\n * @description\n * The height of the light source above the 'ground' to cause the shadow effect. (Range: 0 to 90, Server default: 45)\n * @param {number} elevation\n * @return {this}\n */\n elevation(elevation) {\n this._actionModel.elevation = elevation;\n this._elevation = elevation;\n return this;\n }\n /**\n * @description\n * The spread of the light source. A small number means 'point' light. A larger number means 'area' light. (Range: 0 to 100, Server default: 50)\n * @param {number} spread\n * @return {this}\n */\n spread(spread) {\n this._actionModel.spread = spread;\n this._spread = spread;\n return this;\n }\n prepareQualifiers() {\n const paramNames = ['azimuth', 'elevation', 'spread'];\n const paramValues = [this._azimuth, this._elevation, this._spread];\n const paramString = paramValues.map((value, index) => value !== undefined ? `${paramNames[index]}_${value}` : '').filter(Boolean).join(';');\n this.addQualifier(new Qualifier('e', new QualifierValue(['dropshadow', paramString]).setDelimiter(':')));\n }\n static fromJson(actionModel) {\n const { azimuth, elevation, spread } = actionModel;\n // We are using this() to allow inheriting classes to use super.fromJson.apply(this, [actionModel])\n // This allows the inheriting classes to determine the class to be created\n const result = new this();\n azimuth && result.azimuth(azimuth);\n elevation && result.elevation(elevation);\n spread && result.spread(spread);\n return result;\n }\n}\nexport { DropShadow };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { RectangleRegion } from \"../../qualifiers/region/RectangleRegion.js\";\n/**\n * @description A class that defines how to remove objects from an asset using Generative AI\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass GenerativeRemove extends Action {\n constructor() {\n super();\n this._prompts = [];\n this._regions = [];\n this._detectMultiple = false;\n this._removeShadow = false;\n this._actionModel.actionType = \"generativeRemove\";\n }\n prompt(...value) {\n this._prompts = value;\n if (this._prompts.length > 0) {\n this._actionModel.prompts = this._prompts;\n }\n return this;\n }\n region(...value) {\n this._regions = value;\n if (this._regions.length > 0) {\n this._actionModel.regions = this._regions.map((region) => region.toJson());\n }\n return this;\n }\n detectMultiple(value = true) {\n this._detectMultiple = value;\n if (this._detectMultiple) {\n this._actionModel.detectMultiple = this._detectMultiple;\n }\n return this;\n }\n removeShadow(value = true) {\n this._removeShadow = value;\n if (this._removeShadow) {\n this._actionModel.removeShadow = this._removeShadow;\n }\n return this;\n }\n prepareQualifiers() {\n const qualifierValue = new QualifierValue().setDelimiter(\";\");\n switch (true) {\n case this._prompts.length > 0: {\n qualifierValue.addValue(this.preparePromptValue());\n break;\n }\n case this._regions.length > 0: {\n qualifierValue.addValue(this.prepareRegionValue());\n break;\n }\n }\n if (this._detectMultiple) {\n qualifierValue.addValue(\"multiple_true\");\n }\n if (this._removeShadow) {\n qualifierValue.addValue(\"remove-shadow_true\");\n }\n this.addQualifier(new Qualifier(\"e\", `gen_remove:${qualifierValue.toString()}`));\n }\n preparePromptValue() {\n const prompts = this._prompts;\n const qualifierValue = new QualifierValue().setDelimiter(\";\");\n if (prompts.length === 1) {\n qualifierValue.addValue(`prompt_${prompts[0]}`);\n }\n else {\n qualifierValue.addValue(`prompt_(${prompts.join(\";\")})`);\n }\n return qualifierValue;\n }\n prepareRegionValue() {\n const regions = this._regions;\n const qualifierValue = new QualifierValue();\n if (regions.length === 1) {\n const singleRegion = regions[0].toString();\n qualifierValue.addValue(`region_${singleRegion}`);\n }\n else {\n const regionList = regions.map((region) => region.toString());\n qualifierValue.addValue(`region_(${regionList.join(\";\")})`);\n }\n return qualifierValue;\n }\n static fromJson(actionModel) {\n const { prompts, regions, detectMultiple, removeShadow } = actionModel;\n const result = new this();\n if (regions) {\n result.region(...regions.map(({ x, y, width, height }) => new RectangleRegion(x, y, width, height)));\n }\n if (prompts) {\n result.prompt(...prompts);\n }\n if (detectMultiple) {\n result.detectMultiple(detectMultiple);\n }\n if (removeShadow) {\n result.removeShadow(removeShadow);\n }\n return result;\n }\n}\nexport { GenerativeRemove };\n","import { Action } from \"../../internal/Action.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description Uses generative AI to replace parts of your image with something else.\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass GenerativeReplace extends Action {\n constructor() {\n super();\n this._preserveGeometry = false;\n this._detectMultiple = false;\n this._actionModel.actionType = \"generativeReplace\";\n }\n from(value) {\n this._from = value;\n this._actionModel.from = value;\n return this;\n }\n to(value) {\n this._to = value;\n this._actionModel.to = value;\n return this;\n }\n preserveGeometry(value = true) {\n this._preserveGeometry = value;\n if (value) {\n this._actionModel.preserveGeometry = true;\n }\n return this;\n }\n detectMultiple(value = true) {\n this._detectMultiple = value;\n if (this._detectMultiple) {\n this._actionModel.detectMultiple = this._detectMultiple;\n }\n return this;\n }\n prepareQualifiers() {\n let str = `gen_replace:from_${this._from};to_${this._to}`;\n if (this._preserveGeometry) {\n str += `;preserve-geometry_true`;\n }\n if (this._detectMultiple) {\n str += `;multiple_true`;\n }\n this.addQualifier(new Qualifier(\"e\", str));\n }\n static fromJson(actionModel) {\n const { from, to, preserveGeometry, detectMultiple } = actionModel;\n const result = new this();\n result.from(from);\n result.to(to);\n if (preserveGeometry) {\n result.preserveGeometry();\n }\n if (detectMultiple) {\n result.detectMultiple();\n }\n return result;\n }\n}\nexport { GenerativeReplace };\n","import { Action } from \"../../internal/Action.js\";\nimport { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @description A class that defines how to recolor objects in an asset using Generative AI\n * @extends SDK.Action\n * @memberOf Actions.Effect\n * @see Visit {@link Actions.Effect|Effect} for an example\n */\nclass GenerativeRecolor extends Action {\n constructor(prompts, color) {\n super();\n this._prompts = [];\n this._detectMultiple = false;\n // Alias method to be backwards compatible\n this.multiple = this.detectMultiple.bind(this);\n this._prompts = Array.isArray(prompts) ? prompts : [prompts];\n this._toColor = color;\n this._actionModel.actionType = \"generativeRecolor\";\n this._actionModel.prompts = this._prompts;\n this._actionModel.toColor = this._toColor;\n }\n detectMultiple(value = true) {\n this._detectMultiple = value;\n if (this._detectMultiple) {\n this._actionModel.detectMultiple = this._detectMultiple;\n }\n return this;\n }\n prepareQualifiers() {\n const qualifierValue = new QualifierValue().setDelimiter(\";\");\n if (this._prompts.length) {\n qualifierValue.addValue(this.preparePromptValue());\n }\n if (this._toColor) {\n const formattedColor = this._toColor.match(/^#/)\n ? this._toColor.substr(1)\n : this._toColor;\n qualifierValue.addValue(`to-color_${formattedColor}`);\n }\n if (this._detectMultiple) {\n qualifierValue.addValue(\"multiple_true\");\n }\n this.addQualifier(new Qualifier(\"e\", `gen_recolor:${qualifierValue.toString()}`));\n }\n preparePromptValue() {\n const prompts = this._prompts;\n const qualifierValue = new QualifierValue().setDelimiter(\";\");\n if (prompts.length === 1) {\n qualifierValue.addValue(`prompt_${prompts[0]}`);\n }\n else {\n qualifierValue.addValue(`prompt_(${prompts.join(\";\")})`);\n }\n return qualifierValue;\n }\n static fromJson(actionModel) {\n const { prompts, detectMultiple, toColor } = actionModel;\n const result = new this(prompts, toColor);\n if (detectMultiple) {\n result.detectMultiple(detectMultiple);\n }\n return result;\n }\n}\nexport { GenerativeRecolor };\n","import { BlurAction } from \"./effect/blur/Blur.js\";\nimport { AccelerationEffectAction } from \"./effect/leveled/Accelerate.js\";\nimport { LoopEffectAction } from \"./effect/leveled/Loop.js\";\nimport { CartoonifyEffect } from \"./effect/Cartoonify.js\";\nimport { EffectOutline } from \"./effect/Outline.js\";\nimport { SimpleEffectAction } from \"./effect/EffectActions/SimpleEffectAction.js\";\nimport { MakeTransparentEffectAction } from \"./effect/leveled/MakeTransparent.js\";\nimport { VectorizeEffectAction } from \"./effect/Vectorize.js\";\nimport { SimulateColorBlindEffectAction } from \"./effect/SimulateColorBlind.js\";\nimport { EffectActionWithLevel } from \"./effect/EffectActions/EffectActionWithLevel.js\";\nimport { AssistColorBlindEffectAction } from \"./effect/AssistColorBlind.js\";\nimport { GradientFadeEffectAction } from \"./effect/GradientFade.js\";\nimport { FadeOutEffectAction } from \"./effect/leveled/FadeOut.js\";\nimport { ColorizeEffectAction } from \"./effect/Colorize.js\";\nimport { ShadowEffectAction } from \"./effect/Shadow.js\";\nimport { StyleTransfer } from \"./effect/StyleTransfer.js\";\nimport { DitherEffectAction } from \"./effect/Dither.js\";\nimport { DeshakeEffectAction } from \"./effect/leveled/Deshake.js\";\nimport { Pixelate } from \"./effect/pixelate/Pixelate.js\";\nimport { EffectActionWithStrength } from \"./effect/EffectActions/EffectActionWithStrength.js\";\nimport { BlackwhiteEffectAction } from \"./effect/leveled/Blackwhite.js\";\nimport { FadeInEffectAction } from \"./effect/leveled/FadeIn.js\";\nimport { RemoveBackgroundAction } from \"./effect/RemoveBackgroundAction.js\";\nimport { ThemeEffect } from \"./effect/Theme.js\";\nimport { BackgroundRemoval } from \"./effect/BackgroundRemoval.js\";\nimport { DropShadow } from \"./effect/DropShadow.js\";\nimport { GenerativeRemove } from \"./effect/GenerativeRemove.js\";\nimport { GenerativeReplace } from \"./effect/GenerativeReplace.js\";\nimport { GenerativeRecolor } from \"./effect/GenerativeRecolor.js\";\n/**\n * @summary action\n * @description Applies a blurring filter to the asset.\n * @memberOf Actions.Effect\n * @param {number} blurLevel The strength of the blur. (Range: 1 to 2000, Server default: 100)\n * @return {Actions.Effect.BlurAction}\n */\nfunction blur(blurLevel) {\n return new BlurAction(blurLevel);\n}\n/**\n * @summary action\n * @description Converts the image to gray-scale (multiple shades of gray).\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction grayscale() {\n return new SimpleEffectAction(\"grayscale\");\n}\n/**\n * @summary action\n * @description Changes the color scheme of the image to sepia.\n * @memberOf Actions.Effect\n * @param {number} level The level of sepia to apply. (Range: 1 to 100, Server default: 80)\n * @return {Actions.Effect.EffectActionWithLevel}\n */\nfunction sepia(level) {\n return new EffectActionWithLevel(\"sepia\", level);\n}\n/**\n * @summary action\n * @description Applies a shadow filter to the asset.\n * @memberOf Actions.Effect\n * @param shadowLevel\n * @return {Actions.Effect.ShadowEffectAction}\n */\nfunction shadow(shadowLevel) {\n return new ShadowEffectAction(\"shadow\", shadowLevel);\n}\n/**\n * @summary action\n * @description Applies a colorizing filter to the asset.\n * @memberOf Actions.Effect\n * @param {number} colorizeLevel The strength of the color. (Range: 0 to 100, Server default: 100)\n * @return {Actions.Effect.ColorizeEffectAction}\n */\nfunction colorize(colorizeLevel) {\n return new ColorizeEffectAction(\"colorize\", colorizeLevel);\n}\n/**\n * @summary action\n * @description Applies an oilPaint filter to the asset.\n * @memberOf Actions.Effect\n * @param {number} oilPaintLevel The strength of the effect. (Range: 0 to 100, Server default: 30)\n * @return {Actions.Effect.EffectActionWithStrength}\n */\nfunction oilPaint(oilPaintLevel) {\n return new EffectActionWithStrength(\"oil_paint\", oilPaintLevel);\n}\n/**\n * @summary action\n * @description Applies an artistic filter to the asset.\n * @memberOf Actions.Effect\n * @param {ArtisticFilterType | string} artisticFilterType\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction artisticFilter(artisticFilterType) {\n return new SimpleEffectAction(\"art\", artisticFilterType);\n}\n/**\n * @summary action\n * @description Applies a cartoonify effect to the asset.\n * @memberOf Actions.Effect\n * @param cartoonifyLevel The thickness of the lines. (Range: 0 to 100, Server default: 50)\n * @return {Actions.Effect.CartoonifyEffect}\n */\nfunction cartoonify(cartoonifyLevel) {\n return new CartoonifyEffect(\"cartoonify\", cartoonifyLevel);\n}\n/**\n * @summary action\n * @description Adds an outline to a transparent image. For examples, see the Image Transformations guide.\n * @memberOf Actions.Effect\n * @return {Actions.Effect.EffectOutline}\n */\nfunction outline() {\n return new EffectOutline();\n}\n/**\n * @summary action\n * @description Applies a complex deep learning neural network algorithm that extracts artistic styles from a source image and applies them to the content of a target photograph.
\n * Learn more: {@link https://cloudinary.com/documentation/neural_artwork_style_transfer_addon|Neural Artwork Style Transfer}\n * @memberOf Actions.Effect\n * @param {ImageSource} imageSource `import {image} from '@cloudinary/url-gen/qualifiers/sources`\n * @return {Actions.Effect.StyleTransfer}\n */\nfunction styleTransfer(imageSource) {\n return new StyleTransfer(imageSource);\n}\n/**\n * @summary action\n * @description\n * Causes a video clip to play forwards and then backwards.\n * Use in conjunction with trimming parameters ('duration', 'start_offset', or 'end_offset') and the 'loop' effect to deliver a classic (short, repeating) boomerang clip.
\n * For details and examples, see 'Create a boomerang video clip' in the Video Transformations guide.\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction boomerang() {\n return new SimpleEffectAction(\"boomerang\");\n}\n/**\n * @summary action\n * @description\n * Removes red eyes with the Advanced Facial Attribute Detection add-on.\n * For details, see the Advanced Facial Attribute Detection add-on documentation.\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction advancedRedEye() {\n return new SimpleEffectAction(\"adv_redeye\");\n}\n/**\n * @summary action\n * @description Converts the image to black and white.\n * @memberOf Actions.Effect\n * @param {number | string} level The balance between black (100) and white (0). (Range: 0 to 100, Server default: 50)\n * @return {Actions.Effect.BlackwhiteEffectAction}\n */\nfunction blackwhite(level) {\n return new BlackwhiteEffectAction(\"blackwhite\", level);\n}\n/**\n * @summary action\n * @description Negates the image colors (negative).\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction negate() {\n return new SimpleEffectAction(\"negate\");\n}\n/**\n * @summary action\n * @description Removes red eyes in the image.\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction redEye() {\n return new SimpleEffectAction(\"redeye\");\n}\n/**\n * @summary action\n * @description Plays the video or audio file in reverse.\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction reverse() {\n return new SimpleEffectAction(\"reverse\");\n}\n/**\n * @summary action\n * @description Changes the speed of the video playback.\n * @memberOf Actions.Effect\n * @param {number} speedIncreasePercent The percentage change of speed. Positive numbers speed up the playback, negative numbers slow down the playback (Range: -50 to 100, Server default: 0)\n * @return {Actions.Effect.AccelerationEffectAction}\n */\nfunction accelerate(speedIncreasePercent) {\n return new AccelerationEffectAction(speedIncreasePercent);\n}\n/**\n * @summary action\n * @description\n * Fade in at the beginning of the video.\n * For details and examples, see 'Fade in and out' in the Video Transformations guide.\n * @memberOf Actions.Effect\n * @param {number} fadeLength The time in ms for the fade to occur. (Server default: 2000)\n * @return {Actions.Effect.FadeInEffectAction}\n */\nfunction fadeIn(fadeLength) {\n return new FadeInEffectAction(fadeLength);\n}\n/**\n * @summary action\n * @description\n * Fade out at the end of the video.\n * For details and examples, see 'Fade in and out' in the Video Transformations guide.\n * @memberOf Actions.Effect\n * @param {number} fadeLength The time in ms for the fade to occur. (Server default: 2000)\n * @return {Actions.Effect.FadeoutEffectAction}\n */\nfunction fadeOut(fadeLength) {\n return new FadeOutEffectAction(fadeLength);\n}\n/**\n * @summary action\n * @description\n * Delivers a video or animated GIF that contains additional loops of the video/GIF.\n * The total number of iterations is the number of additional loops plus one.
\n * For animated GIFs only, you can also specify the loop effect without a numeric value to instruct it to loop the GIF infinitely.\n * @memberOf Actions.Effect\n * @param {number} additionalLoops The additional number of times to play the video or animated GIF.\n * @return {Actions.Effect.LoopEffectAction}\n */\nfunction loop(additionalLoops) {\n return new LoopEffectAction(\"loop\", additionalLoops);\n}\n/**\n * @summary action\n * @description\n * Makes the background of the image transparent (or solid white for formats that do not support transparency).\n * The background is determined as all pixels that resemble the pixels on the edges of the image.\n *\n * @memberOf Actions.Effect\n * @param {number} tolerance The tolerance used to accommodate variance in the background color. (Range: 0 to 100, Server default: 10)\n * @return {Actions.Effect.MakeTransparentEffectAction}\n */\nfunction makeTransparent(tolerance) {\n return new MakeTransparentEffectAction(\"make_transparent\", tolerance);\n}\n/**\n * @summary action\n * @description Adds visual noise to the video, visible as a random flicker of \"dots\" or \"snow\".\n * @memberOf Actions.Effect\n * @param {number} percentage The percent of noise to apply. (Range: 0 to 100 Server default: 0)\n * @return {Actions.Effect.EffectActionWithLevel}\n */\nfunction noise(percentage) {\n return new EffectActionWithLevel(\"noise\", percentage);\n}\n/**\n * @summary action\n * @description Applies a vignette effect.\n * @memberOf Actions.Effect\n * @param {number} strength The strength of the vignette. (Range: 0 to 100, Server default: 20)\n * @return {Actions.Effect.EffectActionWithStrength}\n */\nfunction vignette(strength) {\n return new EffectActionWithStrength(\"vignette\", strength);\n}\n/**\n * @summary action\n * @description\n * Applies an ordered dither filter to the image.\n * Use the constants defined in {@link Qualifiers.Dither|@cloudinary/url-gen/qualifiers/dither} for ditherType.\n * @memberOf Actions.Effect\n * @param {Qualifiers.Dither} ditherType - The dither type applied to the image\n * @return {Actions.Effect.DitherEffectAction}\n */\nfunction dither(ditherType) {\n return new DitherEffectAction(\"ordered_dither\", ditherType);\n}\n/**\n * @summary action\n * @description\n * Vectorizes the image.\n * Notes:\n * To deliver the image as a vector image, make sure to change the format (or URL extension) to a vector format, such as SVG.\n * However, you can also deliver in a raster format if you just want to get the 'vectorized' graphic effect.\n * Large images are scaled down to 1000 pixels in the largest dimension before vectorization.\n *\n * @memberOf Actions.Effect\n * @return {Actions.Effect.VectorizeEffectAction}\n */\nfunction vectorize() {\n return new VectorizeEffectAction();\n}\n/**\n * @summary action\n * @description\n * Applies a gradient fade effect from one edge of the image.\n * Use .x() or .y() to indicate from which edge to fade and how much of the image should be faded.\n * Values of x and y can be specified as a percentage (Range: 0.0 to 1.0), or in pixels (integer values).
\n * Positive values fade from the top (y) or left (x). Negative values fade from the bottom (y) or right (x).
\n * By default, the gradient is applied to the top 50% of the image (y = 0.5).
\n * Only one direction can be specified but the fade can be applied symmetrically using the mode parameter. \n * To apply different amounts of fade to multiple edges, use chained fade effects.\n *\n * @memberOf Actions.Effect\n * @return {Actions.Effect.GradientFadeEffectAction}\n */\nfunction gradientFade() {\n return new GradientFadeEffectAction();\n}\n/**\n * @summary action\n * @description\n * Applies stripes to the image to help people with common color-blind conditions to differentiate between colors that are similar for them.\n * You can replace colors using the xRay() method of the \\Cloudinary\\Transformation\\AssistColorBlind class.\n * @memberOf Actions.Effect\n * @return {Actions.Effect.AssistColorBlindEffectAction}\n */\nfunction assistColorBlind() {\n return new AssistColorBlindEffectAction();\n}\n/**\n * @summary action\n * @description\n * Simulates the way an image would appear to someone with the specified color blind condition. \n * For a list of supported color blind conditions see {@link Qualifiers.SimulateColorBlindValues| types of color blindness} for possible values\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimulateColorBlindEffectAction}\n */\nfunction simulateColorBlind() {\n return new SimulateColorBlindEffectAction();\n}\n/**\n * @summary action\n * @description Removes small motion shifts from the video. with a maximum extent of movement in the horizontal and vertical direction of 32 pixels\n * @memberOf Actions.Effect\n * @return {Actions.Effect.DeshakeEffectAction}\n */\nfunction deshake(pixels) {\n return new DeshakeEffectAction(\"deshake\", pixels);\n}\n/**\n * @summary action\n * @description Supports the concatenation of videos with a custom transition by including a transition video as an\n * additional layer and specifying the transition effect\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction transition() {\n return new SimpleEffectAction(\"transition\");\n}\n/**\n * @summary action\n * @description Applies a pixelatering filter to the asset.\n * @memberOf Actions.Effect\n * @param {number} squareSize The squareSize in the pixelation. (Range: 1 to 2000, Server default: 100)\n * @return {Actions.Effect.Pixelate}\n */\nfunction pixelate(squareSize) {\n return new Pixelate(squareSize);\n}\n/**\n * @summary action\n * @description Makes the background of an image transparent (or solid white for JPGs).\n * Use when the background is a uniform color.\n * {@link https://cloudinary.com/documentation/transformation_reference#e_bgremoval|Background Removal}\n *\n * @memberOf Actions.Effect\n * @return {Actions.Effect.RemoveBackgroundAction}\n */\nfunction removeBackground() {\n return new RemoveBackgroundAction();\n}\n/**\n * @summary action\n * @description Uses the Cloudinary AI Background Removal add-on to make the background of an image transparent.\n * When combined with other transformations, this effect must be specified in the first component.\n * {@link https://cloudinary.com/documentation/transformation_reference#e_background_removal|Background Removal}\n *\n * @memberOf Actions.Effect\n * @return {Actions.Effect.BackgroundRemoval}\n */\nfunction backgroundRemoval() {\n return new BackgroundRemoval();\n}\n/**\n * @summary action\n * @description Adds a shadow to the object in an image.\n * {@link https://cloudinary.com/documentation/transformation_reference#e_dropshadow|Drop Shadow}\n *\n * @memberOf Actions.Effect\n * @return {Actions.Effect.DropShadow}\n */\nfunction dropShadow() {\n return new DropShadow();\n}\n/**\n * @summary action\n * @description Remove objects from an asset using Generative AI\n * {@link https://cloudinary.com/documentation/transformation_reference#e_gen_remove|Generative Remove}\n *\n * @memberOf Actions.Effect\n * @return {Actions.Effect.GenerativeRemove}\n */\nfunction generativeRemove() {\n return new GenerativeRemove();\n}\n/**\n * @summary action\n * @description Uses generative AI to replace parts of your image with something else.\n * {@link https://cloudinary.com/documentation/transformation_reference#e_gen_replace|Generative Replace}\n *\n * @memberOf Actions.Effect\n * @return {Actions.Effect.GenerativeReplace}\n */\nfunction generativeReplace() {\n return new GenerativeReplace();\n}\n/**\n * @summary action\n * @description Uses generative AI to recolor objects from your image.\n * {@link https://cloudinary.com/documentation/transformation_reference#e_gen_recolor|Generative Recolor}\n * @param {string | string[]} prompts\n * @param {SystemColors} color\n * @memberOf Actions.Effect\n * @return {Actions.Effect.GenerativeRecolor}\n */\nfunction generativeRecolor(prompts, color) {\n return new GenerativeRecolor(prompts, color);\n}\n/**\n * @summary action\n * @description\n * Uses generative AI to restore details in poor quality images\n * or images that may have become degraded through repeated processing and compression.\n * @memberOf Actions.Effect\n * @return {Actions.Effect.SimpleEffectAction}\n */\nfunction generativeRestore() {\n return new SimpleEffectAction(\"gen_restore\");\n}\n/**\n *\n * @description Changes the main background color to the one specified, as if a 'theme change' was applied (e.g. dark mode vs light mode).\n * @param {SystemColors} color\n * @return {Actions.Effect.ThemeEffect}\n */\nfunction theme(color) {\n return new ThemeEffect(color);\n}\n/**\n * @description Defines effects that you can apply to transform your assets.\n * @memberOf Actions\n * @namespace Effect\n * @example\n *