From 354e6f5c5aa263d01aea1c4236449cf4513f0b8e Mon Sep 17 00:00:00 2001 From: Sami Mazouz Date: Fri, 10 May 2024 14:41:21 +0100 Subject: [PATCH 1/2] feat: some flexible mutation --- src/Endpoint/Concerns/IncludesData.php | 14 ++++++++++++++ src/Schema/Field/Relationship.php | 4 ++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/Endpoint/Concerns/IncludesData.php b/src/Endpoint/Concerns/IncludesData.php index 7328171..331dced 100644 --- a/src/Endpoint/Concerns/IncludesData.php +++ b/src/Endpoint/Concerns/IncludesData.php @@ -17,6 +17,20 @@ public function defaultInclude(array $include): static return $this; } + public function addDefaultInclude(array $include): static + { + $this->defaultInclude = array_merge($this->defaultInclude ?? [], $include); + + return $this; + } + + public function removeDefaultInclude(array $include): static + { + $this->defaultInclude = array_diff($this->defaultInclude ?? [], $include); + + return $this; + } + private function getInclude(Context $context): array { if ( diff --git a/src/Schema/Field/Relationship.php b/src/Schema/Field/Relationship.php index 76627f6..5c0c331 100644 --- a/src/Schema/Field/Relationship.php +++ b/src/Schema/Field/Relationship.php @@ -37,9 +37,9 @@ public function type(string|array $type): static /** * Allow this relationship to be included. */ - public function includable(): static + public function includable(bool $includable = true): static { - $this->includable = true; + $this->includable = $includable; return $this; } From 68785f9976e575b6325bedbee444126b1d1775d4 Mon Sep 17 00:00:00 2001 From: Sami Mazouz Date: Sat, 2 Nov 2024 08:55:47 +0100 Subject: [PATCH 2/2] chore: remove mutation methods --- src/Endpoint/Concerns/IncludesData.php | 14 -------------- 1 file changed, 14 deletions(-) diff --git a/src/Endpoint/Concerns/IncludesData.php b/src/Endpoint/Concerns/IncludesData.php index 331dced..7328171 100644 --- a/src/Endpoint/Concerns/IncludesData.php +++ b/src/Endpoint/Concerns/IncludesData.php @@ -17,20 +17,6 @@ public function defaultInclude(array $include): static return $this; } - public function addDefaultInclude(array $include): static - { - $this->defaultInclude = array_merge($this->defaultInclude ?? [], $include); - - return $this; - } - - public function removeDefaultInclude(array $include): static - { - $this->defaultInclude = array_diff($this->defaultInclude ?? [], $include); - - return $this; - } - private function getInclude(Context $context): array { if (