all(); } public function activateTheme(string $name): void { try { app(ThemeManager::class)->activate($name); Notification::make()->title('已激活主题:'.$name)->success()->send(); } catch (\Throwable $e) { Notification::make()->title('激活失败')->body($e->getMessage())->danger()->send(); } } public function uploadThemeZip(): void { $this->validate([ 'zip' => ['required', 'file', 'mimes:zip'], ]); try { $result = app(PackageInstaller::class)->installZip($this->zip->getRealPath()); Notification::make()->title('主题安装成功:'.$result['key'])->success()->send(); } catch (\Throwable $e) { Notification::make()->title('安装失败')->body($e->getMessage())->danger()->send(); } $this->zip = null; } public function uninstallTheme(string $name): void { try { app(PackageInstaller::class)->uninstallTheme($name); Notification::make()->title('已删除主题:'.$name)->success()->send(); } catch (\Throwable $e) { Notification::make()->title('删除失败')->body($e->getMessage())->danger()->send(); } } }