Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 090cbe1

Browse files
authored
Fix qualifier normalization
1 parent 7b199ef commit 090cbe1

File tree

20 files changed

+196
-34
lines changed

20 files changed

+196
-34
lines changed

src/Transformation/Adjustment/Opacity.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
namespace Cloudinary\Transformation;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1414

1515
/**
1616
* Adjusts the opacity of the image to the specified percentage of opaqueness, making it semi-transparent.
@@ -22,6 +22,6 @@
2222
*
2323
* @api
2424
*/
25-
class Opacity extends BaseQualifier implements AdjustmentInterface
25+
class Opacity extends BaseExpressionQualifier implements AdjustmentInterface
2626
{
2727
}

src/Transformation/Delivery/Dpr.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,19 +10,19 @@
1010

1111
namespace Cloudinary\Transformation\Qualifier\Dimensions;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1414

1515
/**
1616
* Class Dpr
1717
*
1818
* @api
1919
*/
20-
class Dpr extends BaseQualifier
20+
class Dpr extends BaseExpressionQualifier
2121
{
2222
/**
2323
* @var string $key Serialization key.
2424
*/
25-
protected static $key = 'dpr';
25+
protected static $key = 'dpr';
2626

2727
const AUTO = 'auto';
2828

src/Transformation/Delivery/Quality/QualityQualifier.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010

1111
namespace Cloudinary\Transformation;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1414

1515
/**
1616
* Class QualityQualifier
1717
*/
18-
class QualityQualifier extends BaseQualifier
18+
class QualityQualifier extends BaseExpressionQualifier
1919
{
2020
use QualityTrait;
2121
use QualityBuilderTrait;

src/Transformation/Effect/EffectQualifier.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@
1111
namespace Cloudinary\Transformation;
1212

1313
use Cloudinary\ClassUtils;
14-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
14+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1515

1616
/**
1717
* Class EffectQualifier
1818
*/
19-
class EffectQualifier extends BaseQualifier
19+
class EffectQualifier extends BaseExpressionQualifier
2020
{
2121
/**
2222
* @var string $key Serialization key, force it here for derived classes usage

src/Transformation/Expression/BaseExpression.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ protected function setRightOperand($rightOperand)
6767
*/
6868
public function __toString()
6969
{
70-
return (string)ExpressionUtils::normalize($this->exprValue);
70+
return ExpressionUtils::normalize($this->exprValue);
7171
}
7272

7373

src/Transformation/Expression/ExpressionUtils.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ class ExpressionUtils
4141
*
4242
* @param mixed $expression The expression to normalize.
4343
*
44-
* @return string|mixed The normalized expression.
44+
* @return string The normalized expression.
4545
*
4646
* @uses translateIf()
4747
*

src/Transformation/Positioning/X.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@
1010

1111
namespace Cloudinary\Transformation;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1414

1515
/**
1616
* Class X
1717
*/
18-
class X extends BaseQualifier
18+
class X extends BaseExpressionQualifier
1919
{
2020
}

src/Transformation/Positioning/Y.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@
1010

1111
namespace Cloudinary\Transformation;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1414

1515
/**
1616
* Class Y
1717
*/
18-
class Y extends BaseQualifier
18+
class Y extends BaseExpressionQualifier
1919
{
2020
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<?php
2+
/**
3+
* This file is part of the Cloudinary PHP package.
4+
*
5+
* (c) Cloudinary
6+
*
7+
* For the full copyright and license information, please view the LICENSE
8+
* file that was distributed with this source code.
9+
*/
10+
11+
namespace Cloudinary\Transformation\Qualifier;
12+
13+
use Cloudinary\Transformation\ExpressionQualifierMultiValue;
14+
15+
/**
16+
* Class BaseExpressionQualifier
17+
*/
18+
abstract class BaseExpressionQualifier extends BaseQualifier
19+
{
20+
/**
21+
* @var string VALUE_CLASS The class of the qualifier value. Can be customized by derived classes.
22+
*/
23+
const VALUE_CLASS = ExpressionQualifierMultiValue::class;
24+
}

src/Transformation/Qualifier/BaseQualifier.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ public function getStringQualifiers()
181181
*/
182182
public function __toString()
183183
{
184-
$value = ExpressionUtils::normalize((string)$this->value);
184+
$value = (string)$this->value;
185185

186186
/** @noinspection TypeUnsafeComparisonInspection */
187187
return $value == '' ? '' : self::getKey() . static::KEY_VALUE_DELIMITER . $value;

src/Transformation/Qualifier/Dimensions/AspectRatio.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,13 @@
1010

1111
namespace Cloudinary\Transformation;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Expression\ExpressionUtils;
14+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1415

1516
/**
1617
* Class AspectRatio
1718
*/
18-
class AspectRatio extends BaseQualifier
19+
class AspectRatio extends BaseExpressionQualifier
1920
{
2021
const MAX_VALUES = 2;
2122

@@ -104,7 +105,7 @@ public static function ignoreInitialAspectRatio()
104105
*/
105106
public function __toString()
106107
{
107-
if ((string)$this->value === self::IGNORE_INITIAL) {
108+
if ((string)$this->value === ExpressionUtils::normalize(self::IGNORE_INITIAL)) {
108109
return "";
109110
}
110111

src/Transformation/Qualifier/Dimensions/Height.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,11 @@
1010

1111
namespace Cloudinary\Transformation\Qualifier\Dimensions;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1414

1515
/**
1616
* Class Height
1717
*/
18-
class Height extends BaseQualifier
18+
class Height extends BaseExpressionQualifier
1919
{
2020
}

src/Transformation/Qualifier/Dimensions/Width.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
namespace Cloudinary\Transformation\Qualifier\Dimensions;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1414

1515
/**
1616
* Class Width
@@ -19,6 +19,6 @@
1919
* value. To set the width of the image to the initial width of the original image use the value 'iw' ('ow' has been
2020
* deprecated).
2121
*/
22-
class Width extends BaseQualifier
22+
class Width extends BaseExpressionQualifier
2323
{
2424
}

src/Transformation/Qualifier/GenericQualifier.php

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
namespace Cloudinary\Transformation\Qualifier;
1212

1313
use Cloudinary\ArrayUtils;
14-
use Cloudinary\Transformation\Expression\ExpressionUtils;
1514

1615
/**
1716
* Class GenericQualifier
@@ -67,7 +66,7 @@ public function getFullName()
6766
*/
6867
public function __toString()
6968
{
70-
$value = ExpressionUtils::normalize((string)$this->value);
69+
$value = (string)$this->value;
7170

7271
return $value === '' ? '' : $this->genericKey . static::KEY_VALUE_DELIMITER . $value;
7372
}
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
<?php
2+
/**
3+
* This file is part of the Cloudinary PHP package.
4+
*
5+
* (c) Cloudinary
6+
*
7+
* For the full copyright and license information, please view the LICENSE
8+
* file that was distributed with this source code.
9+
*/
10+
11+
namespace Cloudinary\Transformation;
12+
13+
use Cloudinary\Transformation\Expression\ExpressionUtils;
14+
use Cloudinary\Transformation\Qualifier\BaseQualifier;
15+
16+
/**
17+
* Class ExpressionQualifierMultiValue
18+
*
19+
* This class represents a complex value expression of the cloudinary transformation qualifier.
20+
*
21+
* @used-by BaseQualifier
22+
*/
23+
class ExpressionQualifierMultiValue extends QualifierMultiValue
24+
{
25+
/**
26+
* Serializes to string.
27+
*
28+
* @return string
29+
*/
30+
public function __toString()
31+
{
32+
return ExpressionUtils::normalize(parent::__toString());
33+
}
34+
}

src/Transformation/Resize/BaseResizeAction.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212

1313
use Cloudinary\ArrayUtils;
1414
use Cloudinary\ClassUtils;
15+
use Cloudinary\Transformation\Expression\ExpressionUtils;
1516
use Cloudinary\Transformation\Qualifier\Dimensions\Dimensions;
1617
use Cloudinary\Transformation\Qualifier\Dimensions\DimensionsTrait;
1718

@@ -126,7 +127,9 @@ protected function setDimension($value)
126127
$this->addQualifier(new Dimensions());
127128
}
128129

129-
if ($value instanceof AspectRatio && (string)$value->getValue() === AspectRatio::IGNORE_INITIAL) {
130+
if ($value instanceof AspectRatio
131+
&& (string)$value->getValue() === ExpressionUtils::normalize(AspectRatio::IGNORE_INITIAL)
132+
) {
130133
$this->ignoreAspectRatio();
131134
}
132135

src/Transformation/Resize/Parameter/Zoom.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@
1010

1111
namespace Cloudinary\Transformation;
1212

13-
use Cloudinary\Transformation\Qualifier\BaseQualifier;
13+
use Cloudinary\Transformation\Qualifier\BaseExpressionQualifier;
1414

1515
/**
1616
* Class Zoom
1717
*
1818
* @internal
1919
*/
20-
class Zoom extends BaseQualifier
20+
class Zoom extends BaseExpressionQualifier
2121
{
2222
}

src/Transformation/Rotation/Degree.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010

1111
namespace Cloudinary\Transformation\Argument;
1212

13+
use Cloudinary\Transformation\ExpressionQualifierMultiValue;
1314
use Cloudinary\Transformation\RotationDegreeInterface;
14-
use Cloudinary\Transformation\QualifierMultiValue;
1515

1616
/**
1717
* Defines how to rotate an image.
@@ -22,15 +22,15 @@
2222
*
2323
* @api
2424
*/
25-
class Degree extends QualifierMultiValue implements RotationDegreeInterface
25+
class Degree extends ExpressionQualifierMultiValue implements RotationDegreeInterface
2626
{
2727
const VALUE_DELIMITER = '.';
2828

2929
use AngleTrait;
3030

31-
const DEG_90 = '90';
32-
const DEG_180 = '180';
33-
const DEG_270 = '270';
31+
const DEG_90 = '90';
32+
const DEG_180 = '180';
33+
const DEG_270 = '270';
3434

3535
/**
3636
* Creates the instance.

src/Transformation/Shape/Corners.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
/**
1414
* Class Corners
1515
*/
16-
class Corners extends QualifierMultiValue
16+
class Corners extends ExpressionQualifierMultiValue
1717
{
1818
const MAX_ARGUMENTS = 4;
1919

0 commit comments

Comments
 (0)