validated()); $dumps = $action->index(Dump::query()->public(), $query, $request->schema()); return new DumpCollection($dumps, $query); } /** * @param StoreAction $action */ public function store(StoreRequest $request, StoreAction $action): DumpJsonResource { $dump = $action->store(Dump::query(), $request->validated()); return new DumpJsonResource($dump, new Query()); } public function show(ShowRequest $request, Dump $dump, ShowAction $action): DumpJsonResource { $query = new Query($request->validated()); $show = $action->show($dump, $query, $request->schema()); return new DumpJsonResource($show, $query); } public function update(UpdateRequest $request, Dump $dump, UpdateAction $action): DumpJsonResource { $updated = $action->update($dump, $request->validated()); return new DumpJsonResource($updated, new Query()); } public function destroy(Dump $dump, DestroyAction $action): JsonResponse { $message = $action->forceDelete($dump); return new JsonResponse([ 'message' => $message, ]); } }