*/ class PlaylistController extends BaseController { /** * Store a newly created resource. * * @param null $root * @param array $args */ public function store($root, array $args): Playlist { $validated = $this->validated($args, CreatePlaylistMutation::class); $parameters = [ ...$validated, Playlist::ATTRIBUTE_USER => Auth::id(), ]; $stored = $this->storeAction->store(Playlist::query(), $parameters); return $stored; } /** * Update the specified resource. * * @param null $root * @param array $args */ public function update($root, array $args): Playlist { /** @var Playlist $playlist */ $playlist = Arr::pull($args, self::MODEL); $validated = $this->validated($args, UpdatePlaylistMutation::class); $updated = $this->updateAction->update($playlist, $validated); return $updated; } /** * Remove the specified resource. * * @param null $root * @param array $args */ public function destroy($root, array $args): array { /** @var Playlist $playlist */ $playlist = Arr::get($args, self::MODEL); $message = $this->destroyAction->forceDelete($playlist); return [ 'message' => $message, ]; } }