- /** @var Entity $result */
- foreach ($results['results'] as $result) {
- $result->setVisible([
- 'id', 'name', 'slug', 'book_id',
- 'chapter_id', 'draft', 'template',
- 'created_at', 'updated_at',
- 'tags', 'type',
- ]);
- $result->setAttribute('type', $result->getType());
- }
+ $data = (new ApiEntityListFormatter($results['results']->all()))
+ ->withType()->withTags()
+ ->withField('preview_html', function (Entity $entity) {
+ return [
+ 'name' => (string) $entity->getAttribute('preview_name'),
+ 'content' => (string) $entity->getAttribute('preview_content'),
+ ];
+ })->format();