Skip to content

Commit c333930

Browse files
authored
[SYMFONY 4.4] replace Link argument values with constants (#812)
1 parent aaabd63 commit c333930

File tree

5 files changed

+157
-0
lines changed

5 files changed

+157
-0
lines changed

composer.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
"symfony/security-core": "^6.4",
2323
"symfony/security-http": "^6.4",
2424
"symfony/validator": "^6.4",
25+
"symfony/web-link": "^6.4",
2526
"symplify/phpstan-rules": "^14.6",
2627
"symplify/vendor-patches": "^11.3",
2728
"tomasvotruba/class-leak": "^2.0",

config/sets/symfony/symfony4/symfony44.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,5 @@
1212
$rectorConfig->import(__DIR__ . '/symfony44/symfony44-http-kernel.php');
1313
$rectorConfig->import(__DIR__ . '/symfony44/symfony44-templating.php');
1414
$rectorConfig->import(__DIR__ . '/symfony44/symfony44-security-core.php');
15+
$rectorConfig->import(__DIR__ . '/symfony44/symfony44-web-link.php');
1516
};
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
<?php
2+
3+
declare(strict_types=1);
4+
5+
use Rector\Arguments\Rector\ClassMethod\ReplaceArgumentDefaultValueRector;
6+
use Rector\Arguments\ValueObject\ReplaceArgumentDefaultValue;
7+
use Rector\Config\RectorConfig;
8+
9+
return static function (RectorConfig $rectorConfig): void {
10+
$rectorConfig->ruleWithConfiguration(ReplaceArgumentDefaultValueRector::class, [
11+
new ReplaceArgumentDefaultValue(
12+
'Symfony\Component\WebLink\Link',
13+
'__construct',
14+
0,
15+
'alternate',
16+
'Symfony\Component\WebLink\Link::REL_ALTERNATE'
17+
),
18+
new ReplaceArgumentDefaultValue(
19+
'Symfony\Component\WebLink\Link',
20+
'__construct',
21+
0,
22+
'author',
23+
'Symfony\Component\WebLink\Link::REL_AUTHOR'
24+
),
25+
new ReplaceArgumentDefaultValue(
26+
'Symfony\Component\WebLink\Link',
27+
'__construct',
28+
0,
29+
'help',
30+
'Symfony\Component\WebLink\Link::REL_HELP'
31+
),
32+
new ReplaceArgumentDefaultValue(
33+
'Symfony\Component\WebLink\Link',
34+
'__construct',
35+
0,
36+
'icon',
37+
'Symfony\Component\WebLink\Link::REL_ICON'
38+
),
39+
new ReplaceArgumentDefaultValue(
40+
'Symfony\Component\WebLink\Link',
41+
'__construct',
42+
0,
43+
'license',
44+
'Symfony\Component\WebLink\Link::REL_LICENSE'
45+
),
46+
new ReplaceArgumentDefaultValue(
47+
'Symfony\Component\WebLink\Link',
48+
'__construct',
49+
0,
50+
'search',
51+
'Symfony\Component\WebLink\Link::REL_SEARCH'
52+
),
53+
new ReplaceArgumentDefaultValue(
54+
'Symfony\Component\WebLink\Link',
55+
'__construct',
56+
0,
57+
'stylesheet',
58+
'Symfony\Component\WebLink\Link::REL_STYLESHEET'
59+
),
60+
new ReplaceArgumentDefaultValue(
61+
'Symfony\Component\WebLink\Link',
62+
'__construct',
63+
0,
64+
'next',
65+
'Symfony\Component\WebLink\Link::REL_NEXT'
66+
),
67+
new ReplaceArgumentDefaultValue(
68+
'Symfony\Component\WebLink\Link',
69+
'__construct',
70+
0,
71+
'prev',
72+
'Symfony\Component\WebLink\Link::REL_PREV'
73+
),
74+
new ReplaceArgumentDefaultValue(
75+
'Symfony\Component\WebLink\Link',
76+
'__construct',
77+
0,
78+
'preload',
79+
'Symfony\Component\WebLink\Link::REL_PRELOAD'
80+
),
81+
new ReplaceArgumentDefaultValue(
82+
'Symfony\Component\WebLink\Link',
83+
'__construct',
84+
0,
85+
'dns-prefetch',
86+
'Symfony\Component\WebLink\Link::REL_DNS_PREFETCH'
87+
),
88+
new ReplaceArgumentDefaultValue(
89+
'Symfony\Component\WebLink\Link',
90+
'__construct',
91+
0,
92+
'preconnect',
93+
'Symfony\Component\WebLink\Link::REL_PRECONNECT'
94+
),
95+
new ReplaceArgumentDefaultValue(
96+
'Symfony\Component\WebLink\Link',
97+
'__construct',
98+
0,
99+
'prefetch',
100+
'Symfony\Component\WebLink\Link::REL_PREFETCH'
101+
),
102+
new ReplaceArgumentDefaultValue(
103+
'Symfony\Component\WebLink\Link',
104+
'__construct',
105+
0,
106+
'prerender',
107+
'Symfony\Component\WebLink\Link::REL_PRERENDER'
108+
),
109+
new ReplaceArgumentDefaultValue(
110+
'Symfony\Component\WebLink\Link',
111+
'__construct',
112+
0,
113+
'mercure',
114+
'Symfony\Component\WebLink\Link::REL_MERCURE'
115+
),
116+
]);
117+
};

src/Set/SetProvider/Symfony4SetProvider.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,13 @@ public function provide(): array
324324
'4.4',
325325
__DIR__ . '/../../../config/sets/symfony/symfony4/symfony44.php'
326326
),
327+
328+
new ComposerTriggeredSet(
329+
SetGroup::SYMFONY,
330+
'symfony/web-link',
331+
'4.4',
332+
__DIR__ . '/../../../config/sets/symfony/symfony4/symfony44/symfony44-web-link.php'
333+
),
327334
];
328335
}
329336
}
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
<?php
2+
3+
namespace Rector\Symfony\Tests\Set\Symfony44\Fixture;
4+
5+
use Symfony\Component\WebLink\Link;
6+
7+
class ReplaceNewLinkParameterValue
8+
{
9+
public function run()
10+
{
11+
return new Link('preload');
12+
}
13+
}
14+
15+
?>
16+
-----
17+
<?php
18+
19+
namespace Rector\Symfony\Tests\Set\Symfony44\Fixture;
20+
21+
use Symfony\Component\WebLink\Link;
22+
23+
class ReplaceNewLinkParameterValue
24+
{
25+
public function run()
26+
{
27+
return new Link(\Symfony\Component\WebLink\Link::REL_PRELOAD);
28+
}
29+
}
30+
31+
?>

0 commit comments

Comments
 (0)