{"version":3,"sources":["webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/progressive.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryFormatAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/flag.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/xyCenterGravity/XYCenterGravity.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/unsupportedError.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/prepareColor.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/format/FormatQualifier.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/toFloatAsString.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/flag/FlagQualifier.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/autoGravity/AutoGravity.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/compassGravity/CompassGravity.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/focusOnGravity/FocusOnGravity.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/focusOn.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/models/qualifierToJson.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/qualifier/Qualifier.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/models/QualifierModel.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/aspectRatio/AspectRatioQualifierValue.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeSimpleAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/models/createGravityModel.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/autoFocus.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/qualifiers/compass/CompassQualifier.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/models/createGravityFromModel.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeAdvancedAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/background/shared/base/BackgroundQualifier.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeCropAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeFillAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/resize/ResizeLimitFillAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/resize.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryQualityAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryColorSpaceFromICCAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryColorSpaceAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery/DeliveryDPRAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/delivery.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/qualifiers/focusOn/FocusOnValue.js","webpack:///./node_modules/@cloudinary/url-gen/sdkAnalytics/stringPad.js","webpack:///./node_modules/@cloudinary/url-gen/sdkAnalytics/base64Map.js","webpack:///./node_modules/@cloudinary/url-gen/sdkAnalytics/encodeVersion.js","webpack:///./node_modules/@cloudinary/url-gen/sdkAnalytics/reverseVersion.js","webpack:///./node_modules/@cloudinary/url-gen/sdkAnalytics/getSDKAnalyticsSignature.js","webpack:///./node_modules/@cloudinary/url-gen/internal/utils/packageVersion.js","webpack:///./node_modules/@cloudinary/url-gen/sdkAnalytics/getAnalyticsOptions.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/qualifier/QualifierValue.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/quality.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/format.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/actions/background/actions/BackgroundColor.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/RawAction.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/transformation/Transformation.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/models/IErrorObject.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/transformation/ImageTransformation.js","webpack:///./node_modules/@cloudinary/url-gen/config/BaseConfig.js","webpack:///./node_modules/@cloudinary/url-gen/internal/internalConstants.js","webpack:///./node_modules/@cloudinary/url-gen/config/URLConfig.js","webpack:///./node_modules/@cloudinary/url-gen/assets/CloudinaryFile.js","webpack:///./node_modules/@cloudinary/url-gen/assets/CloudinaryTransformable.js","webpack:///./node_modules/@cloudinary/url-gen/internal/url/cloudinaryURL.js","webpack:///./node_modules/@cloudinary/url-gen/internal/url/urlUtils/publicIDContainsVersion.js","webpack:///./node_modules/@cloudinary/url-gen/internal/url/urlUtils/isUrl.js","webpack:///./node_modules/@cloudinary/url-gen/internal/url/urlUtils/isFileName.js","webpack:///./node_modules/@cloudinary/url-gen/assets/CloudinaryImage.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/transformation/VideoTransformation.js","webpack:///./node_modules/@cloudinary/url-gen/assets/CloudinaryVideo.js","webpack:///./node_modules/@cloudinary/url-gen/instance/Cloudinary.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/models/actionToJson.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/Action.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/models/ActionModel.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/dataStructureUtils.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/utils/objectFlip.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/internal/internalConstants.js","webpack:///./node_modules/@cloudinary/transformation-builder-sdk/qualifiers/gravity/GravityQualifier.js"],"names":["FlagQualifier","mode","super","DeliveryAction","deliveryKey","deliveryType","this","_actionModel","lossy","addFlag","progressive","getFlagValue","preserveTransparency","actionModel","formatType","result","ignoreInitialAspectRatio","regionRelative","relative","GravityQualifier","focusOn","args","res","FocusOnGravity","autoGravity","AutoGravity","modelProperty","deliveryTypeValue","getValue","actionType","addQualifier","UnsupportedError","Error","message","createUnsupportedError","prepareColor","color","match","substr","FormatQualifier","val","toFloatAsString","value","returnValue","toString","length","isNaN","parseFloat","indexOf","flagType","flagValue","qualifierValue","setDelimiter","replace","AutoFocusObjects","addValue","CompassGravity","dir","FocusOnObjects","face","ocr","qualifierToJson","_qualifierModel","error","constructor","name","apply","key","delimiter","QualifierValue","Action","cropType","cropWidth","cropHeight","dimensions","Qualifier","width","height","x","ratio","aspectRatio","getGravityValue","gravity","createIAutoFocusObject","values","split","object","avoid","weight","createAutoGravityModel","gravityQualifier","startsWith","filter","v","gravityType","autoFocus","map","createGravityModel","gravityValue","includes","isCompassGravity","compass","createCompassGravityModel","isOcrGravity","isIAutoGravityString","isAutoGravity","hasAutoGravity","focusOnObjects","slice","autoFocusObjects","autoGravityInstance","fallbackGravity","createFocusOnGravityModel","focusOnValues","g","FocusOnValue","createFocusOnGravity","_weight","shouldAvoid","obj","shouldAddWeight","getName","getWeight","w","createAutoFocusFromModel","autoGravityObjectModel","createAutoGravityFromModel","gravityModel","createGravityFromModel","isCompassGravityModel","isOcrGravityModel","isAutoGravityModel","str","createFocusOnGravityFromModel","fromJson","y","z","zoom","crop","fill","limitFill","qualityValue","type","chromaSubSampling","qualityWithSubSampling","level","quantization","qualityWithQuantization","chromaValue","toUpperCase","dprValue","dprAsFloat","dpr","format","DeliveryFormatAction","quality","qualityType","stringPad","_targetLength","_padString","targetLength","padString","String","string","_times","times","repeatedString","repeatStringNumTimes","base64Map","encodeVersion","semVer","strResult","paddedStringLength","paddedReversedSemver","reverse","segment","asNumber","join","reverseVersion","paddedBinary","parseInt","forEach","bitString","char","getNodeVersion","window","process","versions","node","e","getSDKAnalyticsSignature","_trackedAnalytics","trackedAnalytics","defaults","techVersion","sdkCode","sdkSemver","responsive","placeholder","lazyload","accessibility","Object","assign","ensureShapeOfTrackedProperties","analyticsOptions","twoPartVersion","semVerStr","parts","removePatchFromSemver","encodedSDKVersion","encodedTechVersion","featureCode","feature","SDKCode","packageVersion","getAnalyticsOptions","options","hasValue","Array","isArray","concat","push","auto","raw","actions","action","actionToAdd","tx","a","animatedAction","addAction","borderAction","reshapeAction","resizeAction","roundCornersAction","overlayAction","underlayAction","setLayerType","variableAction","conditionAction","effectAction","rotateAction","namedTransformation","deliveryAction","flagQualifier","flagToAdd","customFunction","json","toJson","userProvidedConfig","validKeys","create","keys","console","warn","ALLOWED_URL_CONFIG","userURLConfig","urlConfig","filterOutNonSupportedKeys","secure","cname","secureDistribution","privateCdn","signUrl","longUrlSignature","shorten","useRootPath","forceVersion","SEO_TYPES","publicID","cloudConfig","setPublicID","setCloudConfig","setURLConfig","cloudName","apiKey","apiSecret","authToken","newType","newSuffix","suffix","signature","newVersion","version","assetType","overwriteOptions","createCloudinaryURL","suffixContainsDot","suffixContainsSlash","handleAssetType","handleDeliveryType","hasSuffix","regularSEOType","shortSEOType","transformation","validateAssetForURLCreation","prefix","privateCDN","getUrlPrefix","transformationString","shouldForceVersion","publicIDContainsVersion","isUrl","isFileName","getUrlVersion","url","getResourceType","getSignature","safeURL","encodeURI","analytics","animated","border","reshape","resize","roundCorners","overlay","addVariable","conditionalAction","conditional","effect","adjust","rotate","delivery","backgroundColor","psdTools","extract","addTransformation","underlay","transcode","videoEdit","cloudinaryConfig","cloud","actionToJson","arguments","qualifiers","Map","flags","actionTag","tag","prepareQualifiers","array","from","entries","flag","sort","mapToSortedArray","qualifier","toLowerCase","set","qualifierKey","get","objectFlip","ACTION_TYPE_TO_CROP_MODE_MAP","limitFit","minimumFit","thumbnail","limitPad","minimumPad","ACTION_TYPE_TO_QUALITY_MODE_MAP","autoBest","autoEco","autoGood","autoLow","jpegminiHigh","jpegminiMedium","jpegminiBest","CHROMA_VALUE_TO_CHROMA_MODEL_ENUM","444","420","COLOR_SPACE_MODEL_MODE_TO_COLOR_SPACE_MODE_MAP","CHROMA_MODEL_ENUM_TO_CHROMA_VALUE","COLOR_SPACE_MODE_TO_COLOR_SPACE_MODEL_MODE_MAP","CROP_MODE_TO_ACTION_TYPE_MAP","DELIVERY_MODE_TO_ACTION_TYPE_MAP","colorSpace","density","defaultImage","redEye","advancedRedEye","oilPaint","unsharpMask","makeTransparent","fullHd","fullHdWifi","fullHdLean","hdLean"],"mappings":"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","file":"defaultVendors~ApartmentCards~AreaMap~ArticleCardList~ArticleContent~ArticleListing~AuthorSummary~Aw~61ed3215-308ea28189a76dfe1d14.js","sourcesContent":["/**\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","/**\n * @description Defines flags that you can use to alter the default transformation behavior.\n * @namespace Flag\n * @memberOf Qualifiers\n */\nimport { FlagQualifier } from \"./flag/FlagQualifier.js\";\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Used when delivering a video file as an image format that supports animation, such as animated WebP.\n * Plays all frames rather than just delivering the first one as a static image.\n * Use this flag in addition to the flag or parameter controlling the delivery format,\n * for example f_auto or fl_awebp.\n\n * Note: When delivering a video in GIF format, it is delivered as an animated GIF by default and this flag is not\n * necessary. To deliver a single frame of a video in GIF format, use the page parameter.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction animated() {\n return new FlagQualifier('animated');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description When converting animated images to WebP format, generate an animated WebP from all the frames in the\n * original\n * animated file instead of only from the first still frame.\n *\n * Note that animated WebPs are not supported in all browsers and versions.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction animatedWebP() {\n return new FlagQualifier('awebp');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description When used together with automatic quality (q_auto):\n * allow switching to PNG8 encoding if the quality algorithm decides that it's more efficient.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction anyFormat() {\n return new FlagQualifier('any_format');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description When converting animated images to PNG format, generates an animated PNG from all the frames in the\n * original\n * animated file instead of only from the first still frame.\n *\n * Note that animated PNGs are not supported in all browsers and versions.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction animatedPng() {\n return new FlagQualifier('apng');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Trims pixels according to a clipping path included in the original image\n * (e.g., manually created using PhotoShop).\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction clip() {\n return new FlagQualifier('clip');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Trims pixels according to a clipping path included in the original image (e.g., manually created\n * using PhotoShop)\n * using an evenodd clipping rule.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction clipEvenOdd() {\n return new FlagQualifier('clip_evenodd');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Instructs Cloudinary to clear all image meta-data (IPTC, Exif and XMP) while applying an incoming\n * transformation.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction forceStrip() {\n return new FlagQualifier('force_strip');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Allows custom flag\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction custom(value) {\n return new FlagQualifier(value);\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Adds ICC color space metadata to the image, even when the original image doesn't contain any ICC data.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction forceIcc() {\n return new FlagQualifier('force_icc');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Delivers the image as an attachment.\n * @param {string} filename The attachment's filename\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction attachment(filename) {\n return new FlagQualifier('attachment', filename);\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Returns metadata of the input asset and of the transformed output asset in JSON instead of the\n * transformed image.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction getInfo() {\n return new FlagQualifier('getinfo');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Deliver an HLS adaptive bitrate streaming file as HLS v3 instead of the default version (HLS v4).\n * Delivering in this format requires a private CDN configuration.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction hlsv3() {\n return new FlagQualifier('hlsv3');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Sets the cache-control to immutable for the asset.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction immutableCache() {\n return new FlagQualifier('immutable_cache');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description * Allows specifying only either width or height so the value of the second axis remains as is, and is not\n * recalculated to maintain the aspect ratio of the original image.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction ignoreInitialAspectRatio() {\n return new FlagQualifier('ignore_aspect_ratio');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Keeps the copyright related fields when stripping meta-data.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction keepAttribution() {\n return new FlagQualifier('keep_attribution');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * Keep the Display Aspect Ratio metadata of the uploaded video (if it’s different from the current video\n * dimensions).\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction keepDar() {\n return new FlagQualifier('keep_dar');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Keeps all meta-data.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction keepIptc() {\n return new FlagQualifier('keep_iptc');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Applies all chained transformations, until a transformation component that includes this flag, on the last added\n * overlay or underlay instead of applying on the containing image.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction layerApply() {\n return new FlagQualifier('layer_apply');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Automatically use lossy compression when delivering animated GIF files.\n *\n * This flag can also be used as a conditional flag for delivering PNG files: it tells Cloudinary to deliver the\n * image in PNG format (as requested) unless there is no transparency channel - in which case deliver in JPEG\n * format.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction lossy() {\n return new FlagQualifier('lossy');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Convert the audio channel to mono\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction mono() {\n return new FlagQualifier('mono');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Used internally by Position within an Overlay, this flag will tile the overlay across your image.\n *\n * Learn more: {@link https://cloudinary.com/documentation/transformation_reference#fl_no_overflow|Overflow in overlays}\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction noOverflow() {\n return new FlagQualifier('no_overflow');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Don't stream a video that is currently being generated on the fly. Wait until the video is fully generated.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction noStream() {\n return new FlagQualifier('no_stream');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Generate PNG images in the png24 format.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction png24() {\n return new FlagQualifier('png24');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Generate PNG images in the png32 format.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction png32() {\n return new FlagQualifier('png32');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Generate PNG images in the PNG8 format.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction png8() {\n return new FlagQualifier('png8');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description When used with automatic fetch_format (f_auto): ensures that images with a transparency channel will be\n * delivered in PNG format.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction preserveTransparency() {\n return new FlagQualifier('preserve_transparency');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Generates a JPG image using the progressive (interlaced) JPG format.\n *\n * This format allows the browser to quickly show a low-quality rendering of the image until the full-quality\n * image is loaded.\n *\n * @param {string} mode? The mode to determine a specific progressive outcome as follows:\n * * semi - A smart optimization of the decoding time, compression level and progressive rendering\n * (less iterations). This is the default mode when using q_auto.\n * * steep - Delivers a preview very quickly, and in a single later phase improves the image to\n * the required resolution.\n * * none - Use this to deliver a non-progressive image. This is the default mode when setting\n * a specific value for quality.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction progressive(mode) {\n return new FlagQualifier('progressive', mode);\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Modifies percentage-based width & height parameters of overlays and underlays (e.g., 1.0) to be relative to the overlaid region\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction regionRelative() {\n return new FlagQualifier('region_relative');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Reduces the image to one flat pixelated layer (as opposed to the default vector based graphic) in\n * order to enable\n * PDF resizing and overlay manipulations.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction rasterize() {\n return new FlagQualifier('rasterize');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Modifies percentage-based width & height parameters of overlays and underlays (e.g., 1.0) to be relative to the containing image instead of the added layer.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction relative() {\n return new FlagQualifier('relative');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Instructs Cloudinary to run a sanitizer on the image (relevant only for the SVG format).\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction sanitize() {\n return new FlagQualifier('sanitize');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Splices the video stipulated as an overlay on to the end of the container video instead of adding it as an\n * overlay.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction splice() {\n return new FlagQualifier('splice');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Instructs Cloudinary to clear all ICC color profile data included with the image.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction stripProfile() {\n return new FlagQualifier('strip_profile');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description If the requested video transformation has already been generated, this flag works identically to\n * Flag::attachment.\n *\n * However, if the video transformation is being requested for the first time, this flag causes the video download\n * to begin immediately, streaming it as a fragmented video file.\n *\n * In contrast, if the regular fl_attachment flag is used when a user requests a new video transformation,\n * the download will begin only after the complete transformed video has been generated.\n *\n * Most standard video players successfully play fragmented video files without issue.\n *\n * @param {string} filename The attachment's filename\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction streamingAttachment(filename) {\n return new FlagQualifier('streaming_attachment', filename);\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Generates TIFF images using LZW compression and in the TIFF8 format.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction tiff8Lzw() {\n return new FlagQualifier('tiff8_lzw');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Used internally by Position within an Overlay, this flag will tile the overlay across your image.\n *\n * Learn more: {@link https://cloudinary.com/documentation/layers#automatic_tiling|Tiling overlay}\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction tiled() {\n return new FlagQualifier('tiled');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Truncate (trim) a video file based on the start time defined in the metadata (relevant only where the metadata\n * includes a directive to play only a section of the video).\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction truncateTS() {\n return new FlagQualifier('truncate_ts');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description Create a waveform image (in the format specified by the file extension) from the audio or video file.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction waveform() {\n return new FlagQualifier('waveform');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.Flag\n * @description A qualifier that ensures that an alpha channel is not applied to a TIFF image if it is a mask channel.\n * @return {Qualifiers.Flag.FlagQualifier}\n */\nfunction ignoreMaskChannels() {\n return new FlagQualifier('ignore_mask_channels');\n}\nconst Flag = {\n animated, anyFormat, animatedPng, animatedWebP,\n clipEvenOdd, lossy, preserveTransparency, png8, png24, png32, progressive, rasterize,\n sanitize, stripProfile, tiff8Lzw, attachment, forceIcc, forceStrip, getInfo, immutableCache,\n keepAttribution, keepIptc, custom, streamingAttachment, hlsv3, keepDar, noStream, mono,\n layerApply, relative, regionRelative, splice, truncateTS, waveform, ignoreInitialAspectRatio, clip,\n tiled, noOverflow, ignoreMaskChannels\n};\nexport { Flag, animated, anyFormat, animatedPng, animatedWebP, clipEvenOdd, lossy, preserveTransparency, png8, png24, png32, progressive, rasterize, sanitize, stripProfile, tiff8Lzw, attachment, forceIcc, forceStrip, getInfo, immutableCache, keepAttribution, keepIptc, custom, streamingAttachment, hlsv3, keepDar, noStream, mono, layerApply, relative, regionRelative, splice, truncateTS, waveform, ignoreInitialAspectRatio, clip, tiled, noOverflow, ignoreMaskChannels };\n","import { GravityQualifier } from \"../GravityQualifier.js\";\n/**\n * @description The class for the XYCenter Gravity builder\n * @memberOf Qualifiers.Gravity\n * @extends {Qualifiers.Gravity.GravityQualifier}\n */\nclass XYCenterGravity extends GravityQualifier {\n constructor() {\n // Required due to https://github.com/microsoft/TypeScript/issues/13029\n /* istanbul ignore next */\n super('xy_center');\n }\n}\nexport { XYCenterGravity };\n","import { CompassGravity } from \"./gravity/compassGravity/CompassGravity.js\";\nimport { FocusOnGravity } from \"./gravity/focusOnGravity/FocusOnGravity.js\";\nimport { AutoGravity } from \"./gravity/autoGravity/AutoGravity.js\";\nimport { XYCenterGravity } from \"./gravity/xyCenterGravity/XYCenterGravity.js\";\n/**\n * @description Defines the gravity based on directional values from a compass.\n * Learn more: {@link https://cloudinary.com/documentation/resizing_and_cropping#control_gravity|Control gravity for images}\n * Learn more: {@link https://cloudinary.com/documentation/video_resizing_and_cropping#control_gravity|Control gravity for videos}\n * @param {Qualifiers.Compass | string} direction A compass Values\n * @memberOf Qualifiers.Gravity\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {compass} from \"@cloudinary/url-gen/qualifiers/gravity\";\n * import {north} from \"@cloudinary/url-gen/qualifiers/compass\";\n * import {crop} from \"@cloudinary/url-gen/actions/resize\";\n *\n * const yourCldInstance = new Cloudinary({cloud: {cloudName: 'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.resize(crop().width(300).gravity(compass(north())))\n * @return {CompassGravity}\n */\nfunction compass(direction) {\n return new CompassGravity(direction);\n}\n/**\n * @summary qualifier\n * @description Specifies what to focus on, for example: faces, objects, eyes, etc.\n * @param {...Qualifier.FocusOn} args One or more objects to focus on\n * @memberOf Qualifiers.Gravity\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {focusOn} from \"@cloudinary/url-gen/qualifiers/gravity\";\n * import {crop} from \"@cloudinary/url-gen/actions/resize\";\n * import {cat} from \"@cloudinary/url-gen/qualifiers/focusOn\";\n *\n * const yourCldInstance = new Cloudinary({cloud: {cloudName: 'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.resize(crop().width(300).gravity(focusOn(cat())))\n * @return {FocusOnGravity}\n */\nfunction focusOn(...args) {\n const res = [...args];\n return new FocusOnGravity(res);\n}\n/**\n * @summary qualifier\n * @description Automatically identifies the most interesting regions in the asset, can be qualified further by including what to focus on.\n * @memberOf Qualifiers.Gravity\n * @return {Qualifiers.Gravity.AutoGravity}\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {autoGravity} from \"@cloudinary/url-gen/qualifiers/gravity\";\n * import {crop} from \"@cloudinary/url-gen/actions/resize\";\n *\n * const yourCldInstance = new Cloudinary({cloud: {cloudName: 'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.resize(crop().width(300).gravity(autoGravity()))\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {autoGravity} from \"@cloudinary/url-gen/qualifiers/gravity\";\n * import {crop} from \"@cloudinary/url-gen/actions/resize\";\n * import {cat} from \"@cloudinary/url-gen/qualifiers/focusOn\";\n * import {AutoFocus} from \"@cloudinary/url-gen/qualifiers/autoFocus\";\n *\n * const yourCldInstance = new Cloudinary({cloud: {cloudName: 'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.resize(crop().width(300).gravity(autoGravity().autoFocus(AutoFocus.focusOn(cat()))))\n */\nfunction autoGravity() {\n return new AutoGravity();\n}\n/**\n * @summary qualifier\n * @description Set the center of gravity to the given x & y coordinates.\n * @memberOf Qualifiers.Gravity\n * @return {XYCenterGravity}\n */\nfunction xyCenter() {\n return new XYCenterGravity();\n}\n/**\n * @description A qualifier that determines which part of an asset to focus on, and thus which part of the asset to keep, \n * when any part of the asset is cropped. For overlays, this setting determines where to place the overlay.\n * @namespace Gravity\n * @memberOf Qualifiers\n * @example\n * import {Cloudinary} from \"@cloudinary/url-gen\";\n * import {compass} from \"@cloudinary/url-gen/qualifiers/gravity\";\n * import {north} from \"@cloudinary/url-gen/qualifiers/compass\";\n * import {crop} from \"@cloudinary/url-gen/actions/resize\";\n *\n * const yourCldInstance = new Cloudinary({cloud: {cloudName: 'demo'}});\n * const image = yourCldInstance.image('woman');\n * image.resize(crop().width(300).gravity(compass(north())))\n *\n * // Expand every function separately to see its own example\n */\nconst Gravity = {\n compass: compass,\n autoGravity: autoGravity,\n focusOn: focusOn,\n xyCenter\n};\nexport { Gravity, compass, autoGravity, focusOn, xyCenter };\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","class UnsupportedError extends Error {\n constructor(message = 'Unsupported') {\n super(message);\n }\n}\n/**\n * Creates a new UnsupportedError\n * @param message\n */\nfunction createUnsupportedError(message) {\n return new UnsupportedError(message);\n}\nexport { UnsupportedError, createUnsupportedError };\n","/**\n * Returns RGB or Color\n * @private\n * @param color\n */\nexport function prepareColor(color) {\n if (color) {\n return color.match(/^#/) ? `rgb:${color.substr(1)}` : color;\n }\n else {\n return color;\n }\n}\n","import { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\n/**\n * @memberOf Qualifiers.Format\n * @extends {SDK.QualifierValue}\n */\nclass FormatQualifier extends QualifierValue {\n constructor(val) {\n super(val);\n this.val = val;\n }\n getValue() {\n return this.val;\n }\n}\nexport { FormatQualifier };\n","/**\n * @description\n * Returns a string representing the float value of the input, if the input was a number-like.\n * Examples:\n * - '1.0' -> '1.0'\n * - 1 -> '1.0'\n * - '5' -> '5.0'\n * - 'auto' -> 'auto'\n * @private\n * @param {string|number} value\n * @return {string}\n */\nexport function toFloatAsString(value) {\n // Turn the input to string\n // The Function will return `returnValue` value if the input is not a number-like expression\n const returnValue = value.toString();\n // if the string contains letters, return the input\n if (returnValue.match(/[A-Z]/gi)) {\n return returnValue;\n }\n // If the leading digit is 0, and we have more than 1 digit, it's not a number.\n // 00, 00000, 0x15 etc.\n if (returnValue.length > 1 && returnValue[0] === '0') {\n return returnValue;\n }\n // Final sanity check, parse the number as a float and check if its NaN\n const isNumberLike = !isNaN(parseFloat(returnValue)) && returnValue.indexOf(':') === -1;\n // If it's a number-like, but the input does not contain a decimal - add it.\n if (isNumberLike && returnValue.indexOf('.') === -1) {\n return `${returnValue}.0`;\n }\n else {\n // If the input already contains a decimal, just return the value\n return returnValue;\n }\n}\n","import { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\n/**\n * @memberOf Qualifiers.Flag\n * @extends {SDK.Qualifier}\n * @description the FlagQualifier class\n */\nclass FlagQualifier extends Qualifier {\n constructor(flagType, flagValue) {\n let qualifierValue;\n if (flagValue) {\n qualifierValue = new QualifierValue([flagType, `${flagValue}`]).setDelimiter(':');\n }\n else {\n qualifierValue = flagType;\n }\n super('fl', qualifierValue);\n this.flagValue = flagValue;\n }\n toString() {\n return super.toString().replace(/\\./, '%2E');\n }\n getFlagValue() {\n return this.flagValue;\n }\n}\nexport { FlagQualifier };\n","import { GravityQualifier } from \"../GravityQualifier.js\";\n/**\n * @description The class for the autoGravity builder\n * @memberOf Qualifiers.Gravity\n * @extends {Qualifiers.Gravity.GravityQualifier}\n */\nclass AutoGravity extends GravityQualifier {\n constructor() {\n // Required due to https://github.com/microsoft/TypeScript/issues/13029\n /* istanbul ignore next */\n super('auto');\n }\n /**\n * @description Autofocuses on objects, allowing their priority within the algorithm to be configured.\n * @param {AutoFocus} AutoFocusObjects\n */\n autoFocus(...AutoFocusObjects) {\n this.addValue(AutoFocusObjects);\n return this;\n }\n}\nexport { AutoGravity };\n","import { GravityQualifier } from \"../GravityQualifier.js\";\n/**\n * @description The class for the CompassGravity builder\n * @memberOf Qualifiers.Gravity\n * @extends {Qualifiers.Gravity.GravityQualifier}\n */\nclass CompassGravity extends GravityQualifier {\n constructor(dir) {\n // Required due to https://github.com/microsoft/TypeScript/issues/13029\n /* istanbul ignore next */\n super(dir);\n }\n}\nexport { CompassGravity };\n","import { GravityQualifier } from \"../GravityQualifier.js\";\n/**\n * @description The class for the FocusOn builder\n * @memberOf Qualifiers.Gravity\n * @extends {Qualifiers.Gravity.GravityQualifier}\n */\nclass FocusOnGravity extends GravityQualifier {\n constructor(FocusOnObjects) {\n // Required due to https://github.com/microsoft/TypeScript/issues/13029\n /* istanbul ignore next */\n super(FocusOnObjects);\n }\n /**\n * @description Specifies the gravity to use if none of the other gravity objects are found.\n * @param {Qualifiers.Gravity.AutoGravity} val\n */\n fallbackGravity(val) {\n /*\n * FocusOnGravity(this) is already a qualifier, with a key and a value g_{obj1}\n * fallBackGravity also attempts to add a value, to reach the result of g_{obj1}:auto:{obj2}\n * Since AutoGravity is a Qualifier, it also comes with its own g_ key, which needs to be removed.\n * To solve it, we take only the value from the qualifier, instead of the whole thing\n */\n this.addValue(val.qualifierValue);\n return this;\n }\n}\nexport { FocusOnGravity };\n","import { FocusOnValue } from \"./gravity/qualifiers/focusOn/FocusOnValue.js\";\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects birds\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction bird() {\n return new FocusOnValue('bird');\n}\n/**\n * @summary qualifier\n * @description Detects dogs\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction dog() {\n return new FocusOnValue('dog');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects cats\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction cat() {\n return new FocusOnValue('cat');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects microwaves\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction microwave() {\n return new FocusOnValue('microwave');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects refrigerators\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction refrigerator() {\n return new FocusOnValue('refrigerator');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects bottles\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction bottle() {\n return new FocusOnValue('bottle');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects sinks\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction sink() {\n return new FocusOnValue('sink');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects skateboards\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction skateboard() {\n return new FocusOnValue('skateboard');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects people\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction person() {\n return new FocusOnValue('person');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects the largest face in an image with the Advanced Facial Attribute Detection add-on and makes it the focus of the transformation.\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction advancedFace() {\n return new FocusOnValue('adv_face');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects all faces in an image with the Advanced Facial Attribute Detection add-on and makes them the focus of the transformation.\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction advancedFaces() {\n return new FocusOnValue('adv_faces');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects all eyes in an image with the Advanced Facial Attribute Detection add-on and makes them the focus of the transformation.\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction advancedEyes() {\n return new FocusOnValue('adv_eyes');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects the largest face in the asset and makes it the focus of the transformation.\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction face() {\n return new FocusOnValue('face');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects all the faces in the asset and makes them the focus of the transformation.\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction faces() {\n return new FocusOnValue('faces');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects all the faces in the asset and makes them the focus of the transformation.\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction background() {\n return new FocusOnValue('background');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects aeroplane\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction aeroplane() {\n return new FocusOnValue('aeroplane');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects bicycle\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction bicycle() {\n return new FocusOnValue('bicycle');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects boat\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction boat() {\n return new FocusOnValue('boat');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects bus\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction bus() {\n return new FocusOnValue('bus');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects car\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction car() {\n return new FocusOnValue('car');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects chair\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction chair() {\n return new FocusOnValue('chair');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects cow\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction cow() {\n return new FocusOnValue('cow');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects diningtable\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction diningtable() {\n return new FocusOnValue('diningtable');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects horse\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction horse() {\n return new FocusOnValue('horse');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects motorbike\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction motorbike() {\n return new FocusOnValue('motorbike');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects pottedplant\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction pottedplant() {\n return new FocusOnValue('pottedplant');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects sheep\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction sheep() {\n return new FocusOnValue('sheep');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects sofa\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction sofa() {\n return new FocusOnValue('sofa');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects train\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction train() {\n return new FocusOnValue('train');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detects tvmonitor\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction tvmonitor() {\n return new FocusOnValue('tvmonitor');\n}\n/**\n * @summary qualifier\n * @memberOf Qualifiers.FocusOn\n * @description Detect all text elements in an image using the {@link https://cloudinary.com/documentation/ocr_text_detection_and_extraction_addon|OCR Text Detection and Extraction add-on} and use the detected bounding box coordinates as the basis of the transformation.\n * @return {Qualifiers.FocusOn.FocusOnValue} FocusOnValue\n */\nfunction ocr() {\n return new FocusOnValue('ocr_text');\n}\n/**\n * @memberOf Qualifiers\n * @namespace FocusOn\n * @see Visit {@link Qualifiers.Gravity|Gravity} for an example\n */\nconst FocusOn = {\n person,\n cat,\n microwave,\n refrigerator,\n skateboard,\n bird,\n bottle,\n dog,\n sink,\n face,\n train,\n sofa,\n sheep,\n pottedplant,\n horse,\n faces,\n cow,\n bus,\n boat,\n advancedEyes,\n advancedFace,\n advancedFaces,\n aeroplane,\n background,\n bicycle,\n car,\n chair,\n diningtable,\n tvmonitor,\n motorbike,\n ocr\n};\nexport { FocusOnValue, FocusOn, person, cat, microwave, refrigerator, skateboard, bird, bottle, dog, sink, face, train, sofa, sheep, pottedplant, horse, faces, cow, bus, boat, advancedEyes, advancedFace, advancedFaces, aeroplane, background, bicycle, car, chair, diningtable, tvmonitor, motorbike, ocr };\n","import { createUnsupportedError } from \"../utils/unsupportedError.js\";\n/**\n * Returns the action's model\n */\nexport function qualifierToJson() {\n return this._qualifierModel || { error: createUnsupportedError(`unsupported qualifier ${this.constructor.name}`) };\n}\n","import { QualifierValue } from './QualifierValue.js';\nimport { QualifierModel } from '../models/QualifierModel.js';\n/**\n * @summary SDK\n * @memberOf SDK\n */\nclass Qualifier extends QualifierModel {\n constructor(key, qualifierValue) {\n super();\n this.delimiter = '_'; // {key}{delimiter}{qualifierValue}\n this.key = key;\n if (qualifierValue instanceof QualifierValue) {\n this.qualifierValue = qualifierValue;\n }\n else {\n this.qualifierValue = new QualifierValue();\n this.qualifierValue.addValue(qualifierValue);\n }\n }\n toString() {\n const { key, delimiter, qualifierValue } = this;\n return `${key}${delimiter}${qualifierValue.toString()}`;\n }\n addValue(value) {\n this.qualifierValue.addValue(value);\n return this;\n }\n}\nexport { Qualifier };\n","import { qualifierToJson } from \"./qualifierToJson.js\";\nexport class QualifierModel {\n constructor() {\n this._qualifierModel = {};\n }\n toJson() {\n return qualifierToJson.apply(this);\n }\n}\n","import { QualifierValue } from \"../../internal/qualifier/QualifierValue.js\";\n/**\n * @memberOf Qualifiers.AspectRatio\n * @extends {SDK.QualifierValue}\n */\nexport class AspectRatioQualifierValue extends QualifierValue {\n}\n","import { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { Action } from \"../../internal/Action.js\";\nimport { toFloatAsString } from \"../../internal/utils/toFloatAsString.js\";\nimport { AspectRatioQualifierValue } from \"../../qualifiers/aspectRatio/AspectRatioQualifierValue.js\";\nimport { ignoreInitialAspectRatio, regionRelative, relative } from \"../../qualifiers/flag.js\";\nimport { FlagQualifier } from \"../../qualifiers/flag/FlagQualifier.js\";\nimport { ACTION_TYPE_TO_CROP_MODE_MAP, CROP_MODE_TO_ACTION_TYPE_MAP } from \"../../internal/internalConstants.js\";\n/**\n * @description Defines a resize using width and height.\n * @extends SDK.Action\n * @memberOf Actions.Resize\n * @see Visit {@link Actions.Resize| Resize} for examples\n */\nclass ResizeSimpleAction extends Action {\n /**\n * @param {string} cropType\n * @param {number | string} cropWidth The required width of a transformed asset.\n * @param {number | string} cropHeight The required height of a transformed asset.\n */\n constructor(cropType, cropWidth, cropHeight) {\n super();\n this._actionModel = { dimensions: {} };\n this._actionModel.actionType = CROP_MODE_TO_ACTION_TYPE_MAP[cropType] || cropType;\n this.addQualifier(new Qualifier('c', cropType));\n cropWidth && this.width(cropWidth);\n cropHeight && this.height(cropHeight);\n }\n /**\n * @description Sets the height of the resize\n * @param {string | number} x The height in pixels (if an integer is specified) or as a percentage (if a float is specified).\n */\n height(x) {\n this._actionModel.dimensions.height = x;\n return this.addQualifier(new Qualifier('h', x));\n }\n /**\n * @description Sets the width of the resize\n * @param {string | number} x The width in pixels (if an integer is specified) or as a percentage (if a float is specified).\n */\n width(x) {\n this._actionModel.dimensions.width = x;\n return this.addQualifier(new Qualifier('w', x));\n }\n /**\n * @description Sets the aspect ratio of the asset.\n * For a list of supported types see {@link Qualifiers.AspectRatio|\n * AspectRatio values}\n * @param {AspectRatioType|number|string} ratio The new aspect ratio, specified as a percentage or ratio.\n * @return {this}\n */\n aspectRatio(ratio) {\n // toFloatAsString is used to ensure 1 turns into 1.0\n if (ratio instanceof AspectRatioQualifierValue) {\n this._actionModel.dimensions.aspectRatio = `${ratio}`;\n return this.addQualifier(new Qualifier('ar', ratio));\n }\n if (typeof ratio === 'number' || typeof ratio === 'string') {\n this._actionModel.dimensions.aspectRatio = toFloatAsString(ratio);\n return this.addQualifier(new Qualifier('ar', toFloatAsString(ratio)));\n }\n if (ratio instanceof FlagQualifier) {\n this._actionModel.dimensions.aspectRatio = `${ratio.qualifierValue}`;\n return this.addFlag(ratio);\n }\n }\n /**\n * @description Modifies percentage-based width & height parameters of overlays and underlays (e.g., 1.0) to be relative to the containing image instead of the added layer.\n * @return {this}\n */\n relative() {\n this._actionModel.relative = true;\n return this.addFlag(relative());\n }\n /**\n * @description Modifies percentage-based width & height parameters of overlays and underlays (e.g., 1.0) to be relative to the overlaid region\n * @return {this}\n */\n regionRelative() {\n this._actionModel.regionRelative = true;\n return this.addFlag(regionRelative());\n }\n static fromJson(actionModel) {\n const { actionType, dimensions, relative, regionRelative } = actionModel;\n const { aspectRatio, width, height } = dimensions;\n const cropMode = ACTION_TYPE_TO_CROP_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 const result = new this(cropMode, width, height);\n aspectRatio && result.aspectRatio(aspectRatio === 'ignore_aspect_ratio' ? ignoreInitialAspectRatio() : aspectRatio);\n relative && result.relative();\n regionRelative && result.regionRelative();\n return result;\n }\n}\nexport { ResizeSimpleAction };\n","import { AutoGravity } from \"../../qualifiers/gravity/autoGravity/AutoGravity.js\";\nimport { FocusOnGravity } from \"../../qualifiers/gravity/focusOnGravity/FocusOnGravity.js\";\nimport { autoGravity } from \"../../qualifiers/gravity.js\";\nimport { FocusOnValue } from \"../../qualifiers/focusOn.js\";\n/**\n * true if gravity starts with 'auto' or 'auto:'\n * @param gravity\n */\nfunction isIAutoGravityString(gravity) {\n return gravity && `${gravity}`.split(':')[0] === 'auto';\n}\n/**\n * Validate that given val is an ICompassGravity\n * @param gravity\n */\nfunction isCompassGravity(gravity) {\n //const gravityString = `${(typeof gravity === \"string\" ? gravity : gravity.qualifierValue)}`;\n const gravityValue = getGravityValue(gravity);\n return ['north', 'center', 'east', 'west', 'south', 'north_west', 'south_east', 'south_west', 'north_east'].includes(gravityValue);\n}\n/**\n * Get the value of given gravity\n * @param gravity\n */\nfunction getGravityValue(gravity) {\n return `${gravity}`.replace('g_', '');\n}\n/**\n * Creates a compassGravity model\n * @param gravity\n */\nfunction createCompassGravityModel(gravity) {\n return {\n compass: getGravityValue(gravity),\n gravityType: 'direction'\n };\n}\n/**\n * Validate that given gravity is an instance of ocr gravity\n * @param gravity\n */\nfunction isOcrGravity(gravity) {\n return getGravityValue(gravity) === 'ocr_text';\n}\n/**\n * Creates an ocr gravity model\n */\nfunction createOcrGravityModel() {\n return {\n gravityType: 'ocr'\n };\n}\n/**\n * Validate that given gravity is an instance of AutoGravity\n * @param gravity\n */\nfunction isAutoGravity(gravity) {\n return `${gravity.qualifierValue}`.split(':')[0] === 'auto';\n}\n/**\n * Create an instance of IAutoGravityObjectModel\n * @param gravity\n */\nfunction createIAutoFocusObject(gravity) {\n const gravityString = gravity.toString();\n const values = gravityString.split('_');\n const result = {\n object: values[0]\n };\n if (values.length > 1) {\n if (values[1] === 'avoid') {\n result.avoid = true;\n }\n else {\n result.weight = +values[1];\n }\n }\n return result;\n}\n/**\n * Creates an auto gravity model from given AutoGravity\n * @param gravity\n */\nfunction createAutoGravityModel(gravity) {\n let values;\n const gravityQualifier = gravity === 'auto' ? new AutoGravity() : gravity;\n if (`${gravity}`.startsWith('auto:')) {\n values = `${gravity}`.split(':').filter((v) => v !== 'auto');\n }\n else {\n values = gravityQualifier.qualifierValue.values.filter((v) => v !== 'auto');\n }\n const autoFocus = values.map(createIAutoFocusObject);\n return {\n gravityType: 'auto',\n autoFocus\n };\n}\n/**\n * Create IFocusOnGravityModel from FocusOnGravity\n * @param gravity\n */\nfunction createFocusOnGravityModel(gravity) {\n const hasAutoGravity = `${gravity}`.split(':').includes('auto');\n const values = gravity.qualifierValue.values;\n const focusOnValues = hasAutoGravity ? values.slice(0, values.length - 1) : values;\n const result = {\n gravityType: 'object',\n focusOnObjects: focusOnValues.map((v) => `${v}`)\n };\n if (hasAutoGravity) {\n // Remove the first 'auto' value by slicing it, because it's added by autoGravity()\n const autoFocusObjects = values[values.length - 1].values.slice(1);\n const autoGravityInstance = autoGravity().autoFocus(...autoFocusObjects);\n result.fallbackGravity = createAutoGravityModel(autoGravityInstance);\n }\n return result;\n}\n/**\n * Creates a FocusOnGravity from given string\n * @param gravity\n */\nfunction createFocusOnGravity(gravity) {\n const values = gravity.split(':');\n const focusOnValues = values.map((g) => new FocusOnValue(g));\n return new FocusOnGravity(focusOnValues);\n}\n/**\n * Create a model of given gravity\n * @param gravity\n */\nexport function createGravityModel(gravity) {\n if (isCompassGravity(gravity)) {\n return createCompassGravityModel(gravity);\n }\n if (isOcrGravity(gravity)) {\n return createOcrGravityModel();\n }\n if (isIAutoGravityString(gravity) || isAutoGravity(gravity)) {\n return createAutoGravityModel(gravity);\n }\n return createFocusOnGravityModel(typeof gravity === 'string' ? createFocusOnGravity(gravity) : gravity);\n}\n","import { QualifierValue } from \"../internal/qualifier/QualifierValue.js\";\n/**\n * @summary qualifier\n * @namespace AutoFocus\n * @memberOf Qualifiers\n * @see Visit {@link Qualifiers.Gravity|Gravity} for an example\n */\n/**\n * @memberOf Qualifiers.AutoFocus\n * @extends {SDK.QualifierValue}\n * @see Visit {@link Qualifiers.Gravity|Gravity} for an example\n */\nclass AutoFocus extends QualifierValue {\n constructor(focusOn, weight) {\n super();\n this._weight = weight;\n this.focusOn = focusOn;\n this.shouldAvoid = false;\n }\n /**\n * @summary qualifier\n * @description Specifies the object to focus on automatically\n * Accepts an AutoFocusObject (which is just a wrapper for a FocusOn object, but with extra method: avoid, weight)\n * @param {Qualifiers.FocusOn} obj The object to focus on.\n * @param {number} weight\n */\n static focusOn(obj, weight) {\n return new AutoFocus(obj, weight);\n }\n shouldAddWeight() {\n return typeof this._weight === 'number' || typeof this._weight === 'string' || this.shouldAvoid;\n }\n /**\n * @summary qualifier\n * @desc Get the name of the of the object\n */\n getName() {\n return this.focusOn.name;\n }\n /**\n * @summary qualifier\n * @desc Get the weight for the object\n */\n getWeight() {\n if (this.shouldAvoid) {\n return 'avoid';\n }\n else {\n return this._weight;\n }\n }\n /**\n * @summary qualifier\n * @desc Return the string representation of this QualifierValue\n */\n toString() {\n // Future proofing, in case we'd like to support some custom string in the future, or if data is coming from a DB\n if (this.shouldAddWeight()) {\n return `${this.getName()}_${this.getWeight()}`;\n }\n else {\n return `${this.getName()}`;\n }\n }\n /**\n * @summary qualifier\n * @description Sets the importance level of the object within the automatic gravity algorithm\n * @param {numebr} w The focus weight for the object\n * @return {this}\n */\n weight(w) {\n this._weight = w;\n return this;\n }\n /**\n * @summary qualifier\n * @description Attempts to avoid the detected object in the image\n * @return {this}\n */\n avoid() {\n this.shouldAvoid = true;\n return this;\n }\n}\nexport { AutoFocus };\n","import { QualifierValue } from \"../../../../internal/qualifier/QualifierValue.js\";\n/**\n * @memberOf Qualifiers.Compass\n * @extends {SDK.QualifierValue}\n */\nclass CompassQualifier extends QualifierValue {\n constructor(val) {\n super();\n this.val = val;\n }\n toString() {\n return this.val;\n }\n}\nexport { CompassQualifier };\n","import { autoGravity, focusOn } from \"../../qualifiers/gravity.js\";\nimport { FocusOnValue, ocr } from \"../../qualifiers/focusOn.js\";\nimport { AutoFocus } from \"../../qualifiers/autoFocus.js\";\nimport { CompassGravity } from \"../../qualifiers/gravity/compassGravity/CompassGravity.js\";\nimport { CompassQualifier } from \"../../qualifiers/gravity/qualifiers/compass/CompassQualifier.js\";\n/**\n * Validates that gravityModel is an ICompassGravityModel\n * @param gravityModel\n */\nfunction isCompassGravityModel(gravityModel) {\n return gravityModel.gravityType === 'direction';\n}\n/**\n * Validates that gravityModel is an IOcrGravityModel\n * @param gravityModel\n */\nfunction isOcrGravityModel(gravityModel) {\n return gravityModel.gravityType === 'ocr';\n}\n/**\n * Validates that gravityModel is an IAutoGravityModel\n * @param gravityModel\n */\nfunction isAutoGravityModel(gravityModel) {\n return gravityModel.gravityType === 'auto';\n}\n/**\n * Create AutoFocus from IAutoGravityObjectModel\n * @param autoGravityObjectModel\n */\nfunction createAutoFocusFromModel(autoGravityObjectModel) {\n const { object, weight, avoid } = autoGravityObjectModel;\n const autoFocus = new AutoFocus(new FocusOnValue(object));\n (weight || weight === 0) && autoFocus.weight(weight);\n avoid && autoFocus.avoid();\n return autoFocus;\n}\n/**\n * Create AutoGravity from IAutoGravityModel\n * @param gravityModel\n */\nfunction createAutoGravityFromModel(gravityModel) {\n const autoFocusModel = gravityModel.autoFocus || [];\n const autoFocus = autoFocusModel.map(createAutoFocusFromModel);\n return autoGravity().autoFocus(...autoFocus);\n}\n/**\n * Create FocusOnGravity from given IFocusOnGravityModel\n * @param gravityModel\n */\nfunction createFocusOnGravityFromModel(gravityModel) {\n const focusOnObjects = (gravityModel.focusOnObjects || []).map((str) => new FocusOnValue(str));\n const result = focusOn(...focusOnObjects);\n if (gravityModel.fallbackGravity) {\n const autoGravity = createAutoGravityFromModel(gravityModel.fallbackGravity);\n result.fallbackGravity(autoGravity);\n }\n return result;\n}\n/**\n * Create gravity instance from given gravity model\n * @param gravityModel\n */\nfunction createGravityFromModel(gravityModel) {\n if (isCompassGravityModel(gravityModel)) {\n return new CompassGravity(new CompassQualifier(gravityModel.compass));\n }\n if (isOcrGravityModel(gravityModel)) {\n return focusOn(ocr());\n }\n if (isAutoGravityModel(gravityModel)) {\n return createAutoGravityFromModel(gravityModel);\n }\n return createFocusOnGravityFromModel(gravityModel);\n}\nexport { createGravityFromModel };\n","import { ResizeSimpleAction } from \"./ResizeSimpleAction.js\";\nimport { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { createGravityModel } from \"../../internal/models/createGravityModel.js\";\nimport { createGravityFromModel } from \"../../internal/models/createGravityFromModel.js\";\n/**\n * @description Defines an advanced resize.\n * @extends Actions.Resize.ResizeSimpleAction\n * @memberOf Actions.Resize\n * @see Visit {@link Actions.Resize| Resize} for examples\n */\nclass ResizeAdvancedAction extends ResizeSimpleAction {\n /**\n * @description Which part of the original image to include.\n * @param {Qualifiers.Gravity} gravity\n */\n gravity(gravity) {\n this._actionModel.gravity = createGravityModel(gravity);\n const gravityQualifier = typeof gravity === \"string\" ? new Qualifier('g', gravity) : gravity;\n return this.addQualifier(gravityQualifier);\n }\n static fromJson(actionModel) {\n const result = super.fromJson.apply(this, [actionModel]);\n if (actionModel.gravity) {\n result.gravity(createGravityFromModel(actionModel.gravity));\n }\n return result;\n }\n}\nexport { ResizeAdvancedAction };\n","import { Qualifier } from \"../../../../internal/qualifier/Qualifier.js\";\n/**\n * @description Defines the visual appearance of the background.\n * @memberOf Qualifiers.Background\n * @extends {SDK.Qualifier}\n */\nclass BackgroundQualifier extends Qualifier {\n constructor(backgroundValue) {\n // The qualifier key for this qualifier\n super('b');\n // Such as color (b_red)\n if (backgroundValue) {\n this.addValue(backgroundValue);\n }\n }\n}\nexport { BackgroundQualifier };\n","import { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { ResizeAdvancedAction } from \"./ResizeAdvancedAction.js\";\n/**\n * @description Defines how to crop an asset\n * @extends Actions.Resize.ResizeAdvancedAction\n * @memberOf Actions.Resize\n * @see Visit {@link Actions.Resize| Resize} for examples\n */\nclass ResizeCropAction extends ResizeAdvancedAction {\n /**\n * @description Horizontal position for custom-coordinates based cropping.\n * @param {number} x The x position.\n */\n x(x) {\n this._actionModel.x = x;\n return this.addQualifier(new Qualifier('x', x));\n }\n /**\n * @description Vertical position for custom-coordinates based cropping\n * @param {number} y The y position.\n */\n y(y) {\n this._actionModel.y = y;\n return this.addQualifier(new Qualifier('y', y));\n }\n /**\n * @description Controls how much of the original image surrounding the face to keep when using either the 'crop' or 'thumb' cropping modes with face detection.\n * @param {number | string} z The zoom factor. (Default: 1.0)\n */\n zoom(z) {\n this._actionModel.zoom = z;\n return this.addQualifier(new Qualifier('z', z));\n }\n static fromJson(actionModel) {\n const result = super.fromJson.apply(this, [actionModel]);\n actionModel.x && result.x(actionModel.x);\n actionModel.y && result.y(actionModel.y);\n actionModel.zoom && result.zoom(actionModel.zoom);\n return result;\n }\n}\nexport { ResizeCropAction };\n","import { Qualifier } from \"../../internal/qualifier/Qualifier.js\";\nimport { ResizeAdvancedAction } from \"./ResizeAdvancedAction.js\";\n/**\n * @description Defines how to crop-fill an asset\n * @extends Actions.Resize.ResizeAdvancedAction\n * @memberOf Actions.Resize\n * @see Visit {@link Actions.Resize| Resize} for examples\n */\nclass ResizeFillAction extends ResizeAdvancedAction {\n /**\n * @description Absolute X position when used with Gravity.xyCenter {@link Qualifiers.Gravity.GravityQualifier}}\n * @param {number} x The x position.\n */\n x(x) {\n this._actionModel.x = x;\n return this.addQualifier(new Qualifier('x', x));\n }\n /**\n * @description Absolute Y position when used with Gravity.xyCenter {@link Qualifiers.Gravity.GravityQualifier}}\n * @param {number} y The y position.\n */\n y(y) {\n this._actionModel.y = y;\n return this.addQualifier(new Qualifier('y', y));\n }\n static fromJson(actionModel) {\n const result = super.fromJson.apply(this, [actionModel]);\n actionModel.x && result.x(actionModel.x);\n actionModel.y && result.y(actionModel.y);\n return result;\n }\n}\nexport { ResizeFillAction };\n","import { ResizeFillAction } from \"./ResizeFillAction.js\";\n/**\n * @description Defines how to crop-limit-fill an asset\n * @extends Actions.Resize.ResizeFillAction\n * @memberOf Actions.Resize\n * @see Visit {@link Actions.Resize| Resize} for examples\n */\nclass ResizeLimitFillAction extends ResizeFillAction {\n}\nexport { ResizeLimitFillAction };\n","/**\n * @description Determines how to crop, scale, and/or zoom the delivered asset according to the requested dimensions.\n * @memberOf Actions\n * @namespace Resize\n * @see Learn more about Gravity and Focus {@link Qualifiers.Gravity| here }\n * @example\n *