Skip to content

Commit ef0ecff

Browse files
authored
Migrate to livewire v3 (#140)
* wip * Fix code styling * Update to livewire 3 and refactor components * Fix code styling * Fix phpstan error --------- Co-authored-by: mckenziearts <mckenziearts@users.noreply.github.com>
1 parent 7e5ffa3 commit ef0ecff

File tree

325 files changed

+12159
-8137
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

325 files changed

+12159
-8137
lines changed

.prettierignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
node_modules
2+
/vendor
3+
/public
4+
.git
5+
package-lock.json
6+
yarn.lock
7+
composer.lock

.prettierrc

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"printWidth": 120,
3+
"semi": false,
4+
"singleQuote": true,
5+
"tabWidth": 4,
6+
"tailwindConfig": "./tailwind.config.js",
7+
"trailingComma": "all",
8+
"plugins": [
9+
"prettier-plugin-blade",
10+
"prettier-plugin-tailwindcss"
11+
],
12+
"overrides": [
13+
{
14+
"files": [
15+
"*.blade.php"
16+
],
17+
"options": {
18+
"parser": "blade"
19+
}
20+
}
21+
]
22+
}

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,12 +55,12 @@ The following tools are required in order to start the installation.
5555

5656
Vous pouvez maintenant visiter l'application dans votre navigateur en visitant [http://laravel.cm.test](http://laravel.cm.test). Si vous avez amorcé la base de données, vous pouvez vous connecter à un compte de test avec ** `johndoe` ** & **` password` **.
5757

58-
Une fois que vous avez installé et configuré, pour avoir des dummy data vous devez exécuter la commande
58+
Une fois que vous avez installé et configuré, pour avoir des dummy data, vous devez exécuter la commande
5959
```shell
6060
php artisan db:seed --class=DummyDatabaseSeeder
6161
```
6262

63-
### Github Authentication (optionnel)
63+
### GitHub Authentication (optionnel)
6464
Pour que l'authentification Github fonctionne localement, vous devez [enregistrer une nouvelle application OAuth sur Github](https://github.com/settings/applications/new). Utilisez `http://laravel.cm.test` pour l'URL de la page d'accueil et `http://laravel.cm.test/auth/github` pour l'URL de rappel. Lorsque vous avez créé l'application, remplissez l'ID et le secret dans votre fichier `.env` dans les variables d'environnement ci-dessous. Vous devriez maintenant pouvoir vous authentifier avec Github.
6565

6666
```shell
@@ -110,7 +110,7 @@ Veuillez lire notre [Code de conduite](CODE_OF_CONDUCT.md) avant de contribuer o
110110

111111
## Vulnérabilités de sécurité
112112

113-
Si vous découvrez une faille de sécurité dans Laravel.cm, veuillez envoyer un e-mail immédiatement à [contact@arthurmonney.me](mailto:contact@arthurmonney.me). **Ne créez pas de problème pour la vulnérabilité.**
113+
Si vous découvrez une faille de sécurité dans Laravel.cm, veuillez envoyer un e-mail immédiatement à [support@laravel.cm](mailto:support@laravel.cm). **Ne créez pas de problème pour la vulnérabilité.**
114114

115115
## License
116116

app/Http/Kernel.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,23 @@ final class Kernel extends HttpKernel
1010
{
1111
protected $middleware = [
1212
// \App\Http\Middleware\TrustHosts::class,
13-
\App\Http\Middleware\TrustProxies::class,
14-
\App\Http\Middleware\HttpsProtocol::class,
13+
Middleware\TrustProxies::class,
14+
Middleware\HttpsProtocol::class,
1515
\Illuminate\Http\Middleware\HandleCors::class,
16-
\App\Http\Middleware\PreventRequestsDuringMaintenance::class,
16+
Middleware\PreventRequestsDuringMaintenance::class,
1717
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
18-
\App\Http\Middleware\TrimStrings::class,
18+
Middleware\TrimStrings::class,
1919
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
2020
];
2121

2222
protected $middlewareGroups = [
2323
'web' => [
24-
\App\Http\Middleware\EncryptCookies::class,
24+
Middleware\EncryptCookies::class,
2525
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
2626
\Illuminate\Session\Middleware\StartSession::class,
2727
// \Illuminate\Session\Middleware\AuthenticateSession::class,
2828
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
29-
\App\Http\Middleware\VerifyCsrfToken::class,
29+
Middleware\VerifyCsrfToken::class,
3030
\Illuminate\Routing\Middleware\SubstituteBindings::class,
3131
],
3232

@@ -38,11 +38,11 @@ final class Kernel extends HttpKernel
3838
];
3939

4040
protected $routeMiddleware = [
41-
'auth' => \App\Http\Middleware\Authenticate::class,
41+
'auth' => Middleware\Authenticate::class,
4242
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
4343
'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class,
4444
'can' => \Illuminate\Auth\Middleware\Authorize::class,
45-
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
45+
'guest' => Middleware\RedirectIfAuthenticated::class,
4646
'password.confirm' => \Illuminate\Auth\Middleware\RequirePassword::class,
4747
'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class,
4848
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,

app/Http/Livewire/Articles/Browse.php renamed to app/Livewire/Articles/Browse.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Articles;
5+
namespace App\Livewire\Articles;
66

77
use App\Models\Article;
88
use App\Models\Tag;

app/Http/Livewire/Articles/Create.php renamed to app/Livewire/Articles/Create.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Articles;
5+
namespace App\Livewire\Articles;
66

77
use App\Events\ArticleWasSubmittedForApproval;
88
use App\Gamify\Points\PostCreated;

app/Http/Livewire/Articles/Edit.php renamed to app/Livewire/Articles/Edit.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Articles;
5+
namespace App\Livewire\Articles;
66

77
use App\Models\Article;
88
use App\Models\Tag;

app/Http/Livewire/Discussions/AddComment.php renamed to app/Livewire/Discussions/AddComment.php

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Discussions;
5+
namespace App\Livewire\Discussions;
66

77
use App\Actions\Replies\CreateReply;
88
use App\Models\Discussion;
@@ -20,11 +20,6 @@ final class AddComment extends Component
2020

2121
public string $body = '';
2222

23-
/**
24-
* @var string[]
25-
*/
26-
protected $listeners = ['reloadComment' => '$refresh'];
27-
2823
public function mount(Discussion $discussion): void
2924
{
3025
$this->discussion = $discussion;
@@ -39,11 +34,9 @@ public function saveComment(): void
3934

4035
$comment = CreateReply::run($this->body, auth()->user(), $this->discussion);
4136

42-
$this->emitSelf('reloadComment');
43-
44-
$this->emitUp('reloadComments');
37+
$this->dispatch('$refresh')->self();
4538

46-
$this->dispatchBrowserEvent('scrollToComment', ['id' => $comment->id]);
39+
$this->dispatch('scrollToComment', ['id' => $comment->id]);
4740

4841
Notification::make()
4942
->title(__('Votre commentaire a été ajouté!'))

app/Http/Livewire/Discussions/Browse.php renamed to app/Livewire/Discussions/Browse.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Discussions;
5+
namespace App\Livewire\Discussions;
66

77
use App\Models\Discussion;
88
use App\Models\Tag;

app/Http/Livewire/Discussions/Comment.php renamed to app/Livewire/Discussions/Comment.php

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Discussions;
5+
namespace App\Livewire\Discussions;
66

77
use App\Actions\Replies\LikeReply;
88
use App\Models\Reply;
@@ -15,11 +15,6 @@ final class Comment extends Component
1515
{
1616
public Reply $comment;
1717

18-
/**
19-
* @var string[]
20-
*/
21-
protected $listeners = ['reloadComment' => '$refresh'];
22-
2318
public function delete(): void
2419
{
2520
$this->comment->delete();
@@ -30,7 +25,7 @@ public function delete(): void
3025
->duration(5000)
3126
->send();
3227

33-
$this->emitUp('reloadComment');
28+
$this->dispatch('reloadComment');
3429
}
3530

3631
public function toggleLike(): void
@@ -47,7 +42,7 @@ public function toggleLike(): void
4742

4843
LikeReply::run(auth()->user(), $this->comment);
4944

50-
$this->emitSelf('reloadComment');
45+
$this->dispatch('reloadComment')->self();
5146
}
5247

5348
public function render(): View

app/Http/Livewire/Discussions/Comments.php renamed to app/Livewire/Discussions/Comments.php

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,19 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Discussions;
5+
namespace App\Livewire\Discussions;
66

77
use App\Models\Discussion;
88
use App\Models\Reply;
99
use Illuminate\Contracts\View\View;
1010
use Illuminate\Support\Collection;
11+
use Livewire\Attributes\On;
1112
use Livewire\Component;
1213

1314
final class Comments extends Component
1415
{
1516
public Discussion $discussion;
1617

17-
/**
18-
* @var string[]
19-
*/
20-
public $listeners = ['reloadComments' => '$refresh'];
21-
2218
public function mount(Discussion $discussion): void
2319
{
2420
$this->discussion = $discussion;
@@ -42,6 +38,7 @@ public function getCommentsProperty(): Collection
4238
return $replies;
4339
}
4440

41+
#[On('reloadComments')]
4542
public function render(): View
4643
{
4744
return view('livewire.discussions.comments');

app/Http/Livewire/Discussions/Create.php renamed to app/Livewire/Discussions/Create.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Discussions;
5+
namespace App\Livewire\Discussions;
66

77
use App\Gamify\Points\DiscussionCreated;
88
use App\Models\Discussion;

app/Http/Livewire/Discussions/Edit.php renamed to app/Livewire/Discussions/Edit.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Discussions;
5+
namespace App\Livewire\Discussions;
66

77
use App\Models\Discussion;
88
use App\Models\Tag;

app/Http/Livewire/Discussions/Subscribe.php renamed to app/Livewire/Discussions/Subscribe.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Discussions;
5+
namespace App\Livewire\Discussions;
66

77
use App\Models\Discussion;
88
use App\Models\Subscribe as SubscribeModel;
@@ -41,7 +41,7 @@ public function subscribe(): void
4141
->duration(5000)
4242
->send();
4343

44-
$this->emitSelf('refresh');
44+
$this->dispatch('refresh')->self();
4545
}
4646

4747
public function unsubscribe(): void
@@ -59,7 +59,7 @@ public function unsubscribe(): void
5959
->duration(5000)
6060
->send();
6161

62-
$this->emitSelf('refresh');
62+
$this->dispatch('refresh')->self();
6363
}
6464

6565
public function render(): View

app/Http/Livewire/Editor.php renamed to app/Livewire/Editor.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire;
5+
namespace App\Livewire;
66

77
use App\Markdown\MarkdownHelper;
88
use Illuminate\Contracts\View\View;
@@ -31,12 +31,12 @@ public function getPreviewProperty(): string
3131

3232
public function preview(): void
3333
{
34-
$this->emit('previewRequested');
34+
$this->dispatch('previewRequested');
3535
}
3636

3737
public function updatedBody(): void
3838
{
39-
$this->emitUp('editor:update', $this->body);
39+
$this->dispatch('editor:update', body: $this->body);
4040
}
4141

4242
public function render(): View

app/Http/Livewire/Forum/CreateReply.php renamed to app/Livewire/Forum/CreateReply.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Forum;
5+
namespace App\Livewire\Forum;
66

77
use App\Events\ReplyWasCreated;
88
use App\Gamify\Points\ReplyCreated;

app/Http/Livewire/Forum/CreateThread.php renamed to app/Livewire/Forum/CreateThread.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Forum;
5+
namespace App\Livewire\Forum;
66

77
use App\Events\ThreadWasCreated;
88
use App\Gamify\Points\ThreadCreated;

app/Http/Livewire/Forum/EditThread.php renamed to app/Livewire/Forum/EditThread.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Forum;
5+
namespace App\Livewire\Forum;
66

77
use App\Models\Channel;
88
use App\Models\Thread;

app/Http/Livewire/Forum/Reply.php renamed to app/Livewire/Forum/Reply.php

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

33
declare(strict_types=1);
44

5-
namespace App\Http\Livewire\Forum;
5+
namespace App\Livewire\Forum;
66

77
use App\Gamify\Points\BestReply;
88
use App\Models\Reply as ReplyModel;
@@ -71,7 +71,7 @@ public function edit(): void
7171

7272
$this->isUpdating = false;
7373

74-
$this->emitSelf('refresh');
74+
$this->dispatch('refresh')->self();
7575
}
7676

7777
public function UnMarkAsSolution(): void
@@ -82,7 +82,7 @@ public function UnMarkAsSolution(): void
8282

8383
$this->thread->unmarkSolution();
8484

85-
$this->emitSelf('refresh');
85+
$this->dispatch('refresh')->self();
8686

8787
Notification::make()
8888
->title(__('Réponse rejetée'))
@@ -104,7 +104,7 @@ public function markAsSolution(): void
104104

105105
givePoint(new BestReply($this->reply));
106106

107-
$this->emitSelf('refresh');
107+
$this->dispatch('refresh')->self();
108108

109109
Notification::make()
110110
->title(__('Réponse acceptée'))

0 commit comments

Comments
 (0)