Skip to content

Commit 1d45392

Browse files
committed
[RF] move short syntax method to helper class
1 parent d86e57e commit 1d45392

File tree

2 files changed

+23
-16
lines changed

2 files changed

+23
-16
lines changed

src/Helper/ShortSyntaxArray.php

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
<?php
2+
3+
namespace Webfactor\Laravel\Generators\Helper;
4+
5+
class ShortSyntaxArray
6+
{
7+
public static function parse(array $expression, $indent = 4): string
8+
{
9+
$object = json_decode(str_replace(['(', ')'], ['&#40', '&#41'], json_encode($expression)), true);
10+
$export = str_replace(['array (', ')', '&#40', '&#41'], ['[', ']', '(', ')'], var_export($object, true));
11+
$export = preg_replace("/ => \n[^\S\n]*\[/m", ' => [', $export);
12+
$export = preg_replace("/ => \[\n[^\S\n]*\]/m", ' => []', $export);
13+
$spaces = str_repeat(' ', $indent);
14+
$export = preg_replace("/([ ]{2})(?![^ ])/m", $spaces, $export);
15+
$export = preg_replace("/^([ ]{2})/m", $spaces, $export);
16+
17+
return $export;
18+
}
19+
}

src/Services/LanguageService.php

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,9 @@
22

33
namespace Webfactor\Laravel\Generators\Services;
44

5-
use Illuminate\Filesystem\Filesystem;
6-
use Webfactor\Laravel\Generators\Commands\MakeEntity;
75
use Webfactor\Laravel\Generators\Contracts\ServiceAbstract;
86
use Webfactor\Laravel\Generators\Contracts\ServiceInterface;
7+
use Webfactor\Laravel\Generators\Helper\ShortSyntaxArray;
98

109
class LanguageService extends ServiceAbstract implements ServiceInterface
1110
{
@@ -59,23 +58,12 @@ private function getFilePath()
5958

6059
private function getTranslationFileContent()
6160
{
61+
$content = ShortSyntaxArray::parse($this->translation);
62+
6263
return <<<FILE
6364
<?php
6465
65-
return {$this->exportToShortSyntaxArrayString($this->translation)};
66+
return {$content};
6667
FILE;
6768
}
68-
69-
private function exportToShortSyntaxArrayString(array $expression, $indent = 4)
70-
{
71-
$object = json_decode(str_replace(['(', ')'], ['&#40', '&#41'], json_encode($expression)), true);
72-
$export = str_replace(['array (', ')', '&#40', '&#41'], ['[', ']', '(', ')'], var_export($object, true));
73-
$export = preg_replace("/ => \n[^\S\n]*\[/m", ' => [', $export);
74-
$export = preg_replace("/ => \[\n[^\S\n]*\]/m", ' => []', $export);
75-
$spaces = str_repeat(' ', $indent);
76-
$export = preg_replace("/([ ]{2})(?![^ ])/m", $spaces, $export);
77-
$export = preg_replace("/^([ ]{2})/m", $spaces, $export);
78-
79-
return $export;
80-
}
8169
}

0 commit comments

Comments
 (0)