] * @since [v4.0.16] * @return \Illuminate\Http\Response */ class SelectlistTransformer { public function transformSelectlist(LengthAwarePaginator $select_items) { $items_array = []; // Loop through the paginated collection to set the array values foreach ($select_items as $select_item) { $items_array[] = [ 'id' => (int) $select_item->id, 'text' => ($select_item->use_text) ? $select_item->use_text : $select_item->name, 'image' => ($select_item->use_image) ? $select_item->use_image : null, ]; } $results = [ 'results' => $items_array, 'pagination' => [ 'more' => ($select_items->currentPage() >= $select_items->lastPage()) ? false : true, 'per_page' => $select_items->perPage(), ], 'total_count' => $select_items->total(), 'page' => $select_items->currentPage(), 'page_count' => $select_items->lastPage(), ]; return $results; } }