$group, 'key' => $key, 'text' => $text, ]); Event::dispatch(new TranslationCreated($languageLine)); return $languageLine; } public function update(LanguageLine $languageLine, string $group, string $key, array $text): LanguageLine { // Callers (e.g. Filament's EditRecord) may hand us a model instance // already filled with the new form values in memory — refresh from the // database first so $old reflects what's actually persisted, not what's // about to be written. $persisted = $languageLine->fresh(); $old = [ 'group' => $persisted->group, 'key' => $persisted->key, 'text' => $persisted->text, ]; $languageLine->update([ 'group' => $group, 'key' => $key, 'text' => $text, ]); Event::dispatch(new TranslationUpdated($languageLine, $old)); return $languageLine; } public function delete(LanguageLine $languageLine): void { $languageLine->delete(); Event::dispatch(new TranslationDeleted($languageLine)); } }