From 4e0bbc48fc050bb592f6ee4d18aa179dfcbaf04b Mon Sep 17 00:00:00 2001 From: Patrick Date: Thu, 18 Feb 2021 15:51:00 +0200 Subject: [PATCH] Add flag for ignore-mask-channels --- __TESTS__/unit/actions/Flag.test.ts | 6 +++++- src/qualifiers/flag.ts | 14 ++++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/__TESTS__/unit/actions/Flag.test.ts b/__TESTS__/unit/actions/Flag.test.ts index 5f3062ec..5f8fa6c9 100644 --- a/__TESTS__/unit/actions/Flag.test.ts +++ b/__TESTS__/unit/actions/Flag.test.ts @@ -31,6 +31,9 @@ describe('Tests for Transformation Action -- Flag', () => { .addFlag(Flag.keepIptc()) .addFlag(Flag.custom('myFlag')) .addFlag(Flag.layerApply()) + .addFlag(Flag.ignoreMaskChannels()) + + .setPublicID('sample') .toURL(); @@ -57,7 +60,8 @@ describe('Tests for Transformation Action -- Flag', () => { 'fl_keep_attribution', 'fl_keep_iptc', 'fl_myFlag', - 'fl_layer_apply' + 'fl_layer_apply', + 'fl_ignore_mask_channels' ].join('/'); expect(url).toBe(`https://res.cloudinary.com/demo/image/upload/${expectedToContain}/sample`); diff --git a/src/qualifiers/flag.ts b/src/qualifiers/flag.ts index 81acae2d..9048ec26 100644 --- a/src/qualifiers/flag.ts +++ b/src/qualifiers/flag.ts @@ -484,6 +484,16 @@ function waveform(): FlagQualifier { return new FlagQualifier('waveform'); } +/** + * @summary qualifier + * @memberOf Qualifiers.Flag + * @description A qualifier that ensures that an alpha channel is not applied to a TIFF image if it is a mask channel. + * @return {Qualifiers.Flag.FlagQualifier} + */ +function ignoreMaskChannels(): FlagQualifier { + return new FlagQualifier('ignore_mask_channels'); +} + const Flag = { animated, anyFormat, animatedPng, animatedWebP, @@ -491,7 +501,7 @@ const Flag = { 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 + tiled, noOverflow, ignoreMaskChannels }; export { @@ -500,7 +510,7 @@ export { 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 + tiled, noOverflow, ignoreMaskChannels };