File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -204,6 +204,18 @@ public static function fromArray(array $data): self
204204 $ publisherData = PublisherData::fromArray ($ publisherArray );
205205 }
206206
207+ $ creators = array_map (
208+ fn (array $ item ): Creator => Creator::fromArray ($ item ),
209+ $ creatorsData
210+ );
211+ assert ($ creators !== [], 'At least one creator is required ' );
212+
213+ $ titles = array_map (
214+ fn (array $ item ): Title => Title::fromArray ($ item ),
215+ $ titlesData
216+ );
217+ assert ($ titles !== [], 'At least one title is required ' );
218+
207219 return new self (
208220 id: $ data ['id ' ],
209221 type: $ data ['type ' ],
@@ -218,14 +230,8 @@ public static function fromArray(array $data): self
218230 fn (array $ item ): AlternateIdentifier => AlternateIdentifier::fromArray ($ item ),
219231 $ alternateIdentifiersData
220232 ),
221- creators: array_map (
222- fn (array $ item ): Creator => Creator::fromArray ($ item ),
223- $ creatorsData
224- ),
225- titles: array_map (
226- fn (array $ item ): Title => Title::fromArray ($ item ),
227- $ titlesData
228- ),
233+ creators: $ creators ,
234+ titles: $ titles ,
229235 publisher: $ publisherData ?? (is_string ($ attributes ['publisher ' ]) ? $ attributes ['publisher ' ] : '' ),
230236 container: ContainerData::fromArray ($ containerData ),
231237 publicationYear: (int ) $ attributes ['publicationYear ' ],
You can’t perform that action at this time.
0 commit comments