From 402ad1f36987004c5c5587a47fde058d91f8c776 Mon Sep 17 00:00:00 2001 From: Brady Wetherington Date: Thu, 7 Sep 2023 13:53:27 +0100 Subject: [PATCH] add new setReplace method to handle Azure PATCH operations better --- src/Attribute/Collection.php | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/Attribute/Collection.php b/src/Attribute/Collection.php index bb2cf57..8250cee 100644 --- a/src/Attribute/Collection.php +++ b/src/Attribute/Collection.php @@ -94,6 +94,16 @@ function ($value, &$object) use ($key, $parent) { $o[$key]->add($value, $object); } } + )->setReplace( + function ($value, &$object) use ($key, $parent) { + $collection = Collection::filterCollection($parent->filter, collect($parent->collection), $object); + + $result = []; + + foreach ($collection as $o) { + $o[$key]->add($value, $object); + } + } )->setRead( function (&$object) use ($key, $parent) { $collection = Collection::filterCollection($parent->filter, collect($parent->collection), $object);