@@ -26,22 +26,22 @@  | 
                                                    ||
| 26 | 26 | |
| 27 | 27 |          foreach ($validators as $validator => $data) { | 
                                                        
| 28 | 28 |              switch ($validator) { | 
                                                        
| 29 | - case MinLength::class:  | 
                                                        |
| 30 | -                $element->setAttribute('minlength', $field->getValidatorOption($validator, 'value', '')); | 
                                                        |
| 31 | - break;  | 
                                                        |
| 32 | - case MaxLength::class:  | 
                                                        |
| 33 | -                $element->setAttribute('maxlength', $field->getValidatorOption($validator, 'value', '')); | 
                                                        |
| 34 | -                $element->setAttribute('mgmvlength', 'xxxxxxxxxxx'); | 
                                                        |
| 35 | - break;  | 
                                                        |
| 36 | - case Regex::class:  | 
                                                        |
| 37 | - $pattern = $field->getValidatorOption($validator, 'value', '');  | 
                                                        |
| 38 | -                if ($pattern[0] === '/' && $pattern[-1] === '/') { | 
                                                        |
| 39 | - $pattern = mb_substr($pattern, 1, mb_strlen($pattern) - 2);  | 
                                                        |
| 40 | - }  | 
                                                        |
| 41 | -                $element->setAttribute('pattern', $pattern); | 
                                                        |
| 42 | - break;  | 
                                                        |
| 43 | - default:  | 
                                                        |
| 44 | - break;  | 
                                                        |
| 29 | + case MinLength::class:  | 
                                                        |
| 30 | +                    $element->setAttribute('minlength', $field->getValidatorOption($validator, 'value', '')); | 
                                                        |
| 31 | + break;  | 
                                                        |
| 32 | + case MaxLength::class:  | 
                                                        |
| 33 | +                    $element->setAttribute('maxlength', $field->getValidatorOption($validator, 'value', '')); | 
                                                        |
| 34 | +                    $element->setAttribute('mgmvlength', 'xxxxxxxxxxx'); | 
                                                        |
| 35 | + break;  | 
                                                        |
| 36 | + case Regex::class:  | 
                                                        |
| 37 | + $pattern = $field->getValidatorOption($validator, 'value', '');  | 
                                                        |
| 38 | +                    if ($pattern[0] === '/' && $pattern[-1] === '/') { | 
                                                        |
| 39 | + $pattern = mb_substr($pattern, 1, mb_strlen($pattern) - 2);  | 
                                                        |
| 40 | + }  | 
                                                        |
| 41 | +                    $element->setAttribute('pattern', $pattern); | 
                                                        |
| 42 | + break;  | 
                                                        |
| 43 | + default:  | 
                                                        |
| 44 | + break;  | 
                                                        |
| 45 | 45 | }  | 
                                                        
| 46 | 46 | }  | 
                                                        
| 47 | 47 | |
@@ -23,12 +23,11 @@ discard block  | 
                                                    ||
| 23 | 23 | */  | 
                                                        
| 24 | 24 | function expandJS(array $data): array  | 
                                                        
| 25 | 25 |  { | 
                                                        
| 26 | -    return array_map(function ($key, $value) { | 
                                                        |
| 26 | +    return array_map(function($key, $value) { | 
                                                        |
| 27 | 27 | return "$key" .  | 
                                                        
| 28 | 28 | (  | 
                                                        
| 29 | 29 | is_array($value) ?  | 
                                                        
| 30 | -                ': {' . implode(",\n", expandJS($value)) . '}' : | 
                                                        |
| 31 | - ($value ? ':' . $value : '')  | 
                                                        |
| 30 | +                ': {' . implode(",\n", expandJS($value)) . '}' : ($value ? ':' . $value : '') | 
                                                        |
| 32 | 31 | );  | 
                                                        
| 33 | 32 | }, array_keys($data), $data);  | 
                                                        
| 34 | 33 | }  | 
                                                        
@@ -263,7 +262,7 @@ discard block  | 
                                                    ||
| 263 | 262 | */  | 
                                                        
| 264 | 263 | protected function serializeProps(array $props): string  | 
                                                        
| 265 | 264 |      { | 
                                                        
| 266 | -        $s = array_map(function ($p) { | 
                                                        |
| 265 | +        $s = array_map(function($p) { | 
                                                        |
| 267 | 266 |              return "'{$p['name']}': { 'type': {$p['type']}" . ($p['required'] ?? false ? ", 'required': true" : '') . " } "; | 
                                                        
| 268 | 267 | }, $props);  | 
                                                        
| 269 | 268 |          return "{\n        " . implode(",\n        ", $s) . "\n    }"; | 
                                                        
@@ -282,7 +281,7 @@ discard block  | 
                                                    ||
| 282 | 281 | $props = $this->props($m);  | 
                                                        
| 283 | 282 | // get only props names  | 
                                                        
| 284 | 283 | $propsNames = array_map(  | 
                                                        
| 285 | -            function ($p) { | 
                                                        |
| 284 | +            function($p) { | 
                                                        |
| 286 | 285 | return $p['name'];  | 
                                                        
| 287 | 286 | },  | 
                                                        
| 288 | 287 | $props  | 
                                                        
@@ -293,7 +292,7 @@ discard block  | 
                                                    ||
| 293 | 292 | $propsNames = array_combine($propsNames, $propsNames);  | 
                                                        
| 294 | 293 | // get the binding  | 
                                                        
| 295 | 294 | $propsBind = array_map(  | 
                                                        
| 296 | -            function ($p) { | 
                                                        |
| 295 | +            function($p) { | 
                                                        |
| 297 | 296 | return 'v-bind:' . $p . '="model.' . $p . '"';  | 
                                                        
| 298 | 297 | },  | 
                                                        
| 299 | 298 | array_keys($props)  | 
                                                        
@@ -320,13 +319,13 @@ discard block  | 
                                                    ||
| 320 | 319 |              'propsBind' => implode(' ', $propsBind), | 
                                                        
| 321 | 320 | 'imports' => implode(  | 
                                                        
| 322 | 321 | "\n",  | 
                                                        
| 323 | -                array_map(function ($key, $value) { | 
                                                        |
| 322 | +                array_map(function($key, $value) { | 
                                                        |
| 324 | 323 | return "import $key from \"$value\";";  | 
                                                        
| 325 | 324 | }, array_keys($this->imports), $this->imports)  | 
                                                        
| 326 | 325 | ),  | 
                                                        
| 327 | 326 | 'computedCode' => implode(  | 
                                                        
| 328 | 327 | "\n",  | 
                                                        
| 329 | -                array_map(function ($key, $value) { | 
                                                        |
| 328 | +                array_map(function($key, $value) { | 
                                                        |
| 330 | 329 |                      return "$key() { $value },"; | 
                                                        
| 331 | 330 | }, array_keys($this->computed), $this->computed)  | 
                                                        
| 332 | 331 | ),  | 
                                                        
@@ -336,7 +335,7 @@ discard block  | 
                                                    ||
| 336 | 335 | ),  | 
                                                        
| 337 | 336 | 'methodsCode' => implode(  | 
                                                        
| 338 | 337 | "\n",  | 
                                                        
| 339 | -                array_map(function ($key, $value) { | 
                                                        |
| 338 | +                array_map(function($key, $value) { | 
                                                        |
| 340 | 339 |                      return "$key { $value },"; | 
                                                        
| 341 | 340 | }, array_keys($this->methods), $this->methods)  | 
                                                        
| 342 | 341 | ),  | 
                                                        
@@ -31,7 +31,7 @@ discard block  | 
                                                    ||
| 31 | 31 | $frameworkNames = join(  | 
                                                        
| 32 | 32 | '/',  | 
                                                        
| 33 | 33 | array_map(  | 
                                                        
| 34 | -            function (Framework $f) { | 
                                                        |
| 34 | +            function(Framework $f) { | 
                                                        |
| 35 | 35 | return $f->getName();  | 
                                                        
| 36 | 36 | },  | 
                                                        
| 37 | 37 | $frameworkComposer->getFrameworks()  | 
                                                        
@@ -63,9 +63,9 @@ discard block  | 
                                                    ||
| 63 | 63 | 'myString' => [  | 
                                                        
| 64 | 64 | 'datatype' => 'string',  | 
                                                        
| 65 | 65 | 'validators' => [  | 
                                                        
| 66 | - MinLength::class => [ 'value' => 3 ],  | 
                                                        |
| 67 | - MaxLength::class => [ 'value' => 30 ],  | 
                                                        |
| 68 | - Datatype::REQUIRED => [ 'value' => true ],  | 
                                                        |
| 66 | + MinLength::class => ['value' => 3],  | 
                                                        |
| 67 | + MaxLength::class => ['value' => 30],  | 
                                                        |
| 68 | + Datatype::REQUIRED => ['value' => true],  | 
                                                        |
| 69 | 69 | ],  | 
                                                        
| 70 | 70 | 'renderable' => [  | 
                                                        
| 71 | 71 | Renderable::LABEL => 'Type string',  | 
                                                        
@@ -79,8 +79,8 @@ discard block  | 
                                                    ||
| 79 | 79 | 'myInteger' => [  | 
                                                        
| 80 | 80 | 'datatype' => 'integer',  | 
                                                        
| 81 | 81 | 'validators' => [  | 
                                                        
| 82 | - Min::class => [ 'value' => 4],  | 
                                                        |
| 83 | - Max::class => [ 'value' => 40],  | 
                                                        |
| 82 | + Min::class => ['value' => 4],  | 
                                                        |
| 83 | + Max::class => ['value' => 40],  | 
                                                        |
| 84 | 84 | ],  | 
                                                        
| 85 | 85 | 'renderable' => [  | 
                                                        
| 86 | 86 | Renderable_number::STEP => 2,  | 
                                                        
@@ -128,12 +128,12 @@ discard block  | 
                                                    ||
| 128 | 128 | function generateElements(array $frameworkNames, string $templateName)  | 
                                                        
| 129 | 129 |  { | 
                                                        
| 130 | 130 | $frameworkComposer = FrameworkComposer::create($frameworkNames);  | 
                                                        
| 131 | -    $wrapNode = function (string $title, HTMLNode $node) use ($frameworkComposer) { | 
                                                        |
| 131 | +    $wrapNode = function(string $title, HTMLNode $node) use ($frameworkComposer) { | 
                                                        |
| 132 | 132 | $frameworkComposer->appendFooterElement(  | 
                                                        
| 133 | 133 | new HTMLNode(  | 
                                                        
| 134 | 134 | 'section',  | 
                                                        
| 135 | - [ "class" => "spaced" ],  | 
                                                        |
| 136 | -                [new HTMLNode('h3', [], $title), $node ] | 
                                                        |
| 135 | + ["class" => "spaced"],  | 
                                                        |
| 136 | +                [new HTMLNode('h3', [], $title), $node] | 
                                                        |
| 137 | 137 | )  | 
                                                        
| 138 | 138 | );  | 
                                                        
| 139 | 139 | };  | 
                                                        
@@ -159,7 +159,7 @@ discard block  | 
                                                    ||
| 159 | 159 | 'Table',  | 
                                                        
| 160 | 160 | [  | 
                                                        
| 161 | 161 | Table::ROW_NAMES => ['First', 'Second', 'Third'],  | 
                                                        
| 162 | - Table::ROW_DATA => [ ['a', 'b', 'c'], [ 'd', 'e', 'f'] ],  | 
                                                        |
| 162 | + Table::ROW_DATA => [['a', 'b', 'c'], ['d', 'e', 'f']],  | 
                                                        |
| 163 | 163 | Table::STRIPED => true  | 
                                                        
| 164 | 164 | ]  | 
                                                        
| 165 | 165 | );  | 
                                                        
@@ -205,7 +205,7 @@ discard block  | 
                                                    ||
| 205 | 205 | * @var \Formularium\Frontend\Vue\Framework $vue  | 
                                                        
| 206 | 206 | */  | 
                                                        
| 207 | 207 |          $vue->getVueCode()->appendExtraData('file', ''); | 
                                                        
| 208 | -        $vue->getVueCode()->appendExtraData('paginator', [ "currentPage" => 1, "totalItems" => 203 ]); | 
                                                        |
| 208 | +        $vue->getVueCode()->appendExtraData('paginator', ["currentPage" => 1, "totalItems" => 203]); | 
                                                        |
| 209 | 209 | }  | 
                                                        
| 210 | 210 | |
| 211 | 211 | $html = $basicModel->editable($frameworkComposer, []);  |