Merge branch 'develop' into improve-mod-card

This commit is contained in:
Refringe 2024-09-10 01:31:57 +00:00
commit d772b9d31e
7 changed files with 168 additions and 234 deletions

16
.github/README.md vendored
View File

@ -12,7 +12,7 @@ The Forge is a Laravel-based web application that provides a platform for the Si
## Development Environment Setup ## Development Environment Setup
We use [Laravel Sail](https://laravel.com/docs/11.x/sail) to mirror the services that are used in our production server in a local development environment. You can see detailed instructions on how to configure the [full development environment](https://github.com/sp-tarkov/forge/wiki/Full-Windows-Dev-Env) or a [lightweight development environment](https://github.com/sp-tarkov/forge/wiki/Light-Windows-Dev-Env) on the project wiki. The full development environment is recommended. We use [Laravel Sail](https://laravel.com/docs/11.x/sail) to mirror the services that are used in our production server in a local development environment. You can see detailed instructions on how to configure the [full development environment](https://dev.sp-tarkov.com/SPT/forge/wiki/Full-Windows-Dev-Env) or a [lightweight development environment](https://dev.sp-tarkov.com/SPT/forge/wiki/Light-Windows-Dev-Env) on the project wiki. The full development environment is recommended.
### Available Services: ### Available Services:
@ -25,13 +25,13 @@ We use [Laravel Sail](https://laravel.com/docs/11.x/sail) to mirror the services
### Notable Routes ### Notable Routes
| Service | Authentication | Access Via Host | | Service | Authentication | Access Via Host |
|----------------------------------|----------------|-----------------------------| |----------------------------------|----------------|----------------------------|
| Laravel Filament Admin Panel | Via User Role | <http://localhost/admin> | | Laravel Filament Admin Panel | Via User Role | <http://localhost/admin> |
| Redis Queue Management (Horizon) | Via User Role | <http://localhost/horizon> | | Redis Queue Management (Horizon) | Via User Role | <http://localhost/horizon> |
| Website Status (Pulse) | Via User Role | <http://localhost/pulse> | | Website Status (Pulse) | Via User Role | <http://localhost/pulse> |
| Meilisearch WebUI | Local Only | <http://localhost:7700> | | Meilisearch WebUI | Local Only | <http://localhost:7700> |
| Mailpit WebUI | Local Only | <http://localhost:8025> | | Mailpit WebUI | Local Only | <http://localhost:8025> |
Most of these connection settings should already be configured in the `.env.full` or `.env.light` example files. Simply save one of these (depending on your environment) as `.env` and adjust settings as needed. Most of these connection settings should already be configured in the `.env.full` or `.env.light` example files. Simply save one of these (depending on your environment) as `.env` and adjust settings as needed.
@ -80,12 +80,12 @@ For more information on Laravel development, please refer to the [official docum
## Development Discussion ## Development Discussion
*__Please note__, we are very early in development and will likely not accept work that is not discussed beforehand through the following channels...* *__Please note__, we are very early in development and will likely not accept work that is not discussed beforehand.*
You may propose new features or improvements of existing Forge behavior in [the repository's GitHub discussion board](https://github.com/sp-tarkov/forge/discussions). If you propose a new feature, please be willing to implement at least some of the code that would be needed to complete the feature.
Informal discussion regarding bugs, new features, and implementation of existing features takes place in the `#website-general` channel of the [Single Player Tarkov Discord server](https://discord.com/invite/Xn9msqQZan). Refringe, the maintainer of Forge, is typically present in the channel on weekdays from 9am-5pm Eastern Time (ET), and sporadically present in the channel at other times. Informal discussion regarding bugs, new features, and implementation of existing features takes place in the `#website-general` channel of the [Single Player Tarkov Discord server](https://discord.com/invite/Xn9msqQZan). Refringe, the maintainer of Forge, is typically present in the channel on weekdays from 9am-5pm Eastern Time (ET), and sporadically present in the channel at other times.
If you propose a new feature, please be willing to implement at least some of the code that would be needed to complete the feature.
## Which Branch? ## Which Branch?
The `main` branch is the default branch for Forge. This branch is used for the latest stable release of the site. The `develop` branch is used for the latest development changes. All feature branches should be based on the `develop` branch. All pull requests should target the `develop` branch. The `main` branch is the default branch for Forge. This branch is used for the latest stable release of the site. The `develop` branch is used for the latest development changes. All feature branches should be based on the `develop` branch. All pull requests should target the `develop` branch.

View File

@ -48,14 +48,14 @@ class Index extends Component
/** /**
* The available SPT versions. * The available SPT versions.
*/ */
public Collection $availableSptVersions; public Collection $activeSptVersions;
/** /**
* The component mount method, run only once when the component is mounted. * The component mount method, run only once when the component is mounted.
*/ */
public function mount(): void public function mount(): void
{ {
$this->availableSptVersions = $this->availableSptVersions ?? Cache::remember('available-spt-versions', 60 * 60, function () { $this->activeSptVersions = $this->activeSptVersions ?? Cache::remember('active-spt-versions', 60 * 60, function () {
return SptVersion::getVersionsForLastThreeMinors(); return SptVersion::getVersionsForLastThreeMinors();
}); });
@ -67,7 +67,7 @@ class Index extends Component
*/ */
public function getLatestMinorVersions(): Collection public function getLatestMinorVersions(): Collection
{ {
return $this->availableSptVersions->filter(function (SptVersion $sptVersion) { return $this->activeSptVersions->filter(function (SptVersion $sptVersion) {
return $sptVersion->isLatestMinor(); return $sptVersion->isLatestMinor();
}); });
} }

View File

@ -14,6 +14,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsToMany;
use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Database\Eloquent\Relations\HasMany;
use Illuminate\Database\Eloquent\Relations\HasOne; use Illuminate\Database\Eloquent\Relations\HasOne;
use Illuminate\Database\Eloquent\SoftDeletes; use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\Storage; use Illuminate\Support\Facades\Storage;
use Illuminate\Support\Str; use Illuminate\Support\Str;
use Laravel\Scout\Searchable; use Laravel\Scout\Searchable;
@ -144,6 +145,14 @@ class Mod extends Model
return false; return false;
} }
// Ensure the latest SPT version is within the last three minor versions.
$activeSptVersions = Cache::remember('active-spt-versions', 60 * 60, function () {
return SptVersion::getVersionsForLastThreeMinors();
});
if (! in_array($latestVersion->latestSptVersion()->first()->version, $activeSptVersions->pluck('version')->toArray())) {
return false;
}
// All conditions are met; the mod should be searchable. // All conditions are met; the mod should be searchable.
return true; return true;
} }

View File

@ -36,7 +36,6 @@
"mockery/mockery": "^1.6", "mockery/mockery": "^1.6",
"nunomaduro/collision": "^8.1", "nunomaduro/collision": "^8.1",
"pestphp/pest": "^2.34", "pestphp/pest": "^2.34",
"pestphp/pest-plugin-stressless": "^2.2",
"spatie/laravel-ignition": "^2.8" "spatie/laravel-ignition": "^2.8"
}, },
"autoload": { "autoload": {

300
composer.lock generated
View File

@ -4,20 +4,20 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"content-hash": "920d8caa63c8b0da280a78c05d5983a8", "content-hash": "aef706ee9aa7b671ca81c5ced4a7bfb7",
"packages": [ "packages": [
{ {
"name": "anourvalar/eloquent-serialize", "name": "anourvalar/eloquent-serialize",
"version": "1.2.23", "version": "1.2.24",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/AnourValar/eloquent-serialize.git", "url": "https://github.com/AnourValar/eloquent-serialize.git",
"reference": "fd7bc1dc2c98fe705647ab4b81d13ea3d599ea1f" "reference": "77e3fc7da44fa96b6148a1613dd76fe954a5f279"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/AnourValar/eloquent-serialize/zipball/fd7bc1dc2c98fe705647ab4b81d13ea3d599ea1f", "url": "https://api.github.com/repos/AnourValar/eloquent-serialize/zipball/77e3fc7da44fa96b6148a1613dd76fe954a5f279",
"reference": "fd7bc1dc2c98fe705647ab4b81d13ea3d599ea1f", "reference": "77e3fc7da44fa96b6148a1613dd76fe954a5f279",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -68,9 +68,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/AnourValar/eloquent-serialize/issues", "issues": "https://github.com/AnourValar/eloquent-serialize/issues",
"source": "https://github.com/AnourValar/eloquent-serialize/tree/1.2.23" "source": "https://github.com/AnourValar/eloquent-serialize/tree/1.2.24"
}, },
"time": "2024-07-12T10:52:26+00:00" "time": "2024-09-08T15:57:08+00:00"
}, },
{ {
"name": "aws/aws-crt-php", "name": "aws/aws-crt-php",
@ -128,16 +128,16 @@
}, },
{ {
"name": "aws/aws-sdk-php", "name": "aws/aws-sdk-php",
"version": "3.321.2", "version": "3.321.6",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/aws/aws-sdk-php.git", "url": "https://github.com/aws/aws-sdk-php.git",
"reference": "c04f8f30891cee8480c132778cd4cc486467e77a" "reference": "3dc53a79677dd1f0e682dfc05f9815901ec7bf58"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/c04f8f30891cee8480c132778cd4cc486467e77a", "url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/3dc53a79677dd1f0e682dfc05f9815901ec7bf58",
"reference": "c04f8f30891cee8480c132778cd4cc486467e77a", "reference": "3dc53a79677dd1f0e682dfc05f9815901ec7bf58",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -220,9 +220,9 @@
"support": { "support": {
"forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80", "forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
"issues": "https://github.com/aws/aws-sdk-php/issues", "issues": "https://github.com/aws/aws-sdk-php/issues",
"source": "https://github.com/aws/aws-sdk-php/tree/3.321.2" "source": "https://github.com/aws/aws-sdk-php/tree/3.321.6"
}, },
"time": "2024-08-30T18:14:40+00:00" "time": "2024-09-06T18:06:38+00:00"
}, },
{ {
"name": "bacon/bacon-qr-code", "name": "bacon/bacon-qr-code",
@ -870,16 +870,16 @@
}, },
{ {
"name": "doctrine/dbal", "name": "doctrine/dbal",
"version": "4.1.0", "version": "4.1.1",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/doctrine/dbal.git", "url": "https://github.com/doctrine/dbal.git",
"reference": "2377cd41609aa51bee822c8d207317a3f363a558" "reference": "7a8252418689feb860ea8dfeab66d64a56a64df8"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/doctrine/dbal/zipball/2377cd41609aa51bee822c8d207317a3f363a558", "url": "https://api.github.com/repos/doctrine/dbal/zipball/7a8252418689feb860ea8dfeab66d64a56a64df8",
"reference": "2377cd41609aa51bee822c8d207317a3f363a558", "reference": "7a8252418689feb860ea8dfeab66d64a56a64df8",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -892,16 +892,16 @@
"doctrine/coding-standard": "12.0.0", "doctrine/coding-standard": "12.0.0",
"fig/log-test": "^1", "fig/log-test": "^1",
"jetbrains/phpstorm-stubs": "2023.2", "jetbrains/phpstorm-stubs": "2023.2",
"phpstan/phpstan": "1.11.7", "phpstan/phpstan": "1.12.0",
"phpstan/phpstan-phpunit": "1.4.0", "phpstan/phpstan-phpunit": "1.4.0",
"phpstan/phpstan-strict-rules": "^1.6", "phpstan/phpstan-strict-rules": "^1.6",
"phpunit/phpunit": "10.5.28", "phpunit/phpunit": "10.5.30",
"psalm/plugin-phpunit": "0.19.0", "psalm/plugin-phpunit": "0.19.0",
"slevomat/coding-standard": "8.13.1", "slevomat/coding-standard": "8.13.1",
"squizlabs/php_codesniffer": "3.10.2", "squizlabs/php_codesniffer": "3.10.2",
"symfony/cache": "^6.3.8|^7.0", "symfony/cache": "^6.3.8|^7.0",
"symfony/console": "^5.4|^6.3|^7.0", "symfony/console": "^5.4|^6.3|^7.0",
"vimeo/psalm": "5.24.0" "vimeo/psalm": "5.25.0"
}, },
"suggest": { "suggest": {
"symfony/console": "For helpful console commands such as SQL execution and import of files." "symfony/console": "For helpful console commands such as SQL execution and import of files."
@ -958,7 +958,7 @@
], ],
"support": { "support": {
"issues": "https://github.com/doctrine/dbal/issues", "issues": "https://github.com/doctrine/dbal/issues",
"source": "https://github.com/doctrine/dbal/tree/4.1.0" "source": "https://github.com/doctrine/dbal/tree/4.1.1"
}, },
"funding": [ "funding": [
{ {
@ -974,7 +974,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2024-08-15T07:37:07+00:00" "time": "2024-09-03T08:58:39+00:00"
}, },
{ {
"name": "doctrine/deprecations", "name": "doctrine/deprecations",
@ -2618,16 +2618,16 @@
}, },
{ {
"name": "laravel/fortify", "name": "laravel/fortify",
"version": "v1.24.0", "version": "v1.24.1",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/laravel/fortify.git", "url": "https://github.com/laravel/fortify.git",
"reference": "fbe67f018c1fe26d00913de56a6d60589b4be9b2" "reference": "8158ba0960bb5f4aae509d01d74a95e16e30de20"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/laravel/fortify/zipball/fbe67f018c1fe26d00913de56a6d60589b4be9b2", "url": "https://api.github.com/repos/laravel/fortify/zipball/8158ba0960bb5f4aae509d01d74a95e16e30de20",
"reference": "fbe67f018c1fe26d00913de56a6d60589b4be9b2", "reference": "8158ba0960bb5f4aae509d01d74a95e16e30de20",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2679,20 +2679,20 @@
"issues": "https://github.com/laravel/fortify/issues", "issues": "https://github.com/laravel/fortify/issues",
"source": "https://github.com/laravel/fortify" "source": "https://github.com/laravel/fortify"
}, },
"time": "2024-08-20T14:43:56+00:00" "time": "2024-09-03T10:02:14+00:00"
}, },
{ {
"name": "laravel/framework", "name": "laravel/framework",
"version": "v11.21.0", "version": "v11.22.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/laravel/framework.git", "url": "https://github.com/laravel/framework.git",
"reference": "9d9d36708d56665b12185493f684abce38ad2d30" "reference": "868c75beacc47d0f361b919bbc155c0b619bf3d5"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/laravel/framework/zipball/9d9d36708d56665b12185493f684abce38ad2d30", "url": "https://api.github.com/repos/laravel/framework/zipball/868c75beacc47d0f361b919bbc155c0b619bf3d5",
"reference": "9d9d36708d56665b12185493f684abce38ad2d30", "reference": "868c75beacc47d0f361b919bbc155c0b619bf3d5",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2885,20 +2885,20 @@
"issues": "https://github.com/laravel/framework/issues", "issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework" "source": "https://github.com/laravel/framework"
}, },
"time": "2024-08-20T15:00:52+00:00" "time": "2024-09-03T15:27:15+00:00"
}, },
{ {
"name": "laravel/horizon", "name": "laravel/horizon",
"version": "v5.27.1", "version": "v5.28.1",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/laravel/horizon.git", "url": "https://github.com/laravel/horizon.git",
"reference": "184449be3eb296ab16c13a69ce22049f32d0fc2c" "reference": "9d2c4eaeb11408384401f8a7d1b0ea4c76554f3f"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/laravel/horizon/zipball/184449be3eb296ab16c13a69ce22049f32d0fc2c", "url": "https://api.github.com/repos/laravel/horizon/zipball/9d2c4eaeb11408384401f8a7d1b0ea4c76554f3f",
"reference": "184449be3eb296ab16c13a69ce22049f32d0fc2c", "reference": "9d2c4eaeb11408384401f8a7d1b0ea4c76554f3f",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -2962,9 +2962,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/laravel/horizon/issues", "issues": "https://github.com/laravel/horizon/issues",
"source": "https://github.com/laravel/horizon/tree/v5.27.1" "source": "https://github.com/laravel/horizon/tree/v5.28.1"
}, },
"time": "2024-08-05T14:23:30+00:00" "time": "2024-09-04T14:06:50+00:00"
}, },
{ {
"name": "laravel/jetstream", "name": "laravel/jetstream",
@ -3183,20 +3183,20 @@
}, },
{ {
"name": "laravel/pulse", "name": "laravel/pulse",
"version": "v1.2.4", "version": "v1.2.5",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/laravel/pulse.git", "url": "https://github.com/laravel/pulse.git",
"reference": "2e7699a602e13bada4c64e3bc7c148ddcaec81bc" "reference": "0c0c91fd05acc537f6324b271709670ffc201e59"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/laravel/pulse/zipball/2e7699a602e13bada4c64e3bc7c148ddcaec81bc", "url": "https://api.github.com/repos/laravel/pulse/zipball/0c0c91fd05acc537f6324b271709670ffc201e59",
"reference": "2e7699a602e13bada4c64e3bc7c148ddcaec81bc", "reference": "0c0c91fd05acc537f6324b271709670ffc201e59",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"doctrine/sql-formatter": "^1.2", "doctrine/sql-formatter": "^1.4.1",
"guzzlehttp/promises": "^1.0|^2.0", "guzzlehttp/promises": "^1.0|^2.0",
"illuminate/auth": "^10.48.4|^11.0.8", "illuminate/auth": "^10.48.4|^11.0.8",
"illuminate/cache": "^10.48.4|^11.0.8", "illuminate/cache": "^10.48.4|^11.0.8",
@ -3266,7 +3266,7 @@
"issues": "https://github.com/laravel/pulse/issues", "issues": "https://github.com/laravel/pulse/issues",
"source": "https://github.com/laravel/pulse" "source": "https://github.com/laravel/pulse"
}, },
"time": "2024-07-08T15:09:50+00:00" "time": "2024-09-03T09:21:52+00:00"
}, },
{ {
"name": "laravel/sanctum", "name": "laravel/sanctum",
@ -3334,16 +3334,16 @@
}, },
{ {
"name": "laravel/scout", "name": "laravel/scout",
"version": "v10.11.1", "version": "v10.11.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/laravel/scout.git", "url": "https://github.com/laravel/scout.git",
"reference": "b31056d49ae0540a475947391d7ea8617d779aee" "reference": "74f007d0f5b78f589014899094f7ddb4855b771d"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/laravel/scout/zipball/b31056d49ae0540a475947391d7ea8617d779aee", "url": "https://api.github.com/repos/laravel/scout/zipball/74f007d0f5b78f589014899094f7ddb4855b771d",
"reference": "b31056d49ae0540a475947391d7ea8617d779aee", "reference": "74f007d0f5b78f589014899094f7ddb4855b771d",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -3408,7 +3408,7 @@
"issues": "https://github.com/laravel/scout/issues", "issues": "https://github.com/laravel/scout/issues",
"source": "https://github.com/laravel/scout" "source": "https://github.com/laravel/scout"
}, },
"time": "2024-08-06T15:13:57+00:00" "time": "2024-09-03T15:30:25+00:00"
}, },
{ {
"name": "laravel/serializable-closure", "name": "laravel/serializable-closure",
@ -4764,16 +4764,16 @@
}, },
{ {
"name": "mtdowling/jmespath.php", "name": "mtdowling/jmespath.php",
"version": "2.7.0", "version": "2.8.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/jmespath/jmespath.php.git", "url": "https://github.com/jmespath/jmespath.php.git",
"reference": "bbb69a935c2cbb0c03d7f481a238027430f6440b" "reference": "a2a865e05d5f420b50cc2f85bb78d565db12a6bc"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/bbb69a935c2cbb0c03d7f481a238027430f6440b", "url": "https://api.github.com/repos/jmespath/jmespath.php/zipball/a2a865e05d5f420b50cc2f85bb78d565db12a6bc",
"reference": "bbb69a935c2cbb0c03d7f481a238027430f6440b", "reference": "a2a865e05d5f420b50cc2f85bb78d565db12a6bc",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -4790,7 +4790,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-master": "2.7-dev" "dev-master": "2.8-dev"
} }
}, },
"autoload": { "autoload": {
@ -4824,9 +4824,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/jmespath/jmespath.php/issues", "issues": "https://github.com/jmespath/jmespath.php/issues",
"source": "https://github.com/jmespath/jmespath.php/tree/2.7.0" "source": "https://github.com/jmespath/jmespath.php/tree/2.8.0"
}, },
"time": "2023-08-25T10:54:48+00:00" "time": "2024-09-04T18:46:31+00:00"
}, },
{ {
"name": "nesbot/carbon", "name": "nesbot/carbon",
@ -5142,16 +5142,16 @@
}, },
{ {
"name": "nunomaduro/termwind", "name": "nunomaduro/termwind",
"version": "v2.0.1", "version": "v2.1.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/nunomaduro/termwind.git", "url": "https://github.com/nunomaduro/termwind.git",
"reference": "58c4c58cf23df7f498daeb97092e34f5259feb6a" "reference": "e5f21eade88689536c0cdad4c3cd75f3ed26e01a"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/nunomaduro/termwind/zipball/58c4c58cf23df7f498daeb97092e34f5259feb6a", "url": "https://api.github.com/repos/nunomaduro/termwind/zipball/e5f21eade88689536c0cdad4c3cd75f3ed26e01a",
"reference": "58c4c58cf23df7f498daeb97092e34f5259feb6a", "reference": "e5f21eade88689536c0cdad4c3cd75f3ed26e01a",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -5161,11 +5161,11 @@
}, },
"require-dev": { "require-dev": {
"ergebnis/phpstan-rules": "^2.2.0", "ergebnis/phpstan-rules": "^2.2.0",
"illuminate/console": "^11.0.0", "illuminate/console": "^11.1.1",
"laravel/pint": "^1.14.0", "laravel/pint": "^1.15.0",
"mockery/mockery": "^1.6.7", "mockery/mockery": "^1.6.11",
"pestphp/pest": "^2.34.1", "pestphp/pest": "^2.34.6",
"phpstan/phpstan": "^1.10.59", "phpstan/phpstan": "^1.10.66",
"phpstan/phpstan-strict-rules": "^1.5.2", "phpstan/phpstan-strict-rules": "^1.5.2",
"symfony/var-dumper": "^7.0.4", "symfony/var-dumper": "^7.0.4",
"thecodingmachine/phpstan-strict-rules": "^1.0.0" "thecodingmachine/phpstan-strict-rules": "^1.0.0"
@ -5210,7 +5210,7 @@
], ],
"support": { "support": {
"issues": "https://github.com/nunomaduro/termwind/issues", "issues": "https://github.com/nunomaduro/termwind/issues",
"source": "https://github.com/nunomaduro/termwind/tree/v2.0.1" "source": "https://github.com/nunomaduro/termwind/tree/v2.1.0"
}, },
"funding": [ "funding": [
{ {
@ -5226,7 +5226,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2024-03-06T16:17:14+00:00" "time": "2024-09-05T15:25:50+00:00"
}, },
{ {
"name": "openspout/openspout", "name": "openspout/openspout",
@ -5323,24 +5323,24 @@
}, },
{ {
"name": "paragonie/constant_time_encoding", "name": "paragonie/constant_time_encoding",
"version": "v2.7.0", "version": "v3.0.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/paragonie/constant_time_encoding.git", "url": "https://github.com/paragonie/constant_time_encoding.git",
"reference": "52a0d99e69f56b9ec27ace92ba56897fe6993105" "reference": "df1e7fde177501eee2037dd159cf04f5f301a512"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/52a0d99e69f56b9ec27ace92ba56897fe6993105", "url": "https://api.github.com/repos/paragonie/constant_time_encoding/zipball/df1e7fde177501eee2037dd159cf04f5f301a512",
"reference": "52a0d99e69f56b9ec27ace92ba56897fe6993105", "reference": "df1e7fde177501eee2037dd159cf04f5f301a512",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": "^7|^8" "php": "^8"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "^6|^7|^8|^9", "phpunit/phpunit": "^9",
"vimeo/psalm": "^1|^2|^3|^4" "vimeo/psalm": "^4|^5"
}, },
"type": "library", "type": "library",
"autoload": { "autoload": {
@ -5386,7 +5386,7 @@
"issues": "https://github.com/paragonie/constant_time_encoding/issues", "issues": "https://github.com/paragonie/constant_time_encoding/issues",
"source": "https://github.com/paragonie/constant_time_encoding" "source": "https://github.com/paragonie/constant_time_encoding"
}, },
"time": "2024-05-08T12:18:48+00:00" "time": "2024-05-08T12:36:18+00:00"
}, },
{ {
"name": "php-http/discovery", "name": "php-http/discovery",
@ -5544,24 +5544,24 @@
}, },
{ {
"name": "pragmarx/google2fa", "name": "pragmarx/google2fa",
"version": "v8.0.1", "version": "v8.0.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/antonioribeiro/google2fa.git", "url": "https://github.com/antonioribeiro/google2fa.git",
"reference": "80c3d801b31fe165f8fe99ea085e0a37834e1be3" "reference": "6f8d87ebd5afbf7790bde1ffc7579c7c705e0fad"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/antonioribeiro/google2fa/zipball/80c3d801b31fe165f8fe99ea085e0a37834e1be3", "url": "https://api.github.com/repos/antonioribeiro/google2fa/zipball/6f8d87ebd5afbf7790bde1ffc7579c7c705e0fad",
"reference": "80c3d801b31fe165f8fe99ea085e0a37834e1be3", "reference": "6f8d87ebd5afbf7790bde1ffc7579c7c705e0fad",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"paragonie/constant_time_encoding": "^1.0|^2.0", "paragonie/constant_time_encoding": "^1.0|^2.0|^3.0",
"php": "^7.1|^8.0" "php": "^7.1|^8.0"
}, },
"require-dev": { "require-dev": {
"phpstan/phpstan": "^0.12.18", "phpstan/phpstan": "^1.9",
"phpunit/phpunit": "^7.5.15|^8.5|^9.0" "phpunit/phpunit": "^7.5.15|^8.5|^9.0"
}, },
"type": "library", "type": "library",
@ -5590,9 +5590,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/antonioribeiro/google2fa/issues", "issues": "https://github.com/antonioribeiro/google2fa/issues",
"source": "https://github.com/antonioribeiro/google2fa/tree/v8.0.1" "source": "https://github.com/antonioribeiro/google2fa/tree/v8.0.3"
}, },
"time": "2022-06-13T21:57:56+00:00" "time": "2024-09-05T11:56:40+00:00"
}, },
{ {
"name": "psr/cache", "name": "psr/cache",
@ -9991,16 +9991,16 @@
}, },
{ {
"name": "laravel/pint", "name": "laravel/pint",
"version": "v1.17.2", "version": "v1.17.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/laravel/pint.git", "url": "https://github.com/laravel/pint.git",
"reference": "e8a88130a25e3f9d4d5785e6a1afca98268ab110" "reference": "9d77be916e145864f10788bb94531d03e1f7b482"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/laravel/pint/zipball/e8a88130a25e3f9d4d5785e6a1afca98268ab110", "url": "https://api.github.com/repos/laravel/pint/zipball/9d77be916e145864f10788bb94531d03e1f7b482",
"reference": "e8a88130a25e3f9d4d5785e6a1afca98268ab110", "reference": "9d77be916e145864f10788bb94531d03e1f7b482",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -10011,13 +10011,13 @@
"php": "^8.1.0" "php": "^8.1.0"
}, },
"require-dev": { "require-dev": {
"friendsofphp/php-cs-fixer": "^3.61.1", "friendsofphp/php-cs-fixer": "^3.64.0",
"illuminate/view": "^10.48.18", "illuminate/view": "^10.48.20",
"larastan/larastan": "^2.9.8", "larastan/larastan": "^2.9.8",
"laravel-zero/framework": "^10.4.0", "laravel-zero/framework": "^10.4.0",
"mockery/mockery": "^1.6.12", "mockery/mockery": "^1.6.12",
"nunomaduro/termwind": "^1.15.1", "nunomaduro/termwind": "^1.15.1",
"pestphp/pest": "^2.35.0" "pestphp/pest": "^2.35.1"
}, },
"bin": [ "bin": [
"builds/pint" "builds/pint"
@ -10053,20 +10053,20 @@
"issues": "https://github.com/laravel/pint/issues", "issues": "https://github.com/laravel/pint/issues",
"source": "https://github.com/laravel/pint" "source": "https://github.com/laravel/pint"
}, },
"time": "2024-08-06T15:11:54+00:00" "time": "2024-09-03T15:00:28+00:00"
}, },
{ {
"name": "laravel/sail", "name": "laravel/sail",
"version": "v1.31.1", "version": "v1.31.3",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/laravel/sail.git", "url": "https://github.com/laravel/sail.git",
"reference": "3d06dd18cee8059baa7b388af00ba47f6d96bd85" "reference": "0a7e2891a85eba2d448a9ffc6fc5ce367e924bc1"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/laravel/sail/zipball/3d06dd18cee8059baa7b388af00ba47f6d96bd85", "url": "https://api.github.com/repos/laravel/sail/zipball/0a7e2891a85eba2d448a9ffc6fc5ce367e924bc1",
"reference": "3d06dd18cee8059baa7b388af00ba47f6d96bd85", "reference": "0a7e2891a85eba2d448a9ffc6fc5ce367e924bc1",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -10116,20 +10116,20 @@
"issues": "https://github.com/laravel/sail/issues", "issues": "https://github.com/laravel/sail/issues",
"source": "https://github.com/laravel/sail" "source": "https://github.com/laravel/sail"
}, },
"time": "2024-08-02T07:45:47+00:00" "time": "2024-09-03T20:05:33+00:00"
}, },
{ {
"name": "maximebf/debugbar", "name": "maximebf/debugbar",
"version": "v1.22.3", "version": "v1.22.4",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/maximebf/php-debugbar.git", "url": "https://github.com/maximebf/php-debugbar.git",
"reference": "7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96" "reference": "ec4979077ff5ddf987eb2457055ee343f466c250"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96", "url": "https://api.github.com/repos/maximebf/php-debugbar/zipball/ec4979077ff5ddf987eb2457055ee343f466c250",
"reference": "7aa9a27a0b1158ed5ad4e7175e8d3aee9a818b96", "reference": "ec4979077ff5ddf987eb2457055ee343f466c250",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -10182,9 +10182,9 @@
], ],
"support": { "support": {
"issues": "https://github.com/maximebf/php-debugbar/issues", "issues": "https://github.com/maximebf/php-debugbar/issues",
"source": "https://github.com/maximebf/php-debugbar/tree/v1.22.3" "source": "https://github.com/maximebf/php-debugbar/tree/v1.22.4"
}, },
"time": "2024-04-03T19:39:26+00:00" "time": "2024-09-06T17:37:59+00:00"
}, },
{ {
"name": "mockery/mockery", "name": "mockery/mockery",
@ -10675,80 +10675,6 @@
], ],
"time": "2024-01-26T09:46:42+00:00" "time": "2024-01-26T09:46:42+00:00"
}, },
{
"name": "pestphp/pest-plugin-stressless",
"version": "v2.2.0",
"source": {
"type": "git",
"url": "https://github.com/pestphp/pest-plugin-stressless.git",
"reference": "7494c7d9fab9649a0f85f9f04a179f20f1405501"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/pestphp/pest-plugin-stressless/zipball/7494c7d9fab9649a0f85f9f04a179f20f1405501",
"reference": "7494c7d9fab9649a0f85f9f04a179f20f1405501",
"shasum": ""
},
"require": {
"ext-curl": "*",
"ext-zip": "*",
"pestphp/pest": "^2.28",
"pestphp/pest-plugin": "^2.1.1",
"php": "^8.2"
},
"require-dev": {
"pestphp/pest-dev-tools": "^2.16"
},
"type": "library",
"extra": {
"pest": {
"plugins": [
"Pest\\Stressless\\Plugin"
]
}
},
"autoload": {
"files": [
"src/Autoload.php"
],
"psr-4": {
"Pest\\Stressless\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"description": "Stressless plugin for Pest",
"keywords": [
"framework",
"pest",
"php",
"plugin",
"test",
"testing",
"unit"
],
"support": {
"issues": "https://github.com/pestphp/pest-plugin-stressless/issues",
"source": "https://github.com/pestphp/pest-plugin-stressless/tree/v2.2.0"
},
"funding": [
{
"url": "https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=66BYDWAT92N6L",
"type": "custom"
},
{
"url": "https://github.com/nunomaduro",
"type": "github"
},
{
"url": "https://www.patreon.com/nunomaduro",
"type": "patreon"
}
],
"time": "2023-12-06T14:33:21+00:00"
},
{ {
"name": "phar-io/manifest", "name": "phar-io/manifest",
"version": "2.0.4", "version": "2.0.4",
@ -11131,16 +11057,16 @@
}, },
{ {
"name": "phpstan/phpdoc-parser", "name": "phpstan/phpdoc-parser",
"version": "1.30.0", "version": "1.30.1",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/phpstan/phpdoc-parser.git", "url": "https://github.com/phpstan/phpdoc-parser.git",
"reference": "5ceb0e384997db59f38774bf79c2a6134252c08f" "reference": "51b95ec8670af41009e2b2b56873bad96682413e"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/5ceb0e384997db59f38774bf79c2a6134252c08f", "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/51b95ec8670af41009e2b2b56873bad96682413e",
"reference": "5ceb0e384997db59f38774bf79c2a6134252c08f", "reference": "51b95ec8670af41009e2b2b56873bad96682413e",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -11172,22 +11098,22 @@
"description": "PHPDoc parser with support for nullable, intersection and generic types", "description": "PHPDoc parser with support for nullable, intersection and generic types",
"support": { "support": {
"issues": "https://github.com/phpstan/phpdoc-parser/issues", "issues": "https://github.com/phpstan/phpdoc-parser/issues",
"source": "https://github.com/phpstan/phpdoc-parser/tree/1.30.0" "source": "https://github.com/phpstan/phpdoc-parser/tree/1.30.1"
}, },
"time": "2024-08-29T09:54:52+00:00" "time": "2024-09-07T20:13:05+00:00"
}, },
{ {
"name": "phpstan/phpstan", "name": "phpstan/phpstan",
"version": "1.12.0", "version": "1.12.2",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/phpstan/phpstan.git", "url": "https://github.com/phpstan/phpstan.git",
"reference": "384af967d35b2162f69526c7276acadce534d0e1" "reference": "0ca1c7bb55fca8fe6448f16fff0f311ccec960a1"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/phpstan/phpstan/zipball/384af967d35b2162f69526c7276acadce534d0e1", "url": "https://api.github.com/repos/phpstan/phpstan/zipball/0ca1c7bb55fca8fe6448f16fff0f311ccec960a1",
"reference": "384af967d35b2162f69526c7276acadce534d0e1", "reference": "0ca1c7bb55fca8fe6448f16fff0f311ccec960a1",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@ -11232,7 +11158,7 @@
"type": "github" "type": "github"
} }
], ],
"time": "2024-08-27T09:18:05+00:00" "time": "2024-09-05T16:09:28+00:00"
}, },
{ {
"name": "phpunit/php-code-coverage", "name": "phpunit/php-code-coverage",

64
package-lock.json generated
View File

@ -1,5 +1,5 @@
{ {
"name": "html", "name": "forge",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
@ -780,9 +780,9 @@
] ]
}, },
"node_modules/@tailwindcss/forms": { "node_modules/@tailwindcss/forms": {
"version": "0.5.8", "version": "0.5.9",
"resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.8.tgz", "resolved": "https://registry.npmjs.org/@tailwindcss/forms/-/forms-0.5.9.tgz",
"integrity": "sha512-DJs7B7NPD0JH7BVvdHWNviWmunlFhuEkz7FyFxE4japOWYMLl9b1D6+Z9mivJJPWr6AEbmlPqgiFRyLwFB1SgQ==", "integrity": "sha512-tM4XVr2+UVTxXJzey9Twx48c1gcxFStqn1pQz0tRsX8o3DvxhN5oY5pvyAbUx7VTaZxpej4Zzvc6h+1RJBzpIg==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
@ -915,9 +915,9 @@
} }
}, },
"node_modules/axios": { "node_modules/axios": {
"version": "1.7.6", "version": "1.7.7",
"resolved": "https://registry.npmjs.org/axios/-/axios-1.7.6.tgz", "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz",
"integrity": "sha512-Ekur6XDwhnJ5RgOCaxFnXyqlPALI3rVeukZMwOdfghW7/wGz784BYKiQq+QD8NPcr91KRo30KfHOchyijwWw7g==", "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
@ -1013,9 +1013,9 @@
} }
}, },
"node_modules/caniuse-lite": { "node_modules/caniuse-lite": {
"version": "1.0.30001655", "version": "1.0.30001658",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001655.tgz", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001658.tgz",
"integrity": "sha512-jRGVy3iSGO5Uutn2owlb5gR6qsGngTw9ZTb4ali9f3glshcNmJ2noam4Mo9zia5P9Dk3jNNydy7vQjuE5dQmfg==", "integrity": "sha512-N2YVqWbJELVdrnsW5p+apoQyYt51aBMSsBZki1XZEfeBCexcM/sf4xiAHcXQBkuOwJBXtWF7aW1sYX6tKebPHw==",
"dev": true, "dev": true,
"funding": [ "funding": [
{ {
@ -1161,9 +1161,9 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/electron-to-chromium": { "node_modules/electron-to-chromium": {
"version": "1.5.13", "version": "1.5.18",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.13.tgz", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.18.tgz",
"integrity": "sha512-lbBcvtIJ4J6sS4tb5TLp1b4LyfCdMkwStzXPyAgVgTRAsep4bvrAGaBOP7ZJtQMNJpSQ9SqG4brWOroNaQtm7Q==", "integrity": "sha512-1OfuVACu+zKlmjsNdcJuVQuVE61sZOLbNM4JAQ1Rvh6EOj0/EUKhMJjRH73InPlXSh8HIJk1cVZ8pyOV/FMdUQ==",
"dev": true, "dev": true,
"license": "ISC" "license": "ISC"
}, },
@ -1273,9 +1273,9 @@
} }
}, },
"node_modules/follow-redirects": { "node_modules/follow-redirects": {
"version": "1.15.6", "version": "1.15.9",
"resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.6.tgz", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz",
"integrity": "sha512-wWN62YITEaOpSK584EZXJafH1AGpO8RVgElfkuXbTOrPX4fIfOyEpW/CsiNd8JdYrAoOvafRTOEnvsO++qCqFA==", "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==",
"dev": true, "dev": true,
"funding": [ "funding": [
{ {
@ -1784,9 +1784,9 @@
} }
}, },
"node_modules/picocolors": { "node_modules/picocolors": {
"version": "1.0.1", "version": "1.1.0",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz",
"integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==",
"dev": true, "dev": true,
"license": "ISC" "license": "ISC"
}, },
@ -1824,9 +1824,9 @@
} }
}, },
"node_modules/postcss": { "node_modules/postcss": {
"version": "8.4.41", "version": "8.4.45",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.45.tgz",
"integrity": "sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ==", "integrity": "sha512-7KTLTdzdZZYscUc65XmjFiB73vBhBfbPztCYdUNvlaso9PrzjzcmjqBPR0lNGkcVlcO4BjiO5rK/qNz+XAen1Q==",
"dev": true, "dev": true,
"funding": [ "funding": [
{ {
@ -2272,9 +2272,9 @@
} }
}, },
"node_modules/source-map-js": { "node_modules/source-map-js": {
"version": "1.2.0", "version": "1.2.1",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
"dev": true, "dev": true,
"license": "BSD-3-Clause", "license": "BSD-3-Clause",
"engines": { "engines": {
@ -2574,14 +2574,14 @@
"license": "MIT" "license": "MIT"
}, },
"node_modules/vite": { "node_modules/vite": {
"version": "5.4.2", "version": "5.4.3",
"resolved": "https://registry.npmjs.org/vite/-/vite-5.4.2.tgz", "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.3.tgz",
"integrity": "sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA==", "integrity": "sha512-IH+nl64eq9lJjFqU+/yrRnrHPVTlgy42/+IzbOdaFDVlyLgI/wDlf+FCobXLX1cT0X5+7LMyH1mIy2xJdLfo8Q==",
"dev": true, "dev": true,
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"esbuild": "^0.21.3", "esbuild": "^0.21.3",
"postcss": "^8.4.41", "postcss": "^8.4.43",
"rollup": "^4.20.0" "rollup": "^4.20.0"
}, },
"bin": { "bin": {
@ -2759,9 +2759,9 @@
} }
}, },
"node_modules/yaml": { "node_modules/yaml": {
"version": "2.5.0", "version": "2.5.1",
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz", "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz",
"integrity": "sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw==", "integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==",
"dev": true, "dev": true,
"license": "ISC", "license": "ISC",
"bin": { "bin": {

View File

@ -53,13 +53,13 @@
<div class="mx-auto grid max-w-7xl grid-cols-2 gap-x-4 px-4 text-sm sm:px-6 md:gap-x-6 lg:px-8"> <div class="mx-auto grid max-w-7xl grid-cols-2 gap-x-4 px-4 text-sm sm:px-6 md:gap-x-6 lg:px-8">
<div class="grid auto-rows-min grid-cols-1 gap-y-10 md:grid-cols-2 md:gap-x-6"> <div class="grid auto-rows-min grid-cols-1 gap-y-10 md:grid-cols-2 md:gap-x-6">
@php @php
$totalVersions = count($availableSptVersions); $totalVersions = count($activeSptVersions);
$half = ceil($totalVersions / 2); $half = ceil($totalVersions / 2);
@endphp @endphp
<fieldset> <fieldset>
<legend class="block font-medium text-gray-900 dark:text-gray-100">{{ __('SPT Versions') }}</legend> <legend class="block font-medium text-gray-900 dark:text-gray-100">{{ __('SPT Versions') }}</legend>
<div class="space-y-6 pt-6 sm:space-y-4 sm:pt-4"> <div class="space-y-6 pt-6 sm:space-y-4 sm:pt-4">
@foreach ($availableSptVersions as $index => $version) @foreach ($activeSptVersions as $index => $version)
@if ($index < $half) @if ($index < $half)
<x-filter-checkbox id="sptVersions-{{ $index }}" name="sptVersions" value="{{ $version->version }}">{{ $version->version }}</x-filter-checkbox> <x-filter-checkbox id="sptVersions-{{ $index }}" name="sptVersions" value="{{ $version->version }}">{{ $version->version }}</x-filter-checkbox>
@endif @endif
@ -69,7 +69,7 @@
<fieldset> <fieldset>
<legend class="block font-medium text-gray-900 dark:text-gray-100">&nbsp;</legend> <legend class="block font-medium text-gray-900 dark:text-gray-100">&nbsp;</legend>
<div class="space-y-6 pt-6 sm:space-y-4 sm:pt-4"> <div class="space-y-6 pt-6 sm:space-y-4 sm:pt-4">
@foreach ($availableSptVersions as $index => $version) @foreach ($activeSptVersions as $index => $version)
@if ($index >= $half) @if ($index >= $half)
<x-filter-checkbox id="sptVersions-{{ $index }}" name="sptVersions" value="{{ $version->version }}">{{ $version->version }}</x-filter-checkbox> <x-filter-checkbox id="sptVersions-{{ $index }}" name="sptVersions" value="{{ $version->version }}">{{ $version->version }}</x-filter-checkbox>
@endif @endif