Skip to content

Commit

Permalink
Removed Collection::groupMessagesByType() macro
Browse files Browse the repository at this point in the history
  • Loading branch information
forxer committed Apr 29, 2024
1 parent ba3c8d8 commit 2e20fa4
Show file tree
Hide file tree
Showing 8 changed files with 29 additions and 13 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ Changelog
- Minimum PHP version increased to 8.2
- Minimum version of Laravel increased to 10
- Added support for Laravel 11
- Removed `Collection::groupMessagesByType()` macro
- File names in uppercase: README.md, CHANGELOG.md and UPGRADE.md
- Added and run code quality and control tools

Expand Down
10 changes: 6 additions & 4 deletions src/Concerns/CanGroupMessagesByType.php
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<?php

declare(strict_types=1);

namespace Axn\Notifier\Concerns;

use Axn\Notifier\Notify;
Expand All @@ -20,13 +22,13 @@ public static function groupMessagesByType(Collection $messages): Collection
$messages
->groupBy('type')
->each(function ($messages, $type) use (&$infoMessages, &$successMessages, &$warningMessages, &$errorMessages): void {
if ($type == Notify::INFO) {
if ($type === Notify::INFO) {
static::groupMessagesOfSameType($messages, $infoMessages);
} elseif ($type == Notify::SUCCESS) {
} elseif ($type === Notify::SUCCESS) {
static::groupMessagesOfSameType($messages, $successMessages);
} elseif ($type == Notify::WARNING) {
} elseif ($type === Notify::WARNING) {
static::groupMessagesOfSameType($messages, $warningMessages);
} elseif ($type == Notify::ERROR) {
} elseif ($type === Notify::ERROR) {
static::groupMessagesOfSameType($messages, $errorMessages);
}
});
Expand Down
2 changes: 2 additions & 0 deletions src/Concerns/HasFlashMessages.php
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<?php

declare(strict_types=1);

namespace Axn\Notifier\Concerns;

use Axn\Notifier\Notify;
Expand Down
2 changes: 2 additions & 0 deletions src/Concerns/HasNowMessages.php
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<?php

declare(strict_types=1);

namespace Axn\Notifier\Concerns;

use Axn\Notifier\Notify;
Expand Down
2 changes: 2 additions & 0 deletions src/Notify.php
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<?php

declare(strict_types=1);

namespace Axn\Notifier;

use Axn\Notifier\Concerns\CanGroupMessagesByType;
Expand Down
17 changes: 10 additions & 7 deletions src/ServiceProvider.php
Original file line number Diff line number Diff line change
@@ -1,29 +1,32 @@
<?php

declare(strict_types=1);

namespace Axn\Notifier;

use Axn\Notifier\View\Components\NotifyComponent;
use Illuminate\Support\Collection;
use Illuminate\Support\Facades\Blade;
use Illuminate\Support\ServiceProvider as BaseServiceProvider;

class ServiceProvider extends BaseServiceProvider
{
private string $basePath = '';

public function register(): void
{
$this->mergeConfigFrom(__DIR__.'/../config/notifier.php', 'notifier');
$this->basePath = __DIR__.DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR;

$this->mergeConfigFrom($this->basePath.'config/notifier.php', 'notifier');

$this->app->bind(Notify::class, fn ($app): Notify => new Notify($app['session']));
}

public function boot(): void
{
$this->loadViewsFrom(__DIR__.'/../resources/views/', 'notifier');
$this->loadViewsFrom($this->basePath.'resources/views/', 'notifier');

Blade::component('notify', NotifyComponent::class);

Collection::macro('groupMessagesByType', fn (): Collection => Notify::groupMessagesByType($this));

if ($this->app->runningInConsole()) {
$this->configurePublishing();
}
Expand All @@ -36,12 +39,12 @@ private function configurePublishing(): void
{
// config
$this->publishes([
__DIR__.'/../config/notifier.stub' => config_path('notifier.php'),
$this->basePath.'config/notifier.stub' => $this->app->configPath('notifier.php'),
], 'notifier-config');

// views
$this->publishes([
__DIR__.'/../resources/views/' => base_path('resources/views/vendor/notifier'),
$this->basePath.'resources/views/' => $this->app->resourcePath('views/vendor/notifier'),
], 'notifier-views');
}
}
6 changes: 4 additions & 2 deletions src/View/Components/NotifyComponent.php
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<?php

declare(strict_types=1);

namespace Axn\Notifier\View\Components;

use Axn\Notifier\Notify;
Expand Down Expand Up @@ -88,7 +90,7 @@ private function flashMessages(): Collection
->count();

return $this->notify->flashMessages()
->when($this->groupByType, fn ($messages) => $messages->groupMessagesByType())
->when($this->groupByType, fn ($messages): Collection => Notify::groupMessagesByType($messages))
->when($this->sortByType, fn ($messages) => $messages->sortBy('type_order'));
}

Expand All @@ -108,7 +110,7 @@ private function nowMessages(): Collection
->count();

return $this->notify->nowMessages()
->when($this->groupByType, fn ($messages) => $messages->groupMessagesByType())
->when($this->groupByType, fn ($messages): Collection => Notify::groupMessagesByType($messages))
->when($this->sortByType, fn ($messages) => $messages->sortBy('type_order'));
}

Expand Down
2 changes: 2 additions & 0 deletions src/helpers.php
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
<?php

declare(strict_types=1);

use Axn\Notifier\Notify;

if (! function_exists('notify')) {
Expand Down

0 comments on commit 2e20fa4

Please sign in to comment.