From 9ab61d564811003eeee260fa3b80e1a64b9bd635 Mon Sep 17 00:00:00 2001 From: Christopher Gammie <4464333+lindyhopchris@users.noreply.github.com> Date: Fri, 29 Nov 2024 15:05:11 +0000 Subject: [PATCH 1/2] =?UTF-8?q?Revert=20"feat:=20support=20Illuminate\Auth?= =?UTF-8?q?\Access\Response=20returns=20from=20gates/poli=E2=80=A6"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 0f7dc1dda582cea8121efb9715df049f4f554794. --- composer.json | 1 - src/Contracts/Auth/Authorizer.php | 41 +++++++++++++++---------------- src/Core/Auth/Authorizer.php | 39 ++++++++++++++--------------- 3 files changed, 39 insertions(+), 42 deletions(-) diff --git a/composer.json b/composer.json index 0098432..16e6df1 100644 --- a/composer.json +++ b/composer.json @@ -25,7 +25,6 @@ "require": { "php": "^8.2", "ext-json": "*", - "illuminate/auth": "^11.33", "illuminate/contracts": "^11.0", "illuminate/http": "^11.0", "illuminate/support": "^11.0" diff --git a/src/Contracts/Auth/Authorizer.php b/src/Contracts/Auth/Authorizer.php index 2378e30..8c83b4d 100644 --- a/src/Contracts/Auth/Authorizer.php +++ b/src/Contracts/Auth/Authorizer.php @@ -11,7 +11,6 @@ namespace LaravelJsonApi\Contracts\Auth; -use Illuminate\Auth\Access\Response; use Illuminate\Http\Request; interface Authorizer @@ -21,45 +20,45 @@ interface Authorizer * * @param Request $request * @param string $modelClass - * @return bool|Response + * @return bool */ - public function index(Request $request, string $modelClass): bool|Response; + public function index(Request $request, string $modelClass): bool; /** * Authorize the store controller action. * * @param Request $request * @param string $modelClass - * @return bool|Response + * @return bool */ - public function store(Request $request, string $modelClass): bool|Response; + public function store(Request $request, string $modelClass): bool; /** * Authorize the show controller action. * * @param Request $request * @param object $model - * @return bool|Response + * @return bool */ - public function show(Request $request, object $model): bool|Response; + public function show(Request $request, object $model): bool; /** * Authorize the update controller action. * * @param object $model * @param Request $request - * @return bool|Response + * @return bool */ - public function update(Request $request, object $model): bool|Response; + public function update(Request $request, object $model): bool; /** * Authorize the destroy controller action. * * @param Request $request * @param object $model - * @return bool|Response + * @return bool */ - public function destroy(Request $request, object $model): bool|Response; + public function destroy(Request $request, object $model): bool; /** * Authorize the show-related controller action. @@ -67,9 +66,9 @@ public function destroy(Request $request, object $model): bool|Response; * @param Request $request * @param object $model * @param string $fieldName - * @return bool|Response + * @return bool */ - public function showRelated(Request $request, object $model, string $fieldName): bool|Response; + public function showRelated(Request $request, object $model, string $fieldName): bool; /** * Authorize the show-relationship controller action. @@ -77,9 +76,9 @@ public function showRelated(Request $request, object $model, string $fieldName): * @param Request $request * @param object $model * @param string $fieldName - * @return bool|Response + * @return bool */ - public function showRelationship(Request $request, object $model, string $fieldName): bool|Response; + public function showRelationship(Request $request, object $model, string $fieldName): bool; /** * Authorize the update-relationship controller action. @@ -87,9 +86,9 @@ public function showRelationship(Request $request, object $model, string $fieldN * @param Request $request * @param object $model * @param string $fieldName - * @return bool|Response + * @return bool */ - public function updateRelationship(Request $request, object $model, string $fieldName): bool|Response; + public function updateRelationship(Request $request, object $model, string $fieldName): bool; /** * Authorize the attach-relationship controller action. @@ -97,9 +96,9 @@ public function updateRelationship(Request $request, object $model, string $fiel * @param Request $request * @param object $model * @param string $fieldName - * @return bool|Response + * @return bool */ - public function attachRelationship(Request $request, object $model, string $fieldName): bool|Response; + public function attachRelationship(Request $request, object $model, string $fieldName): bool; /** * Authorize the detach-relationship controller action. @@ -107,7 +106,7 @@ public function attachRelationship(Request $request, object $model, string $fiel * @param Request $request * @param object $model * @param string $fieldName - * @return bool|Response + * @return bool */ - public function detachRelationship(Request $request, object $model, string $fieldName): bool|Response; + public function detachRelationship(Request $request, object $model, string $fieldName): bool; } diff --git a/src/Core/Auth/Authorizer.php b/src/Core/Auth/Authorizer.php index 2347752..31b4a8d 100644 --- a/src/Core/Auth/Authorizer.php +++ b/src/Core/Auth/Authorizer.php @@ -12,7 +12,6 @@ namespace LaravelJsonApi\Core\Auth; use Illuminate\Contracts\Auth\Access\Gate; -use Illuminate\Auth\Access\Response; use Illuminate\Http\Request; use LaravelJsonApi\Contracts\Auth\Authorizer as AuthorizerContract; use LaravelJsonApi\Contracts\Schema\Schema; @@ -48,10 +47,10 @@ public function __construct(Gate $gate, JsonApiService $service) /** * @inheritDoc */ - public function index(Request $request, string $modelClass): bool|Response + public function index(Request $request, string $modelClass): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'viewAny', $modelClass ); @@ -63,10 +62,10 @@ public function index(Request $request, string $modelClass): bool|Response /** * @inheritDoc */ - public function store(Request $request, string $modelClass): bool|Response + public function store(Request $request, string $modelClass): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'create', $modelClass ); @@ -78,10 +77,10 @@ public function store(Request $request, string $modelClass): bool|Response /** * @inheritDoc */ - public function show(Request $request, object $model): bool|Response + public function show(Request $request, object $model): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'view', $model ); @@ -93,10 +92,10 @@ public function show(Request $request, object $model): bool|Response /** * @inheritDoc */ - public function update(Request $request, object $model): bool|Response + public function update(Request $request, object $model): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'update', $model ); @@ -108,10 +107,10 @@ public function update(Request $request, object $model): bool|Response /** * @inheritDoc */ - public function destroy(Request $request, object $model): bool|Response + public function destroy(Request $request, object $model): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'delete', $model ); @@ -123,10 +122,10 @@ public function destroy(Request $request, object $model): bool|Response /** * @inheritDoc */ - public function showRelated(Request $request, object $model, string $fieldName): bool|Response + public function showRelated(Request $request, object $model, string $fieldName): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'view' . Str::classify($fieldName), $model ); @@ -138,7 +137,7 @@ public function showRelated(Request $request, object $model, string $fieldName): /** * @inheritDoc */ - public function showRelationship(Request $request, object $model, string $fieldName): bool|Response + public function showRelationship(Request $request, object $model, string $fieldName): bool { return $this->showRelated($request, $model, $fieldName); } @@ -146,10 +145,10 @@ public function showRelationship(Request $request, object $model, string $fieldN /** * @inheritDoc */ - public function updateRelationship(Request $request, object $model, string $fieldName): bool|Response + public function updateRelationship(Request $request, object $model, string $fieldName): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'update' . Str::classify($fieldName), [$model, $this->createRelation($request, $fieldName)] ); @@ -161,10 +160,10 @@ public function updateRelationship(Request $request, object $model, string $fiel /** * @inheritDoc */ - public function attachRelationship(Request $request, object $model, string $fieldName): bool|Response + public function attachRelationship(Request $request, object $model, string $fieldName): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'attach' . Str::classify($fieldName), [$model, $this->createRelation($request, $fieldName)] ); @@ -176,10 +175,10 @@ public function attachRelationship(Request $request, object $model, string $fiel /** * @inheritDoc */ - public function detachRelationship(Request $request, object $model, string $fieldName): bool|Response + public function detachRelationship(Request $request, object $model, string $fieldName): bool { if ($this->mustAuthorize()) { - return $this->gate->inspect( + return $this->gate->check( 'detach' . Str::classify($fieldName), [$model, $this->createRelation($request, $fieldName)] ); From 84da08d92449baafc210c15b6c8e76b1c4861124 Mon Sep 17 00:00:00 2001 From: Christopher Gammie Date: Fri, 29 Nov 2024 15:09:10 +0000 Subject: [PATCH 2/2] docs: update changelog and bump version --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 444db4e..2f187fd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file. This projec ## Unreleased +## [4.3.1] - 2024-11-29 + +### Fixed + +- Reverted [#19](https://github.com/laravel-json-api/core/pull/19) as the changes were breaking, so should not have been + released as a minor version. + ## [4.3.0] - 2024-11-26 ### Added