diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9da321487..2c5b60b9b 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,7 +6,7 @@ on: jobs: setup-ubuntu: - runs-on: ubuntu-20.04 + runs-on: ubuntu-22.04 steps: - name: Check for GitHub API key @@ -21,14 +21,21 @@ jobs: echo "GitHub API key found." fi + - name: Setup PHP 8.0 and Composer + uses: shivammathur/setup-php@v2 + with: + php-version: '8.0' + tools: composer:v2 + extensions: mbstring, intl, zip, curl, sqlite, pdo_sqlite + coverage: none + + - name: Verify PHP version + run: php -v + - name: Updating Dependencies + zip run: | cd ~ - curl -sS https://getcomposer.org/installer -o /tmp/composer-setup.php - HASH=`curl -sS https://composer.github.io/installer.sig` - sudo php /tmp/composer-setup.php --install-dir=/usr/local/bin --filename=composer - - sudo update-alternatives --set php /usr/bin/php8.0 + # Composer already provided by setup-php cd /tmp mkdir linkstack @@ -52,9 +59,7 @@ jobs: cp "../../version.json" "version.json" - composer update --no-scripts - - php artisan lang:update + composer update --no-dev --no-scripts php artisan migrate php artisan db:seed @@ -173,12 +178,12 @@ jobs: TAG_VERSION="${GITHUB_REF##*/}" version=${TAG_VERSION#"v"} - # Install the OpenSSH client - sudo apt-get install -y openssh-client + # Install required clients + sudo apt-get update + sudo apt-get install -y openssh-client sshpass # Clear the remote directory sshpass -p "${{ secrets.SERVER_PASSWORD }}" ssh -o StrictHostKeyChecking=no -p ${{ secrets.SERVER_PORT }} ${{ secrets.SERVER_USER }}@${{ secrets.SERVER_IP }} "rm -rf ${{ secrets.REMOTE_PATH }}/*" # Use SSH to upload the file to the remote server - sshpass -p "${{ secrets.SERVER_PASSWORD }}" scp -o StrictHostKeyChecking=no -P ${{ secrets.SERVER_PORT }} $version.zip ${{ secrets.SERVER_USER }}@${{ secrets.SERVER_IP }}:${{ secrets.REMOTE_PATH }} - + sshpass -p "${{ secrets.SERVER_PASSWORD }}" scp -o StrictHostKeyChecking=no -P ${{ secrets.SERVER_PORT }} $version.zip ${{ secrets.SERVER_USER }}@${{ secrets.SERVER_IP }}:${{ secrets.REMOTE_PATH }} \ No newline at end of file diff --git a/README.md b/README.md index 46a3012bd..e6e5c08c6 100644 --- a/README.md +++ b/README.md @@ -30,14 +30,14 @@
--- @@ -45,7 +45,7 @@ --- @@ -169,7 +169,7 @@ The official docker version of [LinkStack](https://github.com/linkstackorg/links The docker version of LinkStack retains all the features and customization options of the [original version](https://github.com/linkstackorg/linkstack). -This docker is based on [Alpine Linux](https://www.alpinelinux.org), a Linux distribution designed to be small, simple and secure. The web server is running [Apache2](https://www.apache.org), a free and open-source cross-platform web server software. The docker comes with [PHP 8.0](https://www.php.net/releases/8.0/en.php) for high compatibility and performance. +This docker is based on [Alpine Linux](https://www.alpinelinux.org), a Linux distribution designed to be small, simple and secure. The web server is running [Apache2](https://www.apache.org), a free and open-source cross-platform web server software. The docker comes with [PHP 8.2](https://www.php.net/releases/8.2/en.php) for high compatibility and performance. #### Using the docker is as simple as pulling and deploying. @@ -221,7 +221,7 @@ The updater may fail without throwing an error and just remain on the current ve ## License -[](https://www.gnu.org/licenses/agpl-3.0) +[](https://www.gnu.org/licenses/agpl-3.0) As of version 4.0.0, the license for this project has been updated to the GNU Affero General Public License v3.0, which explicitly requires that any modifications made to the project must be made public. This license also requires that a copyright notice and license notice be included in any copies or derivative works of the project. diff --git a/app/Functions/functions.php b/app/Functions/functions.php index 6e6350fd8..eacfe19e1 100644 --- a/app/Functions/functions.php +++ b/app/Functions/functions.php @@ -1,48 +1,110 @@ $fingerprint, + 'files' => $files + ]; + if (class_exists('Redis')) { + try { + Redis::setex($cacheKey, $ttl, json_encode($data)); + } catch (\Exception $e) { + // fallback silently + } + } else { + // Laravel cache fallback + Cache::put($cacheKey, $data, $ttl); + } + + $memoryCache[$directory] = $files; + + return $files; + } +} + function findFile($name) { $directory = base_path("/assets/linkstack/images/"); - $files = scandir($directory); - $pathinfo = "error.error"; + $files = preloadDirectoryFiles($directory, 'linkstack_images_files'); + $pattern = '/^' . preg_quote($name, '/') . '(_\w+)?\.\w+$/i'; foreach ($files as $file) { if (preg_match($pattern, $file)) { - $pathinfo = $file; - break; + return $file; } } - return $pathinfo; + return "error.error"; } function findAvatar($name) { $directory = base_path("assets/img"); - $files = scandir($directory); - $pathinfo = "error.error"; + $files = preloadDirectoryFiles($directory, 'assets_img_files'); + $pattern = '/^' . preg_quote($name, '/') . '(_\w+)?\.\w+$/i'; foreach ($files as $file) { if (preg_match($pattern, $file)) { - $pathinfo = "assets/img/" . $file; - break; + return "assets/img/" . $file; } } - return $pathinfo; + return "error.error"; } function findBackground($name) { $directory = base_path("assets/img/background-img/"); - $files = scandir($directory); - $pathinfo = "error.error"; + $files = preloadDirectoryFiles($directory, 'assets_img_background_files'); + $pattern = '/^' . preg_quote($name, '/') . '(_\w+)?\.\w+$/i'; foreach ($files as $file) { if (preg_match($pattern, $file)) { - $pathinfo = $file; - break; + return $file; } } - return $pathinfo; + return "error.error"; } function analyzeImageBrightness($file) { diff --git a/app/Http/Controllers/AdminController.php b/app/Http/Controllers/AdminController.php index 1e356b25e..8dc6874d9 100755 --- a/app/Http/Controllers/AdminController.php +++ b/app/Http/Controllers/AdminController.php @@ -31,737 +31,939 @@ class AdminController extends Controller { - //Statistics of the number of clicks and links - public function index() - { - $userId = Auth::user()->id; - $littlelink_name = Auth::user()->littlelink_name; - $links = Link::where('user_id', $userId)->select('link')->count(); - $clicks = Link::where('user_id', $userId)->sum('click_number'); - - $userNumber = User::count(); - $siteLinks = Link::count(); - $siteClicks = Link::sum('click_number'); - - $users = User::select('id', 'name', 'email', 'created_at', 'updated_at')->get(); - $lastMonthCount = $users->where('created_at', '>=', Carbon::now()->subDays(30))->count(); - $lastWeekCount = $users->where('created_at', '>=', Carbon::now()->subDays(7))->count(); - $last24HrsCount = $users->where('created_at', '>=', Carbon::now()->subHours(24))->count(); - $updatedLast30DaysCount = $users->where('updated_at', '>=', Carbon::now()->subDays(30))->count(); - $updatedLast7DaysCount = $users->where('updated_at', '>=', Carbon::now()->subDays(7))->count(); - $updatedLast24HrsCount = $users->where('updated_at', '>=', Carbon::now()->subHours(24))->count(); - - $links = Link::where('user_id', $userId)->select('link')->count(); - $clicks = Link::where('user_id', $userId)->sum('click_number'); - $topLinks = Link::where('user_id', $userId)->orderby('click_number', 'desc') - ->whereNotNull('link')->where('link', '<>', '') - ->take(5)->get(); - - $pageStats = [ - 'visitors' => [ - 'all' => visits('App\Models\User', $littlelink_name)->count(), - 'day' => visits('App\Models\User', $littlelink_name)->period('day')->count(), - 'week' => visits('App\Models\User', $littlelink_name)->period('week')->count(), - 'month' => visits('App\Models\User', $littlelink_name)->period('month')->count(), - 'year' => visits('App\Models\User', $littlelink_name)->period('year')->count(), - ], - 'os' => visits('App\Models\User', $littlelink_name)->operatingSystems(), - 'referers' => visits('App\Models\User', $littlelink_name)->refs(), - 'countries' => visits('App\Models\User', $littlelink_name)->countries(), - ]; - - return view('panel/index', ['lastMonthCount' => $lastMonthCount,'lastWeekCount' => $lastWeekCount,'last24HrsCount' => $last24HrsCount,'updatedLast30DaysCount' => $updatedLast30DaysCount,'updatedLast7DaysCount' => $updatedLast7DaysCount,'updatedLast24HrsCount' => $updatedLast24HrsCount,'toplinks' => $topLinks, 'links' => $links, 'clicks' => $clicks, 'pageStats' => $pageStats, 'littlelink_name' => $littlelink_name, 'links' => $links, 'clicks' => $clicks, 'siteLinks' => $siteLinks, 'siteClicks' => $siteClicks, 'userNumber' => $userNumber]); - } - -// Users page -public function users() -{ - return view('panel/users'); -} - -// Send test mail -public function SendTestMail(Request $request) -{ + //Statistics of the number of clicks and links + public function index() + { + $userId = Auth::user()->id; + $littlelink_name = Auth::user()->littlelink_name; + $links = Link::where("user_id", $userId)->select("link")->count(); + $clicks = Link::where("user_id", $userId)->sum("click_number"); + + $userNumber = User::count(); + $siteLinks = Link::count(); + $siteClicks = Link::sum("click_number"); + + $users = User::select( + "id", + "name", + "email", + "created_at", + "updated_at", + )->get(); + $lastMonthCount = $users + ->where("created_at", ">=", Carbon::now()->subDays(30)) + ->count(); + $lastWeekCount = $users + ->where("created_at", ">=", Carbon::now()->subDays(7)) + ->count(); + $last24HrsCount = $users + ->where("created_at", ">=", Carbon::now()->subHours(24)) + ->count(); + $updatedLast30DaysCount = $users + ->where("updated_at", ">=", Carbon::now()->subDays(30)) + ->count(); + $updatedLast7DaysCount = $users + ->where("updated_at", ">=", Carbon::now()->subDays(7)) + ->count(); + $updatedLast24HrsCount = $users + ->where("updated_at", ">=", Carbon::now()->subHours(24)) + ->count(); + + $links = Link::where("user_id", $userId)->select("link")->count(); + $clicks = Link::where("user_id", $userId)->sum("click_number"); + $topLinks = Link::where("user_id", $userId) + ->orderby("click_number", "desc") + ->whereNotNull("link") + ->where("link", "<>", "") + ->take(5) + ->get(); + + $pageStats = [ + "visitors" => [ + "all" => visits("App\Models\User", $littlelink_name)->count(), + "day" => visits("App\Models\User", $littlelink_name) + ->period("day") + ->count(), + "week" => visits("App\Models\User", $littlelink_name) + ->period("week") + ->count(), + "month" => visits("App\Models\User", $littlelink_name) + ->period("month") + ->count(), + "year" => visits("App\Models\User", $littlelink_name) + ->period("year") + ->count(), + ], + "os" => visits("App\Models\User", $littlelink_name)->operatingSystems(), + "referers" => visits("App\Models\User", $littlelink_name)->refs(), + "countries" => visits("App\Models\User", $littlelink_name)->countries(), + ]; + + return view("panel/index", [ + "lastMonthCount" => $lastMonthCount, + "lastWeekCount" => $lastWeekCount, + "last24HrsCount" => $last24HrsCount, + "updatedLast30DaysCount" => $updatedLast30DaysCount, + "updatedLast7DaysCount" => $updatedLast7DaysCount, + "updatedLast24HrsCount" => $updatedLast24HrsCount, + "toplinks" => $topLinks, + "links" => $links, + "clicks" => $clicks, + "pageStats" => $pageStats, + "littlelink_name" => $littlelink_name, + "links" => $links, + "clicks" => $clicks, + "siteLinks" => $siteLinks, + "siteClicks" => $siteClicks, + "userNumber" => $userNumber, + ]); + } + + // Users page + public function users() + { + return view("panel/users"); + } + + // Send test mail + public function SendTestMail(Request $request) + { try { - $userId = auth()->id(); - $user = User::findOrFail($userId); - - Mail::send('auth.test', ['user' => $user], function ($message) use ($user) { - $message->to($user->email) - ->subject('Test Email'); - }); - - return redirect()->route('showConfig')->with('success', 'Test email sent successfully!'); + $userId = auth()->id(); + $user = User::findOrFail($userId); + + Mail::send("auth.test", ["user" => $user], function ($message) use ( + $user, + ) { + $message->to($user->email)->subject("Test Email"); + }); + + return redirect() + ->route("showConfig") + ->with("success", "Test email sent successfully!"); } catch (\Exception $e) { - return redirect()->route('showConfig')->with('fail', 'Failed to send test email.'); - } -} - - //Block user - public function blockUser(request $request) - { - $id = $request->id; - $status = $request->block; - - if ($status == 'yes') { - $block = 'no'; - } elseif ($status == 'no') { - $block = 'yes'; - } - - User::where('id', $id)->update(['block' => $block]); - - return redirect('admin/users/all'); - } - - //Verify user - public function verifyCheckUser(request $request) - { - $id = $request->id; - $status = $request->verify; - - if ($status == 'vip') { - $verify = 'vip'; - UserData::saveData($id, 'checkmark', true); - } elseif ($status == 'user') { - $verify = 'user'; - } - - User::where('id', $id)->update(['role' => $verify]); - - return redirect(url('u')."/".$id); - } + return redirect() + ->route("showConfig") + ->with("fail", "Failed to send test email."); + } + } - //Verify or un-verify users emails - public function verifyUser(request $request) - { - $id = $request->id; - $status = $request->verify; - - if ($status == "true") { - $verify = '0000-00-00 00:00:00'; - } else { - $verify = NULL; - } + //Block user + public function blockUser(request $request) + { + $id = $request->id; + $status = $request->block; - User::where('id', $id)->update(['email_verified_at' => $verify]); + if ($status == "yes") { + $block = "no"; + } elseif ($status == "no") { + $block = "yes"; } - //Create new user from the Admin Panel - public function createNewUser() - { - - function random_str( - int $length = 64, - string $keyspace = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' - ): string { - if ($length < 1) { - throw new \RangeException("Length must be a positive integer"); - } - $pieces = []; - $max = mb_strlen($keyspace, '8bit') - 1; - for ($i = 0; $i < $length; ++$i) { - $pieces[] = $keyspace[random_int(0, $max)]; - } - return implode('', $pieces); - } - - $names = User::pluck('name')->toArray(); - - $adminCreatedNames = array_filter($names, function($name) { - return strpos($name, 'Admin-Created-') === 0; - }); - - $numbers = array_map(function($name) { - return (int) str_replace('Admin-Created-', '', $name); - }, $adminCreatedNames); + User::where("id", $id)->update(["block" => $block]); - $maxNumber = !empty($numbers) ? max($numbers) : 0; - $newNumber = $maxNumber + 1; + return redirect("admin/users/all"); + } - $domain = parse_url(url(''), PHP_URL_HOST); - $domain = ($domain == 'localhost') ? 'example.com' : $domain; + //Verify user + public function verifyCheckUser(request $request) + { + $id = $request->id; + $status = $request->verify; - $user = User::create([ - 'name' => 'Admin-Created-' . $newNumber, - 'email' => strtolower(random_str(8)) . '@' . $domain, - 'password' => Hash::make(random_str(32)), - 'role' => 'user', - 'block' => 'no', - ]); - - return redirect('admin/edit-user/' . $user->id); + if ($status == "vip") { + $verify = "vip"; + UserData::saveData($id, "checkmark", true); + } elseif ($status == "user") { + $verify = "user"; } - //Delete existing user - public function deleteUser(request $request) - { - $id = $request->id; - - Link::where('user_id', $id)->delete(); - - Schema::disableForeignKeyConstraints(); - - $user = User::find($id); - $user->forceDelete(); - - Schema::enableForeignKeyConstraints(); - - return redirect('admin/users/all'); - } + User::where("id", $id)->update(["role" => $verify]); - //Delete existing user with POST request - public function deleteTableUser(request $request) - { - $id = $request->id; - - Link::where('user_id', $id)->delete(); - - Schema::disableForeignKeyConstraints(); - - $user = User::find($id); - $user->forceDelete(); - - Schema::enableForeignKeyConstraints(); - } + return redirect(url("u") . "/" . $id); + } - //Show user to edit - public function showUser(request $request) - { - $id = $request->id; + //Verify or un-verify users emails + public function verifyUser(request $request) + { + $id = $request->id; + $status = $request->verify; - $data['user'] = User::where('id', $id)->get(); - - return view('panel/edit-user', $data); + if ($status == "true") { + $verify = "0000-00-00 00:00:00"; + } else { + $verify = null; } - //Show link, click number, up link in links page - public function showLinksUser(request $request) - { - $id = $request->id; - - $data['user'] = User::where('id', $id)->get(); + User::where("id", $id)->update(["email_verified_at" => $verify]); + } - $data['links'] = Link::select('id', 'link', 'title', 'order', 'click_number', 'up_link', 'links.button_id')->where('user_id', $id)->orderBy('up_link', 'asc')->orderBy('order', 'asc')->paginate(10); - return view('panel/links', $data); + //Create new user from the Admin Panel + public function createNewUser() + { + function random_str( + int $length = 64, + string $keyspace = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ", + ): string { + if ($length < 1) { + throw new \RangeException("Length must be a positive integer"); + } + $pieces = []; + $max = mb_strlen($keyspace, "8bit") - 1; + for ($i = 0; $i < $length; ++$i) { + $pieces[] = $keyspace[random_int(0, $max)]; + } + return implode("", $pieces); } - //Delete link - public function deleteLinkUser(request $request) - { - $linkId = $request->id; + $names = User::pluck("name")->toArray(); - Link::where('id', $linkId)->delete(); + $adminCreatedNames = array_filter($names, function ($name) { + return strpos($name, "Admin-Created-") === 0; + }); - return back(); - } + $numbers = array_map(function ($name) { + return (int) str_replace("Admin-Created-", "", $name); + }, $adminCreatedNames); + + $maxNumber = !empty($numbers) ? max($numbers) : 0; + $newNumber = $maxNumber + 1; - //Save user edit - public function editUser(request $request) - { - $request->validate([ - 'name' => '', - 'email' => '', - 'password' => '', - 'littlelink_name' => '', - ]); - - $id = $request->id; - $name = $request->name; - $email = $request->email; - $password = Hash::make($request->password); - $profilePhoto = $request->file('image'); - $littlelink_name = $request->littlelink_name; - $littlelink_description = $request->littlelink_description; - $role = $request->role; - $customBackground = $request->file('background'); - $theme = $request->theme; - - if(User::where('id', $id)->get('role')->first()->role =! $role) { - if ($role == 'vip') { - UserData::saveData($id, 'checkmark', true); - } - } - - if ($request->password == '') { - User::where('id', $id)->update(['name' => $name, 'email' => $email, 'littlelink_name' => $littlelink_name, 'littlelink_description' => $littlelink_description, 'role' => $role, 'theme' => $theme]); - } else { - User::where('id', $id)->update(['name' => $name, 'email' => $email, 'password' => $password, 'littlelink_name' => $littlelink_name, 'littlelink_description' => $littlelink_description, 'role' => $role, 'theme' => $theme]); - } - if (!empty($profilePhoto)) { - $profilePhoto->move(base_path('assets/img'), $id . '_' . time() . ".png"); - } - if (!empty($customBackground)) { - $directory = base_path('assets/img/background-img/'); - $files = scandir($directory); - $pathinfo = "error.error"; - foreach($files as $file) { - if (strpos($file, $id.'.') !== false) { - $pathinfo = $id. "." . pathinfo($file, PATHINFO_EXTENSION); - }} - if(file_exists(base_path('assets/img/background-img/').$pathinfo)){File::delete(base_path('assets/img/background-img/').$pathinfo);} - - $customBackground->move(base_path('assets/img/background-img/'), $id . '_' . time() . "." . $request->file('background')->extension()); - } - - return redirect('admin/users/all'); - } - - //Show site pages to edit - public function showSitePage() - { - $data['pages'] = Page::select('terms', 'privacy', 'contact', 'register')->get(); - return view('panel/pages', $data); - } - - //Save site pages - public function editSitePage(request $request) - { - $terms = $request->terms; - $privacy = $request->privacy; - $contact = $request->contact; - $register = $request->register; - - Page::first()->update(['terms' => $terms, 'privacy' => $privacy, 'contact' => $contact, 'register' => $register]); - - return back(); - } - - //Show home message for edit - public function showSite() - { - $message = Page::select('home_message')->first(); - return view('panel/site', $message); - } - - //Save home message, logo and favicon - public function editSite(request $request) - { - $message = $request->message; - $logo = $request->file('image'); - $icon = $request->file('icon'); - - Page::first()->update(['home_message' => $message]); - - if (!empty($logo)) { - // Delete existing image - $path = findFile('avatar'); - $path = base_path('/assets/linkstack/images/'.$path); - - // Delete existing image - if (File::exists($path)) { - File::delete($path); - } - - $logo->move(base_path('/assets/linkstack/images/'), "avatar" . '_' . time() . "." .$request->file('image')->extension()); + $domain = parse_url(url(""), PHP_URL_HOST); + $domain = $domain == "localhost" ? "example.com" : $domain; + + $user = User::create([ + "name" => "Admin-Created-" . $newNumber, + "email" => strtolower(random_str(8)) . "@" . $domain, + "password" => Hash::make(random_str(32)), + "role" => "user", + "block" => "no", + ]); + + return redirect("admin/edit-user/" . $user->id); + } + + //Delete existing user + public function deleteUser(request $request) + { + $id = $request->id; + + Link::where("user_id", $id)->delete(); + + Schema::disableForeignKeyConstraints(); + + $user = User::find($id); + $user->forceDelete(); + + Schema::enableForeignKeyConstraints(); + + return redirect("admin/users/all"); + } + + //Delete existing user with POST request + public function deleteTableUser(request $request) + { + $id = $request->id; + + Link::where("user_id", $id)->delete(); + + Schema::disableForeignKeyConstraints(); + + $user = User::find($id); + $user->forceDelete(); + + Schema::enableForeignKeyConstraints(); + } + + //Show user to edit + public function showUser(request $request) + { + $id = $request->id; + + $data["user"] = User::where("id", $id)->get(); + + return view("panel/edit-user", $data); + } + + //Show link, click number, up link in links page + public function showLinksUser(request $request) + { + $id = $request->id; + + $data["user"] = User::where("id", $id)->get(); + + $data["links"] = Link::select( + "id", + "link", + "title", + "order", + "click_number", + "up_link", + "links.button_id", + ) + ->where("user_id", $id) + ->orderBy("up_link", "asc") + ->orderBy("order", "asc") + ->paginate(10); + return view("panel/links", $data); + } + + //Delete link + public function deleteLinkUser(request $request) + { + $linkId = $request->id; + + Link::where("id", $linkId)->delete(); + + return back(); + } + + //Save user edit + public function editUser(request $request) + { + $request->validate([ + "name" => "", + "email" => "", + "password" => "", + "littlelink_name" => "", + ]); + + $id = $request->id; + $name = $request->name; + $email = $request->email; + $password = Hash::make($request->password); + $profilePhoto = $request->file("image"); + $littlelink_name = $request->littlelink_name; + $littlelink_description = $request->littlelink_description; + $role = $request->role; + $customBackground = $request->file("background"); + $theme = $request->theme; + + if (User::where("id", $id)->get("role")->first()->role = !$role) { + if ($role == "vip") { + UserData::saveData($id, "checkmark", true); + } + } + + if ($request->password == "") { + User::where("id", $id)->update([ + "name" => $name, + "email" => $email, + "littlelink_name" => $littlelink_name, + "littlelink_description" => $littlelink_description, + "role" => $role, + "theme" => $theme, + ]); + } else { + User::where("id", $id)->update([ + "name" => $name, + "email" => $email, + "password" => $password, + "littlelink_name" => $littlelink_name, + "littlelink_description" => $littlelink_description, + "role" => $role, + "theme" => $theme, + ]); + } + if (!empty($profilePhoto)) { + $profilePhoto->move(base_path("assets/img"), $id . "_" . time() . ".png"); + } + if (!empty($customBackground)) { + $directory = base_path("assets/img/background-img/"); + $files = scandir($directory); + $pathinfo = "error.error"; + foreach ($files as $file) { + if (strpos($file, $id . ".") !== false) { + $pathinfo = $id . "." . pathinfo($file, PATHINFO_EXTENSION); } + } + if (file_exists(base_path("assets/img/background-img/") . $pathinfo)) { + File::delete(base_path("assets/img/background-img/") . $pathinfo); + } + + $customBackground->move( + base_path("assets/img/background-img/"), + $id . "_" . time() . "." . $request->file("background")->extension(), + ); + } + + return redirect("admin/users/all"); + } + + //Show site pages to edit + public function showSitePage() + { + $data["pages"] = Page::select( + "terms", + "privacy", + "contact", + "register", + )->get(); + return view("panel/pages", $data); + } + + //Save site pages + public function editSitePage(request $request) + { + $terms = $request->terms; + $privacy = $request->privacy; + $contact = $request->contact; + $register = $request->register; + + Page::first()->update([ + "terms" => $terms, + "privacy" => $privacy, + "contact" => $contact, + "register" => $register, + ]); + + return back(); + } + + //Show home message for edit + public function showSite() + { + $message = Page::select("home_message")->first(); + return view("panel/site", $message); + } + + //Save home message, logo and favicon + public function editSite(request $request) + { + $message = $request->message; + $logo = $request->file("image"); + $icon = $request->file("icon"); + + Page::first()->update(["home_message" => $message]); + + if (!empty($logo)) { + // Delete existing image + $path = findFile("avatar"); + $path = base_path("/assets/linkstack/images/" . $path); + + // Delete existing image + if (File::exists($path)) { + File::delete($path); + } + + $logo->move( + base_path("/assets/linkstack/images/"), + "avatar" . "_" . time() . "." . $request->file("image")->extension(), + ); + } + + if (!empty($icon)) { + // Delete existing image + $path = findFile("favicon"); + $path = base_path("/assets/linkstack/images/" . $path); + + // Delete existing image + if (File::exists($path)) { + File::delete($path); + } + + $icon->move( + base_path("/assets/linkstack/images/"), + "favicon" . "_" . time() . "." . $request->file("icon")->extension(), + ); + } + return back(); + } + + //Delete avatar + public function delAvatar() + { + $path = findFile("avatar"); + $path = base_path("/assets/linkstack/images/" . $path); + + // Delete existing image + if (File::exists($path)) { + File::delete($path); + } + + return back(); + } + + //Delete favicon + public function delFavicon() + { + // Delete existing image + $path = findFile("favicon"); + $path = base_path("/assets/linkstack/images/" . $path); + + // Delete existing image + if (File::exists($path)) { + File::delete($path); + } + + return back(); + } + + //View footer page: terms + public function pagesTerms(Request $request) + { + $name = "terms"; - if (!empty($icon)) { - // Delete existing image - $path = findFile('favicon'); - $path = base_path('/assets/linkstack/images/'.$path); - - // Delete existing image - if (File::exists($path)) { - File::delete($path); - } - - $icon->move(base_path('/assets/linkstack/images/'), "favicon" . '_' . time() . "." . $request->file('icon')->extension()); - } - return back(); - } - - //Delete avatar - public function delAvatar() - { - $path = findFile('avatar'); - $path = base_path('/assets/linkstack/images/'.$path); - - // Delete existing image - if (File::exists($path)) { - File::delete($path); - } - - return back(); - } - - //Delete favicon - public function delFavicon() - { - // Delete existing image - $path = findFile('favicon'); - $path = base_path('/assets/linkstack/images/'.$path); - - // Delete existing image - if (File::exists($path)) { - File::delete($path); - } - - return back(); + try { + $data["page"] = Page::select($name)->first(); + } catch (Exception $e) { + return abort(404); } - //View footer page: terms - public function pagesTerms(Request $request) - { - $name = "terms"; - - try { - $data['page'] = Page::select($name)->first(); - } catch (Exception $e) { - return abort(404); - } - - return view('pages', ['data' => $data, 'name' => $name]); - } + return view("pages", ["data" => $data, "name" => $name]); + } - //View footer page: privacy - public function pagesPrivacy(Request $request) - { - $name = "privacy"; - - try { - $data['page'] = Page::select($name)->first(); - } catch (Exception $e) { - return abort(404); - } - - return view('pages', ['data' => $data, 'name' => $name]); - } + //View footer page: privacy + public function pagesPrivacy(Request $request) + { + $name = "privacy"; - //View footer page: contact - public function pagesContact(Request $request) - { - $name = "contact"; - - try { - $data['page'] = Page::select($name)->first(); - } catch (Exception $e) { - return abort(404); - } - - return view('pages', ['data' => $data, 'name' => $name]); + try { + $data["page"] = Page::select($name)->first(); + } catch (Exception $e) { + return abort(404); } - //Statistics of the number of clicks and links - public function phpinfo() - { - return view('panel/phpinfo'); - } + return view("pages", ["data" => $data, "name" => $name]); + } - //Shows config file editor page - public function showFileEditor(request $request) - { - return redirect('/admin/config'); - } + //View footer page: contact + public function pagesContact(Request $request) + { + $name = "contact"; - //Saves advanced config - public function editAC(request $request) - { - if ($request->ResetAdvancedConfig == 'RESET_DEFAULTS') { - copy(base_path('storage/templates/advanced-config.php'), base_path('config/advanced-config.php')); - } else { - file_put_contents('config/advanced-config.php', $request->AdvancedConfig); + try { + $data["page"] = Page::select($name)->first(); + } catch (Exception $e) { + return abort(404); + } + + return view("pages", ["data" => $data, "name" => $name]); + } + + //Statistics of the number of clicks and links + public function phpinfo() + { + return view("panel/phpinfo"); + } + + //Shows config file editor page + public function showFileEditor(request $request) + { + return redirect("/admin/config"); + } + + //Saves advanced config + public function editAC(request $request) + { + if ($request->ResetAdvancedConfig == "RESET_DEFAULTS") { + copy( + base_path("storage/templates/advanced-config.php"), + base_path("config/advanced-config.php"), + ); + } else { + file_put_contents("config/advanced-config.php", $request->AdvancedConfig); + } + + return redirect("/admin/config#2"); + } + + //Saves .env config + public function editENV(request $request) + { + $config = $request->altConfig; + + file_put_contents(".env", $config); + + return Redirect("/admin/config?alternative-config"); + } + + //Shows config file editor page + public function showBackups(request $request) + { + return view("/panel/backups"); + } + + //Delete custom theme + public function deleteTheme(request $request) + { + $del = $request->deltheme; + + if (empty($del)) { + echo '"; + } else { + $folderName = base_path() . "/themes/" . $del; + + function removeFolder($folderName) + { + if (File::exists($folderName)) { + File::deleteDirectory($folderName); + return true; } - return redirect('/admin/config#2'); - } - - //Saves .env config - public function editENV(request $request) - { - $config = $request->altConfig; - - file_put_contents('.env', $config); - - return Redirect('/admin/config?alternative-config'); - } - - //Shows config file editor page - public function showBackups(request $request) - { - return view('/panel/backups'); - } - - //Delete custom theme - public function deleteTheme(request $request) - { - - $del = $request->deltheme; - - if (empty($del)) { - echo ''; - } else { - - $folderName = base_path() . '/themes/' . $del; - - - - function removeFolder($folderName) - { - if (File::exists($folderName)) { - File::deleteDirectory($folderName); - return true; - } - - return false; - } - - removeFolder($folderName); - - return Redirect('/admin/theme'); + return false; + } + + removeFolder($folderName); + + return Redirect("/admin/theme"); + } + } + + // Update themes + public function updateThemes() + { + if ($handle = opendir("themes")) { + while (false !== ($entry = readdir($handle))) { + if (file_exists(base_path("themes") . "/" . $entry . "/readme.md")) { + $text = file_get_contents( + base_path("themes") . "/" . $entry . "/readme.md", + ); + $pattern = "/Theme Version:.*/"; + preg_match($pattern, $text, $matches, PREG_OFFSET_CAPTURE); + if (!count($matches)) { + continue; + } + $verNr = substr($matches[0][0], 15); } - } - - // Update themes - public function updateThemes() - { - - - if ($handle = opendir('themes')) { - while (false !== ($entry = readdir($handle))) { - - if (file_exists(base_path('themes') . '/' . $entry . '/readme.md')) { - $text = file_get_contents(base_path('themes') . '/' . $entry . '/readme.md'); - $pattern = '/Theme Version:.*/'; - preg_match($pattern, $text, $matches, PREG_OFFSET_CAPTURE); - if (!count($matches)) continue; - $verNr = substr($matches[0][0], 15); + $themeVe = null; + + if ($entry != "." && $entry != "..") { + if (file_exists(base_path("themes") . "/" . $entry . "/readme.md")) { + if ( + !strpos( + file_get_contents( + base_path("themes") . "/" . $entry . "/readme.md", + ), + "Source code:", + ) + ) { + $hasSource = false; + } else { + $hasSource = true; + + $text = file_get_contents( + base_path("themes") . "/" . $entry . "/readme.md", + ); + $pattern = "/Source code:.*/"; + preg_match($pattern, $text, $matches, PREG_OFFSET_CAPTURE); + $sourceURL = substr($matches[0][0], 13); + + $replaced = str_replace( + "https://github.com/", + "https://raw.githubusercontent.com/", + trim($sourceURL), + ); + $replaced = $replaced . "/main/readme.md"; + + if (strpos($sourceURL, "github.com")) { + ini_set("user_agent", "Mozilla/4.0 (compatible; MSIE 6.0)"); + try { + $textGit = file_get_contents($replaced); + $patternGit = "/Theme Version:.*/"; + preg_match( + $patternGit, + $textGit, + $matches, + PREG_OFFSET_CAPTURE, + ); + $sourceURLGit = substr($matches[0][0], 15); + $Vgitt = "v" . $sourceURLGit; + $verNrv = "v" . $verNr; + } catch (Exception $ex) { + $themeVe = "error"; + $Vgitt = null; + $verNrv = null; } - - $themeVe = NULL; - - if ($entry != "." && $entry != "..") { - if (file_exists(base_path('themes') . '/' . $entry . '/readme.md')) { - if (!strpos(file_get_contents(base_path('themes') . '/' . $entry . '/readme.md'), 'Source code:')) { - $hasSource = false; + if (trim($Vgitt) > trim($verNrv)) { + $fileUrl = + trim($sourceURL) . + "/archive/refs/tags/" . + trim($Vgitt) . + ".zip"; + + file_put_contents( + base_path("themes/theme.zip"), + fopen($fileUrl, "r"), + ); + + $zip = new ZipArchive(); + $zip->open(base_path() . "/themes/theme.zip"); + $zip->extractTo(base_path("themes")); + $zip->close(); + unlink(base_path() . "/themes/theme.zip"); + + $folder = base_path("themes"); + $regex = "/[0-9.-]/"; + $files = scandir($folder); + + foreach ($files as $file) { + if ($file !== "." && $file !== "..") { + if (preg_match($regex, $file)) { + $new_file = preg_replace($regex, "", $file); + File::copyDirectory( + $folder . "/" . $file, + $folder . "/" . $new_file, + ); + $dirname = $folder . "/" . $file; + if (strtoupper(substr(PHP_OS, 0, 3)) === "WIN") { + system( + "rmdir " . escapeshellarg($dirname) . " /s /q", + ); } else { - $hasSource = true; - - $text = file_get_contents(base_path('themes') . '/' . $entry . '/readme.md'); - $pattern = '/Source code:.*/'; - preg_match($pattern, $text, $matches, PREG_OFFSET_CAPTURE); - $sourceURL = substr($matches[0][0], 13); - - $replaced = str_replace("https://github.com/", "https://raw.githubusercontent.com/", trim($sourceURL)); - $replaced = $replaced . "/main/readme.md"; - - if (strpos($sourceURL, 'github.com')) { - - ini_set('user_agent', 'Mozilla/4.0 (compatible; MSIE 6.0)'); - try { - $textGit = file_get_contents($replaced); - $patternGit = '/Theme Version:.*/'; - preg_match($patternGit, $textGit, $matches, PREG_OFFSET_CAPTURE); - $sourceURLGit = substr($matches[0][0], 15); - $Vgitt = 'v' . $sourceURLGit; - $verNrv = 'v' . $verNr; - } catch (Exception $ex) { - $themeVe = "error"; - $Vgitt = NULL; - $verNrv = NULL; - } - - if (trim($Vgitt) > trim($verNrv)) { - - - $fileUrl = trim($sourceURL) . '/archive/refs/tags/' . trim($Vgitt) . '.zip'; - - - file_put_contents(base_path('themes/theme.zip'), fopen($fileUrl, 'r')); - - - $zip = new ZipArchive; - $zip->open(base_path() . '/themes/theme.zip'); - $zip->extractTo(base_path('themes')); - $zip->close(); - unlink(base_path() . '/themes/theme.zip'); - - $folder = base_path('themes'); - $regex = '/[0-9.-]/'; - $files = scandir($folder); - - foreach ($files as $file) { - if ($file !== '.' && $file !== '..') { - if (preg_match($regex, $file)) { - $new_file = preg_replace($regex, '', $file); - File::copyDirectory($folder . '/' . $file, $folder . '/' . $new_file); - $dirname = $folder . '/' . $file; - if (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN') { - system('rmdir ' . escapeshellarg($dirname) . ' /s /q'); - } else { - system("rm -rf " . escapeshellarg($dirname)); - } - } - } - } - } - } + system("rm -rf " . escapeshellarg($dirname)); } + } } + } } + } } + } } - - return Redirect('/studio/theme'); - } - - //Shows config file editor page - public function showConfig(request $request) - { - return view('/panel/config-editor'); - } - - //Shows config file editor page - public function editConfig(request $request) - { - - $type = $request->type; - $entry = $request->entry; - $value = $request->value; - - if($type === "toggle"){ - if($request->toggle != ''){$value = "true";}else{$value = "false";} - if(EnvEditor::keyExists($entry)){EnvEditor::editKey($entry, $value);} - } elseif($type === "toggle2") { - if($request->toggle != ''){$value = "verified";}else{$value = "auth";} - if(EnvEditor::keyExists($entry)){EnvEditor::editKey($entry, $value);} - } elseif($type === "text") { - if(EnvEditor::keyExists($entry)){EnvEditor::editKey($entry, '"' . $value . '"');} - } elseif($type === "debug") { - if($request->toggle != ''){ - if(EnvEditor::keyExists('APP_DEBUG')){EnvEditor::editKey('APP_DEBUG', 'true');} - if(EnvEditor::keyExists('APP_ENV')){EnvEditor::editKey('APP_ENV', 'local');} - if(EnvEditor::keyExists('LOG_LEVEL')){EnvEditor::editKey('LOG_LEVEL', 'debug');} - } else { - if(EnvEditor::keyExists('APP_DEBUG')){EnvEditor::editKey('APP_DEBUG', 'false');} - if(EnvEditor::keyExists('APP_ENV')){EnvEditor::editKey('APP_ENV', 'production');} - if(EnvEditor::keyExists('LOG_LEVEL')){EnvEditor::editKey('LOG_LEVEL', 'error');} - } - } elseif($type === "register") { - if($request->toggle != ''){$register = "true";}else{$register = "false";} - Page::first()->update(['register' => $register]); - } elseif($type === "smtp") { - if($request->toggle != ''){$value = "built-in";}else{$value = "smtp";} - if(EnvEditor::keyExists('MAIL_MAILER')){EnvEditor::editKey('MAIL_MAILER', $value);} - - if(EnvEditor::keyExists('MAIL_HOST')){EnvEditor::editKey('MAIL_HOST', $request->MAIL_HOST);} - if(EnvEditor::keyExists('MAIL_PORT')){EnvEditor::editKey('MAIL_PORT', $request->MAIL_PORT);} - if(EnvEditor::keyExists('MAIL_USERNAME')){EnvEditor::editKey('MAIL_USERNAME', '"' . $request->MAIL_USERNAME . '"');} - if(EnvEditor::keyExists('MAIL_PASSWORD')){EnvEditor::editKey('MAIL_PASSWORD', '"' . $request->MAIL_PASSWORD . '"');} - if(EnvEditor::keyExists('MAIL_ENCRYPTION')){EnvEditor::editKey('MAIL_ENCRYPTION', $request->MAIL_ENCRYPTION);} - if(EnvEditor::keyExists('MAIL_FROM_ADDRESS')){EnvEditor::editKey('MAIL_FROM_ADDRESS', $request->MAIL_FROM_ADDRESS);} - } elseif($type === "homeurl") { - if($request->value == 'default'){$value = "";}else{$value = '"' . $request->value . '"';} - if(EnvEditor::keyExists($entry)){EnvEditor::editKey($entry, $value);} - } elseif($type === "maintenance") { - if($request->toggle != ''){$value = "true";}else{$value = "false";} - if(file_exists(base_path("storage/MAINTENANCE"))){unlink(base_path("storage/MAINTENANCE"));} - if(EnvEditor::keyExists($entry)){EnvEditor::editKey($entry, $value);} - } else { - if(EnvEditor::keyExists($entry)){EnvEditor::editKey($entry, $value);} + } + } + + return Redirect("/studio/theme"); + } + + //Shows config file editor page + public function showConfig(request $request) + { + return view("/panel/config-editor"); + } + + //Shows config file editor page + public function editConfig(request $request) + { + $type = $request->type; + $entry = $request->entry; + $value = $request->value; + + if ($type === "toggle") { + if ($request->toggle != "") { + $value = "true"; + } else { + $value = "false"; + } + if (EnvEditor::keyExists($entry)) { + EnvEditor::editKey($entry, $value); + } + } elseif ($type === "toggle2") { + if ($request->toggle != "") { + $value = "verified"; + } else { + $value = "auth"; + } + if (EnvEditor::keyExists($entry)) { + EnvEditor::editKey($entry, $value); + } + } elseif ($type === "text") { + if (EnvEditor::keyExists($entry)) { + EnvEditor::editKey($entry, '"' . $value . '"'); + } + } elseif ($type === "debug") { + if ($request->toggle != "") { + if (EnvEditor::keyExists("APP_DEBUG")) { + EnvEditor::editKey("APP_DEBUG", "true"); } - - - - - return Redirect('/admin/config'); - } - - //Shows theme editor page - public function showThemes(request $request) - { - return view('/panel/theme'); - } - - //Removes impersonation if authenticated - public function authAs(request $request) - { - - $userID = $request->id; - $token = $request->token; - - $user = User::find($userID); - - if($user->remember_token == $token && $request->session()->get('display_auth_nav') === $user->remember_token){ - $user->auth_as = null; - $user->remember_token = null; - $user->save(); - - $request->session()->forget('display_auth_nav'); - - Auth::loginUsingId($userID); - - return redirect('/admin/users/all'); - } else { - Auth::logout(); + if (EnvEditor::keyExists("APP_ENV")) { + EnvEditor::editKey("APP_ENV", "local"); } - + if (EnvEditor::keyExists("LOG_LEVEL")) { + EnvEditor::editKey("LOG_LEVEL", "debug"); + } + } else { + if (EnvEditor::keyExists("APP_DEBUG")) { + EnvEditor::editKey("APP_DEBUG", "false"); + } + if (EnvEditor::keyExists("APP_ENV")) { + EnvEditor::editKey("APP_ENV", "production"); + } + if (EnvEditor::keyExists("LOG_LEVEL")) { + EnvEditor::editKey("LOG_LEVEL", "error"); + } + } + } elseif ($type === "register") { + if ($request->toggle != "") { + $register = "true"; + } else { + $register = "false"; + } + Page::first()->update(["register" => $register]); + } elseif ($type === "smtp") { + if ($request->toggle != "") { + $value = "built-in"; + } else { + $value = "smtp"; + } + if (EnvEditor::keyExists("MAIL_MAILER")) { + EnvEditor::editKey("MAIL_MAILER", $value); + } + + if (EnvEditor::keyExists("MAIL_HOST")) { + EnvEditor::editKey("MAIL_HOST", $request->MAIL_HOST); + } + if (EnvEditor::keyExists("MAIL_PORT")) { + EnvEditor::editKey("MAIL_PORT", $request->MAIL_PORT); + } + if (EnvEditor::keyExists("MAIL_USERNAME")) { + EnvEditor::editKey( + "MAIL_USERNAME", + '"' . $request->MAIL_USERNAME . '"', + ); + } + if (EnvEditor::keyExists("MAIL_PASSWORD")) { + EnvEditor::editKey( + "MAIL_PASSWORD", + '"' . $request->MAIL_PASSWORD . '"', + ); + } + if (EnvEditor::keyExists("MAIL_ENCRYPTION")) { + EnvEditor::editKey("MAIL_ENCRYPTION", $request->MAIL_ENCRYPTION); + } + if (EnvEditor::keyExists("MAIL_FROM_ADDRESS")) { + EnvEditor::editKey("MAIL_FROM_ADDRESS", $request->MAIL_FROM_ADDRESS); + } + } elseif ($type === "homeurl") { + if ($request->value == "default") { + $value = ""; + } else { + $value = '"' . $request->value . '"'; + } + if (EnvEditor::keyExists($entry)) { + EnvEditor::editKey($entry, $value); + } + } elseif ($type === "maintenance") { + if ($request->toggle != "") { + $value = "true"; + } else { + $value = "false"; + } + if (file_exists(base_path("storage/MAINTENANCE"))) { + unlink(base_path("storage/MAINTENANCE")); + } + if (EnvEditor::keyExists($entry)) { + EnvEditor::editKey($entry, $value); + } + } else { + if (EnvEditor::keyExists($entry)) { + EnvEditor::editKey($entry, $value); + } + } + + return Redirect("/admin/config"); + } + + //Shows theme editor page + public function showThemes(request $request) + { + return view("/panel/theme"); + } + + //Removes impersonation if authenticated + public function authAs(Request $request) + { + $userID = $request->id; + $token = $request->token; + + $user = User::find($userID); + + if (!$user) { + Auth::logout(); + return redirect("/login"); + } + + $userRememberToken = $user->remember_token; + $sessionToken = $request->session()->get("display_auth_nav"); + + if ( + !empty($token) && + !empty($userRememberToken) && + !empty($sessionToken) && + hash_equals($userRememberToken, $token) && + hash_equals($userRememberToken, $sessionToken) + ) { + $user->auth_as = null; + $user->remember_token = null; + $user->save(); + + $request->session()->forget("display_auth_nav"); + + Auth::loginUsingId($userID); + + return redirect("/admin/users/all"); + } else { + Auth::logout(); + return redirect("/login"); + } + } + + //Add impersonation + public function authAsID(request $request) + { + $adminUser = User::whereNotNull("auth_as")->where("role", "admin")->first(); + + if (!$adminUser) { + $userID = $request->id; + $id = Auth::user()->id; + + $user = User::find($id); + + $user->auth_as = $userID; + $user->save(); + + return redirect("dashboard"); + } else { + return redirect("admin/users/all"); + } + } + + //Show info about link + public function redirectInfo(request $request) + { + $linkId = $request->id; + + if (empty($linkId)) { + return abort(404); } - //Add impersonation - public function authAsID(request $request) - { - - $adminUser = User::whereNotNull('auth_as')->where('role', 'admin')->first(); - - if (!$adminUser) { - - $userID = $request->id; - $id = Auth::user()->id; - - $user = User::find($id); - - $user->auth_as = $userID; - $user->save(); - - return redirect('dashboard'); - - } else { - return redirect('admin/users/all'); - } + $linkData = Link::find($linkId); + $clicks = $linkData->click_number; + if (empty($linkData)) { + return abort(404); } - //Show info about link - public function redirectInfo(request $request) + function isValidLink($url) { - $linkId = $request->id; + $validPrefixes = ["http", "https", "ftp", "mailto", "tel", "news"]; - if (empty($linkId)) { - return abort(404); - } - - $linkData = Link::find($linkId); - $clicks = $linkData->click_number; - - if (empty($linkData)) { - return abort(404); - } - - function isValidLink($url) { - $validPrefixes = array('http', 'https', 'ftp', 'mailto', 'tel', 'news'); - - $pattern = '/^(' . implode('|', $validPrefixes) . '):/i'; - - if (preg_match($pattern, $url) && strlen($url) <= 155) { - return $url; - } else { - return "N/A"; - } - } - - $link = isValidLink($linkData->link); + $pattern = "/^(" . implode("|", $validPrefixes) . "):/i"; - $userID = $linkData->user_id; - $userData = User::find($userID); + if (preg_match($pattern, $url) && strlen($url) <= 155) { + return $url; + } else { + return "N/A"; + } + } - return view('linkinfo', ['clicks' => $clicks, 'linkID' => $linkId, 'link' => $link, 'id' => $userID, 'userData' => $userData]); + $link = isValidLink($linkData->link); - } + $userID = $linkData->user_id; + $userData = User::find($userID); + return view("linkinfo", [ + "clicks" => $clicks, + "linkID" => $linkId, + "link" => $link, + "id" => $userID, + "userData" => $userData, + ]); + } } diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 3014d810f..d8ce5e07f 100755 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -292,6 +292,9 @@ public function saveLink(Request $request) $filteredLinkData['type_params'] = json_encode($customParams); if ($OrigLink) { + if ($OrigLink->user_id !== $userId) { + abort(403); + } $currentValues = $OrigLink->getAttributes(); $nonNullFilteredLinkData = array_filter($filteredLinkData, function($value) {return !is_null($value);}); $updatedValues = array_merge($currentValues, $nonNullFilteredLinkData); @@ -335,6 +338,7 @@ public function sortLinks(Request $request) $linkNewOrders[$linkId] = $newOrder; Link::where("id", $linkId) + ->where("user_id", Auth::user()->id) ->update([ 'order' => $newOrder ]); @@ -609,6 +613,8 @@ public function editPage(Request $request) $profilePhoto = $request->file('image'); $pageName = $request->littlelink_name; $pageDescription = strip_tags($request->pageDescription, '');
+ $pageDescription = preg_replace('/\bon\w+\s*=\s*(["\']).*?\1/i', '', $pageDescription);
+ $pageDescription = preg_replace('/\bon\w+\s*=\s*[^\s>]*/i', '', $pageDescription);
$pageDescription = preg_replace("/]*)>/i", "", $pageDescription);
$pageDescription = strip_tags_except_allowed_protocols($pageDescription);
$name = $request->name;
diff --git a/composer.json b/composer.json
index 3a51d8766..5d4abbb55 100644
--- a/composer.json
+++ b/composer.json
@@ -17,20 +17,20 @@
"laravel/socialite": "^5.5",
"laravel/tinker": "^2.5",
"livewire/livewire": "^2.12",
+ "nunomaduro/collision": "^6.1",
"rappasoft/laravel-livewire-tables": "^2.15",
"simplesoftwareio/simple-qrcode": "~4",
- "spatie/laravel-backup": "^8.1.5"
+ "spatie/laravel-backup": "^8.1.5",
+ "symfony/yaml": "^6.0"
},
"require-dev": {
"barryvdh/laravel-ide-helper": "^2.12",
"fakerphp/faker": "^1.9.1",
- "laravel-lang/common": "^2.0",
"laravel/breeze": "^1.1",
"laravel/sail": "^1.0.1",
"mockery/mockery": "^1.4.2",
- "nunomaduro/collision": "^6.1",
- "phpunit/phpunit": "^9.3.3",
- "spatie/laravel-ignition": "^1.0"
+ "spatie/laravel-ignition": "^1.0",
+ "phpunit/phpunit": "^9.3.3"
},
"autoload": {
"files": [
diff --git a/composer.lock b/composer.lock
index 8138fd2d8..96e6c638b 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,24 +4,24 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "f2bf9e2d3ef238c3a5709b1a28e82833",
+ "content-hash": "baacb808064fe8cadd982607d069928e",
"packages": [
{
"name": "awssat/laravel-visits",
- "version": "6.1.1",
+ "version": "6.2.0",
"source": {
"type": "git",
"url": "https://github.com/awssat/laravel-visits.git",
- "reference": "8d6c165742e5bf0a8b6d1501771c3d409f1f8948"
+ "reference": "ff9e034183f6f9a8d3c06caad95b7936678936b9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/awssat/laravel-visits/zipball/8d6c165742e5bf0a8b6d1501771c3d409f1f8948",
- "reference": "8d6c165742e5bf0a8b6d1501771c3d409f1f8948",
+ "url": "https://api.github.com/repos/awssat/laravel-visits/zipball/ff9e034183f6f9a8d3c06caad95b7936678936b9",
+ "reference": "ff9e034183f6f9a8d3c06caad95b7936678936b9",
"shasum": ""
},
"require": {
- "illuminate/support": "~5.5.0 || ~5.6.0 || ~5.7.0 || ~5.8.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0",
+ "illuminate/support": "~5.5.0 || ~5.6.0 || ~5.7.0 || ~5.8.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0 || ^12.0",
"jaybizzle/crawler-detect": "^1.2",
"nesbot/carbon": "^2.0|^3.0",
"php": "^8.0",
@@ -29,11 +29,11 @@
"torann/geoip": "^1.0|^3.0"
},
"require-dev": {
- "doctrine/dbal": "^2.6|^3.0",
- "illuminate/support": "~5.5.0 || ~5.6.0 || ~5.7.0 || ~5.8.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0",
+ "doctrine/dbal": "^2.6 || ^3.0 || ^4.0",
+ "illuminate/support": "~5.5.0 || ~5.6.0 || ~5.7.0 || ~5.8.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0 || ^11.0 || ^12.0",
"mockery/mockery": "^1.4 || ^1.6",
- "orchestra/testbench": "^3.5 || ^3.6 || ^3.7 || ^3.8 || ^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0",
- "phpunit/phpunit": "^9.0 || ^10.1",
+ "orchestra/testbench": "^3.5 || ^3.6 || ^3.7 || ^3.8 || ^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.0 || ^10.0",
+ "phpunit/phpunit": "^9.0 || ^10.1 || ^11.0",
"predis/predis": "^1.1|^2.0"
},
"suggest": {
@@ -43,16 +43,16 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-master": "2.0-dev"
- },
"laravel": {
- "providers": [
- "Awssat\\Visits\\VisitsServiceProvider"
- ],
"aliases": {
"Visits": "Awssat\\Visits\\Visits"
- }
+ },
+ "providers": [
+ "Awssat\\Visits\\VisitsServiceProvider"
+ ]
+ },
+ "branch-alias": {
+ "dev-master": "2.0-dev"
}
},
"autoload": {
@@ -90,7 +90,7 @@
],
"support": {
"issues": "https://github.com/awssat/laravel-visits/issues",
- "source": "https://github.com/awssat/laravel-visits/tree/6.1.1"
+ "source": "https://github.com/awssat/laravel-visits/tree/6.2.0"
},
"funding": [
{
@@ -98,7 +98,7 @@
"type": "github"
}
],
- "time": "2024-07-07T22:47:10+00:00"
+ "time": "2025-04-14T11:43:36+00:00"
},
{
"name": "bacon/bacon-qr-code",
@@ -201,6 +201,7 @@
"issues": "https://github.com/Behat/Transliterator/issues",
"source": "https://github.com/Behat/Transliterator/tree/v1.5.0"
},
+ "abandoned": true,
"time": "2022-03-30T09:27:43+00:00"
},
{
@@ -327,91 +328,6 @@
],
"time": "2023-12-11T17:09:12+00:00"
},
- {
- "name": "codedge/laravel-selfupdater",
- "version": "3.6.2",
- "source": {
- "type": "git",
- "url": "https://github.com/codedge/laravel-selfupdater.git",
- "reference": "44bbecaff3652aeb9b9eb73c79f82ecf6a698b02"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/codedge/laravel-selfupdater/zipball/44bbecaff3652aeb9b9eb73c79f82ecf6a698b02",
- "reference": "44bbecaff3652aeb9b9eb73c79f82ecf6a698b02",
- "shasum": ""
- },
- "require": {
- "ext-json": "*",
- "ext-zip": "*",
- "guzzlehttp/guzzle": "^7.5.0",
- "laravel/framework": "^9",
- "league/uri": "~6.7|~6.8",
- "php": "^8.0 || ^8.1",
- "phpstan/extension-installer": "^1.2",
- "phpstan/phpstan-phpunit": "^1.2"
- },
- "require-dev": {
- "dg/bypass-finals": "^1.3",
- "mikey179/vfsstream": "^1.6",
- "mockery/mockery": "^1.5",
- "orchestra/testbench": "^7.0",
- "phpunit/phpunit": "^9.5.26"
- },
- "type": "library",
- "extra": {
- "laravel": {
- "aliases": {
- "Updater": "Codedge\\Updater\\UpdaterFacade"
- },
- "providers": [
- "Codedge\\Updater\\UpdaterServiceProvider"
- ]
- }
- },
- "autoload": {
- "files": [
- "src/helpers.php"
- ],
- "psr-4": {
- "Codedge\\Updater\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Holger Lösken",
- "email": "holger.loesken@codedge.de",
- "homepage": "https://codedge.de",
- "role": "Developer"
- }
- ],
- "description": "Providing an auto-updating functionality for your self-hosted Laravel application.",
- "keywords": [
- "auto update",
- "auto-update",
- "laravel",
- "laravel application",
- "self update",
- "self-hosted laravel application",
- "self-update",
- "update"
- ],
- "support": {
- "issues": "https://github.com/codedge/laravel-selfupdater/issues",
- "source": "https://github.com/codedge/laravel-selfupdater"
- },
- "funding": [
- {
- "url": "https://github.com/codedge",
- "type": "github"
- }
- ],
- "time": "2023-01-29T23:25:52+00:00"
- },
{
"name": "cohensive/oembed",
"version": "v0.17",
@@ -473,16 +389,16 @@
},
{
"name": "dasprid/enum",
- "version": "1.0.6",
+ "version": "1.0.7",
"source": {
"type": "git",
"url": "https://github.com/DASPRiD/Enum.git",
- "reference": "8dfd07c6d2cf31c8da90c53b83c026c7696dda90"
+ "reference": "b5874fa9ed0043116c72162ec7f4fb50e02e7cce"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/DASPRiD/Enum/zipball/8dfd07c6d2cf31c8da90c53b83c026c7696dda90",
- "reference": "8dfd07c6d2cf31c8da90c53b83c026c7696dda90",
+ "url": "https://api.github.com/repos/DASPRiD/Enum/zipball/b5874fa9ed0043116c72162ec7f4fb50e02e7cce",
+ "reference": "b5874fa9ed0043116c72162ec7f4fb50e02e7cce",
"shasum": ""
},
"require": {
@@ -517,9 +433,9 @@
],
"support": {
"issues": "https://github.com/DASPRiD/Enum/issues",
- "source": "https://github.com/DASPRiD/Enum/tree/1.0.6"
+ "source": "https://github.com/DASPRiD/Enum/tree/1.0.7"
},
- "time": "2024-08-09T14:30:48+00:00"
+ "time": "2025-09-16T12:23:56+00:00"
},
{
"name": "dflydev/dot-access-data",
@@ -596,135 +512,43 @@
},
"time": "2024-07-08T12:26:09+00:00"
},
- {
- "name": "doctrine/cache",
- "version": "2.2.0",
- "source": {
- "type": "git",
- "url": "https://github.com/doctrine/cache.git",
- "reference": "1ca8f21980e770095a31456042471a57bc4c68fb"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/doctrine/cache/zipball/1ca8f21980e770095a31456042471a57bc4c68fb",
- "reference": "1ca8f21980e770095a31456042471a57bc4c68fb",
- "shasum": ""
- },
- "require": {
- "php": "~7.1 || ^8.0"
- },
- "conflict": {
- "doctrine/common": ">2.2,<2.4"
- },
- "require-dev": {
- "cache/integration-tests": "dev-master",
- "doctrine/coding-standard": "^9",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "psr/cache": "^1.0 || ^2.0 || ^3.0",
- "symfony/cache": "^4.4 || ^5.4 || ^6",
- "symfony/var-exporter": "^4.4 || ^5.4 || ^6"
- },
- "type": "library",
- "autoload": {
- "psr-4": {
- "Doctrine\\Common\\Cache\\": "lib/Doctrine/Common/Cache"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Guilherme Blanco",
- "email": "guilhermeblanco@gmail.com"
- },
- {
- "name": "Roman Borschel",
- "email": "roman@code-factory.org"
- },
- {
- "name": "Benjamin Eberlei",
- "email": "kontakt@beberlei.de"
- },
- {
- "name": "Jonathan Wage",
- "email": "jonwage@gmail.com"
- },
- {
- "name": "Johannes Schmitt",
- "email": "schmittjoh@gmail.com"
- }
- ],
- "description": "PHP Doctrine Cache library is a popular cache implementation that supports many different drivers such as redis, memcache, apc, mongodb and others.",
- "homepage": "https://www.doctrine-project.org/projects/cache.html",
- "keywords": [
- "abstraction",
- "apcu",
- "cache",
- "caching",
- "couchdb",
- "memcached",
- "php",
- "redis",
- "xcache"
- ],
- "support": {
- "issues": "https://github.com/doctrine/cache/issues",
- "source": "https://github.com/doctrine/cache/tree/2.2.0"
- },
- "funding": [
- {
- "url": "https://www.doctrine-project.org/sponsorship.html",
- "type": "custom"
- },
- {
- "url": "https://www.patreon.com/phpdoctrine",
- "type": "patreon"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcache",
- "type": "tidelift"
- }
- ],
- "time": "2022-05-20T20:07:39+00:00"
- },
{
"name": "doctrine/dbal",
- "version": "3.9.1",
+ "version": "3.10.4",
"source": {
"type": "git",
"url": "https://github.com/doctrine/dbal.git",
- "reference": "d7dc08f98cba352b2bab5d32c5e58f7e745c11a7"
+ "reference": "63a46cb5aa6f60991186cc98c1d1b50c09311868"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/dbal/zipball/d7dc08f98cba352b2bab5d32c5e58f7e745c11a7",
- "reference": "d7dc08f98cba352b2bab5d32c5e58f7e745c11a7",
+ "url": "https://api.github.com/repos/doctrine/dbal/zipball/63a46cb5aa6f60991186cc98c1d1b50c09311868",
+ "reference": "63a46cb5aa6f60991186cc98c1d1b50c09311868",
"shasum": ""
},
"require": {
"composer-runtime-api": "^2",
- "doctrine/cache": "^1.11|^2.0",
"doctrine/deprecations": "^0.5.3|^1",
"doctrine/event-manager": "^1|^2",
"php": "^7.4 || ^8.0",
"psr/cache": "^1|^2|^3",
"psr/log": "^1|^2|^3"
},
+ "conflict": {
+ "doctrine/cache": "< 1.11"
+ },
"require-dev": {
- "doctrine/coding-standard": "12.0.0",
+ "doctrine/cache": "^1.11|^2.0",
+ "doctrine/coding-standard": "14.0.0",
"fig/log-test": "^1",
"jetbrains/phpstorm-stubs": "2023.1",
- "phpstan/phpstan": "1.12.0",
- "phpstan/phpstan-strict-rules": "^1.6",
- "phpunit/phpunit": "9.6.20",
- "psalm/plugin-phpunit": "0.18.4",
- "slevomat/coding-standard": "8.13.1",
- "squizlabs/php_codesniffer": "3.10.2",
- "symfony/cache": "^5.4|^6.0|^7.0",
- "symfony/console": "^4.4|^5.4|^6.0|^7.0",
- "vimeo/psalm": "4.30.0"
+ "phpstan/phpstan": "2.1.30",
+ "phpstan/phpstan-strict-rules": "^2",
+ "phpunit/phpunit": "9.6.29",
+ "slevomat/coding-standard": "8.24.0",
+ "squizlabs/php_codesniffer": "4.0.0",
+ "symfony/cache": "^5.4|^6.0|^7.0|^8.0",
+ "symfony/console": "^4.4|^5.4|^6.0|^7.0|^8.0"
},
"suggest": {
"symfony/console": "For helpful console commands such as SQL execution and import of files."
@@ -784,7 +608,7 @@
],
"support": {
"issues": "https://github.com/doctrine/dbal/issues",
- "source": "https://github.com/doctrine/dbal/tree/3.9.1"
+ "source": "https://github.com/doctrine/dbal/tree/3.10.4"
},
"funding": [
{
@@ -800,33 +624,34 @@
"type": "tidelift"
}
],
- "time": "2024-09-01T13:49:23+00:00"
+ "time": "2025-11-29T10:46:08+00:00"
},
{
"name": "doctrine/deprecations",
- "version": "1.1.3",
+ "version": "1.1.5",
"source": {
"type": "git",
"url": "https://github.com/doctrine/deprecations.git",
- "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab"
+ "reference": "459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/deprecations/zipball/dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab",
- "reference": "dfbaa3c2d2e9a9df1118213f3b8b0c597bb99fab",
+ "url": "https://api.github.com/repos/doctrine/deprecations/zipball/459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38",
+ "reference": "459c2f5dd3d6a4633d3b5f46ee2b1c40f57d3f38",
"shasum": ""
},
"require": {
"php": "^7.1 || ^8.0"
},
+ "conflict": {
+ "phpunit/phpunit": "<=7.5 || >=13"
+ },
"require-dev": {
- "doctrine/coding-standard": "^9",
- "phpstan/phpstan": "1.4.10 || 1.10.15",
- "phpstan/phpstan-phpunit": "^1.0",
- "phpunit/phpunit": "^7.5 || ^8.5 || ^9.5",
- "psalm/plugin-phpunit": "0.18.4",
- "psr/log": "^1 || ^2 || ^3",
- "vimeo/psalm": "4.30.0 || 5.12.0"
+ "doctrine/coding-standard": "^9 || ^12 || ^13",
+ "phpstan/phpstan": "1.4.10 || 2.1.11",
+ "phpstan/phpstan-phpunit": "^1.0 || ^2",
+ "phpunit/phpunit": "^7.5 || ^8.5 || ^9.6 || ^10.5 || ^11.5 || ^12",
+ "psr/log": "^1 || ^2 || ^3"
},
"suggest": {
"psr/log": "Allows logging deprecations via PSR-3 logger implementation"
@@ -834,7 +659,7 @@
"type": "library",
"autoload": {
"psr-4": {
- "Doctrine\\Deprecations\\": "lib/Doctrine/Deprecations"
+ "Doctrine\\Deprecations\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -845,22 +670,22 @@
"homepage": "https://www.doctrine-project.org/",
"support": {
"issues": "https://github.com/doctrine/deprecations/issues",
- "source": "https://github.com/doctrine/deprecations/tree/1.1.3"
+ "source": "https://github.com/doctrine/deprecations/tree/1.1.5"
},
- "time": "2024-01-30T19:34:25+00:00"
+ "time": "2025-04-07T20:06:18+00:00"
},
{
"name": "doctrine/event-manager",
- "version": "2.0.1",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/event-manager.git",
- "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e"
+ "reference": "c07799fcf5ad362050960a0fd068dded40b1e312"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/event-manager/zipball/b680156fa328f1dfd874fd48c7026c41570b9c6e",
- "reference": "b680156fa328f1dfd874fd48c7026c41570b9c6e",
+ "url": "https://api.github.com/repos/doctrine/event-manager/zipball/c07799fcf5ad362050960a0fd068dded40b1e312",
+ "reference": "c07799fcf5ad362050960a0fd068dded40b1e312",
"shasum": ""
},
"require": {
@@ -870,10 +695,10 @@
"doctrine/common": "<2.9"
},
"require-dev": {
- "doctrine/coding-standard": "^12",
- "phpstan/phpstan": "^1.8.8",
- "phpunit/phpunit": "^10.5",
- "vimeo/psalm": "^5.24"
+ "doctrine/coding-standard": "^14",
+ "phpdocumentor/guides-cli": "^1.4",
+ "phpstan/phpstan": "^2.1.32",
+ "phpunit/phpunit": "^10.5.58"
},
"type": "library",
"autoload": {
@@ -922,7 +747,7 @@
],
"support": {
"issues": "https://github.com/doctrine/event-manager/issues",
- "source": "https://github.com/doctrine/event-manager/tree/2.0.1"
+ "source": "https://github.com/doctrine/event-manager/tree/2.1.0"
},
"funding": [
{
@@ -938,37 +763,36 @@
"type": "tidelift"
}
],
- "time": "2024-05-22T20:47:39+00:00"
+ "time": "2026-01-17T22:40:21+00:00"
},
{
"name": "doctrine/inflector",
- "version": "2.0.10",
+ "version": "2.1.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/inflector.git",
- "reference": "5817d0659c5b50c9b950feb9af7b9668e2c436bc"
+ "reference": "6d6c96277ea252fc1304627204c3d5e6e15faa3b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/inflector/zipball/5817d0659c5b50c9b950feb9af7b9668e2c436bc",
- "reference": "5817d0659c5b50c9b950feb9af7b9668e2c436bc",
+ "url": "https://api.github.com/repos/doctrine/inflector/zipball/6d6c96277ea252fc1304627204c3d5e6e15faa3b",
+ "reference": "6d6c96277ea252fc1304627204c3d5e6e15faa3b",
"shasum": ""
},
"require": {
"php": "^7.2 || ^8.0"
},
"require-dev": {
- "doctrine/coding-standard": "^11.0",
- "phpstan/phpstan": "^1.8",
- "phpstan/phpstan-phpunit": "^1.1",
- "phpstan/phpstan-strict-rules": "^1.3",
- "phpunit/phpunit": "^8.5 || ^9.5",
- "vimeo/psalm": "^4.25 || ^5.4"
+ "doctrine/coding-standard": "^12.0 || ^13.0",
+ "phpstan/phpstan": "^1.12 || ^2.0",
+ "phpstan/phpstan-phpunit": "^1.4 || ^2.0",
+ "phpstan/phpstan-strict-rules": "^1.6 || ^2.0",
+ "phpunit/phpunit": "^8.5 || ^12.2"
},
"type": "library",
"autoload": {
"psr-4": {
- "Doctrine\\Inflector\\": "lib/Doctrine/Inflector"
+ "Doctrine\\Inflector\\": "src"
}
},
"notification-url": "https://packagist.org/downloads/",
@@ -1013,7 +837,7 @@
],
"support": {
"issues": "https://github.com/doctrine/inflector/issues",
- "source": "https://github.com/doctrine/inflector/tree/2.0.10"
+ "source": "https://github.com/doctrine/inflector/tree/2.1.0"
},
"funding": [
{
@@ -1029,7 +853,7 @@
"type": "tidelift"
}
],
- "time": "2024-02-18T20:23:39+00:00"
+ "time": "2025-08-10T19:31:58+00:00"
},
{
"name": "doctrine/lexer",
@@ -1110,32 +934,35 @@
},
{
"name": "dragonmantank/cron-expression",
- "version": "v3.3.3",
+ "version": "v3.6.0",
"source": {
"type": "git",
"url": "https://github.com/dragonmantank/cron-expression.git",
- "reference": "adfb1f505deb6384dc8b39804c5065dd3c8c8c0a"
+ "reference": "d61a8a9604ec1f8c3d150d09db6ce98b32675013"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/adfb1f505deb6384dc8b39804c5065dd3c8c8c0a",
- "reference": "adfb1f505deb6384dc8b39804c5065dd3c8c8c0a",
+ "url": "https://api.github.com/repos/dragonmantank/cron-expression/zipball/d61a8a9604ec1f8c3d150d09db6ce98b32675013",
+ "reference": "d61a8a9604ec1f8c3d150d09db6ce98b32675013",
"shasum": ""
},
"require": {
- "php": "^7.2|^8.0",
- "webmozart/assert": "^1.0"
+ "php": "^8.2|^8.3|^8.4|^8.5"
},
"replace": {
"mtdowling/cron-expression": "^1.0"
},
"require-dev": {
- "phpstan/extension-installer": "^1.0",
- "phpstan/phpstan": "^1.0",
- "phpstan/phpstan-webmozart-assert": "^1.0",
- "phpunit/phpunit": "^7.0|^8.0|^9.0"
+ "phpstan/extension-installer": "^1.4.3",
+ "phpstan/phpstan": "^1.12.32|^2.1.31",
+ "phpunit/phpunit": "^8.5.48|^9.0"
},
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "3.x-dev"
+ }
+ },
"autoload": {
"psr-4": {
"Cron\\": "src/Cron/"
@@ -1159,7 +986,7 @@
],
"support": {
"issues": "https://github.com/dragonmantank/cron-expression/issues",
- "source": "https://github.com/dragonmantank/cron-expression/tree/v3.3.3"
+ "source": "https://github.com/dragonmantank/cron-expression/tree/v3.6.0"
},
"funding": [
{
@@ -1167,20 +994,20 @@
"type": "github"
}
],
- "time": "2023-08-10T19:36:49+00:00"
+ "time": "2025-10-31T18:51:33+00:00"
},
{
"name": "egulias/email-validator",
- "version": "4.0.2",
+ "version": "4.0.4",
"source": {
"type": "git",
"url": "https://github.com/egulias/EmailValidator.git",
- "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e"
+ "reference": "d42c8731f0624ad6bdc8d3e5e9a4524f68801cfa"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/ebaaf5be6c0286928352e054f2d5125608e5405e",
- "reference": "ebaaf5be6c0286928352e054f2d5125608e5405e",
+ "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/d42c8731f0624ad6bdc8d3e5e9a4524f68801cfa",
+ "reference": "d42c8731f0624ad6bdc8d3e5e9a4524f68801cfa",
"shasum": ""
},
"require": {
@@ -1226,7 +1053,7 @@
],
"support": {
"issues": "https://github.com/egulias/EmailValidator/issues",
- "source": "https://github.com/egulias/EmailValidator/tree/4.0.2"
+ "source": "https://github.com/egulias/EmailValidator/tree/4.0.4"
},
"funding": [
{
@@ -1234,7 +1061,7 @@
"type": "github"
}
],
- "time": "2023-10-06T06:47:41+00:00"
+ "time": "2025-03-06T22:45:56+00:00"
},
{
"name": "fideloper/proxy",
@@ -1296,16 +1123,16 @@
},
{
"name": "firebase/php-jwt",
- "version": "v6.10.1",
+ "version": "v7.0.2",
"source": {
"type": "git",
"url": "https://github.com/firebase/php-jwt.git",
- "reference": "500501c2ce893c824c801da135d02661199f60c5"
+ "reference": "5645b43af647b6947daac1d0f659dd1fbe8d3b65"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/firebase/php-jwt/zipball/500501c2ce893c824c801da135d02661199f60c5",
- "reference": "500501c2ce893c824c801da135d02661199f60c5",
+ "url": "https://api.github.com/repos/firebase/php-jwt/zipball/5645b43af647b6947daac1d0f659dd1fbe8d3b65",
+ "reference": "5645b43af647b6947daac1d0f659dd1fbe8d3b65",
"shasum": ""
},
"require": {
@@ -1353,37 +1180,37 @@
],
"support": {
"issues": "https://github.com/firebase/php-jwt/issues",
- "source": "https://github.com/firebase/php-jwt/tree/v6.10.1"
+ "source": "https://github.com/firebase/php-jwt/tree/v7.0.2"
},
- "time": "2024-05-18T18:05:11+00:00"
+ "time": "2025-12-16T22:17:28+00:00"
},
{
"name": "fruitcake/php-cors",
- "version": "v1.3.0",
+ "version": "v1.4.0",
"source": {
"type": "git",
"url": "https://github.com/fruitcake/php-cors.git",
- "reference": "3d158f36e7875e2f040f37bc0573956240a5a38b"
+ "reference": "38aaa6c3fd4c157ffe2a4d10aa8b9b16ba8de379"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/fruitcake/php-cors/zipball/3d158f36e7875e2f040f37bc0573956240a5a38b",
- "reference": "3d158f36e7875e2f040f37bc0573956240a5a38b",
+ "url": "https://api.github.com/repos/fruitcake/php-cors/zipball/38aaa6c3fd4c157ffe2a4d10aa8b9b16ba8de379",
+ "reference": "38aaa6c3fd4c157ffe2a4d10aa8b9b16ba8de379",
"shasum": ""
},
"require": {
- "php": "^7.4|^8.0",
- "symfony/http-foundation": "^4.4|^5.4|^6|^7"
+ "php": "^8.1",
+ "symfony/http-foundation": "^5.4|^6.4|^7.3|^8"
},
"require-dev": {
- "phpstan/phpstan": "^1.4",
+ "phpstan/phpstan": "^2",
"phpunit/phpunit": "^9",
- "squizlabs/php_codesniffer": "^3.5"
+ "squizlabs/php_codesniffer": "^4"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.2-dev"
+ "dev-master": "1.3-dev"
}
},
"autoload": {
@@ -1414,7 +1241,7 @@
],
"support": {
"issues": "https://github.com/fruitcake/php-cors/issues",
- "source": "https://github.com/fruitcake/php-cors/tree/v1.3.0"
+ "source": "https://github.com/fruitcake/php-cors/tree/v1.4.0"
},
"funding": [
{
@@ -1426,7 +1253,7 @@
"type": "github"
}
],
- "time": "2023-10-12T05:21:21+00:00"
+ "time": "2025-12-03T09:33:47+00:00"
},
{
"name": "geo-sot/laravel-env-editor",
@@ -1454,12 +1281,12 @@
"type": "library",
"extra": {
"laravel": {
- "providers": [
- "GeoSot\\EnvEditor\\ServiceProvider"
- ],
"aliases": {
"EnvEditor": "GeoSot\\EnvEditor\\Facades\\EnvEditor"
- }
+ },
+ "providers": [
+ "GeoSot\\EnvEditor\\ServiceProvider"
+ ]
}
},
"autoload": {
@@ -1492,24 +1319,24 @@
},
{
"name": "graham-campbell/result-type",
- "version": "v1.1.3",
+ "version": "v1.1.4",
"source": {
"type": "git",
"url": "https://github.com/GrahamCampbell/Result-Type.git",
- "reference": "3ba905c11371512af9d9bdd27d99b782216b6945"
+ "reference": "e01f4a821471308ba86aa202fed6698b6b695e3b"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/3ba905c11371512af9d9bdd27d99b782216b6945",
- "reference": "3ba905c11371512af9d9bdd27d99b782216b6945",
+ "url": "https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/e01f4a821471308ba86aa202fed6698b6b695e3b",
+ "reference": "e01f4a821471308ba86aa202fed6698b6b695e3b",
"shasum": ""
},
"require": {
"php": "^7.2.5 || ^8.0",
- "phpoption/phpoption": "^1.9.3"
+ "phpoption/phpoption": "^1.9.5"
},
"require-dev": {
- "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28"
+ "phpunit/phpunit": "^8.5.41 || ^9.6.22 || ^10.5.45 || ^11.5.7"
},
"type": "library",
"autoload": {
@@ -1538,7 +1365,7 @@
],
"support": {
"issues": "https://github.com/GrahamCampbell/Result-Type/issues",
- "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.3"
+ "source": "https://github.com/GrahamCampbell/Result-Type/tree/v1.1.4"
},
"funding": [
{
@@ -1550,26 +1377,26 @@
"type": "tidelift"
}
],
- "time": "2024-07-20T21:45:45+00:00"
+ "time": "2025-12-27T19:43:20+00:00"
},
{
"name": "guzzlehttp/guzzle",
- "version": "7.9.2",
+ "version": "7.10.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/guzzle.git",
- "reference": "d281ed313b989f213357e3be1a179f02196ac99b"
+ "reference": "b51ac707cfa420b7bfd4e4d5e510ba8008e822b4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/guzzle/zipball/d281ed313b989f213357e3be1a179f02196ac99b",
- "reference": "d281ed313b989f213357e3be1a179f02196ac99b",
+ "url": "https://api.github.com/repos/guzzle/guzzle/zipball/b51ac707cfa420b7bfd4e4d5e510ba8008e822b4",
+ "reference": "b51ac707cfa420b7bfd4e4d5e510ba8008e822b4",
"shasum": ""
},
"require": {
"ext-json": "*",
- "guzzlehttp/promises": "^1.5.3 || ^2.0.3",
- "guzzlehttp/psr7": "^2.7.0",
+ "guzzlehttp/promises": "^2.3",
+ "guzzlehttp/psr7": "^2.8",
"php": "^7.2.5 || ^8.0",
"psr/http-client": "^1.0",
"symfony/deprecation-contracts": "^2.2 || ^3.0"
@@ -1660,7 +1487,7 @@
],
"support": {
"issues": "https://github.com/guzzle/guzzle/issues",
- "source": "https://github.com/guzzle/guzzle/tree/7.9.2"
+ "source": "https://github.com/guzzle/guzzle/tree/7.10.0"
},
"funding": [
{
@@ -1676,20 +1503,20 @@
"type": "tidelift"
}
],
- "time": "2024-07-24T11:22:20+00:00"
+ "time": "2025-08-23T22:36:01+00:00"
},
{
"name": "guzzlehttp/promises",
- "version": "2.0.3",
+ "version": "2.3.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/promises.git",
- "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8"
+ "reference": "481557b130ef3790cf82b713667b43030dc9c957"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/promises/zipball/6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
- "reference": "6ea8dd08867a2a42619d65c3deb2c0fcbf81c8f8",
+ "url": "https://api.github.com/repos/guzzle/promises/zipball/481557b130ef3790cf82b713667b43030dc9c957",
+ "reference": "481557b130ef3790cf82b713667b43030dc9c957",
"shasum": ""
},
"require": {
@@ -1697,7 +1524,7 @@
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
- "phpunit/phpunit": "^8.5.39 || ^9.6.20"
+ "phpunit/phpunit": "^8.5.44 || ^9.6.25"
},
"type": "library",
"extra": {
@@ -1743,7 +1570,7 @@
],
"support": {
"issues": "https://github.com/guzzle/promises/issues",
- "source": "https://github.com/guzzle/promises/tree/2.0.3"
+ "source": "https://github.com/guzzle/promises/tree/2.3.0"
},
"funding": [
{
@@ -1759,20 +1586,20 @@
"type": "tidelift"
}
],
- "time": "2024-07-18T10:29:17+00:00"
+ "time": "2025-08-22T14:34:08+00:00"
},
{
"name": "guzzlehttp/psr7",
- "version": "2.7.0",
+ "version": "2.8.0",
"source": {
"type": "git",
"url": "https://github.com/guzzle/psr7.git",
- "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201"
+ "reference": "21dc724a0583619cd1652f673303492272778051"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/psr7/zipball/a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
- "reference": "a70f5c95fb43bc83f07c9c948baa0dc1829bf201",
+ "url": "https://api.github.com/repos/guzzle/psr7/zipball/21dc724a0583619cd1652f673303492272778051",
+ "reference": "21dc724a0583619cd1652f673303492272778051",
"shasum": ""
},
"require": {
@@ -1788,7 +1615,7 @@
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
"http-interop/http-factory-tests": "0.9.0",
- "phpunit/phpunit": "^8.5.39 || ^9.6.20"
+ "phpunit/phpunit": "^8.5.44 || ^9.6.25"
},
"suggest": {
"laminas/laminas-httphandlerrunner": "Emit PSR-7 responses"
@@ -1859,7 +1686,7 @@
],
"support": {
"issues": "https://github.com/guzzle/psr7/issues",
- "source": "https://github.com/guzzle/psr7/tree/2.7.0"
+ "source": "https://github.com/guzzle/psr7/tree/2.8.0"
},
"funding": [
{
@@ -1875,20 +1702,20 @@
"type": "tidelift"
}
],
- "time": "2024-07-18T11:15:46+00:00"
+ "time": "2025-08-23T21:21:41+00:00"
},
{
"name": "guzzlehttp/uri-template",
- "version": "v1.0.3",
+ "version": "v1.0.5",
"source": {
"type": "git",
"url": "https://github.com/guzzle/uri-template.git",
- "reference": "ecea8feef63bd4fef1f037ecb288386999ecc11c"
+ "reference": "4f4bbd4e7172148801e76e3decc1e559bdee34e1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/guzzle/uri-template/zipball/ecea8feef63bd4fef1f037ecb288386999ecc11c",
- "reference": "ecea8feef63bd4fef1f037ecb288386999ecc11c",
+ "url": "https://api.github.com/repos/guzzle/uri-template/zipball/4f4bbd4e7172148801e76e3decc1e559bdee34e1",
+ "reference": "4f4bbd4e7172148801e76e3decc1e559bdee34e1",
"shasum": ""
},
"require": {
@@ -1897,7 +1724,7 @@
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
- "phpunit/phpunit": "^8.5.36 || ^9.6.15",
+ "phpunit/phpunit": "^8.5.44 || ^9.6.25",
"uri-template/tests": "1.0.0"
},
"type": "library",
@@ -1945,7 +1772,7 @@
],
"support": {
"issues": "https://github.com/guzzle/uri-template/issues",
- "source": "https://github.com/guzzle/uri-template/tree/v1.0.3"
+ "source": "https://github.com/guzzle/uri-template/tree/v1.0.5"
},
"funding": [
{
@@ -1961,24 +1788,24 @@
"type": "tidelift"
}
],
- "time": "2023-12-03T19:50:20+00:00"
+ "time": "2025-08-22T14:27:06+00:00"
},
{
"name": "jaybizzle/crawler-detect",
- "version": "v1.2.120",
+ "version": "v1.3.6",
"source": {
"type": "git",
"url": "https://github.com/JayBizzle/Crawler-Detect.git",
- "reference": "2b325bdce46bbb8a2e96dc740ad37c743c9d8617"
+ "reference": "61f2ef1ad2d0ae922c265931cb0a8032a1ed2813"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/JayBizzle/Crawler-Detect/zipball/2b325bdce46bbb8a2e96dc740ad37c743c9d8617",
- "reference": "2b325bdce46bbb8a2e96dc740ad37c743c9d8617",
+ "url": "https://api.github.com/repos/JayBizzle/Crawler-Detect/zipball/61f2ef1ad2d0ae922c265931cb0a8032a1ed2813",
+ "reference": "61f2ef1ad2d0ae922c265931cb0a8032a1ed2813",
"shasum": ""
},
"require": {
- "php": ">=5.3.0"
+ "php": ">=7.1.0"
},
"require-dev": {
"phpunit/phpunit": "^4.8|^5.5|^6.5|^9.4"
@@ -2011,9 +1838,9 @@
],
"support": {
"issues": "https://github.com/JayBizzle/Crawler-Detect/issues",
- "source": "https://github.com/JayBizzle/Crawler-Detect/tree/v1.2.120"
+ "source": "https://github.com/JayBizzle/Crawler-Detect/tree/v1.3.6"
},
- "time": "2024-09-15T14:31:21+00:00"
+ "time": "2025-09-30T16:22:43+00:00"
},
{
"name": "jeroendesloovere/vcard",
@@ -2070,16 +1897,16 @@
},
{
"name": "laravel/framework",
- "version": "v9.52.16",
+ "version": "v9.52.21",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
- "reference": "082345d76fc6a55b649572efe10b11b03e279d24"
+ "reference": "6055d9594c9da265ddbf1e27e7dd8f09624568bc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/framework/zipball/082345d76fc6a55b649572efe10b11b03e279d24",
- "reference": "082345d76fc6a55b649572efe10b11b03e279d24",
+ "url": "https://api.github.com/repos/laravel/framework/zipball/6055d9594c9da265ddbf1e27e7dd8f09624568bc",
+ "reference": "6055d9594c9da265ddbf1e27e7dd8f09624568bc",
"shasum": ""
},
"require": {
@@ -2264,20 +2091,20 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
- "time": "2023-10-03T13:02:30+00:00"
+ "time": "2025-09-30T14:57:50+00:00"
},
{
"name": "laravel/serializable-closure",
- "version": "v1.3.5",
+ "version": "v1.3.7",
"source": {
"type": "git",
"url": "https://github.com/laravel/serializable-closure.git",
- "reference": "1dc4a3dbfa2b7628a3114e43e32120cce7cdda9c"
+ "reference": "4f48ade902b94323ca3be7646db16209ec76be3d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/1dc4a3dbfa2b7628a3114e43e32120cce7cdda9c",
- "reference": "1dc4a3dbfa2b7628a3114e43e32120cce7cdda9c",
+ "url": "https://api.github.com/repos/laravel/serializable-closure/zipball/4f48ade902b94323ca3be7646db16209ec76be3d",
+ "reference": "4f48ade902b94323ca3be7646db16209ec76be3d",
"shasum": ""
},
"require": {
@@ -2325,51 +2152,51 @@
"issues": "https://github.com/laravel/serializable-closure/issues",
"source": "https://github.com/laravel/serializable-closure"
},
- "time": "2024-09-23T13:33:08+00:00"
+ "time": "2024-11-14T18:34:49+00:00"
},
{
"name": "laravel/socialite",
- "version": "v5.16.0",
+ "version": "v5.24.2",
"source": {
"type": "git",
"url": "https://github.com/laravel/socialite.git",
- "reference": "40a2dc98c53d9dc6d55eadb0d490d3d72b73f1bf"
+ "reference": "5cea2eebf11ca4bc6c2f20495c82a70a9b3d1613"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/socialite/zipball/40a2dc98c53d9dc6d55eadb0d490d3d72b73f1bf",
- "reference": "40a2dc98c53d9dc6d55eadb0d490d3d72b73f1bf",
+ "url": "https://api.github.com/repos/laravel/socialite/zipball/5cea2eebf11ca4bc6c2f20495c82a70a9b3d1613",
+ "reference": "5cea2eebf11ca4bc6c2f20495c82a70a9b3d1613",
"shasum": ""
},
"require": {
"ext-json": "*",
- "firebase/php-jwt": "^6.4",
+ "firebase/php-jwt": "^6.4|^7.0",
"guzzlehttp/guzzle": "^6.0|^7.0",
- "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0",
- "illuminate/http": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0",
- "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0",
- "league/oauth1-client": "^1.10.1",
+ "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
+ "illuminate/http": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
+ "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
+ "league/oauth1-client": "^1.11",
"php": "^7.2|^8.0",
"phpseclib/phpseclib": "^3.0"
},
"require-dev": {
"mockery/mockery": "^1.0",
- "orchestra/testbench": "^4.0|^5.0|^6.0|^7.0|^8.0|^9.0",
- "phpstan/phpstan": "^1.10",
- "phpunit/phpunit": "^8.0|^9.3|^10.4"
+ "orchestra/testbench": "^4.18|^5.20|^6.47|^7.55|^8.36|^9.15|^10.8",
+ "phpstan/phpstan": "^1.12.23",
+ "phpunit/phpunit": "^8.0|^9.3|^10.4|^11.5|^12.0"
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-master": "5.x-dev"
- },
"laravel": {
- "providers": [
- "Laravel\\Socialite\\SocialiteServiceProvider"
- ],
"aliases": {
"Socialite": "Laravel\\Socialite\\Facades\\Socialite"
- }
+ },
+ "providers": [
+ "Laravel\\Socialite\\SocialiteServiceProvider"
+ ]
+ },
+ "branch-alias": {
+ "dev-master": "5.x-dev"
}
},
"autoload": {
@@ -2397,37 +2224,37 @@
"issues": "https://github.com/laravel/socialite/issues",
"source": "https://github.com/laravel/socialite"
},
- "time": "2024-09-03T09:46:57+00:00"
+ "time": "2026-01-10T16:07:28+00:00"
},
{
"name": "laravel/tinker",
- "version": "v2.10.0",
+ "version": "v2.11.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/tinker.git",
- "reference": "ba4d51eb56de7711b3a37d63aa0643e99a339ae5"
+ "reference": "3d34b97c9a1747a81a3fde90482c092bd8b66468"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/tinker/zipball/ba4d51eb56de7711b3a37d63aa0643e99a339ae5",
- "reference": "ba4d51eb56de7711b3a37d63aa0643e99a339ae5",
+ "url": "https://api.github.com/repos/laravel/tinker/zipball/3d34b97c9a1747a81a3fde90482c092bd8b66468",
+ "reference": "3d34b97c9a1747a81a3fde90482c092bd8b66468",
"shasum": ""
},
"require": {
- "illuminate/console": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0",
- "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0",
- "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0",
+ "illuminate/console": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
+ "illuminate/contracts": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
+ "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0",
"php": "^7.2.5|^8.0",
"psy/psysh": "^0.11.1|^0.12.0",
- "symfony/var-dumper": "^4.3.4|^5.0|^6.0|^7.0"
+ "symfony/var-dumper": "^4.3.4|^5.0|^6.0|^7.0|^8.0"
},
"require-dev": {
"mockery/mockery": "~1.3.3|^1.4.2",
"phpstan/phpstan": "^1.10",
- "phpunit/phpunit": "^8.5.8|^9.3.3"
+ "phpunit/phpunit": "^8.5.8|^9.3.3|^10.0"
},
"suggest": {
- "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0|^9.0|^10.0|^11.0)."
+ "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0)."
},
"type": "library",
"extra": {
@@ -2461,22 +2288,22 @@
],
"support": {
"issues": "https://github.com/laravel/tinker/issues",
- "source": "https://github.com/laravel/tinker/tree/v2.10.0"
+ "source": "https://github.com/laravel/tinker/tree/v2.11.0"
},
- "time": "2024-09-23T13:32:56+00:00"
+ "time": "2025-12-19T19:16:45+00:00"
},
{
"name": "league/commonmark",
- "version": "2.5.3",
+ "version": "2.8.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/commonmark.git",
- "reference": "b650144166dfa7703e62a22e493b853b58d874b0"
+ "reference": "4efa10c1e56488e658d10adf7b7b7dcd19940bfb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/b650144166dfa7703e62a22e493b853b58d874b0",
- "reference": "b650144166dfa7703e62a22e493b853b58d874b0",
+ "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/4efa10c1e56488e658d10adf7b7b7dcd19940bfb",
+ "reference": "4efa10c1e56488e658d10adf7b7b7dcd19940bfb",
"shasum": ""
},
"require": {
@@ -2501,10 +2328,11 @@
"phpstan/phpstan": "^1.8.2",
"phpunit/phpunit": "^9.5.21 || ^10.5.9 || ^11.0.0",
"scrutinizer/ocular": "^1.8.1",
- "symfony/finder": "^5.3 | ^6.0 || ^7.0",
- "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0 || ^7.0",
+ "symfony/finder": "^5.3 | ^6.0 | ^7.0",
+ "symfony/process": "^5.4 | ^6.0 | ^7.0",
+ "symfony/yaml": "^2.3 | ^3.0 | ^4.0 | ^5.0 | ^6.0 | ^7.0",
"unleashedtech/php-coding-standard": "^3.1.1",
- "vimeo/psalm": "^4.24.0 || ^5.0.0"
+ "vimeo/psalm": "^4.24.0 || ^5.0.0 || ^6.0.0"
},
"suggest": {
"symfony/yaml": "v2.3+ required if using the Front Matter extension"
@@ -2512,7 +2340,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-main": "2.6-dev"
+ "dev-main": "2.9-dev"
}
},
"autoload": {
@@ -2569,7 +2397,7 @@
"type": "tidelift"
}
],
- "time": "2024-08-16T11:46:16+00:00"
+ "time": "2025-11-26T21:48:24+00:00"
},
{
"name": "league/config",
@@ -2655,16 +2483,16 @@
},
{
"name": "league/flysystem",
- "version": "3.29.0",
+ "version": "3.31.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/flysystem.git",
- "reference": "0adc0d9a51852e170e0028a60bd271726626d3f0"
+ "reference": "1717e0b3642b0df65ecb0cc89cdd99fa840672ff"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/0adc0d9a51852e170e0028a60bd271726626d3f0",
- "reference": "0adc0d9a51852e170e0028a60bd271726626d3f0",
+ "url": "https://api.github.com/repos/thephpleague/flysystem/zipball/1717e0b3642b0df65ecb0cc89cdd99fa840672ff",
+ "reference": "1717e0b3642b0df65ecb0cc89cdd99fa840672ff",
"shasum": ""
},
"require": {
@@ -2688,13 +2516,13 @@
"composer/semver": "^3.0",
"ext-fileinfo": "*",
"ext-ftp": "*",
- "ext-mongodb": "^1.3",
+ "ext-mongodb": "^1.3|^2",
"ext-zip": "*",
"friendsofphp/php-cs-fixer": "^3.5",
"google/cloud-storage": "^1.23",
"guzzlehttp/psr7": "^2.6",
"microsoft/azure-storage-blob": "^1.1",
- "mongodb/mongodb": "^1.2",
+ "mongodb/mongodb": "^1.2|^2",
"phpseclib/phpseclib": "^3.0.36",
"phpstan/phpstan": "^1.10",
"phpunit/phpunit": "^9.5.11|^10.0",
@@ -2732,22 +2560,22 @@
],
"support": {
"issues": "https://github.com/thephpleague/flysystem/issues",
- "source": "https://github.com/thephpleague/flysystem/tree/3.29.0"
+ "source": "https://github.com/thephpleague/flysystem/tree/3.31.0"
},
- "time": "2024-09-29T11:59:11+00:00"
+ "time": "2026-01-23T15:38:47+00:00"
},
{
"name": "league/flysystem-local",
- "version": "3.29.0",
+ "version": "3.31.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/flysystem-local.git",
- "reference": "e0e8d52ce4b2ed154148453d321e97c8e931bd27"
+ "reference": "2f669db18a4c20c755c2bb7d3a7b0b2340488079"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/flysystem-local/zipball/e0e8d52ce4b2ed154148453d321e97c8e931bd27",
- "reference": "e0e8d52ce4b2ed154148453d321e97c8e931bd27",
+ "url": "https://api.github.com/repos/thephpleague/flysystem-local/zipball/2f669db18a4c20c755c2bb7d3a7b0b2340488079",
+ "reference": "2f669db18a4c20c755c2bb7d3a7b0b2340488079",
"shasum": ""
},
"require": {
@@ -2781,9 +2609,9 @@
"local"
],
"support": {
- "source": "https://github.com/thephpleague/flysystem-local/tree/3.29.0"
+ "source": "https://github.com/thephpleague/flysystem-local/tree/3.31.0"
},
- "time": "2024-08-09T21:24:39+00:00"
+ "time": "2026-01-23T15:30:45+00:00"
},
{
"name": "league/mime-type-detection",
@@ -2843,16 +2671,16 @@
},
{
"name": "league/oauth1-client",
- "version": "v1.10.1",
+ "version": "v1.11.0",
"source": {
"type": "git",
"url": "https://github.com/thephpleague/oauth1-client.git",
- "reference": "d6365b901b5c287dd41f143033315e2f777e1167"
+ "reference": "f9c94b088837eb1aae1ad7c4f23eb65cc6993055"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/d6365b901b5c287dd41f143033315e2f777e1167",
- "reference": "d6365b901b5c287dd41f143033315e2f777e1167",
+ "url": "https://api.github.com/repos/thephpleague/oauth1-client/zipball/f9c94b088837eb1aae1ad7c4f23eb65cc6993055",
+ "reference": "f9c94b088837eb1aae1ad7c4f23eb65cc6993055",
"shasum": ""
},
"require": {
@@ -2913,180 +2741,9 @@
],
"support": {
"issues": "https://github.com/thephpleague/oauth1-client/issues",
- "source": "https://github.com/thephpleague/oauth1-client/tree/v1.10.1"
+ "source": "https://github.com/thephpleague/oauth1-client/tree/v1.11.0"
},
- "time": "2022-04-15T14:02:14+00:00"
- },
- {
- "name": "league/uri",
- "version": "6.8.0",
- "source": {
- "type": "git",
- "url": "https://github.com/thephpleague/uri.git",
- "reference": "a700b4656e4c54371b799ac61e300ab25a2d1d39"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/thephpleague/uri/zipball/a700b4656e4c54371b799ac61e300ab25a2d1d39",
- "reference": "a700b4656e4c54371b799ac61e300ab25a2d1d39",
- "shasum": ""
- },
- "require": {
- "ext-json": "*",
- "league/uri-interfaces": "^2.3",
- "php": "^8.1",
- "psr/http-message": "^1.0.1"
- },
- "conflict": {
- "league/uri-schemes": "^1.0"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "^v3.9.5",
- "nyholm/psr7": "^1.5.1",
- "php-http/psr7-integration-tests": "^1.1.1",
- "phpbench/phpbench": "^1.2.6",
- "phpstan/phpstan": "^1.8.5",
- "phpstan/phpstan-deprecation-rules": "^1.0",
- "phpstan/phpstan-phpunit": "^1.1.1",
- "phpstan/phpstan-strict-rules": "^1.4.3",
- "phpunit/phpunit": "^9.5.24",
- "psr/http-factory": "^1.0.1"
- },
- "suggest": {
- "ext-fileinfo": "Needed to create Data URI from a filepath",
- "ext-intl": "Needed to improve host validation",
- "league/uri-components": "Needed to easily manipulate URI objects",
- "psr/http-factory": "Needed to use the URI factory"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "6.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "League\\Uri\\": "src"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Ignace Nyamagana Butera",
- "email": "nyamsprod@gmail.com",
- "homepage": "https://nyamsprod.com"
- }
- ],
- "description": "URI manipulation library",
- "homepage": "https://uri.thephpleague.com",
- "keywords": [
- "data-uri",
- "file-uri",
- "ftp",
- "hostname",
- "http",
- "https",
- "middleware",
- "parse_str",
- "parse_url",
- "psr-7",
- "query-string",
- "querystring",
- "rfc3986",
- "rfc3987",
- "rfc6570",
- "uri",
- "uri-template",
- "url",
- "ws"
- ],
- "support": {
- "docs": "https://uri.thephpleague.com",
- "forum": "https://thephpleague.slack.com",
- "issues": "https://github.com/thephpleague/uri/issues",
- "source": "https://github.com/thephpleague/uri/tree/6.8.0"
- },
- "funding": [
- {
- "url": "https://github.com/sponsors/nyamsprod",
- "type": "github"
- }
- ],
- "time": "2022-09-13T19:58:47+00:00"
- },
- {
- "name": "league/uri-interfaces",
- "version": "2.3.0",
- "source": {
- "type": "git",
- "url": "https://github.com/thephpleague/uri-interfaces.git",
- "reference": "00e7e2943f76d8cb50c7dfdc2f6dee356e15e383"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/thephpleague/uri-interfaces/zipball/00e7e2943f76d8cb50c7dfdc2f6dee356e15e383",
- "reference": "00e7e2943f76d8cb50c7dfdc2f6dee356e15e383",
- "shasum": ""
- },
- "require": {
- "ext-json": "*",
- "php": "^7.2 || ^8.0"
- },
- "require-dev": {
- "friendsofphp/php-cs-fixer": "^2.19",
- "phpstan/phpstan": "^0.12.90",
- "phpstan/phpstan-phpunit": "^0.12.19",
- "phpstan/phpstan-strict-rules": "^0.12.9",
- "phpunit/phpunit": "^8.5.15 || ^9.5"
- },
- "suggest": {
- "ext-intl": "to use the IDNA feature",
- "symfony/intl": "to use the IDNA feature via Symfony Polyfill"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "2.x-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "League\\Uri\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Ignace Nyamagana Butera",
- "email": "nyamsprod@gmail.com",
- "homepage": "https://nyamsprod.com"
- }
- ],
- "description": "Common interface for URI representation",
- "homepage": "http://github.com/thephpleague/uri-interfaces",
- "keywords": [
- "rfc3986",
- "rfc3987",
- "uri",
- "url"
- ],
- "support": {
- "issues": "https://github.com/thephpleague/uri-interfaces/issues",
- "source": "https://github.com/thephpleague/uri-interfaces/tree/2.3.0"
- },
- "funding": [
- {
- "url": "https://github.com/sponsors/nyamsprod",
- "type": "github"
- }
- ],
- "time": "2021-06-28T04:27:21+00:00"
+ "time": "2024-12-10T19:59:05+00:00"
},
{
"name": "livewire/livewire",
@@ -3122,12 +2779,12 @@
"type": "library",
"extra": {
"laravel": {
- "providers": [
- "Livewire\\LivewireServiceProvider"
- ],
"aliases": {
"Livewire": "Livewire\\Livewire"
- }
+ },
+ "providers": [
+ "Livewire\\LivewireServiceProvider"
+ ]
}
},
"autoload": {
@@ -3163,16 +2820,16 @@
},
{
"name": "monolog/monolog",
- "version": "2.9.3",
+ "version": "2.11.0",
"source": {
"type": "git",
"url": "https://github.com/Seldaek/monolog.git",
- "reference": "a30bfe2e142720dfa990d0a7e573997f5d884215"
+ "reference": "37308608e599f34a1a4845b16440047ec98a172a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Seldaek/monolog/zipball/a30bfe2e142720dfa990d0a7e573997f5d884215",
- "reference": "a30bfe2e142720dfa990d0a7e573997f5d884215",
+ "url": "https://api.github.com/repos/Seldaek/monolog/zipball/37308608e599f34a1a4845b16440047ec98a172a",
+ "reference": "37308608e599f34a1a4845b16440047ec98a172a",
"shasum": ""
},
"require": {
@@ -3190,7 +2847,7 @@
"graylog2/gelf-php": "^1.4.2 || ^2@dev",
"guzzlehttp/guzzle": "^7.4",
"guzzlehttp/psr7": "^2.2",
- "mongodb/mongodb": "^1.8",
+ "mongodb/mongodb": "^1.8 || ^2.0",
"php-amqplib/php-amqplib": "~2.4 || ^3",
"phpspec/prophecy": "^1.15",
"phpstan/phpstan": "^1.10",
@@ -3249,7 +2906,7 @@
],
"support": {
"issues": "https://github.com/Seldaek/monolog/issues",
- "source": "https://github.com/Seldaek/monolog/tree/2.9.3"
+ "source": "https://github.com/Seldaek/monolog/tree/2.11.0"
},
"funding": [
{
@@ -3261,20 +2918,20 @@
"type": "tidelift"
}
],
- "time": "2024-04-12T20:52:51+00:00"
+ "time": "2026-01-01T13:05:00+00:00"
},
{
"name": "nesbot/carbon",
- "version": "2.72.5",
+ "version": "2.73.0",
"source": {
"type": "git",
- "url": "https://github.com/briannesbitt/Carbon.git",
- "reference": "afd46589c216118ecd48ff2b95d77596af1e57ed"
+ "url": "https://github.com/CarbonPHP/carbon.git",
+ "reference": "9228ce90e1035ff2f0db84b40ec2e023ed802075"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/afd46589c216118ecd48ff2b95d77596af1e57ed",
- "reference": "afd46589c216118ecd48ff2b95d77596af1e57ed",
+ "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/9228ce90e1035ff2f0db84b40ec2e023ed802075",
+ "reference": "9228ce90e1035ff2f0db84b40ec2e023ed802075",
"shasum": ""
},
"require": {
@@ -3294,7 +2951,7 @@
"doctrine/orm": "^2.7 || ^3.0",
"friendsofphp/php-cs-fixer": "^3.0",
"kylekatarnls/multi-tester": "^2.0",
- "ondrejmirtes/better-reflection": "*",
+ "ondrejmirtes/better-reflection": "<6",
"phpmd/phpmd": "^2.9",
"phpstan/extension-installer": "^1.0",
"phpstan/phpstan": "^0.12.99 || ^1.7.14",
@@ -3307,10 +2964,6 @@
],
"type": "library",
"extra": {
- "branch-alias": {
- "dev-master": "3.x-dev",
- "dev-2.x": "2.x-dev"
- },
"laravel": {
"providers": [
"Carbon\\Laravel\\ServiceProvider"
@@ -3320,6 +2973,10 @@
"includes": [
"extension.neon"
]
+ },
+ "branch-alias": {
+ "dev-2.x": "2.x-dev",
+ "dev-master": "3.x-dev"
}
},
"autoload": {
@@ -3368,29 +3025,29 @@
"type": "tidelift"
}
],
- "time": "2024-06-03T19:18:41+00:00"
+ "time": "2025-01-08T20:10:23+00:00"
},
{
"name": "nette/schema",
- "version": "v1.3.2",
+ "version": "v1.3.3",
"source": {
"type": "git",
"url": "https://github.com/nette/schema.git",
- "reference": "da801d52f0354f70a638673c4a0f04e16529431d"
+ "reference": "2befc2f42d7c715fd9d95efc31b1081e5d765004"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/schema/zipball/da801d52f0354f70a638673c4a0f04e16529431d",
- "reference": "da801d52f0354f70a638673c4a0f04e16529431d",
+ "url": "https://api.github.com/repos/nette/schema/zipball/2befc2f42d7c715fd9d95efc31b1081e5d765004",
+ "reference": "2befc2f42d7c715fd9d95efc31b1081e5d765004",
"shasum": ""
},
"require": {
"nette/utils": "^4.0",
- "php": "8.1 - 8.4"
+ "php": "8.1 - 8.5"
},
"require-dev": {
"nette/tester": "^2.5.2",
- "phpstan/phpstan-nette": "^1.0",
+ "phpstan/phpstan-nette": "^2.0@stable",
"tracy/tracy": "^2.8"
},
"type": "library",
@@ -3400,6 +3057,9 @@
}
},
"autoload": {
+ "psr-4": {
+ "Nette\\": "src"
+ },
"classmap": [
"src/"
]
@@ -3428,35 +3088,35 @@
],
"support": {
"issues": "https://github.com/nette/schema/issues",
- "source": "https://github.com/nette/schema/tree/v1.3.2"
+ "source": "https://github.com/nette/schema/tree/v1.3.3"
},
- "time": "2024-10-06T23:10:23+00:00"
+ "time": "2025-10-30T22:57:59+00:00"
},
{
"name": "nette/utils",
- "version": "v4.0.5",
+ "version": "v4.1.1",
"source": {
"type": "git",
"url": "https://github.com/nette/utils.git",
- "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96"
+ "reference": "c99059c0315591f1a0db7ad6002000288ab8dc72"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nette/utils/zipball/736c567e257dbe0fcf6ce81b4d6dbe05c6899f96",
- "reference": "736c567e257dbe0fcf6ce81b4d6dbe05c6899f96",
+ "url": "https://api.github.com/repos/nette/utils/zipball/c99059c0315591f1a0db7ad6002000288ab8dc72",
+ "reference": "c99059c0315591f1a0db7ad6002000288ab8dc72",
"shasum": ""
},
"require": {
- "php": "8.0 - 8.4"
+ "php": "8.2 - 8.5"
},
"conflict": {
"nette/finder": "<3",
"nette/schema": "<1.2.2"
},
"require-dev": {
- "jetbrains/phpstorm-attributes": "dev-master",
+ "jetbrains/phpstorm-attributes": "^1.2",
"nette/tester": "^2.5",
- "phpstan/phpstan": "^1.0",
+ "phpstan/phpstan-nette": "^2.0@stable",
"tracy/tracy": "^2.9"
},
"suggest": {
@@ -3470,10 +3130,13 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "4.0-dev"
+ "dev-master": "4.1-dev"
}
},
"autoload": {
+ "psr-4": {
+ "Nette\\": "src"
+ },
"classmap": [
"src/"
]
@@ -3514,22 +3177,22 @@
],
"support": {
"issues": "https://github.com/nette/utils/issues",
- "source": "https://github.com/nette/utils/tree/v4.0.5"
+ "source": "https://github.com/nette/utils/tree/v4.1.1"
},
- "time": "2024-08-07T15:39:19+00:00"
+ "time": "2025-12-22T12:14:32+00:00"
},
{
"name": "nikic/php-parser",
- "version": "v5.3.0",
+ "version": "v5.7.0",
"source": {
"type": "git",
"url": "https://github.com/nikic/PHP-Parser.git",
- "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a"
+ "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/3abf7425cd284141dc5d8d14a9ee444de3345d1a",
- "reference": "3abf7425cd284141dc5d8d14a9ee444de3345d1a",
+ "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82",
+ "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82",
"shasum": ""
},
"require": {
@@ -3548,7 +3211,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "5.0-dev"
+ "dev-master": "5.x-dev"
}
},
"autoload": {
@@ -3572,39 +3235,38 @@
],
"support": {
"issues": "https://github.com/nikic/PHP-Parser/issues",
- "source": "https://github.com/nikic/PHP-Parser/tree/v5.3.0"
+ "source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0"
},
- "time": "2024-09-29T13:56:26+00:00"
+ "time": "2025-12-06T11:56:16+00:00"
},
{
"name": "nunomaduro/termwind",
- "version": "v1.15.1",
+ "version": "v1.17.0",
"source": {
"type": "git",
"url": "https://github.com/nunomaduro/termwind.git",
- "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc"
+ "reference": "5369ef84d8142c1d87e4ec278711d4ece3cbf301"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/8ab0b32c8caa4a2e09700ea32925441385e4a5dc",
- "reference": "8ab0b32c8caa4a2e09700ea32925441385e4a5dc",
+ "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/5369ef84d8142c1d87e4ec278711d4ece3cbf301",
+ "reference": "5369ef84d8142c1d87e4ec278711d4ece3cbf301",
"shasum": ""
},
"require": {
"ext-mbstring": "*",
- "php": "^8.0",
- "symfony/console": "^5.3.0|^6.0.0"
+ "php": "^8.1",
+ "symfony/console": "^6.4.15"
},
"require-dev": {
- "ergebnis/phpstan-rules": "^1.0.",
- "illuminate/console": "^8.0|^9.0",
- "illuminate/support": "^8.0|^9.0",
- "laravel/pint": "^1.0.0",
- "pestphp/pest": "^1.21.0",
- "pestphp/pest-plugin-mock": "^1.0",
- "phpstan/phpstan": "^1.4.6",
- "phpstan/phpstan-strict-rules": "^1.1.0",
- "symfony/var-dumper": "^5.2.7|^6.0.0",
+ "illuminate/console": "^10.48.24",
+ "illuminate/support": "^10.48.24",
+ "laravel/pint": "^1.18.2",
+ "pestphp/pest": "^2.36.0",
+ "pestphp/pest-plugin-mock": "2.0.0",
+ "phpstan/phpstan": "^1.12.11",
+ "phpstan/phpstan-strict-rules": "^1.6.1",
+ "symfony/var-dumper": "^6.4.15",
"thecodingmachine/phpstan-strict-rules": "^1.0.0"
},
"type": "library",
@@ -3644,7 +3306,7 @@
],
"support": {
"issues": "https://github.com/nunomaduro/termwind/issues",
- "source": "https://github.com/nunomaduro/termwind/tree/v1.15.1"
+ "source": "https://github.com/nunomaduro/termwind/tree/v1.17.0"
},
"funding": [
{
@@ -3660,28 +3322,30 @@
"type": "github"
}
],
- "time": "2023-02-08T01:06:31+00:00"
+ "time": "2024-11-21T10:36:35+00:00"
},
{
"name": "paragonie/constant_time_encoding",
- "version": "v3.0.0",
+ "version": "v3.1.3",
"source": {
"type": "git",
"url": "https://github.com/paragonie/constant_time_encoding.git",
- "reference": "df1e7fde177501eee2037dd159cf04f5f301a512"
+ "reference": "d5b01a39b3415c2cd581d3bd3a3575c1ebbd8e77"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/df1e7fde177501eee2037dd159cf04f5f301a512",
- "reference": "df1e7fde177501eee2037dd159cf04f5f301a512",
+ "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/d5b01a39b3415c2cd581d3bd3a3575c1ebbd8e77",
+ "reference": "d5b01a39b3415c2cd581d3bd3a3575c1ebbd8e77",
"shasum": ""
},
"require": {
"php": "^8"
},
"require-dev": {
- "phpunit/phpunit": "^9",
- "vimeo/psalm": "^4|^5"
+ "infection/infection": "^0",
+ "nikic/php-fuzzer": "^0",
+ "phpunit/phpunit": "^9|^10|^11",
+ "vimeo/psalm": "^4|^5|^6"
},
"type": "library",
"autoload": {
@@ -3727,7 +3391,7 @@
"issues": "https://github.com/paragonie/constant_time_encoding/issues",
"source": "https://github.com/paragonie/constant_time_encoding"
},
- "time": "2024-05-08T12:36:18+00:00"
+ "time": "2025-09-24T15:06:41+00:00"
},
{
"name": "paragonie/random_compat",
@@ -3781,16 +3445,16 @@
},
{
"name": "phpoption/phpoption",
- "version": "1.9.3",
+ "version": "1.9.5",
"source": {
"type": "git",
"url": "https://github.com/schmittjoh/php-option.git",
- "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54"
+ "reference": "75365b91986c2405cf5e1e012c5595cd487a98be"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/e3fac8b24f56113f7cb96af14958c0dd16330f54",
- "reference": "e3fac8b24f56113f7cb96af14958c0dd16330f54",
+ "url": "https://api.github.com/repos/schmittjoh/php-option/zipball/75365b91986c2405cf5e1e012c5595cd487a98be",
+ "reference": "75365b91986c2405cf5e1e012c5595cd487a98be",
"shasum": ""
},
"require": {
@@ -3798,7 +3462,7 @@
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
- "phpunit/phpunit": "^8.5.39 || ^9.6.20 || ^10.5.28"
+ "phpunit/phpunit": "^8.5.44 || ^9.6.25 || ^10.5.53 || ^11.5.34"
},
"type": "library",
"extra": {
@@ -3840,7 +3504,7 @@
],
"support": {
"issues": "https://github.com/schmittjoh/php-option/issues",
- "source": "https://github.com/schmittjoh/php-option/tree/1.9.3"
+ "source": "https://github.com/schmittjoh/php-option/tree/1.9.5"
},
"funding": [
{
@@ -3852,20 +3516,20 @@
"type": "tidelift"
}
],
- "time": "2024-07-20T21:41:07+00:00"
+ "time": "2025-12-27T19:41:33+00:00"
},
{
"name": "phpseclib/phpseclib",
- "version": "3.0.42",
+ "version": "3.0.48",
"source": {
"type": "git",
"url": "https://github.com/phpseclib/phpseclib.git",
- "reference": "db92f1b1987b12b13f248fe76c3a52cadb67bb98"
+ "reference": "64065a5679c50acb886e82c07aa139b0f757bb89"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/db92f1b1987b12b13f248fe76c3a52cadb67bb98",
- "reference": "db92f1b1987b12b13f248fe76c3a52cadb67bb98",
+ "url": "https://api.github.com/repos/phpseclib/phpseclib/zipball/64065a5679c50acb886e82c07aa139b0f757bb89",
+ "reference": "64065a5679c50acb886e82c07aa139b0f757bb89",
"shasum": ""
},
"require": {
@@ -3946,7 +3610,7 @@
],
"support": {
"issues": "https://github.com/phpseclib/phpseclib/issues",
- "source": "https://github.com/phpseclib/phpseclib/tree/3.0.42"
+ "source": "https://github.com/phpseclib/phpseclib/tree/3.0.48"
},
"funding": [
{
@@ -3962,165 +3626,7 @@
"type": "tidelift"
}
],
- "time": "2024-09-16T03:06:04+00:00"
- },
- {
- "name": "phpstan/extension-installer",
- "version": "1.4.3",
- "source": {
- "type": "git",
- "url": "https://github.com/phpstan/extension-installer.git",
- "reference": "85e90b3942d06b2326fba0403ec24fe912372936"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpstan/extension-installer/zipball/85e90b3942d06b2326fba0403ec24fe912372936",
- "reference": "85e90b3942d06b2326fba0403ec24fe912372936",
- "shasum": ""
- },
- "require": {
- "composer-plugin-api": "^2.0",
- "php": "^7.2 || ^8.0",
- "phpstan/phpstan": "^1.9.0 || ^2.0"
- },
- "require-dev": {
- "composer/composer": "^2.0",
- "php-parallel-lint/php-parallel-lint": "^1.2.0",
- "phpstan/phpstan-strict-rules": "^0.11 || ^0.12 || ^1.0"
- },
- "type": "composer-plugin",
- "extra": {
- "class": "PHPStan\\ExtensionInstaller\\Plugin"
- },
- "autoload": {
- "psr-4": {
- "PHPStan\\ExtensionInstaller\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "Composer plugin for automatic installation of PHPStan extensions",
- "keywords": [
- "dev",
- "static analysis"
- ],
- "support": {
- "issues": "https://github.com/phpstan/extension-installer/issues",
- "source": "https://github.com/phpstan/extension-installer/tree/1.4.3"
- },
- "time": "2024-09-04T20:21:43+00:00"
- },
- {
- "name": "phpstan/phpstan",
- "version": "1.12.6",
- "source": {
- "type": "git",
- "url": "https://github.com/phpstan/phpstan.git",
- "reference": "dc4d2f145a88ea7141ae698effd64d9df46527ae"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpstan/zipball/dc4d2f145a88ea7141ae698effd64d9df46527ae",
- "reference": "dc4d2f145a88ea7141ae698effd64d9df46527ae",
- "shasum": ""
- },
- "require": {
- "php": "^7.2|^8.0"
- },
- "conflict": {
- "phpstan/phpstan-shim": "*"
- },
- "bin": [
- "phpstan",
- "phpstan.phar"
- ],
- "type": "library",
- "autoload": {
- "files": [
- "bootstrap.php"
- ]
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "PHPStan - PHP Static Analysis Tool",
- "keywords": [
- "dev",
- "static analysis"
- ],
- "support": {
- "docs": "https://phpstan.org/user-guide/getting-started",
- "forum": "https://github.com/phpstan/phpstan/discussions",
- "issues": "https://github.com/phpstan/phpstan/issues",
- "security": "https://github.com/phpstan/phpstan/security/policy",
- "source": "https://github.com/phpstan/phpstan-src"
- },
- "funding": [
- {
- "url": "https://github.com/ondrejmirtes",
- "type": "github"
- },
- {
- "url": "https://github.com/phpstan",
- "type": "github"
- }
- ],
- "time": "2024-10-06T15:03:59+00:00"
- },
- {
- "name": "phpstan/phpstan-phpunit",
- "version": "1.4.0",
- "source": {
- "type": "git",
- "url": "https://github.com/phpstan/phpstan-phpunit.git",
- "reference": "f3ea021866f4263f07ca3636bf22c64be9610c11"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpstan-phpunit/zipball/f3ea021866f4263f07ca3636bf22c64be9610c11",
- "reference": "f3ea021866f4263f07ca3636bf22c64be9610c11",
- "shasum": ""
- },
- "require": {
- "php": "^7.2 || ^8.0",
- "phpstan/phpstan": "^1.11"
- },
- "conflict": {
- "phpunit/phpunit": "<7.0"
- },
- "require-dev": {
- "nikic/php-parser": "^4.13.0",
- "php-parallel-lint/php-parallel-lint": "^1.2",
- "phpstan/phpstan-strict-rules": "^1.5.1",
- "phpunit/phpunit": "^9.5"
- },
- "type": "phpstan-extension",
- "extra": {
- "phpstan": {
- "includes": [
- "extension.neon",
- "rules.neon"
- ]
- }
- },
- "autoload": {
- "psr-4": {
- "PHPStan\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "description": "PHPUnit extensions and rules for PHPStan",
- "support": {
- "issues": "https://github.com/phpstan/phpstan-phpunit/issues",
- "source": "https://github.com/phpstan/phpstan-phpunit/tree/1.4.0"
- },
- "time": "2024-04-20T06:39:00+00:00"
+ "time": "2025-12-15T11:51:42+00:00"
},
{
"name": "psr/cache",
@@ -4431,16 +3937,16 @@
},
{
"name": "psr/http-message",
- "version": "1.1",
+ "version": "2.0",
"source": {
"type": "git",
"url": "https://github.com/php-fig/http-message.git",
- "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba"
+ "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-fig/http-message/zipball/cb6ce4845ce34a8ad9e68117c10ee90a29919eba",
- "reference": "cb6ce4845ce34a8ad9e68117c10ee90a29919eba",
+ "url": "https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71",
+ "reference": "402d35bcb92c70c026d1a6a9883f06b2ead23d71",
"shasum": ""
},
"require": {
@@ -4449,7 +3955,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "1.1.x-dev"
+ "dev-master": "2.0.x-dev"
}
},
"autoload": {
@@ -4464,7 +3970,7 @@
"authors": [
{
"name": "PHP-FIG",
- "homepage": "http://www.php-fig.org/"
+ "homepage": "https://www.php-fig.org/"
}
],
"description": "Common interface for HTTP messages",
@@ -4478,9 +3984,9 @@
"response"
],
"support": {
- "source": "https://github.com/php-fig/http-message/tree/1.1"
+ "source": "https://github.com/php-fig/http-message/tree/2.0"
},
- "time": "2023-04-04T09:50:52+00:00"
+ "time": "2023-04-04T09:54:51+00:00"
},
{
"name": "psr/log",
@@ -4585,16 +4091,16 @@
},
{
"name": "psy/psysh",
- "version": "v0.12.4",
+ "version": "v0.12.18",
"source": {
"type": "git",
"url": "https://github.com/bobthecow/psysh.git",
- "reference": "2fd717afa05341b4f8152547f142cd2f130f6818"
+ "reference": "ddff0ac01beddc251786fe70367cd8bbdb258196"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/bobthecow/psysh/zipball/2fd717afa05341b4f8152547f142cd2f130f6818",
- "reference": "2fd717afa05341b4f8152547f142cd2f130f6818",
+ "url": "https://api.github.com/repos/bobthecow/psysh/zipball/ddff0ac01beddc251786fe70367cd8bbdb258196",
+ "reference": "ddff0ac01beddc251786fe70367cd8bbdb258196",
"shasum": ""
},
"require": {
@@ -4602,18 +4108,19 @@
"ext-tokenizer": "*",
"nikic/php-parser": "^5.0 || ^4.0",
"php": "^8.0 || ^7.4",
- "symfony/console": "^7.0 || ^6.0 || ^5.0 || ^4.0 || ^3.4",
- "symfony/var-dumper": "^7.0 || ^6.0 || ^5.0 || ^4.0 || ^3.4"
+ "symfony/console": "^8.0 || ^7.0 || ^6.0 || ^5.0 || ^4.0 || ^3.4",
+ "symfony/var-dumper": "^8.0 || ^7.0 || ^6.0 || ^5.0 || ^4.0 || ^3.4"
},
"conflict": {
"symfony/console": "4.4.37 || 5.3.14 || 5.3.15 || 5.4.3 || 5.4.4 || 6.0.3 || 6.0.4"
},
"require-dev": {
- "bamarni/composer-bin-plugin": "^1.2"
+ "bamarni/composer-bin-plugin": "^1.2",
+ "composer/class-map-generator": "^1.6"
},
"suggest": {
+ "composer/class-map-generator": "Improved tab completion performance with better class discovery.",
"ext-pcntl": "Enabling the PCNTL extension makes PsySH a lot happier :)",
- "ext-pdo-sqlite": "The doc command requires SQLite to work.",
"ext-posix": "If you have PCNTL, you'll want the POSIX extension as well."
},
"bin": [
@@ -4621,12 +4128,12 @@
],
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "0.12.x-dev"
- },
"bamarni-bin": {
"bin-links": false,
"forward-command": false
+ },
+ "branch-alias": {
+ "dev-main": "0.12.x-dev"
}
},
"autoload": {
@@ -4644,12 +4151,11 @@
"authors": [
{
"name": "Justin Hileman",
- "email": "justin@justinhileman.info",
- "homepage": "http://justinhileman.com"
+ "email": "justin@justinhileman.info"
}
],
"description": "An interactive shell for modern PHP.",
- "homepage": "http://psysh.org",
+ "homepage": "https://psysh.org",
"keywords": [
"REPL",
"console",
@@ -4658,9 +4164,9 @@
],
"support": {
"issues": "https://github.com/bobthecow/psysh/issues",
- "source": "https://github.com/bobthecow/psysh/tree/v0.12.4"
+ "source": "https://github.com/bobthecow/psysh/tree/v0.12.18"
},
- "time": "2024-06-10T01:18:23+00:00"
+ "time": "2025-12-17T14:35:46+00:00"
},
{
"name": "ralouphie/getallheaders",
@@ -4708,16 +4214,16 @@
},
{
"name": "ramsey/collection",
- "version": "2.0.0",
+ "version": "2.1.1",
"source": {
"type": "git",
"url": "https://github.com/ramsey/collection.git",
- "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5"
+ "reference": "344572933ad0181accbf4ba763e85a0306a8c5e2"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/ramsey/collection/zipball/a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5",
- "reference": "a4b48764bfbb8f3a6a4d1aeb1a35bb5e9ecac4a5",
+ "url": "https://api.github.com/repos/ramsey/collection/zipball/344572933ad0181accbf4ba763e85a0306a8c5e2",
+ "reference": "344572933ad0181accbf4ba763e85a0306a8c5e2",
"shasum": ""
},
"require": {
@@ -4725,25 +4231,22 @@
},
"require-dev": {
"captainhook/plugin-composer": "^5.3",
- "ergebnis/composer-normalize": "^2.28.3",
- "fakerphp/faker": "^1.21",
+ "ergebnis/composer-normalize": "^2.45",
+ "fakerphp/faker": "^1.24",
"hamcrest/hamcrest-php": "^2.0",
- "jangregor/phpstan-prophecy": "^1.0",
- "mockery/mockery": "^1.5",
+ "jangregor/phpstan-prophecy": "^2.1",
+ "mockery/mockery": "^1.6",
"php-parallel-lint/php-console-highlighter": "^1.0",
- "php-parallel-lint/php-parallel-lint": "^1.3",
- "phpcsstandards/phpcsutils": "^1.0.0-rc1",
- "phpspec/prophecy-phpunit": "^2.0",
- "phpstan/extension-installer": "^1.2",
- "phpstan/phpstan": "^1.9",
- "phpstan/phpstan-mockery": "^1.1",
- "phpstan/phpstan-phpunit": "^1.3",
- "phpunit/phpunit": "^9.5",
- "psalm/plugin-mockery": "^1.1",
- "psalm/plugin-phpunit": "^0.18.4",
- "ramsey/coding-standard": "^2.0.3",
- "ramsey/conventional-commits": "^1.3",
- "vimeo/psalm": "^5.4"
+ "php-parallel-lint/php-parallel-lint": "^1.4",
+ "phpspec/prophecy-phpunit": "^2.3",
+ "phpstan/extension-installer": "^1.4",
+ "phpstan/phpstan": "^2.1",
+ "phpstan/phpstan-mockery": "^2.0",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpunit/phpunit": "^10.5",
+ "ramsey/coding-standard": "^2.3",
+ "ramsey/conventional-commits": "^1.6",
+ "roave/security-advisories": "dev-latest"
},
"type": "library",
"extra": {
@@ -4781,37 +4284,26 @@
],
"support": {
"issues": "https://github.com/ramsey/collection/issues",
- "source": "https://github.com/ramsey/collection/tree/2.0.0"
+ "source": "https://github.com/ramsey/collection/tree/2.1.1"
},
- "funding": [
- {
- "url": "https://github.com/ramsey",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/ramsey/collection",
- "type": "tidelift"
- }
- ],
- "time": "2022-12-31T21:50:55+00:00"
+ "time": "2025-03-22T05:38:12+00:00"
},
{
"name": "ramsey/uuid",
- "version": "4.7.6",
+ "version": "4.9.2",
"source": {
"type": "git",
"url": "https://github.com/ramsey/uuid.git",
- "reference": "91039bc1faa45ba123c4328958e620d382ec7088"
+ "reference": "8429c78ca35a09f27565311b98101e2826affde0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/ramsey/uuid/zipball/91039bc1faa45ba123c4328958e620d382ec7088",
- "reference": "91039bc1faa45ba123c4328958e620d382ec7088",
+ "url": "https://api.github.com/repos/ramsey/uuid/zipball/8429c78ca35a09f27565311b98101e2826affde0",
+ "reference": "8429c78ca35a09f27565311b98101e2826affde0",
"shasum": ""
},
"require": {
- "brick/math": "^0.8.8 || ^0.9 || ^0.10 || ^0.11 || ^0.12",
- "ext-json": "*",
+ "brick/math": "^0.8.16 || ^0.9 || ^0.10 || ^0.11 || ^0.12 || ^0.13 || ^0.14",
"php": "^8.0",
"ramsey/collection": "^1.2 || ^2.0"
},
@@ -4819,26 +4311,23 @@
"rhumsaa/uuid": "self.version"
},
"require-dev": {
- "captainhook/captainhook": "^5.10",
+ "captainhook/captainhook": "^5.25",
"captainhook/plugin-composer": "^5.3",
- "dealerdirect/phpcodesniffer-composer-installer": "^0.7.0",
- "doctrine/annotations": "^1.8",
- "ergebnis/composer-normalize": "^2.15",
- "mockery/mockery": "^1.3",
+ "dealerdirect/phpcodesniffer-composer-installer": "^1.0",
+ "ergebnis/composer-normalize": "^2.47",
+ "mockery/mockery": "^1.6",
"paragonie/random-lib": "^2",
- "php-mock/php-mock": "^2.2",
- "php-mock/php-mock-mockery": "^1.3",
- "php-parallel-lint/php-parallel-lint": "^1.1",
- "phpbench/phpbench": "^1.0",
- "phpstan/extension-installer": "^1.1",
- "phpstan/phpstan": "^1.8",
- "phpstan/phpstan-mockery": "^1.1",
- "phpstan/phpstan-phpunit": "^1.1",
- "phpunit/phpunit": "^8.5 || ^9",
- "ramsey/composer-repl": "^1.4",
- "slevomat/coding-standard": "^8.4",
- "squizlabs/php_codesniffer": "^3.5",
- "vimeo/psalm": "^4.9"
+ "php-mock/php-mock": "^2.6",
+ "php-mock/php-mock-mockery": "^1.5",
+ "php-parallel-lint/php-parallel-lint": "^1.4.0",
+ "phpbench/phpbench": "^1.2.14",
+ "phpstan/extension-installer": "^1.4",
+ "phpstan/phpstan": "^2.1",
+ "phpstan/phpstan-mockery": "^2.0",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpunit/phpunit": "^9.6",
+ "slevomat/coding-standard": "^8.18",
+ "squizlabs/php_codesniffer": "^3.13"
},
"suggest": {
"ext-bcmath": "Enables faster math with arbitrary-precision integers using BCMath.",
@@ -4873,19 +4362,9 @@
],
"support": {
"issues": "https://github.com/ramsey/uuid/issues",
- "source": "https://github.com/ramsey/uuid/tree/4.7.6"
+ "source": "https://github.com/ramsey/uuid/tree/4.9.2"
},
- "funding": [
- {
- "url": "https://github.com/ramsey",
- "type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/ramsey/uuid",
- "type": "tidelift"
- }
- ],
- "time": "2024-04-27T21:32:50+00:00"
+ "time": "2025-12-14T04:43:48+00:00"
},
{
"name": "rappasoft/laravel-livewire-tables",
@@ -4989,12 +4468,12 @@
"type": "library",
"extra": {
"laravel": {
- "providers": [
- "SimpleSoftwareIO\\QrCode\\QrCodeServiceProvider"
- ],
"aliases": {
"QrCode": "SimpleSoftwareIO\\QrCode\\Facades\\QrCode"
- }
+ },
+ "providers": [
+ "SimpleSoftwareIO\\QrCode\\QrCodeServiceProvider"
+ ]
}
},
"autoload": {
@@ -5029,21 +4508,21 @@
},
{
"name": "spatie/db-dumper",
- "version": "3.7.0",
+ "version": "3.8.3",
"source": {
"type": "git",
"url": "https://github.com/spatie/db-dumper.git",
- "reference": "22553ab8c34a9bb70645cb9bc2d9f236f3135705"
+ "reference": "eac3221fbe27fac51f388600d27b67b1b079406e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/db-dumper/zipball/22553ab8c34a9bb70645cb9bc2d9f236f3135705",
- "reference": "22553ab8c34a9bb70645cb9bc2d9f236f3135705",
+ "url": "https://api.github.com/repos/spatie/db-dumper/zipball/eac3221fbe27fac51f388600d27b67b1b079406e",
+ "reference": "eac3221fbe27fac51f388600d27b67b1b079406e",
"shasum": ""
},
"require": {
"php": "^8.0",
- "symfony/process": "^5.0|^6.0|^7.0"
+ "symfony/process": "^5.0|^6.0|^7.0|^8.0"
},
"require-dev": {
"pestphp/pest": "^1.22"
@@ -5076,7 +4555,7 @@
"spatie"
],
"support": {
- "source": "https://github.com/spatie/db-dumper/tree/3.7.0"
+ "source": "https://github.com/spatie/db-dumper/tree/3.8.3"
},
"funding": [
{
@@ -5088,7 +4567,7 @@
"type": "github"
}
],
- "time": "2024-09-23T08:58:35+00:00"
+ "time": "2026-01-05T16:26:03+00:00"
},
{
"name": "spatie/laravel-backup",
@@ -5191,28 +4670,29 @@
},
{
"name": "spatie/laravel-package-tools",
- "version": "1.16.5",
+ "version": "1.92.7",
"source": {
"type": "git",
"url": "https://github.com/spatie/laravel-package-tools.git",
- "reference": "c7413972cf22ffdff97b68499c22baa04eddb6a2"
+ "reference": "f09a799850b1ed765103a4f0b4355006360c49a5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/c7413972cf22ffdff97b68499c22baa04eddb6a2",
- "reference": "c7413972cf22ffdff97b68499c22baa04eddb6a2",
+ "url": "https://api.github.com/repos/spatie/laravel-package-tools/zipball/f09a799850b1ed765103a4f0b4355006360c49a5",
+ "reference": "f09a799850b1ed765103a4f0b4355006360c49a5",
"shasum": ""
},
"require": {
- "illuminate/contracts": "^9.28|^10.0|^11.0",
+ "illuminate/contracts": "^9.28|^10.0|^11.0|^12.0",
"php": "^8.0"
},
"require-dev": {
"mockery/mockery": "^1.5",
- "orchestra/testbench": "^7.7|^8.0",
- "pestphp/pest": "^1.22",
- "phpunit/phpunit": "^9.5.24",
- "spatie/pest-plugin-test-time": "^1.1"
+ "orchestra/testbench": "^7.7|^8.0|^9.0|^10.0",
+ "pestphp/pest": "^1.23|^2.1|^3.1",
+ "phpunit/php-code-coverage": "^9.0|^10.0|^11.0",
+ "phpunit/phpunit": "^9.5.24|^10.5|^11.5",
+ "spatie/pest-plugin-test-time": "^1.1|^2.2"
},
"type": "library",
"autoload": {
@@ -5239,7 +4719,7 @@
],
"support": {
"issues": "https://github.com/spatie/laravel-package-tools/issues",
- "source": "https://github.com/spatie/laravel-package-tools/tree/1.16.5"
+ "source": "https://github.com/spatie/laravel-package-tools/tree/1.92.7"
},
"funding": [
{
@@ -5247,31 +4727,31 @@
"type": "github"
}
],
- "time": "2024-08-27T18:56:10+00:00"
+ "time": "2025-07-17T15:46:43+00:00"
},
{
"name": "spatie/laravel-referer",
- "version": "1.9.0",
+ "version": "1.9.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/laravel-referer.git",
- "reference": "127ad9752f7bca860291ce38873d0985bd831b7c"
+ "reference": "0f37bc6509483ae0f729a6f97ac96f1f8f009c72"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/laravel-referer/zipball/127ad9752f7bca860291ce38873d0985bd831b7c",
- "reference": "127ad9752f7bca860291ce38873d0985bd831b7c",
+ "url": "https://api.github.com/repos/spatie/laravel-referer/zipball/0f37bc6509483ae0f729a6f97ac96f1f8f009c72",
+ "reference": "0f37bc6509483ae0f729a6f97ac96f1f8f009c72",
"shasum": ""
},
"require": {
- "illuminate/contracts": "^8.73|^9.0|^10.0|^11.0",
- "illuminate/http": "^8.73|^9.0|^10.0|^11.0",
- "illuminate/support": "^8.73|^9.0|^10.0|^11.0",
+ "illuminate/contracts": "^8.73|^9.0|^10.0|^11.0|^12.0",
+ "illuminate/http": "^8.73|^9.0|^10.0|^11.0|^12.0",
+ "illuminate/support": "^8.73|^9.0|^10.0|^11.0|^12.0",
"php": "^7.4|^8.0"
},
"require-dev": {
- "orchestra/testbench": "^6.23|^7.0|^8.0|^9.0",
- "phpunit/phpunit": "^9.5|^10.5"
+ "orchestra/testbench": "^6.23|^7.0|^8.0|^9.0|^10.0",
+ "phpunit/phpunit": "^9.5|^10.5|^11.5.3"
},
"type": "library",
"extra": {
@@ -5306,7 +4786,7 @@
],
"support": {
"issues": "https://github.com/spatie/laravel-referer/issues",
- "source": "https://github.com/spatie/laravel-referer/tree/1.9.0"
+ "source": "https://github.com/spatie/laravel-referer/tree/1.9.1"
},
"funding": [
{
@@ -5318,7 +4798,7 @@
"type": "github"
}
],
- "time": "2024-04-08T07:56:33+00:00"
+ "time": "2025-02-20T13:41:02+00:00"
},
{
"name": "spatie/laravel-signal-aware-command",
@@ -5351,12 +4831,12 @@
"type": "library",
"extra": {
"laravel": {
- "providers": [
- "Spatie\\SignalAwareCommand\\SignalAwareCommandServiceProvider"
- ],
"aliases": {
"Signal": "Spatie\\SignalAwareCommand\\Facades\\Signal"
- }
+ },
+ "providers": [
+ "Spatie\\SignalAwareCommand\\SignalAwareCommandServiceProvider"
+ ]
}
},
"autoload": {
@@ -5396,16 +4876,16 @@
},
{
"name": "spatie/temporary-directory",
- "version": "2.2.1",
+ "version": "2.3.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/temporary-directory.git",
- "reference": "76949fa18f8e1a7f663fd2eaa1d00e0bcea0752a"
+ "reference": "662e481d6ec07ef29fd05010433428851a42cd07"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/temporary-directory/zipball/76949fa18f8e1a7f663fd2eaa1d00e0bcea0752a",
- "reference": "76949fa18f8e1a7f663fd2eaa1d00e0bcea0752a",
+ "url": "https://api.github.com/repos/spatie/temporary-directory/zipball/662e481d6ec07ef29fd05010433428851a42cd07",
+ "reference": "662e481d6ec07ef29fd05010433428851a42cd07",
"shasum": ""
},
"require": {
@@ -5441,7 +4921,7 @@
],
"support": {
"issues": "https://github.com/spatie/temporary-directory/issues",
- "source": "https://github.com/spatie/temporary-directory/tree/2.2.1"
+ "source": "https://github.com/spatie/temporary-directory/tree/2.3.1"
},
"funding": [
{
@@ -5453,20 +4933,20 @@
"type": "github"
}
],
- "time": "2023-12-25T11:46:58+00:00"
+ "time": "2026-01-12T07:42:22+00:00"
},
{
"name": "symfony/console",
- "version": "v6.4.12",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "72d080eb9edf80e36c19be61f72c98ed8273b765"
+ "reference": "0bc2199c6c1f05276b05956f1ddc63f6d7eb5fc3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/72d080eb9edf80e36c19be61f72c98ed8273b765",
- "reference": "72d080eb9edf80e36c19be61f72c98ed8273b765",
+ "url": "https://api.github.com/repos/symfony/console/zipball/0bc2199c6c1f05276b05956f1ddc63f6d7eb5fc3",
+ "reference": "0bc2199c6c1f05276b05956f1ddc63f6d7eb5fc3",
"shasum": ""
},
"require": {
@@ -5531,7 +5011,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v6.4.12"
+ "source": "https://github.com/symfony/console/tree/v6.4.32"
},
"funding": [
{
@@ -5542,25 +5022,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-20T08:15:52+00:00"
+ "time": "2026-01-13T08:45:59+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v7.1.1",
+ "version": "v7.4.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
- "reference": "1c7cee86c6f812896af54434f8ce29c8d94f9ff4"
+ "reference": "ab862f478513e7ca2fe9ec117a6f01a8da6e1135"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/1c7cee86c6f812896af54434f8ce29c8d94f9ff4",
- "reference": "1c7cee86c6f812896af54434f8ce29c8d94f9ff4",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/ab862f478513e7ca2fe9ec117a6f01a8da6e1135",
+ "reference": "ab862f478513e7ca2fe9ec117a6f01a8da6e1135",
"shasum": ""
},
"require": {
@@ -5596,7 +5080,7 @@
"description": "Converts CSS selectors to XPath expressions",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/css-selector/tree/v7.1.1"
+ "source": "https://github.com/symfony/css-selector/tree/v7.4.0"
},
"funding": [
{
@@ -5607,25 +5091,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-05-31T14:57:53+00:00"
+ "time": "2025-10-30T13:39:42+00:00"
},
{
"name": "symfony/deprecation-contracts",
- "version": "v3.5.0",
+ "version": "v3.6.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/deprecation-contracts.git",
- "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1"
+ "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1",
- "reference": "0e0d29ce1f20deffb4ab1b016a7257c4f1e789a1",
+ "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62",
+ "reference": "63afe740e99a13ba87ec199bb07bbdee937a5b62",
"shasum": ""
},
"require": {
@@ -5633,12 +5121,12 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "3.5-dev"
- },
"thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.6-dev"
}
},
"autoload": {
@@ -5663,7 +5151,7 @@
"description": "A generic function and convention to trigger deprecation notices",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/deprecation-contracts/tree/v3.5.0"
+ "source": "https://github.com/symfony/deprecation-contracts/tree/v3.6.0"
},
"funding": [
{
@@ -5679,20 +5167,20 @@
"type": "tidelift"
}
],
- "time": "2024-04-18T09:32:20+00:00"
+ "time": "2024-09-25T14:21:43+00:00"
},
{
"name": "symfony/error-handler",
- "version": "v6.4.10",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/error-handler.git",
- "reference": "231f1b2ee80f72daa1972f7340297d67439224f0"
+ "reference": "8c18400784fcb014dc73c8d5601a9576af7f8ad4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/error-handler/zipball/231f1b2ee80f72daa1972f7340297d67439224f0",
- "reference": "231f1b2ee80f72daa1972f7340297d67439224f0",
+ "url": "https://api.github.com/repos/symfony/error-handler/zipball/8c18400784fcb014dc73c8d5601a9576af7f8ad4",
+ "reference": "8c18400784fcb014dc73c8d5601a9576af7f8ad4",
"shasum": ""
},
"require": {
@@ -5738,7 +5226,7 @@
"description": "Provides tools to manage errors and ease debugging PHP code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/error-handler/tree/v6.4.10"
+ "source": "https://github.com/symfony/error-handler/tree/v6.4.32"
},
"funding": [
{
@@ -5749,25 +5237,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-07-26T12:30:32+00:00"
+ "time": "2026-01-19T19:28:19+00:00"
},
{
"name": "symfony/event-dispatcher",
- "version": "v7.1.1",
+ "version": "v7.4.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
- "reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7"
+ "reference": "dc2c0eba1af673e736bb851d747d266108aea746"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7",
- "reference": "9fa7f7a21beb22a39a8f3f28618b29e50d7a55a7",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/dc2c0eba1af673e736bb851d747d266108aea746",
+ "reference": "dc2c0eba1af673e736bb851d747d266108aea746",
"shasum": ""
},
"require": {
@@ -5784,13 +5276,14 @@
},
"require-dev": {
"psr/log": "^1|^2|^3",
- "symfony/config": "^6.4|^7.0",
- "symfony/dependency-injection": "^6.4|^7.0",
- "symfony/error-handler": "^6.4|^7.0",
- "symfony/expression-language": "^6.4|^7.0",
- "symfony/http-foundation": "^6.4|^7.0",
+ "symfony/config": "^6.4|^7.0|^8.0",
+ "symfony/dependency-injection": "^6.4|^7.0|^8.0",
+ "symfony/error-handler": "^6.4|^7.0|^8.0",
+ "symfony/expression-language": "^6.4|^7.0|^8.0",
+ "symfony/framework-bundle": "^6.4|^7.0|^8.0",
+ "symfony/http-foundation": "^6.4|^7.0|^8.0",
"symfony/service-contracts": "^2.5|^3",
- "symfony/stopwatch": "^6.4|^7.0"
+ "symfony/stopwatch": "^6.4|^7.0|^8.0"
},
"type": "library",
"autoload": {
@@ -5818,7 +5311,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/event-dispatcher/tree/v7.1.1"
+ "source": "https://github.com/symfony/event-dispatcher/tree/v7.4.4"
},
"funding": [
{
@@ -5829,25 +5322,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-05-31T14:57:53+00:00"
+ "time": "2026-01-05T11:45:34+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
- "version": "v3.5.0",
+ "version": "v3.6.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher-contracts.git",
- "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50"
+ "reference": "59eb412e93815df44f05f342958efa9f46b1e586"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/8f93aec25d41b72493c6ddff14e916177c9efc50",
- "reference": "8f93aec25d41b72493c6ddff14e916177c9efc50",
+ "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/59eb412e93815df44f05f342958efa9f46b1e586",
+ "reference": "59eb412e93815df44f05f342958efa9f46b1e586",
"shasum": ""
},
"require": {
@@ -5856,12 +5353,12 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "3.5-dev"
- },
"thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.6-dev"
}
},
"autoload": {
@@ -5894,7 +5391,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.5.0"
+ "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.6.0"
},
"funding": [
{
@@ -5910,20 +5407,20 @@
"type": "tidelift"
}
],
- "time": "2024-04-18T09:32:20+00:00"
+ "time": "2024-09-25T14:21:43+00:00"
},
{
"name": "symfony/finder",
- "version": "v6.4.11",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "d7eb6daf8cd7e9ac4976e9576b32042ef7253453"
+ "reference": "3ec24885c1d9ababbb9c8f63bb42fea3c8c9b6de"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/d7eb6daf8cd7e9ac4976e9576b32042ef7253453",
- "reference": "d7eb6daf8cd7e9ac4976e9576b32042ef7253453",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/3ec24885c1d9ababbb9c8f63bb42fea3c8c9b6de",
+ "reference": "3ec24885c1d9ababbb9c8f63bb42fea3c8c9b6de",
"shasum": ""
},
"require": {
@@ -5958,7 +5455,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v6.4.11"
+ "source": "https://github.com/symfony/finder/tree/v6.4.32"
},
"funding": [
{
@@ -5969,32 +5466,36 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-08-13T14:27:37+00:00"
+ "time": "2026-01-10T14:09:00+00:00"
},
{
"name": "symfony/http-client",
- "version": "v5.4.44",
+ "version": "v5.4.49",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client.git",
- "reference": "58d3dc6bfa5fb37137e32d52ddc202ba4d1cea04"
+ "reference": "d77d8e212cde7b5c4a64142bf431522f19487c28"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client/zipball/58d3dc6bfa5fb37137e32d52ddc202ba4d1cea04",
- "reference": "58d3dc6bfa5fb37137e32d52ddc202ba4d1cea04",
+ "url": "https://api.github.com/repos/symfony/http-client/zipball/d77d8e212cde7b5c4a64142bf431522f19487c28",
+ "reference": "d77d8e212cde7b5c4a64142bf431522f19487c28",
"shasum": ""
},
"require": {
"php": ">=7.2.5",
"psr/log": "^1|^2|^3",
"symfony/deprecation-contracts": "^2.1|^3",
- "symfony/http-client-contracts": "^2.5.3",
+ "symfony/http-client-contracts": "^2.5.4",
"symfony/polyfill-php73": "^1.11",
"symfony/polyfill-php80": "^1.16",
"symfony/service-contracts": "^1.0|^2|^3"
@@ -6049,7 +5550,7 @@
"http"
],
"support": {
- "source": "https://github.com/symfony/http-client/tree/v5.4.44"
+ "source": "https://github.com/symfony/http-client/tree/v5.4.49"
},
"funding": [
{
@@ -6065,20 +5566,20 @@
"type": "tidelift"
}
],
- "time": "2024-09-16T14:04:28+00:00"
+ "time": "2024-11-28T08:37:04+00:00"
},
{
"name": "symfony/http-client-contracts",
- "version": "v2.5.3",
+ "version": "v2.5.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client-contracts.git",
- "reference": "e5cc97c2b4a4db0ba26bebc154f1426e3fd1d2f1"
+ "reference": "48ef1d0a082885877b664332b9427662065a360c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/e5cc97c2b4a4db0ba26bebc154f1426e3fd1d2f1",
- "reference": "e5cc97c2b4a4db0ba26bebc154f1426e3fd1d2f1",
+ "url": "https://api.github.com/repos/symfony/http-client-contracts/zipball/48ef1d0a082885877b664332b9427662065a360c",
+ "reference": "48ef1d0a082885877b664332b9427662065a360c",
"shasum": ""
},
"require": {
@@ -6089,12 +5590,12 @@
},
"type": "library",
"extra": {
+ "thanks": {
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
"branch-alias": {
"dev-main": "2.5-dev"
- },
- "thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
}
},
"autoload": {
@@ -6127,7 +5628,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/http-client-contracts/tree/v2.5.3"
+ "source": "https://github.com/symfony/http-client-contracts/tree/v2.5.5"
},
"funding": [
{
@@ -6143,20 +5644,20 @@
"type": "tidelift"
}
],
- "time": "2024-03-26T19:42:53+00:00"
+ "time": "2024-11-28T08:37:04+00:00"
},
{
"name": "symfony/http-foundation",
- "version": "v6.4.12",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "133ac043875f59c26c55e79cf074562127cce4d2"
+ "reference": "a7c652d0d0a6be8fbf9dead2e36f31e46c482adf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/133ac043875f59c26c55e79cf074562127cce4d2",
- "reference": "133ac043875f59c26c55e79cf074562127cce4d2",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/a7c652d0d0a6be8fbf9dead2e36f31e46c482adf",
+ "reference": "a7c652d0d0a6be8fbf9dead2e36f31e46c482adf",
"shasum": ""
},
"require": {
@@ -6166,12 +5667,12 @@
"symfony/polyfill-php83": "^1.27"
},
"conflict": {
- "symfony/cache": "<6.3"
+ "symfony/cache": "<6.4.12|>=7.0,<7.1.5"
},
"require-dev": {
"doctrine/dbal": "^2.13.1|^3|^4",
"predis/predis": "^1.1|^2.0",
- "symfony/cache": "^6.3|^7.0",
+ "symfony/cache": "^6.4.12|^7.1.5",
"symfony/dependency-injection": "^5.4|^6.0|^7.0",
"symfony/expression-language": "^5.4|^6.0|^7.0",
"symfony/http-kernel": "^5.4.12|^6.0.12|^6.1.4|^7.0",
@@ -6204,7 +5705,7 @@
"description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-foundation/tree/v6.4.12"
+ "source": "https://github.com/symfony/http-foundation/tree/v6.4.32"
},
"funding": [
{
@@ -6215,25 +5716,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-20T08:18:25+00:00"
+ "time": "2026-01-09T09:10:39+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v6.4.12",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "96df83d51b5f78804f70c093b97310794fd6257b"
+ "reference": "e40d93fce00d928a553ba0f323da4b3f8506f858"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/96df83d51b5f78804f70c093b97310794fd6257b",
- "reference": "96df83d51b5f78804f70c093b97310794fd6257b",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/e40d93fce00d928a553ba0f323da4b3f8506f858",
+ "reference": "e40d93fce00d928a553ba0f323da4b3f8506f858",
"shasum": ""
},
"require": {
@@ -6318,7 +5823,7 @@
"description": "Provides a structured process for converting a Request into a Response",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-kernel/tree/v6.4.12"
+ "source": "https://github.com/symfony/http-kernel/tree/v6.4.32"
},
"funding": [
{
@@ -6329,25 +5834,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-21T06:02:57+00:00"
+ "time": "2026-01-24T16:04:03+00:00"
},
{
"name": "symfony/mailer",
- "version": "v6.4.12",
+ "version": "v6.4.31",
"source": {
"type": "git",
"url": "https://github.com/symfony/mailer.git",
- "reference": "b6a25408c569ae2366b3f663a4edad19420a9c26"
+ "reference": "8835f93333474780fda1b987cae37e33c3e026ca"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/mailer/zipball/b6a25408c569ae2366b3f663a4edad19420a9c26",
- "reference": "b6a25408c569ae2366b3f663a4edad19420a9c26",
+ "url": "https://api.github.com/repos/symfony/mailer/zipball/8835f93333474780fda1b987cae37e33c3e026ca",
+ "reference": "8835f93333474780fda1b987cae37e33c3e026ca",
"shasum": ""
},
"require": {
@@ -6398,7 +5907,7 @@
"description": "Helps sending emails",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/mailer/tree/v6.4.12"
+ "source": "https://github.com/symfony/mailer/tree/v6.4.31"
},
"funding": [
{
@@ -6409,25 +5918,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-08T12:30:05+00:00"
+ "time": "2025-12-12T07:33:25+00:00"
},
{
"name": "symfony/mime",
- "version": "v6.4.12",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/mime.git",
- "reference": "abe16ee7790b16aa525877419deb0f113953f0e1"
+ "reference": "7409686879ca36c09fc970a5fa8ff6e93504dba4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/mime/zipball/abe16ee7790b16aa525877419deb0f113953f0e1",
- "reference": "abe16ee7790b16aa525877419deb0f113953f0e1",
+ "url": "https://api.github.com/repos/symfony/mime/zipball/7409686879ca36c09fc970a5fa8ff6e93504dba4",
+ "reference": "7409686879ca36c09fc970a5fa8ff6e93504dba4",
"shasum": ""
},
"require": {
@@ -6483,7 +5996,7 @@
"mime-type"
],
"support": {
- "source": "https://github.com/symfony/mime/tree/v6.4.12"
+ "source": "https://github.com/symfony/mime/tree/v6.4.32"
},
"funding": [
{
@@ -6494,16 +6007,20 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-20T08:18:25+00:00"
+ "time": "2026-01-04T11:53:14+00:00"
},
{
"name": "symfony/polyfill-ctype",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-ctype.git",
@@ -6527,8 +6044,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -6562,7 +6079,7 @@
"portable"
],
"support": {
- "source": "https://github.com/symfony/polyfill-ctype/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-ctype/tree/v1.33.0"
},
"funding": [
{
@@ -6573,6 +6090,10 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
@@ -6582,16 +6103,16 @@
},
{
"name": "symfony/polyfill-intl-grapheme",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-grapheme.git",
- "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe"
+ "reference": "380872130d3a5dd3ace2f4010d95125fde5d5c70"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe",
- "reference": "b9123926e3b7bc2f98c02ad54f6a4b02b91a8abe",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/380872130d3a5dd3ace2f4010d95125fde5d5c70",
+ "reference": "380872130d3a5dd3ace2f4010d95125fde5d5c70",
"shasum": ""
},
"require": {
@@ -6603,8 +6124,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -6640,7 +6161,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.33.0"
},
"funding": [
{
@@ -6651,25 +6172,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-09T11:45:10+00:00"
+ "time": "2025-06-27T09:58:17+00:00"
},
{
"name": "symfony/polyfill-intl-idn",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-idn.git",
- "reference": "c36586dcf89a12315939e00ec9b4474adcb1d773"
+ "reference": "9614ac4d8061dc257ecc64cba1b140873dce8ad3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/c36586dcf89a12315939e00ec9b4474adcb1d773",
- "reference": "c36586dcf89a12315939e00ec9b4474adcb1d773",
+ "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/9614ac4d8061dc257ecc64cba1b140873dce8ad3",
+ "reference": "9614ac4d8061dc257ecc64cba1b140873dce8ad3",
"shasum": ""
},
"require": {
@@ -6682,8 +6207,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -6723,7 +6248,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.33.0"
},
"funding": [
{
@@ -6734,16 +6259,20 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-09T11:45:10+00:00"
+ "time": "2024-09-10T14:38:51+00:00"
},
{
"name": "symfony/polyfill-intl-normalizer",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-intl-normalizer.git",
@@ -6764,8 +6293,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -6804,7 +6333,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.33.0"
},
"funding": [
{
@@ -6815,6 +6344,10 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
@@ -6824,19 +6357,20 @@
},
{
"name": "symfony/polyfill-mbstring",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-mbstring.git",
- "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341"
+ "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/85181ba99b2345b0ef10ce42ecac37612d9fd341",
- "reference": "85181ba99b2345b0ef10ce42ecac37612d9fd341",
+ "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493",
+ "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493",
"shasum": ""
},
"require": {
+ "ext-iconv": "*",
"php": ">=7.2"
},
"provide": {
@@ -6848,8 +6382,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -6884,7 +6418,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.33.0"
},
"funding": [
{
@@ -6895,16 +6429,20 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-09T11:45:10+00:00"
+ "time": "2024-12-23T08:48:59+00:00"
},
{
"name": "symfony/polyfill-php73",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php73.git",
@@ -6922,8 +6460,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -6960,7 +6498,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php73/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-php73/tree/v1.33.0"
},
"funding": [
{
@@ -6971,6 +6509,10 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
@@ -6980,16 +6522,16 @@
},
{
"name": "symfony/polyfill-php80",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php80.git",
- "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8"
+ "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
- "reference": "60328e362d4c2c802a54fcbf04f9d3fb892b4cf8",
+ "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608",
+ "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608",
"shasum": ""
},
"require": {
@@ -6998,8 +6540,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -7040,7 +6582,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php80/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-php80/tree/v1.33.0"
},
"funding": [
{
@@ -7051,25 +6593,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-09T11:45:10+00:00"
+ "time": "2025-01-02T08:10:11+00:00"
},
{
"name": "symfony/polyfill-php83",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php83.git",
- "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491"
+ "reference": "17f6f9a6b1735c0f163024d959f700cfbc5155e5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/2fb86d65e2d424369ad2905e83b236a8805ba491",
- "reference": "2fb86d65e2d424369ad2905e83b236a8805ba491",
+ "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/17f6f9a6b1735c0f163024d959f700cfbc5155e5",
+ "reference": "17f6f9a6b1735c0f163024d959f700cfbc5155e5",
"shasum": ""
},
"require": {
@@ -7078,8 +6624,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -7116,7 +6662,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php83/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-php83/tree/v1.33.0"
},
"funding": [
{
@@ -7127,16 +6673,20 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-09T11:45:10+00:00"
+ "time": "2025-07-08T02:45:35+00:00"
},
{
"name": "symfony/polyfill-uuid",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-uuid.git",
@@ -7160,8 +6710,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -7195,7 +6745,7 @@
"uuid"
],
"support": {
- "source": "https://github.com/symfony/polyfill-uuid/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-uuid/tree/v1.33.0"
},
"funding": [
{
@@ -7206,6 +6756,10 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
@@ -7215,16 +6769,16 @@
},
{
"name": "symfony/process",
- "version": "v6.4.12",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
- "reference": "3f94e5f13ff58df371a7ead461b6e8068900fbb3"
+ "reference": "c593135be689b21e6164b1e8f6f5dbf1506b065c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/process/zipball/3f94e5f13ff58df371a7ead461b6e8068900fbb3",
- "reference": "3f94e5f13ff58df371a7ead461b6e8068900fbb3",
+ "url": "https://api.github.com/repos/symfony/process/zipball/c593135be689b21e6164b1e8f6f5dbf1506b065c",
+ "reference": "c593135be689b21e6164b1e8f6f5dbf1506b065c",
"shasum": ""
},
"require": {
@@ -7256,7 +6810,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/process/tree/v6.4.12"
+ "source": "https://github.com/symfony/process/tree/v6.4.32"
},
"funding": [
{
@@ -7267,25 +6821,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-17T12:47:12+00:00"
+ "time": "2026-01-15T13:23:20+00:00"
},
{
"name": "symfony/routing",
- "version": "v6.4.12",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "a7c8036bd159486228dc9be3e846a00a0dda9f9f"
+ "reference": "0dc6253e864e71b486e8ba4970a56ab849106ebe"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/a7c8036bd159486228dc9be3e846a00a0dda9f9f",
- "reference": "a7c8036bd159486228dc9be3e846a00a0dda9f9f",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/0dc6253e864e71b486e8ba4970a56ab849106ebe",
+ "reference": "0dc6253e864e71b486e8ba4970a56ab849106ebe",
"shasum": ""
},
"require": {
@@ -7339,7 +6897,7 @@
"url"
],
"support": {
- "source": "https://github.com/symfony/routing/tree/v6.4.12"
+ "source": "https://github.com/symfony/routing/tree/v6.4.32"
},
"funding": [
{
@@ -7350,25 +6908,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-20T08:32:26+00:00"
+ "time": "2026-01-12T08:31:19+00:00"
},
{
"name": "symfony/service-contracts",
- "version": "v3.5.0",
+ "version": "v3.6.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f"
+ "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/bd1d9e59a81d8fa4acdcea3f617c581f7475a80f",
- "reference": "bd1d9e59a81d8fa4acdcea3f617c581f7475a80f",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/45112560a3ba2d715666a509a0bc9521d10b6c43",
+ "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43",
"shasum": ""
},
"require": {
@@ -7381,12 +6943,12 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "3.5-dev"
- },
"thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.6-dev"
}
},
"autoload": {
@@ -7422,7 +6984,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.5.0"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.6.1"
},
"funding": [
{
@@ -7433,31 +6995,36 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-04-18T09:32:20+00:00"
+ "time": "2025-07-15T11:30:57+00:00"
},
{
"name": "symfony/string",
- "version": "v7.1.5",
+ "version": "v7.4.4",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
- "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306"
+ "reference": "1c4b10461bf2ec27537b5f36105337262f5f5d6f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/string/zipball/d66f9c343fa894ec2037cc928381df90a7ad4306",
- "reference": "d66f9c343fa894ec2037cc928381df90a7ad4306",
+ "url": "https://api.github.com/repos/symfony/string/zipball/1c4b10461bf2ec27537b5f36105337262f5f5d6f",
+ "reference": "1c4b10461bf2ec27537b5f36105337262f5f5d6f",
"shasum": ""
},
"require": {
"php": ">=8.2",
+ "symfony/deprecation-contracts": "^2.5|^3.0",
"symfony/polyfill-ctype": "~1.8",
- "symfony/polyfill-intl-grapheme": "~1.0",
+ "symfony/polyfill-intl-grapheme": "~1.33",
"symfony/polyfill-intl-normalizer": "~1.0",
"symfony/polyfill-mbstring": "~1.0"
},
@@ -7465,12 +7032,11 @@
"symfony/translation-contracts": "<2.5"
},
"require-dev": {
- "symfony/emoji": "^7.1",
- "symfony/error-handler": "^6.4|^7.0",
- "symfony/http-client": "^6.4|^7.0",
- "symfony/intl": "^6.4|^7.0",
+ "symfony/emoji": "^7.1|^8.0",
+ "symfony/http-client": "^6.4|^7.0|^8.0",
+ "symfony/intl": "^6.4|^7.0|^8.0",
"symfony/translation-contracts": "^2.5|^3.0",
- "symfony/var-exporter": "^6.4|^7.0"
+ "symfony/var-exporter": "^6.4|^7.0|^8.0"
},
"type": "library",
"autoload": {
@@ -7509,7 +7075,7 @@
"utf8"
],
"support": {
- "source": "https://github.com/symfony/string/tree/v7.1.5"
+ "source": "https://github.com/symfony/string/tree/v7.4.4"
},
"funding": [
{
@@ -7520,25 +7086,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-20T08:28:38+00:00"
+ "time": "2026-01-12T10:54:30+00:00"
},
{
"name": "symfony/translation",
- "version": "v6.4.12",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation.git",
- "reference": "cf8360b8352b086be620fae8342c4d96e391a489"
+ "reference": "d6cc8e2fdd484f2f41d25938b0e8e3915de3cfbc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation/zipball/cf8360b8352b086be620fae8342c4d96e391a489",
- "reference": "cf8360b8352b086be620fae8342c4d96e391a489",
+ "url": "https://api.github.com/repos/symfony/translation/zipball/d6cc8e2fdd484f2f41d25938b0e8e3915de3cfbc",
+ "reference": "d6cc8e2fdd484f2f41d25938b0e8e3915de3cfbc",
"shasum": ""
},
"require": {
@@ -7604,7 +7174,7 @@
"description": "Provides tools to internationalize your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/translation/tree/v6.4.12"
+ "source": "https://github.com/symfony/translation/tree/v6.4.32"
},
"funding": [
{
@@ -7615,25 +7185,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-16T06:02:54+00:00"
+ "time": "2026-01-12T19:15:33+00:00"
},
{
"name": "symfony/translation-contracts",
- "version": "v3.5.0",
+ "version": "v3.6.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation-contracts.git",
- "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a"
+ "reference": "65a8bc82080447fae78373aa10f8d13b38338977"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/b9d2189887bb6b2e0367a9fc7136c5239ab9b05a",
- "reference": "b9d2189887bb6b2e0367a9fc7136c5239ab9b05a",
+ "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/65a8bc82080447fae78373aa10f8d13b38338977",
+ "reference": "65a8bc82080447fae78373aa10f8d13b38338977",
"shasum": ""
},
"require": {
@@ -7641,12 +7215,12 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "3.5-dev"
- },
"thanks": {
- "name": "symfony/contracts",
- "url": "https://github.com/symfony/contracts"
+ "url": "https://github.com/symfony/contracts",
+ "name": "symfony/contracts"
+ },
+ "branch-alias": {
+ "dev-main": "3.6-dev"
}
},
"autoload": {
@@ -7682,7 +7256,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/translation-contracts/tree/v3.5.0"
+ "source": "https://github.com/symfony/translation-contracts/tree/v3.6.1"
},
"funding": [
{
@@ -7693,25 +7267,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-04-18T09:32:20+00:00"
+ "time": "2025-07-15T13:41:35+00:00"
},
{
"name": "symfony/uid",
- "version": "v6.4.12",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/uid.git",
- "reference": "2f16054e0a9b194b8ca581d4a64eee3f7d4a9d4d"
+ "reference": "6b973c385f00341b246f697d82dc01a09107acdd"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/uid/zipball/2f16054e0a9b194b8ca581d4a64eee3f7d4a9d4d",
- "reference": "2f16054e0a9b194b8ca581d4a64eee3f7d4a9d4d",
+ "url": "https://api.github.com/repos/symfony/uid/zipball/6b973c385f00341b246f697d82dc01a09107acdd",
+ "reference": "6b973c385f00341b246f697d82dc01a09107acdd",
"shasum": ""
},
"require": {
@@ -7756,7 +7334,7 @@
"uuid"
],
"support": {
- "source": "https://github.com/symfony/uid/tree/v6.4.12"
+ "source": "https://github.com/symfony/uid/tree/v6.4.32"
},
"funding": [
{
@@ -7767,25 +7345,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-20T08:32:26+00:00"
+ "time": "2025-12-23T15:07:59+00:00"
},
{
"name": "symfony/var-dumper",
- "version": "v6.4.11",
+ "version": "v6.4.32",
"source": {
"type": "git",
"url": "https://github.com/symfony/var-dumper.git",
- "reference": "ee14c8254a480913268b1e3b1cba8045ed122694"
+ "reference": "131fc9915e0343052af5ed5040401b481ca192aa"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/var-dumper/zipball/ee14c8254a480913268b1e3b1cba8045ed122694",
- "reference": "ee14c8254a480913268b1e3b1cba8045ed122694",
+ "url": "https://api.github.com/repos/symfony/var-dumper/zipball/131fc9915e0343052af5ed5040401b481ca192aa",
+ "reference": "131fc9915e0343052af5ed5040401b481ca192aa",
"shasum": ""
},
"require": {
@@ -7797,7 +7379,6 @@
"symfony/console": "<5.4"
},
"require-dev": {
- "ext-iconv": "*",
"symfony/console": "^5.4|^6.0|^7.0",
"symfony/error-handler": "^6.3|^7.0",
"symfony/http-kernel": "^5.4|^6.0|^7.0",
@@ -7841,7 +7422,7 @@
"dump"
],
"support": {
- "source": "https://github.com/symfony/var-dumper/tree/v6.4.11"
+ "source": "https://github.com/symfony/var-dumper/tree/v6.4.32"
},
"funding": [
{
@@ -7852,40 +7433,46 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-08-30T16:03:21+00:00"
+ "time": "2026-01-01T13:34:06+00:00"
},
{
"name": "tijsverkoyen/css-to-inline-styles",
- "version": "v2.2.7",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/tijsverkoyen/CssToInlineStyles.git",
- "reference": "83ee6f38df0a63106a9e4536e3060458b74ccedb"
+ "reference": "f0292ccf0ec75843d65027214426b6b163b48b41"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/83ee6f38df0a63106a9e4536e3060458b74ccedb",
- "reference": "83ee6f38df0a63106a9e4536e3060458b74ccedb",
+ "url": "https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/f0292ccf0ec75843d65027214426b6b163b48b41",
+ "reference": "f0292ccf0ec75843d65027214426b6b163b48b41",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-libxml": "*",
- "php": "^5.5 || ^7.0 || ^8.0",
- "symfony/css-selector": "^2.7 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0"
+ "php": "^7.4 || ^8.0",
+ "symfony/css-selector": "^5.4 || ^6.0 || ^7.0 || ^8.0"
},
"require-dev": {
- "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0 || ^7.5 || ^8.5.21 || ^9.5.10"
+ "phpstan/phpstan": "^2.0",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpunit/phpunit": "^8.5.21 || ^9.5.10"
},
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.2.x-dev"
+ "dev-master": "2.x-dev"
}
},
"autoload": {
@@ -7908,28 +7495,28 @@
"homepage": "https://github.com/tijsverkoyen/CssToInlineStyles",
"support": {
"issues": "https://github.com/tijsverkoyen/CssToInlineStyles/issues",
- "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/v2.2.7"
+ "source": "https://github.com/tijsverkoyen/CssToInlineStyles/tree/v2.4.0"
},
- "time": "2023-12-08T13:03:43+00:00"
+ "time": "2025-12-02T11:56:42+00:00"
},
{
"name": "torann/geoip",
- "version": "3.0.8",
+ "version": "3.0.9",
"source": {
"type": "git",
"url": "https://github.com/Torann/laravel-geoip.git",
- "reference": "22a82647d866572af7fcdf90b033188090c91504"
+ "reference": "1ea60c7e1a1608de3885e8cd76389cfe5c8424de"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/Torann/laravel-geoip/zipball/22a82647d866572af7fcdf90b033188090c91504",
- "reference": "22a82647d866572af7fcdf90b033188090c91504",
+ "url": "https://api.github.com/repos/Torann/laravel-geoip/zipball/1ea60c7e1a1608de3885e8cd76389cfe5c8424de",
+ "reference": "1ea60c7e1a1608de3885e8cd76389cfe5c8424de",
"shasum": ""
},
"require": {
- "illuminate/cache": "^8.0|^9.0|^10.0|^11.0",
- "illuminate/console": "^8.0|^9.0|^10.0|^11.0",
- "illuminate/support": "^8.0|^9.0|^10.0|^11.0",
+ "illuminate/cache": "^8.0|^9.0|^10.0|^11.0|^12.0",
+ "illuminate/console": "^8.0|^9.0|^10.0|^11.0|^12.0",
+ "illuminate/support": "^8.0|^9.0|^10.0|^11.0|^12.0",
"php": "^8.0|^8.1|^8.2|^8.3"
},
"require-dev": {
@@ -7946,16 +7533,16 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-master": "1.0-dev"
- },
"laravel": {
- "providers": [
- "Torann\\GeoIP\\GeoIPServiceProvider"
- ],
"aliases": {
"GeoIP": "Torann\\GeoIP\\Facades\\GeoIP"
- }
+ },
+ "providers": [
+ "Torann\\GeoIP\\GeoIPServiceProvider"
+ ]
+ },
+ "branch-alias": {
+ "dev-master": "1.0-dev"
}
},
"autoload": {
@@ -7988,32 +7575,32 @@
],
"support": {
"issues": "https://github.com/Torann/laravel-geoip/issues",
- "source": "https://github.com/Torann/laravel-geoip/tree/3.0.8"
+ "source": "https://github.com/Torann/laravel-geoip/tree/3.0.9"
},
- "time": "2024-07-23T12:56:44+00:00"
+ "time": "2025-02-25T18:24:54+00:00"
},
{
"name": "vlucas/phpdotenv",
- "version": "v5.6.1",
+ "version": "v5.6.3",
"source": {
"type": "git",
"url": "https://github.com/vlucas/phpdotenv.git",
- "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2"
+ "reference": "955e7815d677a3eaa7075231212f2110983adecc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/a59a13791077fe3d44f90e7133eb68e7d22eaff2",
- "reference": "a59a13791077fe3d44f90e7133eb68e7d22eaff2",
+ "url": "https://api.github.com/repos/vlucas/phpdotenv/zipball/955e7815d677a3eaa7075231212f2110983adecc",
+ "reference": "955e7815d677a3eaa7075231212f2110983adecc",
"shasum": ""
},
"require": {
"ext-pcre": "*",
- "graham-campbell/result-type": "^1.1.3",
+ "graham-campbell/result-type": "^1.1.4",
"php": "^7.2.5 || ^8.0",
- "phpoption/phpoption": "^1.9.3",
- "symfony/polyfill-ctype": "^1.24",
- "symfony/polyfill-mbstring": "^1.24",
- "symfony/polyfill-php80": "^1.24"
+ "phpoption/phpoption": "^1.9.5",
+ "symfony/polyfill-ctype": "^1.26",
+ "symfony/polyfill-mbstring": "^1.26",
+ "symfony/polyfill-php80": "^1.26"
},
"require-dev": {
"bamarni/composer-bin-plugin": "^1.8.2",
@@ -8062,7 +7649,7 @@
],
"support": {
"issues": "https://github.com/vlucas/phpdotenv/issues",
- "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.1"
+ "source": "https://github.com/vlucas/phpdotenv/tree/v5.6.3"
},
"funding": [
{
@@ -8074,20 +7661,20 @@
"type": "tidelift"
}
],
- "time": "2024-07-20T21:52:34+00:00"
+ "time": "2025-12-27T19:49:13+00:00"
},
{
"name": "voku/portable-ascii",
- "version": "2.0.1",
+ "version": "2.0.3",
"source": {
"type": "git",
"url": "https://github.com/voku/portable-ascii.git",
- "reference": "b56450eed252f6801410d810c8e1727224ae0743"
+ "reference": "b1d923f88091c6bf09699efcd7c8a1b1bfd7351d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b56450eed252f6801410d810c8e1727224ae0743",
- "reference": "b56450eed252f6801410d810c8e1727224ae0743",
+ "url": "https://api.github.com/repos/voku/portable-ascii/zipball/b1d923f88091c6bf09699efcd7c8a1b1bfd7351d",
+ "reference": "b1d923f88091c6bf09699efcd7c8a1b1bfd7351d",
"shasum": ""
},
"require": {
@@ -8112,7 +7699,7 @@
"authors": [
{
"name": "Lars Moelleken",
- "homepage": "http://www.moelleken.org/"
+ "homepage": "https://www.moelleken.org/"
}
],
"description": "Portable ASCII library - performance optimized (ascii) string functions for php.",
@@ -8124,7 +7711,7 @@
],
"support": {
"issues": "https://github.com/voku/portable-ascii/issues",
- "source": "https://github.com/voku/portable-ascii/tree/2.0.1"
+ "source": "https://github.com/voku/portable-ascii/tree/2.0.3"
},
"funding": [
{
@@ -8148,65 +7735,7 @@
"type": "tidelift"
}
],
- "time": "2022-03-08T17:03:00+00:00"
- },
- {
- "name": "webmozart/assert",
- "version": "1.11.0",
- "source": {
- "type": "git",
- "url": "https://github.com/webmozarts/assert.git",
- "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991"
- },
- "dist": {
- "type": "zip",
- "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991",
- "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991",
- "shasum": ""
- },
- "require": {
- "ext-ctype": "*",
- "php": "^7.2 || ^8.0"
- },
- "conflict": {
- "phpstan/phpstan": "<0.12.20",
- "vimeo/psalm": "<4.6.1 || 4.6.2"
- },
- "require-dev": {
- "phpunit/phpunit": "^8.5.13"
- },
- "type": "library",
- "extra": {
- "branch-alias": {
- "dev-master": "1.10-dev"
- }
- },
- "autoload": {
- "psr-4": {
- "Webmozart\\Assert\\": "src/"
- }
- },
- "notification-url": "https://packagist.org/downloads/",
- "license": [
- "MIT"
- ],
- "authors": [
- {
- "name": "Bernhard Schussek",
- "email": "bschussek@gmail.com"
- }
- ],
- "description": "Assertions to validate method input/output with nice error messages.",
- "keywords": [
- "assert",
- "check",
- "validate"
- ],
- "support": {
- "issues": "https://github.com/webmozarts/assert/issues",
- "source": "https://github.com/webmozarts/assert/tree/1.11.0"
- },
- "time": "2022-06-03T18:03:27+00:00"
+ "time": "2024-11-21T01:49:47+00:00"
}
],
"packages-dev": [
@@ -8252,13 +7781,13 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-master": "2.15-dev"
- },
"laravel": {
"providers": [
"Barryvdh\\LaravelIdeHelper\\IdeHelperServiceProvider"
]
+ },
+ "branch-alias": {
+ "dev-master": "2.15-dev"
}
},
"autoload": {
@@ -8306,20 +7835,20 @@
},
{
"name": "barryvdh/reflection-docblock",
- "version": "v2.1.1",
+ "version": "v2.4.0",
"source": {
"type": "git",
"url": "https://github.com/barryvdh/ReflectionDocBlock.git",
- "reference": "e6811e927f0ecc37cc4deaa6627033150343e597"
+ "reference": "d103774cbe7e94ddee7e4870f97f727b43fe7201"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/e6811e927f0ecc37cc4deaa6627033150343e597",
- "reference": "e6811e927f0ecc37cc4deaa6627033150343e597",
+ "url": "https://api.github.com/repos/barryvdh/ReflectionDocBlock/zipball/d103774cbe7e94ddee7e4870f97f727b43fe7201",
+ "reference": "d103774cbe7e94ddee7e4870f97f727b43fe7201",
"shasum": ""
},
"require": {
- "php": ">=5.3.3"
+ "php": ">=7.1"
},
"require-dev": {
"phpunit/phpunit": "^8.5.14|^9"
@@ -8331,7 +7860,7 @@
"type": "library",
"extra": {
"branch-alias": {
- "dev-master": "2.0.x-dev"
+ "dev-master": "2.3.x-dev"
}
},
"autoload": {
@@ -8352,36 +7881,36 @@
}
],
"support": {
- "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.1.1"
+ "source": "https://github.com/barryvdh/ReflectionDocBlock/tree/v2.4.0"
},
- "time": "2023-06-14T05:06:27+00:00"
+ "time": "2025-07-17T06:07:30+00:00"
},
{
"name": "composer/class-map-generator",
- "version": "1.4.0",
+ "version": "1.7.1",
"source": {
"type": "git",
"url": "https://github.com/composer/class-map-generator.git",
- "reference": "98bbf6780e56e0fd2404fe4b82eb665a0f93b783"
+ "reference": "8f5fa3cc214230e71f54924bd0197a3bcc705eb1"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/class-map-generator/zipball/98bbf6780e56e0fd2404fe4b82eb665a0f93b783",
- "reference": "98bbf6780e56e0fd2404fe4b82eb665a0f93b783",
+ "url": "https://api.github.com/repos/composer/class-map-generator/zipball/8f5fa3cc214230e71f54924bd0197a3bcc705eb1",
+ "reference": "8f5fa3cc214230e71f54924bd0197a3bcc705eb1",
"shasum": ""
},
"require": {
"composer/pcre": "^2.1 || ^3.1",
"php": "^7.2 || ^8.0",
- "symfony/finder": "^4.4 || ^5.3 || ^6 || ^7"
+ "symfony/finder": "^4.4 || ^5.3 || ^6 || ^7 || ^8"
},
"require-dev": {
- "phpstan/phpstan": "^1.6",
- "phpstan/phpstan-deprecation-rules": "^1",
- "phpstan/phpstan-phpunit": "^1",
- "phpstan/phpstan-strict-rules": "^1.1",
+ "phpstan/phpstan": "^1.12 || ^2",
+ "phpstan/phpstan-deprecation-rules": "^1 || ^2",
+ "phpstan/phpstan-phpunit": "^1 || ^2",
+ "phpstan/phpstan-strict-rules": "^1.1 || ^2",
"phpunit/phpunit": "^8",
- "symfony/filesystem": "^5.4 || ^6"
+ "symfony/filesystem": "^5.4 || ^6 || ^7 || ^8"
},
"type": "library",
"extra": {
@@ -8411,7 +7940,7 @@
],
"support": {
"issues": "https://github.com/composer/class-map-generator/issues",
- "source": "https://github.com/composer/class-map-generator/tree/1.4.0"
+ "source": "https://github.com/composer/class-map-generator/tree/1.7.1"
},
"funding": [
{
@@ -8421,26 +7950,22 @@
{
"url": "https://github.com/composer",
"type": "github"
- },
- {
- "url": "https://tidelift.com/funding/github/packagist/composer/composer",
- "type": "tidelift"
}
],
- "time": "2024-10-03T18:14:00+00:00"
+ "time": "2025-12-29T13:15:25+00:00"
},
{
"name": "composer/pcre",
- "version": "3.3.1",
+ "version": "3.3.2",
"source": {
"type": "git",
"url": "https://github.com/composer/pcre.git",
- "reference": "63aaeac21d7e775ff9bc9d45021e1745c97521c4"
+ "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/composer/pcre/zipball/63aaeac21d7e775ff9bc9d45021e1745c97521c4",
- "reference": "63aaeac21d7e775ff9bc9d45021e1745c97521c4",
+ "url": "https://api.github.com/repos/composer/pcre/zipball/b2bed4734f0cc156ee1fe9c0da2550420d99a21e",
+ "reference": "b2bed4734f0cc156ee1fe9c0da2550420d99a21e",
"shasum": ""
},
"require": {
@@ -8450,19 +7975,19 @@
"phpstan/phpstan": "<1.11.10"
},
"require-dev": {
- "phpstan/phpstan": "^1.11.10",
- "phpstan/phpstan-strict-rules": "^1.1",
+ "phpstan/phpstan": "^1.12 || ^2",
+ "phpstan/phpstan-strict-rules": "^1 || ^2",
"phpunit/phpunit": "^8 || ^9"
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-main": "3.x-dev"
- },
"phpstan": {
"includes": [
"extension.neon"
]
+ },
+ "branch-alias": {
+ "dev-main": "3.x-dev"
}
},
"autoload": {
@@ -8490,7 +8015,7 @@
],
"support": {
"issues": "https://github.com/composer/pcre/issues",
- "source": "https://github.com/composer/pcre/tree/3.3.1"
+ "source": "https://github.com/composer/pcre/tree/3.3.2"
},
"funding": [
{
@@ -8506,7 +8031,7 @@
"type": "tidelift"
}
],
- "time": "2024-08-27T18:44:43+00:00"
+ "time": "2024-11-12T16:29:46+00:00"
},
{
"name": "doctrine/instantiator",
@@ -8580,16 +8105,16 @@
},
{
"name": "dragon-code/contracts",
- "version": "2.23.0",
+ "version": "2.24.0",
"source": {
"type": "git",
"url": "https://github.com/TheDragonCode/contracts.git",
- "reference": "44dbad923f152e0dc2699fbac2d33b65dd6a8f7d"
+ "reference": "c21ea4fc0a399bd803a2805a7f2c989749083896"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/TheDragonCode/contracts/zipball/44dbad923f152e0dc2699fbac2d33b65dd6a8f7d",
- "reference": "44dbad923f152e0dc2699fbac2d33b65dd6a8f7d",
+ "url": "https://api.github.com/repos/TheDragonCode/contracts/zipball/c21ea4fc0a399bd803a2805a7f2c989749083896",
+ "reference": "c21ea4fc0a399bd803a2805a7f2c989749083896",
"shasum": ""
},
"require": {
@@ -8602,7 +8127,7 @@
"andrey-helldar/contracts": "*"
},
"require-dev": {
- "illuminate/database": "^10.0 || ^11.0",
+ "illuminate/database": "^10.0 || ^11.0 || ^12.0",
"phpdocumentor/reflection-docblock": "^5.0"
},
"type": "library",
@@ -8635,29 +8160,25 @@
"url": "https://boosty.to/dragon-code",
"type": "boosty"
},
- {
- "url": "https://www.donationalerts.com/r/dragon_code",
- "type": "donationalerts"
- },
{
"url": "https://yoomoney.ru/to/410012608840929",
"type": "yoomoney"
}
],
- "time": "2024-03-11T20:15:12+00:00"
+ "time": "2025-02-23T23:11:50+00:00"
},
{
"name": "dragon-code/pretty-array",
- "version": "v4.1.0",
+ "version": "4.2.0",
"source": {
"type": "git",
"url": "https://github.com/TheDragonCode/pretty-array.git",
- "reference": "6c84e2454491b414efbd37985c322712cdf9012f"
+ "reference": "b94034d92172a5d14a578822d68b2a8f8b5388e0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/TheDragonCode/pretty-array/zipball/6c84e2454491b414efbd37985c322712cdf9012f",
- "reference": "6c84e2454491b414efbd37985c322712cdf9012f",
+ "url": "https://api.github.com/repos/TheDragonCode/pretty-array/zipball/b94034d92172a5d14a578822d68b2a8f8b5388e0",
+ "reference": "b94034d92172a5d14a578822d68b2a8f8b5388e0",
"shasum": ""
},
"require": {
@@ -8668,7 +8189,7 @@
"php": "^8.0"
},
"require-dev": {
- "phpunit/phpunit": "^9.6 || ^10.2"
+ "phpunit/phpunit": "^9.6 || ^10.0 || ^11.0 || ^12.0"
},
"suggest": {
"symfony/thanks": "Give thanks (in the form of a GitHub) to your fellow PHP package maintainers"
@@ -8687,7 +8208,7 @@
{
"name": "Andrey Helldar",
"email": "helldar@dragon-code.pro",
- "homepage": "https://github.com/andrey-helldar"
+ "homepage": "https://dragon-code.pro"
}
],
"description": "Simple conversion of an array to a pretty view",
@@ -8708,33 +8229,25 @@
"url": "https://boosty.to/dragon-code",
"type": "boosty"
},
- {
- "url": "https://github.com/sponsors/TheDragonCode",
- "type": "github"
- },
- {
- "url": "https://opencollective.com/dragon-code",
- "type": "open_collective"
- },
{
"url": "https://yoomoney.ru/to/410012608840929",
"type": "yoomoney"
}
],
- "time": "2023-06-02T11:37:44+00:00"
+ "time": "2025-02-24T15:35:24+00:00"
},
{
"name": "dragon-code/support",
- "version": "6.15.0",
+ "version": "6.16.0",
"source": {
"type": "git",
"url": "https://github.com/TheDragonCode/support.git",
- "reference": "087d7baaa963cdbb24e901dc27e10cdc31c2529c"
+ "reference": "ab9b657a307e75f6ba5b2b39e1e45207dc1a065a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/TheDragonCode/support/zipball/087d7baaa963cdbb24e901dc27e10cdc31c2529c",
- "reference": "087d7baaa963cdbb24e901dc27e10cdc31c2529c",
+ "url": "https://api.github.com/repos/TheDragonCode/support/zipball/ab9b657a307e75f6ba5b2b39e1e45207dc1a065a",
+ "reference": "ab9b657a307e75f6ba5b2b39e1e45207dc1a065a",
"shasum": ""
},
"require": {
@@ -8753,8 +8266,8 @@
"andrey-helldar/support": "*"
},
"require-dev": {
- "illuminate/contracts": "^9.0 || ^10.0 || ^11.0",
- "phpunit/phpunit": "^9.6 || ^11.0",
+ "illuminate/contracts": "^9.0 || ^10.0 || ^11.0 || ^12.0",
+ "phpunit/phpunit": "^9.6 || ^11.0 || ^12.0",
"symfony/var-dumper": "^6.0 || ^7.0"
},
"suggest": {
@@ -8811,29 +8324,25 @@
"url": "https://boosty.to/dragon-code",
"type": "boosty"
},
- {
- "url": "https://www.donationalerts.com/r/dragon_code",
- "type": "donationalerts"
- },
{
"url": "https://yoomoney.ru/to/410012608840929",
"type": "yoomoney"
}
],
- "time": "2024-09-07T13:27:37+00:00"
+ "time": "2025-02-24T14:01:52+00:00"
},
{
"name": "fakerphp/faker",
- "version": "v1.23.1",
+ "version": "v1.24.1",
"source": {
"type": "git",
"url": "https://github.com/FakerPHP/Faker.git",
- "reference": "bfb4fe148adbf78eff521199619b93a52ae3554b"
+ "reference": "e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/bfb4fe148adbf78eff521199619b93a52ae3554b",
- "reference": "bfb4fe148adbf78eff521199619b93a52ae3554b",
+ "url": "https://api.github.com/repos/FakerPHP/Faker/zipball/e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5",
+ "reference": "e0ee18eb1e6dc3cda3ce9fd97e5a0689a88a64b5",
"shasum": ""
},
"require": {
@@ -8881,22 +8390,22 @@
],
"support": {
"issues": "https://github.com/FakerPHP/Faker/issues",
- "source": "https://github.com/FakerPHP/Faker/tree/v1.23.1"
+ "source": "https://github.com/FakerPHP/Faker/tree/v1.24.1"
},
- "time": "2024-01-02T13:46:09+00:00"
+ "time": "2024-11-21T13:46:39+00:00"
},
{
"name": "filp/whoops",
- "version": "2.16.0",
+ "version": "2.18.4",
"source": {
"type": "git",
"url": "https://github.com/filp/whoops.git",
- "reference": "befcdc0e5dce67252aa6322d82424be928214fa2"
+ "reference": "d2102955e48b9fd9ab24280a7ad12ed552752c4d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/filp/whoops/zipball/befcdc0e5dce67252aa6322d82424be928214fa2",
- "reference": "befcdc0e5dce67252aa6322d82424be928214fa2",
+ "url": "https://api.github.com/repos/filp/whoops/zipball/d2102955e48b9fd9ab24280a7ad12ed552752c4d",
+ "reference": "d2102955e48b9fd9ab24280a7ad12ed552752c4d",
"shasum": ""
},
"require": {
@@ -8946,7 +8455,7 @@
],
"support": {
"issues": "https://github.com/filp/whoops/issues",
- "source": "https://github.com/filp/whoops/tree/2.16.0"
+ "source": "https://github.com/filp/whoops/tree/2.18.4"
},
"funding": [
{
@@ -8954,24 +8463,24 @@
"type": "github"
}
],
- "time": "2024-09-25T12:00:00+00:00"
+ "time": "2025-08-08T12:00:00+00:00"
},
{
"name": "hamcrest/hamcrest-php",
- "version": "v2.0.1",
+ "version": "v2.1.1",
"source": {
"type": "git",
"url": "https://github.com/hamcrest/hamcrest-php.git",
- "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3"
+ "reference": "f8b1c0173b22fa6ec77a81fe63e5b01eba7e6487"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/8c3d0a3f6af734494ad8f6fbbee0ba92422859f3",
- "reference": "8c3d0a3f6af734494ad8f6fbbee0ba92422859f3",
+ "url": "https://api.github.com/repos/hamcrest/hamcrest-php/zipball/f8b1c0173b22fa6ec77a81fe63e5b01eba7e6487",
+ "reference": "f8b1c0173b22fa6ec77a81fe63e5b01eba7e6487",
"shasum": ""
},
"require": {
- "php": "^5.3|^7.0|^8.0"
+ "php": "^7.4|^8.0"
},
"replace": {
"cordoval/hamcrest-php": "*",
@@ -8979,8 +8488,8 @@
"kodova/hamcrest-php": "*"
},
"require-dev": {
- "phpunit/php-file-iterator": "^1.4 || ^2.0",
- "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0"
+ "phpunit/php-file-iterator": "^1.4 || ^2.0 || ^3.0",
+ "phpunit/phpunit": "^4.8.36 || ^5.7 || ^6.5 || ^7.0 || ^8.0 || ^9.0"
},
"type": "library",
"extra": {
@@ -9003,9 +8512,9 @@
],
"support": {
"issues": "https://github.com/hamcrest/hamcrest-php/issues",
- "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.0.1"
+ "source": "https://github.com/hamcrest/hamcrest-php/tree/v2.1.1"
},
- "time": "2020-07-09T08:09:16+00:00"
+ "time": "2025-04-30T06:54:44+00:00"
},
{
"name": "laravel-lang/attributes",
@@ -9437,13 +8946,13 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-master": "1.x-dev"
- },
"laravel": {
"providers": [
"Laravel\\Breeze\\BreezeServiceProvider"
]
+ },
+ "branch-alias": {
+ "dev-master": "1.x-dev"
}
},
"autoload": {
@@ -9474,29 +8983,29 @@
},
{
"name": "laravel/sail",
- "version": "v1.34.0",
+ "version": "v1.52.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/sail.git",
- "reference": "511e9c95b0f3ee778dc9e11e242bcd2af8e002cd"
+ "reference": "64ac7d8abb2dbcf2b76e61289451bae79066b0b3"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/laravel/sail/zipball/511e9c95b0f3ee778dc9e11e242bcd2af8e002cd",
- "reference": "511e9c95b0f3ee778dc9e11e242bcd2af8e002cd",
+ "url": "https://api.github.com/repos/laravel/sail/zipball/64ac7d8abb2dbcf2b76e61289451bae79066b0b3",
+ "reference": "64ac7d8abb2dbcf2b76e61289451bae79066b0b3",
"shasum": ""
},
"require": {
- "illuminate/console": "^9.52.16|^10.0|^11.0",
- "illuminate/contracts": "^9.52.16|^10.0|^11.0",
- "illuminate/support": "^9.52.16|^10.0|^11.0",
+ "illuminate/console": "^9.52.16|^10.0|^11.0|^12.0",
+ "illuminate/contracts": "^9.52.16|^10.0|^11.0|^12.0",
+ "illuminate/support": "^9.52.16|^10.0|^11.0|^12.0",
"php": "^8.0",
"symfony/console": "^6.0|^7.0",
"symfony/yaml": "^6.0|^7.0"
},
"require-dev": {
- "orchestra/testbench": "^7.0|^8.0|^9.0",
- "phpstan/phpstan": "^1.10"
+ "orchestra/testbench": "^7.0|^8.0|^9.0|^10.0",
+ "phpstan/phpstan": "^2.0"
},
"bin": [
"bin/sail"
@@ -9533,7 +9042,7 @@
"issues": "https://github.com/laravel/sail/issues",
"source": "https://github.com/laravel/sail"
},
- "time": "2024-09-27T14:58:09+00:00"
+ "time": "2026-01-01T02:46:03+00:00"
},
{
"name": "mockery/mockery",
@@ -9620,16 +9129,16 @@
},
{
"name": "myclabs/deep-copy",
- "version": "1.12.0",
+ "version": "1.13.4",
"source": {
"type": "git",
"url": "https://github.com/myclabs/DeepCopy.git",
- "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c"
+ "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c",
- "reference": "3a6b9a42cd8f8771bd4295d13e1423fa7f3d942c",
+ "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/07d290f0c47959fd5eed98c95ee5602db07e0b6a",
+ "reference": "07d290f0c47959fd5eed98c95ee5602db07e0b6a",
"shasum": ""
},
"require": {
@@ -9668,7 +9177,7 @@
],
"support": {
"issues": "https://github.com/myclabs/DeepCopy/issues",
- "source": "https://github.com/myclabs/DeepCopy/tree/1.12.0"
+ "source": "https://github.com/myclabs/DeepCopy/tree/1.13.4"
},
"funding": [
{
@@ -9676,7 +9185,7 @@
"type": "tidelift"
}
],
- "time": "2024-06-12T14:39:25+00:00"
+ "time": "2025-08-01T08:46:24+00:00"
},
{
"name": "nunomaduro/collision",
@@ -9709,13 +9218,13 @@
},
"type": "library",
"extra": {
- "branch-alias": {
- "dev-develop": "6.x-dev"
- },
"laravel": {
"providers": [
"NunoMaduro\\Collision\\Adapters\\Laravel\\CollisionServiceProvider"
]
+ },
+ "branch-alias": {
+ "dev-develop": "6.x-dev"
}
},
"autoload": {
@@ -9939,23 +9448,23 @@
},
{
"name": "phpdocumentor/type-resolver",
- "version": "1.8.2",
+ "version": "1.12.0",
"source": {
"type": "git",
"url": "https://github.com/phpDocumentor/TypeResolver.git",
- "reference": "153ae662783729388a584b4361f2545e4d841e3c"
+ "reference": "92a98ada2b93d9b201a613cb5a33584dde25f195"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/153ae662783729388a584b4361f2545e4d841e3c",
- "reference": "153ae662783729388a584b4361f2545e4d841e3c",
+ "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/92a98ada2b93d9b201a613cb5a33584dde25f195",
+ "reference": "92a98ada2b93d9b201a613cb5a33584dde25f195",
"shasum": ""
},
"require": {
"doctrine/deprecations": "^1.0",
"php": "^7.3 || ^8.0",
"phpdocumentor/reflection-common": "^2.0",
- "phpstan/phpdoc-parser": "^1.13"
+ "phpstan/phpdoc-parser": "^1.18|^2.0"
},
"require-dev": {
"ext-tokenizer": "*",
@@ -9991,36 +9500,36 @@
"description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
"support": {
"issues": "https://github.com/phpDocumentor/TypeResolver/issues",
- "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.8.2"
+ "source": "https://github.com/phpDocumentor/TypeResolver/tree/1.12.0"
},
- "time": "2024-02-23T11:10:43+00:00"
+ "time": "2025-11-21T15:09:14+00:00"
},
{
"name": "phpstan/phpdoc-parser",
- "version": "1.32.0",
+ "version": "2.3.2",
"source": {
"type": "git",
"url": "https://github.com/phpstan/phpdoc-parser.git",
- "reference": "6ca22b154efdd9e3c68c56f5d94670920a1c19a4"
+ "reference": "a004701b11273a26cd7955a61d67a7f1e525a45a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/6ca22b154efdd9e3c68c56f5d94670920a1c19a4",
- "reference": "6ca22b154efdd9e3c68c56f5d94670920a1c19a4",
+ "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/a004701b11273a26cd7955a61d67a7f1e525a45a",
+ "reference": "a004701b11273a26cd7955a61d67a7f1e525a45a",
"shasum": ""
},
"require": {
- "php": "^7.2 || ^8.0"
+ "php": "^7.4 || ^8.0"
},
"require-dev": {
"doctrine/annotations": "^2.0",
- "nikic/php-parser": "^4.15",
+ "nikic/php-parser": "^5.3.0",
"php-parallel-lint/php-parallel-lint": "^1.2",
"phpstan/extension-installer": "^1.0",
- "phpstan/phpstan": "^1.5",
- "phpstan/phpstan-phpunit": "^1.1",
- "phpstan/phpstan-strict-rules": "^1.0",
- "phpunit/phpunit": "^9.5",
+ "phpstan/phpstan": "^2.0",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpstan/phpstan-strict-rules": "^2.0",
+ "phpunit/phpunit": "^9.6",
"symfony/process": "^5.2"
},
"type": "library",
@@ -10038,9 +9547,9 @@
"description": "PHPDoc parser with support for nullable, intersection and generic types",
"support": {
"issues": "https://github.com/phpstan/phpdoc-parser/issues",
- "source": "https://github.com/phpstan/phpdoc-parser/tree/1.32.0"
+ "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.2"
},
- "time": "2024-09-26T07:23:32+00:00"
+ "time": "2026-01-25T14:56:51+00:00"
},
{
"name": "phpunit/php-code-coverage",
@@ -10363,16 +9872,16 @@
},
{
"name": "phpunit/phpunit",
- "version": "9.6.21",
+ "version": "9.6.32",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa"
+ "reference": "492ee10a8369a1c1ac390a3b46e0c846e384c5a4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa",
- "reference": "de6abf3b6f8dd955fac3caad3af7a9504e8c2ffa",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/492ee10a8369a1c1ac390a3b46e0c846e384c5a4",
+ "reference": "492ee10a8369a1c1ac390a3b46e0c846e384c5a4",
"shasum": ""
},
"require": {
@@ -10383,7 +9892,7 @@
"ext-mbstring": "*",
"ext-xml": "*",
"ext-xmlwriter": "*",
- "myclabs/deep-copy": "^1.12.0",
+ "myclabs/deep-copy": "^1.13.4",
"phar-io/manifest": "^2.0.4",
"phar-io/version": "^3.2.1",
"php": ">=7.3",
@@ -10394,11 +9903,11 @@
"phpunit/php-timer": "^5.0.3",
"sebastian/cli-parser": "^1.0.2",
"sebastian/code-unit": "^1.0.8",
- "sebastian/comparator": "^4.0.8",
+ "sebastian/comparator": "^4.0.10",
"sebastian/diff": "^4.0.6",
"sebastian/environment": "^5.1.5",
- "sebastian/exporter": "^4.0.6",
- "sebastian/global-state": "^5.0.7",
+ "sebastian/exporter": "^4.0.8",
+ "sebastian/global-state": "^5.0.8",
"sebastian/object-enumerator": "^4.0.4",
"sebastian/resource-operations": "^3.0.4",
"sebastian/type": "^3.2.1",
@@ -10446,7 +9955,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.21"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/9.6.32"
},
"funding": [
{
@@ -10457,12 +9966,20 @@
"url": "https://github.com/sebastianbergmann",
"type": "github"
},
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit",
"type": "tidelift"
}
],
- "time": "2024-09-19T10:50:18+00:00"
+ "time": "2026-01-24T16:04:20+00:00"
},
{
"name": "sebastian/cli-parser",
@@ -10633,16 +10150,16 @@
},
{
"name": "sebastian/comparator",
- "version": "4.0.8",
+ "version": "4.0.10",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/comparator.git",
- "reference": "fa0f136dd2334583309d32b62544682ee972b51a"
+ "reference": "e4df00b9b3571187db2831ae9aada2c6efbd715d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/fa0f136dd2334583309d32b62544682ee972b51a",
- "reference": "fa0f136dd2334583309d32b62544682ee972b51a",
+ "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/e4df00b9b3571187db2831ae9aada2c6efbd715d",
+ "reference": "e4df00b9b3571187db2831ae9aada2c6efbd715d",
"shasum": ""
},
"require": {
@@ -10695,15 +10212,27 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/comparator/issues",
- "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.8"
+ "source": "https://github.com/sebastianbergmann/comparator/tree/4.0.10"
},
"funding": [
{
"url": "https://github.com/sebastianbergmann",
"type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/comparator",
+ "type": "tidelift"
}
],
- "time": "2022-09-14T12:41:17+00:00"
+ "time": "2026-01-24T09:22:56+00:00"
},
{
"name": "sebastian/complexity",
@@ -10893,16 +10422,16 @@
},
{
"name": "sebastian/exporter",
- "version": "4.0.6",
+ "version": "4.0.8",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/exporter.git",
- "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72"
+ "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/78c00df8f170e02473b682df15bfcdacc3d32d72",
- "reference": "78c00df8f170e02473b682df15bfcdacc3d32d72",
+ "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/14c6ba52f95a36c3d27c835d65efc7123c446e8c",
+ "reference": "14c6ba52f95a36c3d27c835d65efc7123c446e8c",
"shasum": ""
},
"require": {
@@ -10958,28 +10487,40 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/exporter/issues",
- "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.6"
+ "source": "https://github.com/sebastianbergmann/exporter/tree/4.0.8"
},
"funding": [
{
"url": "https://github.com/sebastianbergmann",
"type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/exporter",
+ "type": "tidelift"
}
],
- "time": "2024-03-02T06:33:00+00:00"
+ "time": "2025-09-24T06:03:27+00:00"
},
{
"name": "sebastian/global-state",
- "version": "5.0.7",
+ "version": "5.0.8",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/global-state.git",
- "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9"
+ "reference": "b6781316bdcd28260904e7cc18ec983d0d2ef4f6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9",
- "reference": "bca7df1f32ee6fe93b4d4a9abbf69e13a4ada2c9",
+ "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/b6781316bdcd28260904e7cc18ec983d0d2ef4f6",
+ "reference": "b6781316bdcd28260904e7cc18ec983d0d2ef4f6",
"shasum": ""
},
"require": {
@@ -11022,15 +10563,27 @@
],
"support": {
"issues": "https://github.com/sebastianbergmann/global-state/issues",
- "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.7"
+ "source": "https://github.com/sebastianbergmann/global-state/tree/5.0.8"
},
"funding": [
{
"url": "https://github.com/sebastianbergmann",
"type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/global-state",
+ "type": "tidelift"
}
],
- "time": "2024-03-02T06:35:11+00:00"
+ "time": "2025-08-10T07:10:35+00:00"
},
{
"name": "sebastian/lines-of-code",
@@ -11203,16 +10756,16 @@
},
{
"name": "sebastian/recursion-context",
- "version": "4.0.5",
+ "version": "4.0.6",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/recursion-context.git",
- "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1"
+ "reference": "539c6691e0623af6dc6f9c20384c120f963465a0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
- "reference": "e75bd0f07204fec2a0af9b0f3cfe97d05f92efc1",
+ "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/539c6691e0623af6dc6f9c20384c120f963465a0",
+ "reference": "539c6691e0623af6dc6f9c20384c120f963465a0",
"shasum": ""
},
"require": {
@@ -11254,15 +10807,27 @@
"homepage": "https://github.com/sebastianbergmann/recursion-context",
"support": {
"issues": "https://github.com/sebastianbergmann/recursion-context/issues",
- "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.5"
+ "source": "https://github.com/sebastianbergmann/recursion-context/tree/4.0.6"
},
"funding": [
{
"url": "https://github.com/sebastianbergmann",
"type": "github"
+ },
+ {
+ "url": "https://liberapay.com/sebastianbergmann",
+ "type": "liberapay"
+ },
+ {
+ "url": "https://thanks.dev/u/gh/sebastianbergmann",
+ "type": "thanks_dev"
+ },
+ {
+ "url": "https://tidelift.com/funding/github/packagist/sebastian/recursion-context",
+ "type": "tidelift"
}
],
- "time": "2023-02-03T06:07:39+00:00"
+ "time": "2025-08-10T06:57:39+00:00"
},
{
"name": "sebastian/resource-operations",
@@ -11429,27 +10994,27 @@
},
{
"name": "spatie/backtrace",
- "version": "1.6.2",
+ "version": "1.8.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/backtrace.git",
- "reference": "1a9a145b044677ae3424693f7b06479fc8c137a9"
+ "reference": "8c0f16a59ae35ec8c62d85c3c17585158f430110"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/backtrace/zipball/1a9a145b044677ae3424693f7b06479fc8c137a9",
- "reference": "1a9a145b044677ae3424693f7b06479fc8c137a9",
+ "url": "https://api.github.com/repos/spatie/backtrace/zipball/8c0f16a59ae35ec8c62d85c3c17585158f430110",
+ "reference": "8c0f16a59ae35ec8c62d85c3c17585158f430110",
"shasum": ""
},
"require": {
- "php": "^7.3|^8.0"
+ "php": "^7.3 || ^8.0"
},
"require-dev": {
"ext-json": "*",
- "laravel/serializable-closure": "^1.3",
- "phpunit/phpunit": "^9.3",
- "spatie/phpunit-snapshot-assertions": "^4.2",
- "symfony/var-dumper": "^5.1"
+ "laravel/serializable-closure": "^1.3 || ^2.0",
+ "phpunit/phpunit": "^9.3 || ^11.4.3",
+ "spatie/phpunit-snapshot-assertions": "^4.2 || ^5.1.6",
+ "symfony/var-dumper": "^5.1 || ^6.0 || ^7.0"
},
"type": "library",
"autoload": {
@@ -11476,7 +11041,8 @@
"spatie"
],
"support": {
- "source": "https://github.com/spatie/backtrace/tree/1.6.2"
+ "issues": "https://github.com/spatie/backtrace/issues",
+ "source": "https://github.com/spatie/backtrace/tree/1.8.1"
},
"funding": [
{
@@ -11488,24 +11054,24 @@
"type": "other"
}
],
- "time": "2024-07-22T08:21:24+00:00"
+ "time": "2025-08-26T08:22:30+00:00"
},
{
"name": "spatie/flare-client-php",
- "version": "1.8.0",
+ "version": "1.10.1",
"source": {
"type": "git",
"url": "https://github.com/spatie/flare-client-php.git",
- "reference": "180f8ca4c0d0d6fc51477bd8c53ce37ab5a96122"
+ "reference": "bf1716eb98bd689451b071548ae9e70738dce62f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/180f8ca4c0d0d6fc51477bd8c53ce37ab5a96122",
- "reference": "180f8ca4c0d0d6fc51477bd8c53ce37ab5a96122",
+ "url": "https://api.github.com/repos/spatie/flare-client-php/zipball/bf1716eb98bd689451b071548ae9e70738dce62f",
+ "reference": "bf1716eb98bd689451b071548ae9e70738dce62f",
"shasum": ""
},
"require": {
- "illuminate/pipeline": "^8.0|^9.0|^10.0|^11.0",
+ "illuminate/pipeline": "^8.0|^9.0|^10.0|^11.0|^12.0",
"php": "^8.0",
"spatie/backtrace": "^1.6.1",
"symfony/http-foundation": "^5.2|^6.0|^7.0",
@@ -11549,7 +11115,7 @@
],
"support": {
"issues": "https://github.com/spatie/flare-client-php/issues",
- "source": "https://github.com/spatie/flare-client-php/tree/1.8.0"
+ "source": "https://github.com/spatie/flare-client-php/tree/1.10.1"
},
"funding": [
{
@@ -11557,7 +11123,7 @@
"type": "github"
}
],
- "time": "2024-08-01T08:27:26+00:00"
+ "time": "2025-02-14T13:42:06+00:00"
},
{
"name": "spatie/ignition",
@@ -11683,12 +11249,12 @@
"type": "library",
"extra": {
"laravel": {
- "providers": [
- "Spatie\\LaravelIgnition\\IgnitionServiceProvider"
- ],
"aliases": {
"Flare": "Spatie\\LaravelIgnition\\Facades\\Flare"
- }
+ },
+ "providers": [
+ "Spatie\\LaravelIgnition\\IgnitionServiceProvider"
+ ]
}
},
"autoload": {
@@ -11734,7 +11300,7 @@
},
{
"name": "symfony/polyfill-php81",
- "version": "v1.31.0",
+ "version": "v1.33.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/polyfill-php81.git",
@@ -11752,8 +11318,8 @@
"type": "library",
"extra": {
"thanks": {
- "name": "symfony/polyfill",
- "url": "https://github.com/symfony/polyfill"
+ "url": "https://github.com/symfony/polyfill",
+ "name": "symfony/polyfill"
}
},
"autoload": {
@@ -11790,7 +11356,7 @@
"shim"
],
"support": {
- "source": "https://github.com/symfony/polyfill-php81/tree/v1.31.0"
+ "source": "https://github.com/symfony/polyfill-php81/tree/v1.33.0"
},
"funding": [
{
@@ -11801,6 +11367,10 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
@@ -11810,27 +11380,28 @@
},
{
"name": "symfony/yaml",
- "version": "v7.1.5",
+ "version": "v7.4.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/yaml.git",
- "reference": "4e561c316e135e053bd758bf3b3eb291d9919de4"
+ "reference": "24dd4de28d2e3988b311751ac49e684d783e2345"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/yaml/zipball/4e561c316e135e053bd758bf3b3eb291d9919de4",
- "reference": "4e561c316e135e053bd758bf3b3eb291d9919de4",
+ "url": "https://api.github.com/repos/symfony/yaml/zipball/24dd4de28d2e3988b311751ac49e684d783e2345",
+ "reference": "24dd4de28d2e3988b311751ac49e684d783e2345",
"shasum": ""
},
"require": {
"php": ">=8.2",
+ "symfony/deprecation-contracts": "^2.5|^3",
"symfony/polyfill-ctype": "^1.8"
},
"conflict": {
"symfony/console": "<6.4"
},
"require-dev": {
- "symfony/console": "^6.4|^7.0"
+ "symfony/console": "^6.4|^7.0|^8.0"
},
"bin": [
"Resources/bin/yaml-lint"
@@ -11861,7 +11432,7 @@
"description": "Loads and dumps YAML files",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/yaml/tree/v7.1.5"
+ "source": "https://github.com/symfony/yaml/tree/v7.4.1"
},
"funding": [
{
@@ -11872,25 +11443,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-17T12:49:58+00:00"
+ "time": "2025-12-04T18:11:45+00:00"
},
{
"name": "theseer/tokenizer",
- "version": "1.2.3",
+ "version": "1.3.1",
"source": {
"type": "git",
"url": "https://github.com/theseer/tokenizer.git",
- "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2"
+ "reference": "b7489ce515e168639d17feec34b8847c326b0b3c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
- "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2",
+ "url": "https://api.github.com/repos/theseer/tokenizer/zipball/b7489ce515e168639d17feec34b8847c326b0b3c",
+ "reference": "b7489ce515e168639d17feec34b8847c326b0b3c",
"shasum": ""
},
"require": {
@@ -11919,7 +11494,7 @@
"description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
"support": {
"issues": "https://github.com/theseer/tokenizer/issues",
- "source": "https://github.com/theseer/tokenizer/tree/1.2.3"
+ "source": "https://github.com/theseer/tokenizer/tree/1.3.1"
},
"funding": [
{
@@ -11927,17 +11502,17 @@
"type": "github"
}
],
- "time": "2024-03-03T12:36:25+00:00"
+ "time": "2025-11-17T20:03:58+00:00"
}
],
"aliases": [],
"minimum-stability": "dev",
- "stability-flags": [],
+ "stability-flags": {},
"prefer-stable": true,
"prefer-lowest": false,
"platform": {
"php": ">=8.0"
},
- "platform-dev": [],
+ "platform-dev": {},
"plugin-api-version": "2.6.0"
}
diff --git a/resources/views/components/config/backups.blade.php b/resources/views/components/config/backups.blade.php
index 5fb835e52..2fc54fba9 100644
--- a/resources/views/components/config/backups.blade.php
+++ b/resources/views/components/config/backups.blade.php
@@ -1,44 +1,129 @@
+
-
-
- @if (file_exists(base_path('backups/updater-backups/')) and is_dir(base_path('backups/updater-backups/')))
- @if($_SERVER['QUERY_STRING'] != '')
-
+ button:hover {
+ background-color: #0065c1;
+ color: #FFF;
+ box-shadow: 0 10px 20px -10px rgba(0, 0, 0, 0.6);
+ }
+
+ .buttondm {
+ display: inline-block;
+ text-decoration: none;
+ height: 48px;
+ text-align: center;
+ vertical-align: middle;
+ font-size: 18px;
+ width: 300px;
+ font-weight: 700;
+ line-height: 48px;
+ letter-spacing: .1px;
+ white-space: wrap;
+ border-radius: 8px;
+ cursor: pointer
+ }
+
+ .button-hover,
+ .credit-hover {
+ display: inline-block;
+ -webkit-transform: perspective(1px) translateZ(0);
+ transform: perspective(1px) translateZ(0);
+ box-shadow: 0 0 1px rgba(0, 0, 0, 0);
+ -webkit-transition-duration: .3s;
+ transition-duration: .3s;
+ -webkit-transition-property: transform;
+ transition-property: transform
+ }
+
+ .button-hover:active,
+ .credit-hover:active,
+ .button-hover:focus,
+ .credit-hover:focus,
+ .button-hover:hover,
+ .credit-hover:hover {
+ -webkit-transform: scale(1.06);
+ transform: scale(1.06)
+ }
+
+ .container {
+ align-items: center;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ height: 50%;
+ width: 100%
+ }
+
+
+
+@if (file_exists(base_path('backups/updater-backups/')) and is_dir(base_path('backups/updater-backups/')))
+ @if ($_SERVER['QUERY_STRING'] != '')
+
@endif
-
-
{{__('messages.Download your updater backups:')}}
-
- '; print_r($entrys); echo '
';
- }}} ?>
-
- @else
-{{__('messages.No backups found')}}
+ {{ __('messages.Download your updater backups:') }}
+
+ ';
+ print_r($entrys);
+ echo '
';
+ }
+ }
+ } ?>
+
+@else
+ {{ __('messages.No backups found') }}
+