Scrutinizer GitHub App not installed

We could not synchronize checks via GitHub's checks API since Scrutinizer's GitHub App is not installed for this repository.

Install GitHub App

Passed
Push — datatable-single-component ( f9bbe3...898ff0 )
by Pedro
14:27
created
src/app/Library/CrudPanel/Traits/Buttons.php 1 patch
Spacing   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -24,7 +24,7 @@  discard block
 block discarded – undo
24 24
         $otherButtons = collect([]);
25 25
 
26 26
         // we get the buttons that belong to the specified stack
27
-        $stackButtons = $this->buttons()->reject(function ($item) use ($stack, $otherButtons) {
27
+        $stackButtons = $this->buttons()->reject(function($item) use ($stack, $otherButtons) {
28 28
             if ($item->stack != $stack) {
29 29
                 // if the button does not belong to this stack we just add it for merging later
30 30
                 $otherButtons->push($item);
@@ -36,8 +36,8 @@  discard block
 block discarded – undo
36 36
         });
37 37
 
38 38
         // we parse the ordered buttons
39
-        collect($order)->each(function ($btnKey) use ($newButtons, $stackButtons) {
40
-            if (! $button = $stackButtons->where('name', $btnKey)->first()) {
39
+        collect($order)->each(function($btnKey) use ($newButtons, $stackButtons) {
40
+            if (!$button = $stackButtons->where('name', $btnKey)->first()) {
41 41
                 abort(500, 'Button name [«'.$btnKey.'»] not found.', ['developer-error-exception']);
42 42
             }
43 43
             $newButtons->push($button);
@@ -47,7 +47,7 @@  discard block
 block discarded – undo
47 47
         // we add the remaining buttons to the end of the ordered ones
48 48
         if (count($newButtons) < count($stackButtons)) {
49 49
             foreach ($stackButtons as $button) {
50
-                if (! $newButtons->where('name', $button->name)->first()) {
50
+                if (!$newButtons->where('name', $button->name)->first()) {
51 51
                     $newButtons->push($button);
52 52
                 }
53 53
             }
@@ -116,7 +116,7 @@  discard block
 block discarded – undo
116 116
          */
117 117
         $button = $this->buttons()->firstWhere('name', $name);
118 118
 
119
-        if (! $button) {
119
+        if (!$button) {
120 120
             abort(500, 'CRUD Button "'.$name.'" not found. Please ensure the button exists before you modify it.', ['developer-error-exception']);
121 121
         }
122 122
 
@@ -137,7 +137,7 @@  discard block
 block discarded – undo
137 137
      */
138 138
     public function removeButton($name, $stack = null)
139 139
     {
140
-        $this->setOperationSetting('buttons', $this->buttons()->reject(function ($button) use ($name, $stack) {
140
+        $this->setOperationSetting('buttons', $this->buttons()->reject(function($button) use ($name, $stack) {
141 141
             return $stack == null ? $button->name == $name : ($button->stack == $stack) && ($button->name == $name);
142 142
         }));
143 143
     }
@@ -148,7 +148,7 @@  discard block
 block discarded – undo
148 148
      */
149 149
     public function removeButtons($names, $stack = null)
150 150
     {
151
-        if (! empty($names)) {
151
+        if (!empty($names)) {
152 152
             foreach ($names as $name) {
153 153
                 $this->removeButton($name, $stack);
154 154
             }
@@ -162,14 +162,14 @@  discard block
 block discarded – undo
162 162
 
163 163
     public function removeAllButtonsFromStack($stack)
164 164
     {
165
-        $this->setOperationSetting('buttons', $this->buttons()->reject(function ($button) use ($stack) {
165
+        $this->setOperationSetting('buttons', $this->buttons()->reject(function($button) use ($stack) {
166 166
             return $button->stack == $stack;
167 167
         }));
168 168
     }
169 169
 
170 170
     public function removeButtonFromStack($name, $stack)
171 171
     {
172
-        $this->setOperationSetting('buttons', $this->buttons()->reject(function ($button) use ($name, $stack) {
172
+        $this->setOperationSetting('buttons', $this->buttons()->reject(function($button) use ($name, $stack) {
173 173
             return $button->name == $name && $button->stack == $stack;
174 174
         }));
175 175
     }
@@ -190,15 +190,15 @@  discard block
 block discarded – undo
190 190
         $destinationKey = $this->getButtonKey($destination);
191 191
         $newDestinationKey = ($where == 'before' ? $destinationKey : $destinationKey + 1);
192 192
 
193
-        $newButtons = $this->buttons()->filter(function ($value, $key) use ($target) {
193
+        $newButtons = $this->buttons()->filter(function($value, $key) use ($target) {
194 194
             return $value->name != $target;
195 195
         });
196 196
 
197
-        if (! $targetButton) {
197
+        if (!$targetButton) {
198 198
             return;
199 199
         }
200 200
 
201
-        if (! $destinationButton) {
201
+        if (!$destinationButton) {
202 202
             return;
203 203
         }
204 204
 
@@ -207,7 +207,7 @@  discard block
 block discarded – undo
207 207
 
208 208
         $newButtons = $firstSlice->push($targetButton);
209 209
 
210
-        $lastSlice->each(function ($item, $key) use ($newButtons) {
210
+        $lastSlice->each(function($item, $key) use ($newButtons) {
211 211
             $newButtons->push($item);
212 212
         });
213 213
 
@@ -266,7 +266,7 @@  discard block
 block discarded – undo
266 266
     /**
267 267
      * Add a new button to the current CRUD operation.
268 268
      */
269
-    public function button(string|array $nameOrAttributes): CrudButton
269
+    public function button(string | array $nameOrAttributes): CrudButton
270 270
     {
271 271
         return new CrudButton($nameOrAttributes);
272 272
     }
Please login to merge, or discard this patch.
src/app/Library/CrudPanel/Traits/FieldsProtectedMethods.php 1 patch
Spacing   +13 added lines, -13 removed lines patch added patch discarded remove patch
@@ -115,7 +115,7 @@  discard block
 block discarded – undo
115 115
             return ['name' => Str::replace(' ', '', $field)];
116 116
         }
117 117
 
118
-        if (is_array($field) && ! isset($field['name'])) {
118
+        if (is_array($field) && !isset($field['name'])) {
119 119
             abort(500, 'All fields must have their name defined', ['developer-error-exception']);
120 120
         }
121 121
 
@@ -193,7 +193,7 @@  discard block
 block discarded – undo
193 193
         }
194 194
         // if there's a model defined, but no attribute
195 195
         // guess an attribute using the identifiableAttribute functionality in CrudTrait
196
-        if (isset($field['model']) && ! isset($field['attribute']) && method_exists($field['model'], 'identifiableAttribute')) {
196
+        if (isset($field['model']) && !isset($field['attribute']) && method_exists($field['model'], 'identifiableAttribute')) {
197 197
             $field['attribute'] = (new $field['model']())->identifiableAttribute();
198 198
         }
199 199
 
@@ -209,7 +209,7 @@  discard block
 block discarded – undo
209 209
      */
210 210
     protected function makeSureFieldHasLabel($field)
211 211
     {
212
-        if (! isset($field['label'])) {
212
+        if (!isset($field['label'])) {
213 213
             $name = str_replace(',', ' ', $field['name']);
214 214
             $name = str_replace('_id', '', $name);
215 215
             $field['label'] = mb_ucfirst(str_replace('_', ' ', $name));
@@ -227,7 +227,7 @@  discard block
 block discarded – undo
227 227
      */
228 228
     protected function makeSureFieldHasType($field)
229 229
     {
230
-        if (! isset($field['type'])) {
230
+        if (!isset($field['type'])) {
231 231
             $field['type'] = isset($field['relation_type']) ? $this->inferFieldTypeFromRelationType($field['relation_type']) : $this->inferFieldTypeFromDbColumnType($field['name']);
232 232
         }
233 233
 
@@ -260,16 +260,16 @@  discard block
 block discarded – undo
260 260
      */
261 261
     protected function makeSureSubfieldsHaveNecessaryAttributes($field)
262 262
     {
263
-        if (! isset($field['subfields']) || ! is_array($field['subfields'])) {
263
+        if (!isset($field['subfields']) || !is_array($field['subfields'])) {
264 264
             return $field;
265 265
         }
266 266
 
267
-        if (! is_multidimensional_array($field['subfields'], true)) {
267
+        if (!is_multidimensional_array($field['subfields'], true)) {
268 268
             abort(500, 'Subfields of «'.$field['name'].'» are malformed. Make sure you provide an array of subfields.', ['developer-error-exception']);
269 269
         }
270 270
 
271 271
         foreach ($field['subfields'] as $key => $subfield) {
272
-            if (empty($subfield) || ! isset($subfield['name'])) {
272
+            if (empty($subfield) || !isset($subfield['name'])) {
273 273
                 abort(500, 'A subfield of «'.$field['name'].'» is malformed. Subfield attribute name can\'t be empty.', ['developer-error-exception']);
274 274
             }
275 275
 
@@ -284,7 +284,7 @@  discard block
 block discarded – undo
284 284
             $subfield['baseFieldName'] = is_array($subfield['name']) ? implode(',', $subfield['name']) : $subfield['name'];
285 285
             $subfield['baseFieldName'] = Str::afterLast($subfield['baseFieldName'], '.');
286 286
 
287
-            if (! isset($field['model'])) {
287
+            if (!isset($field['model'])) {
288 288
                 // we're inside a simple 'repeatable' with no model/relationship, so
289 289
                 // we assume all subfields are supposed to be text fields
290 290
                 $subfield['type'] = $subfield['type'] ?? 'text';
@@ -309,11 +309,11 @@  discard block
 block discarded – undo
309 309
                 case 'BelongsToMany':
310 310
                     $pivotSelectorField = static::getPivotFieldStructure($field);
311 311
 
312
-                    $pivot = Arr::where($field['subfields'], function ($item) use ($pivotSelectorField) {
312
+                    $pivot = Arr::where($field['subfields'], function($item) use ($pivotSelectorField) {
313 313
                         return $item['name'] === $pivotSelectorField['name'];
314 314
                     });
315 315
 
316
-                    if (! empty($pivot)) {
316
+                    if (!empty($pivot)) {
317 317
                         break;
318 318
                     }
319 319
 
@@ -337,11 +337,11 @@  discard block
 block discarded – undo
337 337
                     $entity = isset($field['baseEntity']) ? $field['baseEntity'].'.'.$field['entity'] : $field['entity'];
338 338
                     $relationInstance = $this->getRelationInstance(['entity' => $entity]);
339 339
 
340
-                    $localKeyField = Arr::where($field['subfields'], function ($item) use ($relationInstance) {
340
+                    $localKeyField = Arr::where($field['subfields'], function($item) use ($relationInstance) {
341 341
                         return $item['name'] === $relationInstance->getRelated()->getKeyName();
342 342
                     });
343 343
 
344
-                    if (! empty($localKeyField)) {
344
+                    if (!empty($localKeyField)) {
345 345
                         break;
346 346
                     }
347 347
 
@@ -366,7 +366,7 @@  discard block
 block discarded – undo
366 366
     {
367 367
         // if a tab was mentioned, we should enable it
368 368
         if (isset($field['tab'])) {
369
-            if (! $this->tabsEnabled()) {
369
+            if (!$this->tabsEnabled()) {
370 370
                 $this->enableTabs();
371 371
             }
372 372
         }
Please login to merge, or discard this patch.
src/app/Library/Uploaders/Support/RegisterUploadEvents.php 1 patch
Spacing   +15 added lines, -15 removed lines patch added patch discarded remove patch
@@ -14,18 +14,18 @@  discard block
 block discarded – undo
14 14
     private string $crudObjectType;
15 15
 
16 16
     public function __construct(
17
-        private readonly CrudField|CrudColumn $crudObject,
17
+        private readonly CrudField | CrudColumn $crudObject,
18 18
         private readonly array $uploaderConfiguration,
19 19
         private readonly string $macro
20 20
         ) {
21 21
         $this->crudObjectType = is_a($crudObject, CrudField::class) ? 'field' : (is_a($crudObject, CrudColumn::class) ? 'column' : null);
22 22
 
23
-        if (! $this->crudObjectType) {
23
+        if (!$this->crudObjectType) {
24 24
             abort(500, 'Upload handlers only work for CrudField and CrudColumn classes.', ['developer-error-exception']);
25 25
         }
26 26
     }
27 27
 
28
-    public static function handle(CrudField|CrudColumn $crudObject, array $uploaderConfiguration, string $macro, ?array $subfield = null, ?bool $registerModelEvents = true): void
28
+    public static function handle(CrudField | CrudColumn $crudObject, array $uploaderConfiguration, string $macro, ?array $subfield = null, ?bool $registerModelEvents = true): void
29 29
     {
30 30
         $instance = new self($crudObject, $uploaderConfiguration, $macro);
31 31
 
@@ -35,9 +35,9 @@  discard block
 block discarded – undo
35 35
     /*******************************
36 36
      * Private methods - implementation
37 37
      *******************************/
38
-    private function registerEvents(array|null $subfield = [], ?bool $registerModelEvents = true): void
38
+    private function registerEvents(array | null $subfield = [], ?bool $registerModelEvents = true): void
39 39
     {
40
-        if (! empty($subfield)) {
40
+        if (!empty($subfield)) {
41 41
             $this->registerSubfieldEvent($subfield, $registerModelEvents);
42 42
 
43 43
             return;
@@ -82,7 +82,7 @@  discard block
 block discarded – undo
82 82
         }
83 83
 
84 84
         $subfields = collect($this->crudObject->getAttributes()['subfields']);
85
-        $subfields = $subfields->map(function ($item) use ($subfield, $uploader) {
85
+        $subfields = $subfields->map(function($item) use ($subfield, $uploader) {
86 86
             if ($item['name'] === $subfield['name']) {
87 87
                 $item['upload'] = true;
88 88
                 $item['disk'] = $uploader->getDisk();
@@ -112,7 +112,7 @@  discard block
 block discarded – undo
112 112
         }
113 113
 
114 114
         if ($this->crudObjectType === 'field') {
115
-            $model::saving(function ($entry) use ($uploader) {
115
+            $model::saving(function($entry) use ($uploader) {
116 116
                 $entry = $uploader->storeUploadedFiles($entry);
117 117
             });
118 118
         }
@@ -125,7 +125,7 @@  discard block
 block discarded – undo
125 125
             // is not called in pivot models when loading the relations.
126 126
             $retrieveModel = $this->getModelForRetrieveEvent($model, $uploader);
127 127
 
128
-            $retrieveModel::retrieved(function ($entry) use ($uploader) {
128
+            $retrieveModel::retrieved(function($entry) use ($uploader) {
129 129
                 if ($entry->translationEnabled()) {
130 130
                     $locale = request('_locale', app()->getLocale());
131 131
                     if (in_array($locale, array_keys($entry->getAvailableLocales()))) {
@@ -136,14 +136,14 @@  discard block
 block discarded – undo
136 136
             });
137 137
         }
138 138
 
139
-        $model::deleting(function ($entry) use ($uploader) {
139
+        $model::deleting(function($entry) use ($uploader) {
140 140
             $uploader->deleteUploadedFiles($entry);
141 141
         });
142 142
 
143 143
         // if the uploader is a relationship and handles repeatable files, we will also register the deleting event on the
144 144
         // parent model. that way we can control the deletion of the files when the parent model is deleted.
145 145
         if ($uploader->isRelationship() && $uploader->handleRepeatableFiles) {
146
-            app('crud')->model::deleting(function ($entry) use ($uploader) {
146
+            app('crud')->model::deleting(function($entry) use ($uploader) {
147 147
                 $uploader->deleteUploadedFiles($entry);
148 148
             });
149 149
         }
@@ -165,18 +165,18 @@  discard block
 block discarded – undo
165 165
     {
166 166
         $hasCustomUploader = isset($uploaderConfiguration['uploader']);
167 167
 
168
-        if ($hasCustomUploader && ! is_a($uploaderConfiguration['uploader'], UploaderInterface::class, true)) {
168
+        if ($hasCustomUploader && !is_a($uploaderConfiguration['uploader'], UploaderInterface::class, true)) {
169 169
             throw new Exception('Invalid uploader class provided for '.$this->crudObjectType.' type: '.$crudObject['type']);
170 170
         }
171 171
 
172 172
         if ($hasCustomUploader) {
173
-            return $uploaderConfiguration['uploader']::for($crudObject, $uploaderConfiguration);
173
+            return $uploaderConfiguration['uploader']::for ($crudObject, $uploaderConfiguration);
174 174
         }
175 175
 
176 176
         $uploader = app('UploadersRepository')->hasUploadFor($crudObject['type'], $this->macro);
177 177
 
178 178
         if ($uploader) {
179
-            return app('UploadersRepository')->getUploadFor($crudObject['type'], $this->macro)::for($crudObject, $uploaderConfiguration);
179
+            return app('UploadersRepository')->getUploadFor($crudObject['type'], $this->macro)::for ($crudObject, $uploaderConfiguration);
180 180
         }
181 181
 
182 182
         throw new Exception('Undefined upload type for '.$this->crudObjectType.' type: '.$crudObject['type']);
@@ -197,7 +197,7 @@  discard block
 block discarded – undo
197 197
 
198 198
     private function getSubfieldModel(array $subfield, UploaderInterface $uploader)
199 199
     {
200
-        if (! $uploader->isRelationship()) {
200
+        if (!$uploader->isRelationship()) {
201 201
             return $subfield['baseModel'] ?? get_class(app('crud')->getModel());
202 202
         }
203 203
 
@@ -210,7 +210,7 @@  discard block
 block discarded – undo
210 210
 
211 211
     private function getModelForRetrieveEvent(string $model, UploaderInterface $uploader)
212 212
     {
213
-        if (! $uploader->isRelationship()) {
213
+        if (!$uploader->isRelationship()) {
214 214
             return $model;
215 215
         }
216 216
 
Please login to merge, or discard this patch.
src/app/Library/CrudPanel/CrudColumn.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -87,7 +87,7 @@  discard block
 block discarded – undo
87 87
      */
88 88
     public function key(string $key)
89 89
     {
90
-        if (! isset($this->attributes['name'])) {
90
+        if (!isset($this->attributes['name'])) {
91 91
             abort(500, 'Column name must be defined before changing the key.', ['developer-error-exception']);
92 92
         }
93 93
 
@@ -179,7 +179,7 @@  discard block
 block discarded – undo
179 179
      */
180 180
     public function subfields($subfields)
181 181
     {
182
-        $callAttributeMacro = ! isset($this->attributes['subfields']);
182
+        $callAttributeMacro = !isset($this->attributes['subfields']);
183 183
         $this->attributes['subfields'] = $subfields;
184 184
         $this->attributes = $this->crud()->makeSureColumnHasNeededAttributes($this->attributes);
185 185
         if ($callAttributeMacro) {
Please login to merge, or discard this patch.
src/app/Http/Controllers/Operations/CreateOperation.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -36,11 +36,11 @@
 block discarded – undo
36 36
     {
37 37
         $this->crud->allowAccess('create');
38 38
 
39
-        LifecycleHook::hookInto('create:before_setup', function () {
39
+        LifecycleHook::hookInto('create:before_setup', function() {
40 40
             $this->crud->setupDefaultSaveActions();
41 41
         });
42 42
 
43
-        LifecycleHook::hookInto('list:before_setup', function () {
43
+        LifecycleHook::hookInto('list:before_setup', function() {
44 44
             $this->crud->addButton('top', 'create', 'view', 'crud::buttons.create');
45 45
         });
46 46
     }
Please login to merge, or discard this patch.
src/app/Http/Controllers/Operations/ShowOperation.php 1 patch
Spacing   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -31,25 +31,25 @@
 block discarded – undo
31 31
         $this->crud->allowAccess('show');
32 32
         $this->crud->setOperationSetting('setFromDb', true);
33 33
 
34
-        LifecycleHook::hookInto('show:before_setup', function () {
34
+        LifecycleHook::hookInto('show:before_setup', function() {
35 35
             $this->crud->loadDefaultOperationSettingsFromConfig();
36 36
 
37
-            if (! method_exists($this, 'setupShowOperation')) {
37
+            if (!method_exists($this, 'setupShowOperation')) {
38 38
                 $this->autoSetupShowOperation();
39 39
             }
40 40
         });
41 41
 
42
-        LifecycleHook::hookInto(['list:before_setup'], function () {
42
+        LifecycleHook::hookInto(['list:before_setup'], function() {
43 43
             $this->crud->addButton('line', 'show', 'view', 'crud::buttons.show', 'beginning');
44 44
         });
45 45
 
46
-        LifecycleHook::hookInto(['create:before_setup', 'update:before_setup'], function () {
46
+        LifecycleHook::hookInto(['create:before_setup', 'update:before_setup'], function() {
47 47
             $this->crud->addSaveAction([
48 48
                 'name' => 'save_and_preview',
49
-                'visible' => function ($crud) {
49
+                'visible' => function($crud) {
50 50
                     return $crud->hasAccess('show');
51 51
                 },
52
-                'redirect' => function ($crud, $request, $itemId = null) {
52
+                'redirect' => function($crud, $request, $itemId = null) {
53 53
                     $itemId = $itemId ?: $request->input('id');
54 54
                     $redirectUrl = $crud->route.'/'.$itemId.'/show';
55 55
                     if ($request->has('_locale')) {
Please login to merge, or discard this patch.
src/app/Http/Controllers/Operations/UpdateOperation.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -36,7 +36,7 @@  discard block
 block discarded – undo
36 36
     {
37 37
         $this->crud->allowAccess('update');
38 38
 
39
-        LifecycleHook::hookInto('update:before_setup', function () {
39
+        LifecycleHook::hookInto('update:before_setup', function() {
40 40
             $this->crud->loadDefaultOperationSettingsFromConfig();
41 41
 
42 42
             if ($this->crud->getModel()->translationEnabled()) {
@@ -50,7 +50,7 @@  discard block
 block discarded – undo
50 50
             $this->crud->setupDefaultSaveActions();
51 51
         });
52 52
 
53
-        LifecycleHook::hookInto(['list:before_setup', 'show:before_setup'], function () {
53
+        LifecycleHook::hookInto(['list:before_setup', 'show:before_setup'], function() {
54 54
             $this->crud->addButton('line', 'update', 'view', 'crud::buttons.update', 'end');
55 55
         });
56 56
     }
Please login to merge, or discard this patch.
src/app/Http/Controllers/Operations/ReorderOperation.php 1 patch
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -37,7 +37,7 @@  discard block
 block discarded – undo
37 37
         $this->crud->set('reorder.enabled', true);
38 38
         $this->crud->allowAccess('reorder');
39 39
 
40
-        LifecycleHook::hookInto('reorder:before_setup', function () {
40
+        LifecycleHook::hookInto('reorder:before_setup', function() {
41 41
             $this->crud->loadDefaultOperationSettingsFromConfig();
42 42
             $this->crud->setOperationSetting('reorderColumnNames', [
43 43
                 'parent_id' => 'parent_id',
@@ -47,7 +47,7 @@  discard block
 block discarded – undo
47 47
             ]);
48 48
         });
49 49
 
50
-        LifecycleHook::hookInto('list:before_setup', function () {
50
+        LifecycleHook::hookInto('list:before_setup', function() {
51 51
             $this->crud->addButton('top', 'reorder', 'view', 'crud::buttons.reorder');
52 52
         });
53 53
     }
@@ -63,7 +63,7 @@  discard block
 block discarded – undo
63 63
     {
64 64
         $this->crud->hasAccessOrFail('reorder');
65 65
 
66
-        if (! $this->crud->isReorderEnabled()) {
66
+        if (!$this->crud->isReorderEnabled()) {
67 67
             abort(403, 'Reorder is disabled.');
68 68
         }
69 69
 
Please login to merge, or discard this patch.
src/app/Http/Controllers/Operations/DeleteOperation.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -30,11 +30,11 @@
 block discarded – undo
30 30
     {
31 31
         $this->crud->allowAccess('delete');
32 32
 
33
-        LifecycleHook::hookInto('delete:before_setup', function () {
33
+        LifecycleHook::hookInto('delete:before_setup', function() {
34 34
             $this->crud->loadDefaultOperationSettingsFromConfig();
35 35
         });
36 36
 
37
-        LifecycleHook::hookInto(['list:before_setup', 'show:before_setup'], function () {
37
+        LifecycleHook::hookInto(['list:before_setup', 'show:before_setup'], function() {
38 38
             $this->crud->addButton('line', 'delete', 'view', 'crud::buttons.delete', 'end');
39 39
         });
40 40
     }
Please login to merge, or discard this patch.