RunwareModel::query()->orderBy('modality')->orderBy('price_usd')->get(), ]); } public function store(Request $request): RedirectResponse { $data = $request->validate([ 'modality' => ['required', 'in:image,video,text'], 'air_id' => ['required', 'string', 'max:255'], 'label' => ['required', 'string', 'max:255'], 'unit' => ['required', 'in:per_image,per_second,per_million_tokens'], 'price_usd' => ['required', 'numeric', 'min:0'], ]); RunwareModel::create($data); RunwareModel::recomputeDefault($data['modality']); return redirect()->route('runware-models.index'); } public function update(Request $request, RunwareModel $runwareModel): RedirectResponse { $data = $request->validate([ 'active' => ['required', 'boolean'], ]); $runwareModel->update($data); RunwareModel::recomputeDefault($runwareModel->modality); return redirect()->route('runware-models.index'); } public function destroy(RunwareModel $runwareModel): RedirectResponse { $modality = $runwareModel->modality; $runwareModel->delete(); RunwareModel::recomputeDefault($modality); return redirect()->route('runware-models.index'); } }