diff --git a/app-modules/activity/src/Timeline/Http/Controllers/Mobile/MobileTimelineController.php b/app-modules/activity/src/Timeline/Http/Controllers/Mobile/MobileTimelineController.php index 14e0ed514..06a34fa7b 100644 --- a/app-modules/activity/src/Timeline/Http/Controllers/Mobile/MobileTimelineController.php +++ b/app-modules/activity/src/Timeline/Http/Controllers/Mobile/MobileTimelineController.php @@ -32,7 +32,7 @@ public function index(): AnonymousResourceCollection { $posts = Timeline::query() ->feed() - ->with(['user', 'postable.media']) + ->with(['user.media', 'user.providers', 'postable.media']) ->withCount(['children', 'reactions']) ->simplePaginate(20); @@ -127,7 +127,7 @@ static function (UploadedFile $image): string { private function postResponse(Timeline $post, int $status): JsonResponse { // create() não preenche defaults de banco (pinned, is_ignored, views) no model em memória. - $post->refresh()->load(['user', 'postable.media'])->loadCount(['children', 'reactions']); + $post->refresh()->load(['user.media', 'user.providers', 'postable.media'])->loadCount(['children', 'reactions']); return new TimelinePostResource($post) ->response() diff --git a/app-modules/identity/src/ExternalIdentity/Enums/IdentityProvider.php b/app-modules/identity/src/ExternalIdentity/Enums/IdentityProvider.php index 0a9c8b8c4..5f7eab08b 100644 --- a/app-modules/identity/src/ExternalIdentity/Enums/IdentityProvider.php +++ b/app-modules/identity/src/ExternalIdentity/Enums/IdentityProvider.php @@ -19,6 +19,7 @@ use He4rt\IntegrationDiscord\OAuth\DiscordOAuthClient; use He4rt\IntegrationGithub\OAuth\GitHubOAuthClient; use He4rt\IntegrationTwitch\OAuth\TwitchOAuthClient; +use Illuminate\Support\Str; enum IdentityProvider: string implements HasColor, HasDescription, HasIcon, HasLabel { @@ -255,6 +256,18 @@ public function getType(): IdentityType }; } + /** + * @param array $metadata + */ + public function getAvatarUrl(?string $accountId, array $metadata): ?string + { + return match ($this) { + self::GitHub => $this->githubAvatarUrl($metadata), + self::Discord => $this->discordAvatarUrl($accountId, $metadata), + default => null, + }; + } + public function getMessageAdapter(): ?MessageActivityAdapter { return match ($this) { @@ -262,4 +275,31 @@ public function getMessageAdapter(): ?MessageActivityAdapter default => null, }; } + + /** + * @param array $metadata + */ + private function githubAvatarUrl(array $metadata): ?string + { + $username = data_get($metadata, 'username'); + + return filled($username) ? sprintf('https://github.com/%s.png', $username) : null; + } + + /** + * Discord OAuth stores the full CDN URL; the bot and the guild sync store only the avatar hash. + * + * @param array $metadata + */ + private function discordAvatarUrl(?string $accountId, array $metadata): ?string + { + $avatar = data_get($metadata, 'avatar'); + + return match (true) { + blank($avatar) => null, + Str::startsWith($avatar, 'https://') => $avatar, + filled($accountId) => sprintf('https://cdn.discordapp.com/avatars/%s/%s.png', $accountId, $avatar), + default => null, + }; + } } diff --git a/app-modules/identity/src/ExternalIdentity/Models/ExternalIdentity.php b/app-modules/identity/src/ExternalIdentity/Models/ExternalIdentity.php index d928bef7d..34b8b1362 100644 --- a/app-modules/identity/src/ExternalIdentity/Models/ExternalIdentity.php +++ b/app-modules/identity/src/ExternalIdentity/Models/ExternalIdentity.php @@ -90,6 +90,11 @@ public function isConnected(): bool return $this->connected_at !== null && $this->disconnected_at === null; } + public function avatarUrl(): ?string + { + return $this->provider->getAvatarUrl($this->external_account_id, $this->metadata ?? []); + } + protected static function newFactory(): ExternalIdentityFactory { return ExternalIdentityFactory::new(); diff --git a/app-modules/identity/src/User/Models/User.php b/app-modules/identity/src/User/Models/User.php index 024614682..cf860687b 100644 --- a/app-modules/identity/src/User/Models/User.php +++ b/app-modules/identity/src/User/Models/User.php @@ -7,12 +7,14 @@ use App\Concerns\HasAddress; use Carbon\CarbonInterface; use Filament\Models\Contracts\FilamentUser; +use Filament\Models\Contracts\HasAvatar; use Filament\Models\Contracts\HasName; use Filament\Panel; use He4rt\Activity\Tracking\Concerns\HasInteractions; use He4rt\Gamification\Character\Models\Character; use He4rt\Identity\Authorization\Enums\UserRole; use He4rt\Identity\Database\Factories\UserFactory; +use He4rt\Identity\ExternalIdentity\Enums\IdentityProvider; use He4rt\Identity\ExternalIdentity\Models\ExternalIdentity; use He4rt\Identity\User\Concerns\HasProfileImages; use He4rt\Identity\User\Enums\UserSituation; @@ -55,7 +57,7 @@ #[UseFactory(factoryClass: UserFactory::class)] #[Table(name: 'users')] #[Hidden('password', 'remember_token', 'email_verified_at')] -final class User extends Authenticatable implements FilamentUser, HasMedia, HasName, JWTSubject +final class User extends Authenticatable implements FilamentUser, HasAvatar, HasMedia, HasName, JWTSubject { use HasAddress; /** @use HasFactory */ @@ -127,10 +129,14 @@ public function canAccessPanel(Panel $panel): bool }; } - public function getFilamentAvatarUrl(): string + /** + * The site username comes from the first OAuth provider (usually Discord), so it is never used to build an avatar URL. + */ + public function getFilamentAvatarUrl(): ?string { - - return sprintf('https://github.com/%s.png', $this->username); + return $this->getFirstMediaUrl('avatar') + ?: $this->linkedIdentity(IdentityProvider::GitHub)?->avatarUrl() + ?: $this->linkedIdentity(IdentityProvider::Discord)?->avatarUrl(); } /** @@ -171,6 +177,15 @@ protected function casts(): array ]; } + private function linkedIdentity(IdentityProvider $provider): ?ExternalIdentity + { + return $this->providers + ->where('provider', $provider) + ->filter->isConnected() + ->sortByDesc('connected_at') + ->first(); + } + private function resolveSituation(): UserSituation { $isBanned = $this->banned_at !== null; diff --git a/app-modules/identity/tests/Feature/User/FilamentAvatarUrlTest.php b/app-modules/identity/tests/Feature/User/FilamentAvatarUrlTest.php new file mode 100644 index 000000000..26de77541 --- /dev/null +++ b/app-modules/identity/tests/Feature/User/FilamentAvatarUrlTest.php @@ -0,0 +1,70 @@ + $attributes */ +function linkAvatarIdentity(User $user, IdentityProvider $provider, array $attributes = []): ExternalIdentity +{ + return ExternalIdentity::factory()->create([ + 'model_type' => $user->getMorphClass(), + 'model_id' => $user->id, + 'provider' => $provider, + ...$attributes, + ]); +} + +test('uploaded avatar wins over linked accounts', function (): void { + Storage::fake('public'); + $user = User::factory()->create(); + $user->addMedia(UploadedFile::fake()->image('avatar.jpg', 500, 500))->toMediaCollection('avatar'); + linkAvatarIdentity($user, IdentityProvider::GitHub, ['metadata' => ['username' => 'octocat']]); + + expect($user->fresh()->getFilamentAvatarUrl())->toBe($user->getFirstMediaUrl('avatar')); +}); + +test('linked github account wins over discord', function (): void { + $user = User::factory()->create(['username' => 'site-handle']); + linkAvatarIdentity($user, IdentityProvider::GitHub, ['metadata' => ['username' => 'octocat']]); + linkAvatarIdentity($user, IdentityProvider::Discord, ['metadata' => ['avatar' => 'https://cdn.discordapp.com/avatars/1/a.png']]); + + expect($user->getFilamentAvatarUrl())->toBe('https://github.com/octocat.png'); +}); + +test('discord avatar url is used as stored', function (): void { + $user = User::factory()->create(); + linkAvatarIdentity($user, IdentityProvider::Discord, ['metadata' => ['avatar' => 'https://cdn.discordapp.com/avatars/1/a.png']]); + + expect($user->getFilamentAvatarUrl())->toBe('https://cdn.discordapp.com/avatars/1/a.png'); +}); + +test('discord avatar hash becomes a cdn url', function (): void { + $user = User::factory()->create(); + linkAvatarIdentity($user, IdentityProvider::Discord, [ + 'external_account_id' => '286313989237899276', + 'metadata' => ['avatar' => 'abc123'], + ]); + + expect($user->getFilamentAvatarUrl())->toBe('https://cdn.discordapp.com/avatars/286313989237899276/abc123.png'); +}); + +test('disconnected accounts are ignored', function (): void { + $user = User::factory()->create(); + linkAvatarIdentity($user, IdentityProvider::GitHub, [ + 'metadata' => ['username' => 'octocat'], + 'disconnected_at' => now(), + ]); + + expect($user->getFilamentAvatarUrl())->toBeNull(); +}); + +test('site username alone never builds a github url', function (): void { + $user = User::factory()->create(['username' => 'discord-handle']); + + expect($user->getFilamentAvatarUrl())->toBeNull(); +}); diff --git a/app-modules/portal/src/Articles/ArticleFeed.php b/app-modules/portal/src/Articles/ArticleFeed.php index c29addbf6..7073caa49 100644 --- a/app-modules/portal/src/Articles/ArticleFeed.php +++ b/app-modules/portal/src/Articles/ArticleFeed.php @@ -28,7 +28,7 @@ public function articles(): array { return $this->articles ??= array_values( ContentEntry::query() - ->with(['contentable', 'author']) + ->with(['contentable', 'author.media', 'author.providers']) ->latest('published_at') ->get() ->map(fn (ContentEntry $entry): Article => Article::fromEntry($entry)) @@ -46,7 +46,7 @@ public function latest(int $limit): array { return array_values( ContentEntry::query() - ->with(['contentable', 'author']) + ->with(['contentable', 'author.media', 'author.providers']) ->latest('published_at') ->limit($limit) ->get() diff --git a/app-modules/portal/tests/Feature/ArticlesPageTest.php b/app-modules/portal/tests/Feature/ArticlesPageTest.php index 7e6cf9d76..a03f60a9a 100644 --- a/app-modules/portal/tests/Feature/ArticlesPageTest.php +++ b/app-modules/portal/tests/Feature/ArticlesPageTest.php @@ -4,6 +4,8 @@ use He4rt\Contents\Articles\Models\Article as CatalogueArticle; use He4rt\Contents\Models\ContentEntry; +use He4rt\Identity\ExternalIdentity\Enums\IdentityProvider; +use He4rt\Identity\ExternalIdentity\Models\ExternalIdentity; use He4rt\Identity\User\Models\User; use He4rt\Portal\Articles\ArticleFeed; use He4rt\Portal\Articles\ArticlesPage; @@ -42,6 +44,12 @@ function catalogueEntry(array $attributes = [], ?CatalogueArticle $detail = null it('credita o nome do usuário quando a identidade está vinculada', function (): void { $user = User::factory()->create(['name' => 'Cherry Ramatis', 'username' => 'cherry']); + ExternalIdentity::factory()->create([ + 'model_type' => $user->getMorphClass(), + 'model_id' => $user->id, + 'provider' => IdentityProvider::GitHub, + 'metadata' => ['username' => 'cherry'], + ]); catalogueEntry(['author_handle' => 'cherryramatis', 'author_id' => $user->id]); diff --git a/app/Providers/Filament/AdminPanelProvider.php b/app/Providers/Filament/AdminPanelProvider.php index db3964e01..7296eaf11 100644 --- a/app/Providers/Filament/AdminPanelProvider.php +++ b/app/Providers/Filament/AdminPanelProvider.php @@ -6,6 +6,7 @@ use App\Enums\FilamentPanel; use App\Http\Middleware\SetApplicationLocale; +use Filament\Actions\Action; use Filament\Http\Middleware\Authenticate; use Filament\Http\Middleware\AuthenticateSession; use Filament\Http\Middleware\DisableBladeIconComponents; @@ -15,6 +16,7 @@ use Filament\Support\Colors\Color; use He4rt\PanelAdmin\Pages\Dashboard; use He4rt\PanelAdmin\Pages\Login; +use He4rt\PanelApp\Pages\ProfilePage; use Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse; use Illuminate\Cookie\Middleware\EncryptCookies; use Illuminate\Foundation\Http\Middleware\PreventRequestForgery; @@ -60,6 +62,12 @@ public function panel(Panel $panel): Panel ->pages([ Dashboard::class, ]) + ->userMenuItems([ + 'profile' => fn (Action $action): Action => $action + ->label(__('app.user_menu.my_profile')) + ->url(ProfilePage::getUrl(panel: FilamentPanel::App->value)) + ->icon(icon: null), + ]) ->authMiddleware([ Authenticate::class, ]); diff --git a/app/Providers/Filament/AppPanelProvider.php b/app/Providers/Filament/AppPanelProvider.php index bacc91b3b..824a5ee35 100644 --- a/app/Providers/Filament/AppPanelProvider.php +++ b/app/Providers/Filament/AppPanelProvider.php @@ -6,6 +6,7 @@ use App\Enums\FilamentPanel; use App\Http\Middleware\SetApplicationLocale; +use Filament\Actions\Action; use Filament\Http\Middleware\Authenticate; use Filament\Http\Middleware\AuthenticateSession; use Filament\Http\Middleware\DisableBladeIconComponents; @@ -55,6 +56,12 @@ public function panel(Panel $panel): Panel ThreadPage::class, ProfilePage::class, ]) + ->userMenuItems([ + 'profile' => fn (Action $action): Action => $action + ->label(__('app.user_menu.my_profile')) + ->url(ProfilePage::getUrl()) + ->icon(icon: null), + ]) ->middleware([ EncryptCookies::class, AddQueuedCookiesToResponse::class, diff --git a/composer.json b/composer.json index 68dd6916f..a57433213 100644 --- a/composer.json +++ b/composer.json @@ -11,7 +11,7 @@ "php": "^8.4", "bacon/bacon-qr-code": "^2.0.8", "calebporzio/sushi": "^2.5.4", - "dedoc/scramble": "^0.13.46", + "dedoc/scramble": "^0.13.47", "filament/filament": "^5.9.0", "filament/spatie-laravel-media-library-plugin": "^5.9.0", "guzzlehttp/guzzle": "^7.15.5", @@ -55,7 +55,7 @@ "phiki/phiki": "^2.2.1", "php-open-source-saver/jwt-auth": "^2.9.3", "ryangjchandler/commonmark-blade-block": "^1.1.1", - "saloonphp/saloon": "^4.3.0", + "saloonphp/saloon": "^4.5.0", "spatie/laravel-backup": "^10.3.3", "spatie/laravel-medialibrary": "^11.23.8", "spatie/laravel-permission": "^8.3.0", @@ -67,13 +67,13 @@ "fakerphp/faker": "^1.24.1", "fruitcake/laravel-debugbar": "^4.4.4", "larastan/larastan": "^3.12.2", - "laravel/boost": "^2.10.0", + "laravel/boost": "^2.10.1", "laravel/pail": "^1.2.7", "laravel/pao": "^1.1.5", "laravel/pint": "^1.32.1", "mockery/mockery": "^1.6.15", "nunomaduro/collision": "^8.9.5", - "pestphp/pest": "^5.2.1", + "pestphp/pest": "^5.3.0", "pestphp/pest-plugin-faker": "^5.0.0", "pestphp/pest-plugin-laravel": "^5.0.1", "pestphp/pest-plugin-livewire": "^5.0.0", diff --git a/composer.lock b/composer.lock index e38820de1..6a3216732 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "9e41cc016c6e4dc692738cab1a0badf5", + "content-hash": "2d24c0779b287e0276a3c33b05bafe63", "packages": [ { "name": "anourvalar/eloquent-serialize", @@ -1398,16 +1398,16 @@ }, { "name": "dedoc/scramble", - "version": "v0.13.46", + "version": "v0.13.47", "source": { "type": "git", "url": "https://github.com/dedoc/scramble.git", - "reference": "b93feb375bf319bbb4bb026c13ffd4332fa42d75" + "reference": "d1597812fa8ce40a257d83c527bec28cb60de7a5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/dedoc/scramble/zipball/b93feb375bf319bbb4bb026c13ffd4332fa42d75", - "reference": "b93feb375bf319bbb4bb026c13ffd4332fa42d75", + "url": "https://api.github.com/repos/dedoc/scramble/zipball/d1597812fa8ce40a257d83c527bec28cb60de7a5", + "reference": "d1597812fa8ce40a257d83c527bec28cb60de7a5", "shasum": "" }, "require": { @@ -1467,7 +1467,7 @@ ], "support": { "issues": "https://github.com/dedoc/scramble/issues", - "source": "https://github.com/dedoc/scramble/tree/v0.13.46" + "source": "https://github.com/dedoc/scramble/tree/v0.13.47" }, "funding": [ { @@ -1475,7 +1475,7 @@ "type": "github" } ], - "time": "2026-09-29T13:50:29+00:00" + "time": "2026-09-30T07:19:49+00:00" }, { "name": "dflydev/dot-access-data", @@ -1886,16 +1886,16 @@ }, { "name": "doctrine/lexer", - "version": "3.0.2", + "version": "3.0.3", "source": { "type": "git", "url": "https://github.com/doctrine/lexer.git", - "reference": "e96fe45e92a54233726014a7cc7340abf29bb14c" + "reference": "71d305eaa6480d3d3460c7d053d1da7749fa9cca" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/lexer/zipball/e96fe45e92a54233726014a7cc7340abf29bb14c", - "reference": "e96fe45e92a54233726014a7cc7340abf29bb14c", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/71d305eaa6480d3d3460c7d053d1da7749fa9cca", + "reference": "71d305eaa6480d3d3460c7d053d1da7749fa9cca", "shasum": "" }, "require": { @@ -1941,7 +1941,7 @@ ], "support": { "issues": "https://github.com/doctrine/lexer/issues", - "source": "https://github.com/doctrine/lexer/tree/3.0.2" + "source": "https://github.com/doctrine/lexer/tree/3.0.3" }, "funding": [ { @@ -1957,7 +1957,7 @@ "type": "tidelift" } ], - "time": "2026-06-14T20:44:06+00:00" + "time": "2026-10-01T06:59:29+00:00" }, { "name": "dragonmantank/cron-expression", @@ -4294,16 +4294,16 @@ }, { "name": "justinrainbow/json-schema", - "version": "6.13.0", + "version": "6.13.1", "source": { "type": "git", "url": "https://github.com/jsonrainbow/json-schema.git", - "reference": "30de5e9b3fa04253af272a7d932a38cd026c311b" + "reference": "e54aacc4c0657b3a4af4f628428d2702146828c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/30de5e9b3fa04253af272a7d932a38cd026c311b", - "reference": "30de5e9b3fa04253af272a7d932a38cd026c311b", + "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/e54aacc4c0657b3a4af4f628428d2702146828c6", + "reference": "e54aacc4c0657b3a4af4f628428d2702146828c6", "shasum": "" }, "require": { @@ -4353,9 +4353,9 @@ ], "support": { "issues": "https://github.com/jsonrainbow/json-schema/issues", - "source": "https://github.com/jsonrainbow/json-schema/tree/6.13.0" + "source": "https://github.com/jsonrainbow/json-schema/tree/6.13.1" }, - "time": "2026-09-23T19:46:42+00:00" + "time": "2026-09-30T07:42:28+00:00" }, { "name": "kirschbaum-development/eloquent-power-joins", @@ -6938,16 +6938,16 @@ }, { "name": "nesbot/carbon", - "version": "3.14.1", + "version": "3.14.2", "source": { "type": "git", "url": "https://github.com/CarbonPHP/carbon.git", - "reference": "34e9109535165bf1d7ff17a610492372ae73a896" + "reference": "94cfc34887f07ab5c0efa07914c8f527544e3224" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/34e9109535165bf1d7ff17a610492372ae73a896", - "reference": "34e9109535165bf1d7ff17a610492372ae73a896", + "url": "https://api.github.com/repos/CarbonPHP/carbon/zipball/94cfc34887f07ab5c0efa07914c8f527544e3224", + "reference": "94cfc34887f07ab5c0efa07914c8f527544e3224", "shasum": "" }, "require": { @@ -6967,7 +6967,7 @@ "doctrine/orm": "^2.15.2 || ^3.0", "friendsofphp/php-cs-fixer": "^v3.87.1", "kylekatarnls/multi-tester": "^2.5.3", - "phpmd/phpmd": "^2.15.0", + "phpmd/phpmd": "^3.0@dev", "phpstan/extension-installer": "^1.4.3", "phpstan/phpstan": "^2.1.22", "phpunit/phpunit": "^10.5.53", @@ -7039,7 +7039,7 @@ "type": "tidelift" } ], - "time": "2026-09-27T12:07:26+00:00" + "time": "2026-10-02T07:26:52+00:00" }, { "name": "nette/php-generator", @@ -10097,16 +10097,16 @@ }, { "name": "saloonphp/saloon", - "version": "v4.3.0", + "version": "v4.5.0", "source": { "type": "git", "url": "https://github.com/saloonphp/saloon.git", - "reference": "8476092949f1b544b2a04d7ecaa71d98c3c2f7fe" + "reference": "2f45e526f9d1d10a138f864492b074b046d2e52e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/saloonphp/saloon/zipball/8476092949f1b544b2a04d7ecaa71d98c3c2f7fe", - "reference": "8476092949f1b544b2a04d7ecaa71d98c3c2f7fe", + "url": "https://api.github.com/repos/saloonphp/saloon/zipball/2f45e526f9d1d10a138f864492b074b046d2e52e", + "reference": "2f45e526f9d1d10a138f864492b074b046d2e52e", "shasum": "" }, "require": { @@ -10114,6 +10114,7 @@ "guzzlehttp/promises": "^1.5 || ^2.0 || ^3.0", "guzzlehttp/psr7": "^2.0 || ^3.0", "php": "^8.2", + "psr/clock": "^1.0", "psr/http-factory": "^1.0", "psr/http-message": "^1.1 || ^2.0" }, @@ -10166,7 +10167,7 @@ ], "support": { "issues": "https://github.com/saloonphp/saloon/issues", - "source": "https://github.com/saloonphp/saloon/tree/v4.3.0" + "source": "https://github.com/saloonphp/saloon/tree/v4.5.0" }, "funding": [ { @@ -10174,7 +10175,7 @@ "type": "github" } ], - "time": "2026-09-18T21:37:59+00:00" + "time": "2026-10-03T14:00:29+00:00" }, { "name": "scrivo/highlight.php", @@ -10256,23 +10257,23 @@ }, { "name": "sebastian/environment", - "version": "9.3.2", + "version": "9.3.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "6c9e487c9eb706a8d258102a1c0b0a3e53e86c2e" + "reference": "d4dd10267a11055066a2a78ae04583d8ddd4f595" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6c9e487c9eb706a8d258102a1c0b0a3e53e86c2e", - "reference": "6c9e487c9eb706a8d258102a1c0b0a3e53e86c2e", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/d4dd10267a11055066a2a78ae04583d8ddd4f595", + "reference": "d4dd10267a11055066a2a78ae04583d8ddd4f595", "shasum": "" }, "require": { "php": ">=8.4" }, "require-dev": { - "phpunit/phpunit": "^13.1.11" + "phpunit/phpunit": "^13.3.6" }, "suggest": { "ext-posix": "*" @@ -10308,7 +10309,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", "security": "https://github.com/sebastianbergmann/environment/security/policy", - "source": "https://github.com/sebastianbergmann/environment/tree/9.3.2" + "source": "https://github.com/sebastianbergmann/environment/tree/9.3.3" }, "funding": [ { @@ -10328,7 +10329,7 @@ "type": "tidelift" } ], - "time": "2026-05-25T13:41:38+00:00" + "time": "2026-10-01T12:37:56+00:00" }, { "name": "seld/jsonlint", @@ -10396,16 +10397,16 @@ }, { "name": "seld/phar-utils", - "version": "1.2.2", + "version": "1.2.3", "source": { "type": "git", "url": "https://github.com/Seldaek/phar-utils.git", - "reference": "990bbd0e92caa216d52eca0935f6e35e589bfaa5" + "reference": "65fb381613fd31745d39a740a112a233f978d2d9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Seldaek/phar-utils/zipball/990bbd0e92caa216d52eca0935f6e35e589bfaa5", - "reference": "990bbd0e92caa216d52eca0935f6e35e589bfaa5", + "url": "https://api.github.com/repos/Seldaek/phar-utils/zipball/65fb381613fd31745d39a740a112a233f978d2d9", + "reference": "65fb381613fd31745d39a740a112a233f978d2d9", "shasum": "" }, "require": { @@ -10438,9 +10439,9 @@ ], "support": { "issues": "https://github.com/Seldaek/phar-utils/issues", - "source": "https://github.com/Seldaek/phar-utils/tree/1.2.2" + "source": "https://github.com/Seldaek/phar-utils/tree/1.2.3" }, - "time": "2026-08-01T12:48:55+00:00" + "time": "2026-10-01T08:16:23+00:00" }, { "name": "seld/signal-handler", @@ -10569,16 +10570,16 @@ }, { "name": "spatie/image", - "version": "3.9.6", + "version": "3.9.7", "source": { "type": "git", "url": "https://github.com/spatie/image.git", - "reference": "f6f2c785fb6e2f27cf05e48d6fe0e3feea0b421f" + "reference": "5450a2f63f315d56453fbbf58f5dacaecbf48dd4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/spatie/image/zipball/f6f2c785fb6e2f27cf05e48d6fe0e3feea0b421f", - "reference": "f6f2c785fb6e2f27cf05e48d6fe0e3feea0b421f", + "url": "https://api.github.com/repos/spatie/image/zipball/5450a2f63f315d56453fbbf58f5dacaecbf48dd4", + "reference": "5450a2f63f315d56453fbbf58f5dacaecbf48dd4", "shasum": "" }, "require": { @@ -10628,7 +10629,7 @@ "spatie" ], "support": { - "source": "https://github.com/spatie/image/tree/3.9.6" + "source": "https://github.com/spatie/image/tree/3.9.7" }, "funding": [ { @@ -10640,7 +10641,7 @@ "type": "github" } ], - "time": "2026-08-18T08:48:32+00:00" + "time": "2026-09-30T07:06:27+00:00" }, { "name": "spatie/image-optimizer", @@ -12674,16 +12675,16 @@ }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.41.0", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "bb899c1db0aa8127dc3afe8cda4a67eb24915f8d" + "reference": "5cac8f4db97208823aa353f59a01faad2da52c75" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/bb899c1db0aa8127dc3afe8cda4a67eb24915f8d", - "reference": "bb899c1db0aa8127dc3afe8cda4a67eb24915f8d", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/5cac8f4db97208823aa353f59a01faad2da52c75", + "reference": "5cac8f4db97208823aa353f59a01faad2da52c75", "shasum": "" }, "require": { @@ -12732,7 +12733,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.41.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.43.0" }, "funding": [ { @@ -12752,20 +12753,20 @@ "type": "tidelift" } ], - "time": "2026-07-28T08:25:59+00:00" + "time": "2026-09-25T15:46:47+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.42.0", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "51b5ff5ba85452b31ec6f55490b08148612339d9" + "reference": "533d68cf99c8f8ee2e8893c59ed59192e92cfd74" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/51b5ff5ba85452b31ec6f55490b08148612339d9", - "reference": "51b5ff5ba85452b31ec6f55490b08148612339d9", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/533d68cf99c8f8ee2e8893c59ed59192e92cfd74", + "reference": "533d68cf99c8f8ee2e8893c59ed59192e92cfd74", "shasum": "" }, "require": { @@ -12819,7 +12820,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.42.0" + "source": "https://github.com/symfony/polyfill-intl-idn/tree/v1.43.0" }, "funding": [ { @@ -12839,20 +12840,20 @@ "type": "tidelift" } ], - "time": "2026-08-24T10:51:20+00:00" + "time": "2026-09-23T14:40:04+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.42.0", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "aa20edea75bd9c48cfecc8360922e5a6e5c44502" + "reference": "ebd57ccc7edb93d632e184efbe7693d2517bab3b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/aa20edea75bd9c48cfecc8360922e5a6e5c44502", - "reference": "aa20edea75bd9c48cfecc8360922e5a6e5c44502", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/ebd57ccc7edb93d632e184efbe7693d2517bab3b", + "reference": "ebd57ccc7edb93d632e184efbe7693d2517bab3b", "shasum": "" }, "require": { @@ -12904,7 +12905,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.42.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.43.0" }, "funding": [ { @@ -12924,20 +12925,20 @@ "type": "tidelift" } ], - "time": "2026-08-07T06:33:24+00:00" + "time": "2026-09-23T22:02:09+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.38.2", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6" + "reference": "4d5d331bf731e0aedbc6b2f5e61135b7b7996a72" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", - "reference": "d3d318bad5e7a1bfbd026009c8bfb8d8f99ae6b6", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/4d5d331bf731e0aedbc6b2f5e61135b7b7996a72", + "reference": "4d5d331bf731e0aedbc6b2f5e61135b7b7996a72", "shasum": "" }, "require": { @@ -12989,7 +12990,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.38.2" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.43.0" }, "funding": [ { @@ -13009,7 +13010,7 @@ "type": "tidelift" } ], - "time": "2026-05-27T06:59:30+00:00" + "time": "2026-09-24T15:19:04+00:00" }, { "name": "symfony/polyfill-php56", @@ -13161,16 +13162,16 @@ }, { "name": "symfony/polyfill-php80", - "version": "v1.37.0", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "dfb55726c3a76ea3b6459fcfda1ec2d80a682411" + "reference": "9c6a5d6b01ca51d486c813e9a9c0ed55f208bb74" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/dfb55726c3a76ea3b6459fcfda1ec2d80a682411", - "reference": "dfb55726c3a76ea3b6459fcfda1ec2d80a682411", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/9c6a5d6b01ca51d486c813e9a9c0ed55f208bb74", + "reference": "9c6a5d6b01ca51d486c813e9a9c0ed55f208bb74", "shasum": "" }, "require": { @@ -13221,7 +13222,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.37.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.43.0" }, "funding": [ { @@ -13241,7 +13242,7 @@ "type": "tidelift" } ], - "time": "2026-04-10T16:19:22+00:00" + "time": "2026-09-25T15:50:05+00:00" }, { "name": "symfony/polyfill-php81", @@ -13325,16 +13326,16 @@ }, { "name": "symfony/polyfill-php84", - "version": "v1.38.1", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php84.git", - "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa" + "reference": "22c6548499cbe5c5bb072fc0c42312dff062a015" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", - "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", + "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/22c6548499cbe5c5bb072fc0c42312dff062a015", + "reference": "22c6548499cbe5c5bb072fc0c42312dff062a015", "shasum": "" }, "require": { @@ -13381,7 +13382,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php84/tree/v1.38.1" + "source": "https://github.com/symfony/polyfill-php84/tree/v1.43.0" }, "funding": [ { @@ -13401,20 +13402,20 @@ "type": "tidelift" } ], - "time": "2026-05-26T12:51:13+00:00" + "time": "2026-09-23T22:01:09+00:00" }, { "name": "symfony/polyfill-php85", - "version": "v1.41.0", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php85.git", - "reference": "255fab485aaa1006ed411040c42aecd7b5302d7a" + "reference": "86a42cbcc07adc331481a5ab310a4024bfc227f6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/255fab485aaa1006ed411040c42aecd7b5302d7a", - "reference": "255fab485aaa1006ed411040c42aecd7b5302d7a", + "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/86a42cbcc07adc331481a5ab310a4024bfc227f6", + "reference": "86a42cbcc07adc331481a5ab310a4024bfc227f6", "shasum": "" }, "require": { @@ -13461,7 +13462,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php85/tree/v1.41.0" + "source": "https://github.com/symfony/polyfill-php85/tree/v1.43.0" }, "funding": [ { @@ -13481,20 +13482,20 @@ "type": "tidelift" } ], - "time": "2026-07-01T12:47:55+00:00" + "time": "2026-09-25T15:46:47+00:00" }, { "name": "symfony/polyfill-php86", - "version": "v1.41.0", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php86.git", - "reference": "6bc356ed3d8dbfeea8f0de235e34d670704e880e" + "reference": "8840df45b24f33a49dc419fa18dc0057231ae1d8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php86/zipball/6bc356ed3d8dbfeea8f0de235e34d670704e880e", - "reference": "6bc356ed3d8dbfeea8f0de235e34d670704e880e", + "url": "https://api.github.com/repos/symfony/polyfill-php86/zipball/8840df45b24f33a49dc419fa18dc0057231ae1d8", + "reference": "8840df45b24f33a49dc419fa18dc0057231ae1d8", "shasum": "" }, "require": { @@ -13541,7 +13542,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php86/tree/v1.41.0" + "source": "https://github.com/symfony/polyfill-php86/tree/v1.43.0" }, "funding": [ { @@ -13561,20 +13562,20 @@ "type": "tidelift" } ], - "time": "2026-07-02T13:42:24+00:00" + "time": "2026-09-25T15:46:47+00:00" }, { "name": "symfony/polyfill-uuid", - "version": "v1.37.0", + "version": "v1.43.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-uuid.git", - "reference": "26dfec253c4cf3e51b541b52ddf7e42cb0908e94" + "reference": "b23ff8245cc5c4479ea2be3d0132d2e6dd433993" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/26dfec253c4cf3e51b541b52ddf7e42cb0908e94", - "reference": "26dfec253c4cf3e51b541b52ddf7e42cb0908e94", + "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/b23ff8245cc5c4479ea2be3d0132d2e6dd433993", + "reference": "b23ff8245cc5c4479ea2be3d0132d2e6dd433993", "shasum": "" }, "require": { @@ -13624,7 +13625,7 @@ "uuid" ], "support": { - "source": "https://github.com/symfony/polyfill-uuid/tree/v1.37.0" + "source": "https://github.com/symfony/polyfill-uuid/tree/v1.43.0" }, "funding": [ { @@ -13644,7 +13645,7 @@ "type": "tidelift" } ], - "time": "2026-04-10T16:19:22+00:00" + "time": "2026-09-24T05:20:52+00:00" }, { "name": "symfony/process", @@ -15174,16 +15175,16 @@ }, { "name": "fidry/cpu-core-counter", - "version": "1.4.0", + "version": "1.4.1", "source": { "type": "git", "url": "https://github.com/theofidry/cpu-core-counter.git", - "reference": "7cbeb03e286fa81b2bbe0e6bd6b8a27c71a3144d" + "reference": "d384a7d0d6e67aa497327260ca95023e92dc2032" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/7cbeb03e286fa81b2bbe0e6bd6b8a27c71a3144d", - "reference": "7cbeb03e286fa81b2bbe0e6bd6b8a27c71a3144d", + "url": "https://api.github.com/repos/theofidry/cpu-core-counter/zipball/d384a7d0d6e67aa497327260ca95023e92dc2032", + "reference": "d384a7d0d6e67aa497327260ca95023e92dc2032", "shasum": "" }, "require": { @@ -15224,7 +15225,7 @@ ], "support": { "issues": "https://github.com/theofidry/cpu-core-counter/issues", - "source": "https://github.com/theofidry/cpu-core-counter/tree/1.4.0" + "source": "https://github.com/theofidry/cpu-core-counter/tree/1.4.1" }, "funding": [ { @@ -15232,20 +15233,20 @@ "type": "github" } ], - "time": "2026-09-27T17:40:20+00:00" + "time": "2026-09-29T22:11:39+00:00" }, { "name": "filp/whoops", - "version": "2.18.5", + "version": "2.18.6", "source": { "type": "git", "url": "https://github.com/filp/whoops.git", - "reference": "baec851ad6ae00db8bd0fdd30d208afc1b71c56e" + "reference": "7d0a2cde892089bb09372f4366e9b960eb3001a9" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/baec851ad6ae00db8bd0fdd30d208afc1b71c56e", - "reference": "baec851ad6ae00db8bd0fdd30d208afc1b71c56e", + "url": "https://api.github.com/repos/filp/whoops/zipball/7d0a2cde892089bb09372f4366e9b960eb3001a9", + "reference": "7d0a2cde892089bb09372f4366e9b960eb3001a9", "shasum": "" }, "require": { @@ -15295,7 +15296,7 @@ ], "support": { "issues": "https://github.com/filp/whoops/issues", - "source": "https://github.com/filp/whoops/tree/2.18.5" + "source": "https://github.com/filp/whoops/tree/2.18.6" }, "funding": [ { @@ -15303,7 +15304,7 @@ "type": "github" } ], - "time": "2026-09-18T12:00:00+00:00" + "time": "2026-10-03T17:03:57+00:00" }, { "name": "fruitcake/laravel-debugbar", @@ -15717,16 +15718,16 @@ }, { "name": "laravel/boost", - "version": "v2.10.0", + "version": "v2.10.1", "source": { "type": "git", "url": "https://github.com/laravel/boost.git", - "reference": "76c236d4eb7d51698f882d149bc367c1ebc0d078" + "reference": "3e7bab5c7c80b6d2764ef3db1e3eb801204da84e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/boost/zipball/76c236d4eb7d51698f882d149bc367c1ebc0d078", - "reference": "76c236d4eb7d51698f882d149bc367c1ebc0d078", + "url": "https://api.github.com/repos/laravel/boost/zipball/3e7bab5c7c80b6d2764ef3db1e3eb801204da84e", + "reference": "3e7bab5c7c80b6d2764ef3db1e3eb801204da84e", "shasum": "" }, "require": { @@ -15779,7 +15780,7 @@ "issues": "https://github.com/laravel/boost/issues", "source": "https://github.com/laravel/boost" }, - "time": "2026-09-23T09:33:31+00:00" + "time": "2026-10-01T02:02:28+00:00" }, { "name": "laravel/mcp", @@ -16332,20 +16333,20 @@ }, { "name": "pestphp/pest", - "version": "v5.2.1", + "version": "v5.3.0", "source": { "type": "git", "url": "https://github.com/pestphp/pest.git", - "reference": "94f4f1ff4835dae2519f8b13f349d1042318e076" + "reference": "14a3efd918e11bb8f2b432d6ac8dd016431979fd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/pestphp/pest/zipball/94f4f1ff4835dae2519f8b13f349d1042318e076", - "reference": "94f4f1ff4835dae2519f8b13f349d1042318e076", + "url": "https://api.github.com/repos/pestphp/pest/zipball/14a3efd918e11bb8f2b432d6ac8dd016431979fd", + "reference": "14a3efd918e11bb8f2b432d6ac8dd016431979fd", "shasum": "" }, "require": { - "brianium/paratest": "^7.24.1", + "brianium/paratest": "^7.25.0", "nunomaduro/collision": "^8.9.5", "nunomaduro/termwind": "^2.4.0", "pestphp/pest-plugin": "^5.0.0", @@ -16353,19 +16354,19 @@ "pestphp/pest-plugin-mutate": "^5.0.2", "pestphp/pest-plugin-profanity": "^5.0.0", "php": "^8.4", - "phpunit/phpunit": "^13.3.4", + "phpunit/phpunit": "^13.3.6", "symfony/process": "^8.1.7" }, "conflict": { "filp/whoops": "<2.18.3", "laravel/boost": "<2.6.0", - "phpunit/phpunit": ">13.3.4", + "phpunit/phpunit": ">13.3.6", "sebastian/exporter": "<7.0.0", "webmozart/assert": "<1.11.0" }, "require-dev": { "pestphp/pest-dev-tools": "^5.0.0", - "pestphp/pest-plugin-browser": "^5.0.1", + "pestphp/pest-plugin-browser": "^5.1.0", "pestphp/pest-plugin-phpstan": "^5.2.1", "pestphp/pest-plugin-rector": "^5.0.4", "pestphp/pest-plugin-type-coverage": "^5.0.2", @@ -16436,7 +16437,7 @@ ], "support": { "issues": "https://github.com/pestphp/pest/issues", - "source": "https://github.com/pestphp/pest/tree/v5.2.1" + "source": "https://github.com/pestphp/pest/tree/v5.3.0" }, "funding": [ { @@ -16448,7 +16449,7 @@ "type": "github" } ], - "time": "2026-09-17T11:41:10+00:00" + "time": "2026-10-01T16:58:48+00:00" }, { "name": "pestphp/pest-plugin", @@ -17611,16 +17612,16 @@ }, { "name": "phpunit/php-code-coverage", - "version": "14.3.5", + "version": "14.4.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "96af7aaa1e15561a67b2fa5b98906b063ebec9c2" + "reference": "f1e54f06b6b4cea73cd6104ba3c0cfa0efa6d73f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/96af7aaa1e15561a67b2fa5b98906b063ebec9c2", - "reference": "96af7aaa1e15561a67b2fa5b98906b063ebec9c2", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/f1e54f06b6b4cea73cd6104ba3c0cfa0efa6d73f", + "reference": "f1e54f06b6b4cea73cd6104ba3c0cfa0efa6d73f", "shasum": "" }, "require": { @@ -17630,16 +17631,16 @@ "ext-xmlwriter": "*", "nikic/php-parser": "^5.9.0", "php": ">=8.4", - "phpunit/php-text-template": "^6.0", + "phpunit/php-text-template": "^6.0.1", "sebastian/complexity": "^6.0", - "sebastian/environment": "^9.3.2", + "sebastian/environment": "^9.3.3", "sebastian/git-state": "^1.0", "sebastian/lines-of-code": "^5.0.2", "sebastian/version": "^7.0", "theseer/tokenizer": "^2.0.1" }, "require-dev": { - "phpunit/phpunit": "^13.3.4" + "phpunit/phpunit": "^13.3.6" }, "suggest": { "ext-pcov": "PHP extension that provides line coverage", @@ -17648,7 +17649,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "14.3.x-dev" + "dev-main": "14.4.x-dev" } }, "autoload": { @@ -17677,7 +17678,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/14.3.5" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/14.4.1" }, "funding": [ { @@ -17697,7 +17698,7 @@ "type": "tidelift" } ], - "time": "2026-09-25T08:28:49+00:00" + "time": "2026-10-03T14:05:38+00:00" }, { "name": "phpunit/php-file-iterator", @@ -17850,23 +17851,23 @@ }, { "name": "phpunit/php-text-template", - "version": "6.0.0", + "version": "6.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "a47af19f93f76aa3368303d752aa5272ca3299f4" + "reference": "97107691cb2b6c743b5e0c44be19e983cb337a02" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/a47af19f93f76aa3368303d752aa5272ca3299f4", - "reference": "a47af19f93f76aa3368303d752aa5272ca3299f4", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/97107691cb2b6c743b5e0c44be19e983cb337a02", + "reference": "97107691cb2b6c743b5e0c44be19e983cb337a02", "shasum": "" }, "require": { "php": ">=8.4" }, "require-dev": { - "phpunit/phpunit": "^13.0" + "phpunit/phpunit": "^13.3.6" }, "type": "library", "extra": { @@ -17898,7 +17899,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/php-text-template/issues", "security": "https://github.com/sebastianbergmann/php-text-template/security/policy", - "source": "https://github.com/sebastianbergmann/php-text-template/tree/6.0.0" + "source": "https://github.com/sebastianbergmann/php-text-template/tree/6.0.1" }, "funding": [ { @@ -17918,7 +17919,7 @@ "type": "tidelift" } ], - "time": "2026-02-06T04:36:37+00:00" + "time": "2026-10-03T04:54:24+00:00" }, { "name": "phpunit/php-timer", @@ -17994,16 +17995,16 @@ }, { "name": "phpunit/phpunit", - "version": "13.3.4", + "version": "13.3.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "d19d90cf860efb7e4d96cee8243e06a248578085" + "reference": "b7d0ee4ea89121cb963302b8708b1c09d9ebc7d6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/d19d90cf860efb7e4d96cee8243e06a248578085", - "reference": "d19d90cf860efb7e4d96cee8243e06a248578085", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/b7d0ee4ea89121cb963302b8708b1c09d9ebc7d6", + "reference": "b7d0ee4ea89121cb963302b8708b1c09d9ebc7d6", "shasum": "" }, "require": { @@ -18017,7 +18018,7 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=8.4.1", - "phpunit/php-code-coverage": "^14.3.3", + "phpunit/php-code-coverage": "^14.3.5", "phpunit/php-file-iterator": "^7.0.2", "phpunit/php-invoker": "^7.0.0", "phpunit/php-text-template": "^6.0.0", @@ -18074,7 +18075,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/13.3.4" + "source": "https://github.com/sebastianbergmann/phpunit/tree/13.3.6" }, "funding": [ { @@ -18082,7 +18083,7 @@ "type": "other" } ], - "time": "2026-09-15T07:37:05+00:00" + "time": "2026-09-29T12:12:05+00:00" }, { "name": "rector/rector", @@ -19107,16 +19108,16 @@ }, { "name": "sebastian/version", - "version": "7.0.0", + "version": "7.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/version.git", - "reference": "ad37a5552c8e2b88572249fdc19b6da7792e021b" + "reference": "f1598cf1d8d1ca4c0f194a52f2fe72a559a7b0b1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/ad37a5552c8e2b88572249fdc19b6da7792e021b", - "reference": "ad37a5552c8e2b88572249fdc19b6da7792e021b", + "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/f1598cf1d8d1ca4c0f194a52f2fe72a559a7b0b1", + "reference": "f1598cf1d8d1ca4c0f194a52f2fe72a559a7b0b1", "shasum": "" }, "require": { @@ -19149,7 +19150,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/version/issues", "security": "https://github.com/sebastianbergmann/version/security/policy", - "source": "https://github.com/sebastianbergmann/version/tree/7.0.0" + "source": "https://github.com/sebastianbergmann/version/tree/7.0.1" }, "funding": [ { @@ -19169,7 +19170,7 @@ "type": "tidelift" } ], - "time": "2026-02-06T04:52:52+00:00" + "time": "2026-10-04T05:51:14+00:00" }, { "name": "staabm/side-effects-detector", diff --git a/lang/en/app.php b/lang/en/app.php index 8f8917c0e..d8adca87e 100644 --- a/lang/en/app.php +++ b/lang/en/app.php @@ -9,4 +9,8 @@ 'portuguese' => 'Português (Brasil)', 'portuguese_short' => 'PT-BR', ], + + 'user_menu' => [ + 'my_profile' => 'My profile', + ], ]; diff --git a/lang/pt_BR/app.php b/lang/pt_BR/app.php index 8f8917c0e..5c4a7e456 100644 --- a/lang/pt_BR/app.php +++ b/lang/pt_BR/app.php @@ -9,4 +9,8 @@ 'portuguese' => 'Português (Brasil)', 'portuguese_short' => 'PT-BR', ], + + 'user_menu' => [ + 'my_profile' => 'Meu perfil', + ], ]; diff --git a/package-lock.json b/package-lock.json index 7f50893eb..368ae2df5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -123,9 +123,9 @@ } }, "node_modules/@oxc-project/types": { - "version": "0.151.0", - "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.151.0.tgz", - "integrity": "sha512-J1yXrIlNDZVzE3ada310xeAw7nH8yCAyLPuUIsjKatFPmfn5bS1oW+cM+QsGOtVWd5nhSpbwZWx/rue+r5Z+PA==", + "version": "0.152.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.152.0.tgz", + "integrity": "sha512-oM/5rLBm2tPkg0iBgkH/FOeR3PCDpY19GTgAZjMFM8h9WI9VW7cLgzp6nwtarYKmovavIQZ+Fe/RKX/8C8O/Rw==", "dev": true, "license": "MIT", "funding": { @@ -133,9 +133,9 @@ } }, "node_modules/@rolldown/binding-android-arm-eabi": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm-eabi/-/binding-android-arm-eabi-1.2.11.tgz", - "integrity": "sha512-A5kXfGKvKWWZE0TtPrfsvT+q4Y5d1QG8gGUzpYjGydM+fARM9MuX90PrXYXe0XbsDVgyxxNzHo6giCj90bsFNw==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm-eabi/-/binding-android-arm-eabi-1.2.12.tgz", + "integrity": "sha512-dB/a1214qKfHMXCpgqR4OZT+jS4kTyEXbQGJPqzobt5EwH5rX080pxE37alt3RzvR1bf1Yz/yGqRfrYAxuPw0A==", "cpu": [ "arm" ], @@ -150,9 +150,9 @@ } }, "node_modules/@rolldown/binding-android-arm64": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.2.11.tgz", - "integrity": "sha512-z6cTycz+iJ4PVkuL4HHW4DfTfoeU/2nqYYuSOrTmH7yHK5Y0LCOnA03V4ZNxavyVaU1oOqUgIg2klN/s+USGOA==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.2.12.tgz", + "integrity": "sha512-7KHFgQ5VJxIHcLlrwrc3Xbds7oTNQT7Pgi9gQCJKrd2VGab/UksIOYp6VD8MzCstGxOKMgNamPwUCfxPdP1OHg==", "cpu": [ "arm64" ], @@ -167,9 +167,9 @@ } }, "node_modules/@rolldown/binding-darwin-arm64": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.2.11.tgz", - "integrity": "sha512-jShvqNtP6vDC6/A5JOAzbVV+DkgHqhl/ScVCJEbt+TUY6QYz7YnXcrg3sLtFBniro0f/Ld50ZwCWA6f7KYD1nQ==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.2.12.tgz", + "integrity": "sha512-3YIhqHD96nA5SaYNRBR16HnGv4oavZvXfD/ayHM+oYZ0WD/8lBAtf6zQua4kEyAvpqrluKXl0lnOBoiNby7x9w==", "cpu": [ "arm64" ], @@ -184,9 +184,9 @@ } }, "node_modules/@rolldown/binding-darwin-x64": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.2.11.tgz", - "integrity": "sha512-f2i2xiNWq1Z1l2++q2fuhZRdLAT3aqxD6vRNm1RAxpUoBcdqNB3C0s1Bt+K+PbEx2F5F4gQp6hqKkphCY/xF9w==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.2.12.tgz", + "integrity": "sha512-UuuJ35MFw4gmFOrE9pEqIV+K3syIKveph+Qc1/ljHZVdoDW4pz/JHR/eMVom+TZGl/5OOvGJOWaOCVt3ZfqhxA==", "cpu": [ "x64" ], @@ -201,9 +201,9 @@ } }, "node_modules/@rolldown/binding-freebsd-x64": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.2.11.tgz", - "integrity": "sha512-4Ir5FSOKIAMr4r0kExpt1s3bMgzJU3rA45AYOHtQpls0oNeqcYBKrWMlckrYH4KCfGLfkfn1tN1dmZPMVsdXow==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.2.12.tgz", + "integrity": "sha512-uMvssit0a4W+/7D8CbHUvG719mH3R2jwXAlh/XcPvuHTE0g++LymF88DCGNX0HM2rBOn0xrzgXktIB6fLSJBTQ==", "cpu": [ "x64" ], @@ -218,9 +218,9 @@ } }, "node_modules/@rolldown/binding-linux-arm-gnueabihf": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.2.11.tgz", - "integrity": "sha512-/gnRDM+39BROzAN/k1OZjDPnDMcZxB/0EUxKjONO5yVkNEvlsoMDrxGNKgZi/ttFriS2gwlDNzB65pvNbFOXIQ==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.2.12.tgz", + "integrity": "sha512-XcFu0R0xWnwzSf4IQgFH1rJIckPN1pLy2R+4r9IDB7Yfu/ys9cVqfa4pBrMHj7a3gl8mIR4nRNPg0e5IvEVs6g==", "cpu": [ "arm" ], @@ -235,9 +235,9 @@ } }, "node_modules/@rolldown/binding-linux-arm64-gnu": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.2.11.tgz", - "integrity": "sha512-PFaK8HwvAHbaKbBcDNQihjMKYvFnA5hiENx/l5tphTDz1E0WFp32l0A7aq7lyUwGsRw/xSrNIy/gIK4thrSCrw==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.2.12.tgz", + "integrity": "sha512-260UrKgn8tz39ak+SMDOirKzr7V04M9dWPw5llW00SwBivCZoWcRBKV1d8cXnRkUmSZA3BdiUmBHWk7734Ulpw==", "cpu": [ "arm64" ], @@ -255,9 +255,9 @@ } }, "node_modules/@rolldown/binding-linux-arm64-musl": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.2.11.tgz", - "integrity": "sha512-AskzJUIKRLPxkruR1wLKewGbOw+EYfU/9lOrBFj4AFrEA8hPpKFnODWNu2WLaNs0QNkEb9QIJufmVZZIL/bJlg==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.2.12.tgz", + "integrity": "sha512-5YK1I9SqDkbPgc1IA8BgDl34suqUS2q0KWnBrirm0E51YjOs6eo6dV6jbQfNE/argHRSvd0QUGgtpIoYx+WWpw==", "cpu": [ "arm64" ], @@ -275,9 +275,9 @@ } }, "node_modules/@rolldown/binding-linux-ppc64-gnu": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.2.11.tgz", - "integrity": "sha512-qlUGAheh2yh8afH7QBgx0PrRHN85hKnNd78x8MeMhXivuevgd8vgf6/CstOzmNKY/lLTHvNTrPy98cLnAugzJw==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.2.12.tgz", + "integrity": "sha512-Rkcrmp7eFRg74yL5fXEU91JEWbdEPLevWwGtXpmhbjlD1StScbWTmO94Bhly+Mo+ketKYkdmM1vNUKeWSlx8cQ==", "cpu": [ "ppc64" ], @@ -295,9 +295,9 @@ } }, "node_modules/@rolldown/binding-linux-s390x-gnu": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.2.11.tgz", - "integrity": "sha512-secpEad+0vCbSfn8upFySkDskv+bGPk3THSDS9Y89yc4rb4kzqHp8Dmyd9BkQW4SnhNXBZCl/6CrO//hZahNJQ==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.2.12.tgz", + "integrity": "sha512-qvK4DuAsQc2BSjlx+Xr+IzOIvvxbGZqxFwdWfG6F518Erj0GGISyQbJ6pIappnOxlNPzNHvo/L0BwB30GZ+zVw==", "cpu": [ "s390x" ], @@ -315,9 +315,9 @@ } }, "node_modules/@rolldown/binding-linux-x64-gnu": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.2.11.tgz", - "integrity": "sha512-mOVBT3dPpkWm8XBWPmU4bf+U6dYDLeMo/9ojUmis4N0L5uu10qra5vOyngZ7/PSdoE4G9KvRt4bloRxNjLas7A==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.2.12.tgz", + "integrity": "sha512-Q9uLBO53Xd4QIq1WOycVQyPP1O4HhraEV2qqb3uTrnVw6QZih9duY4vNXOivL1xoUS1/z+W8eF4NMfl2a8Sdjw==", "cpu": [ "x64" ], @@ -335,9 +335,9 @@ } }, "node_modules/@rolldown/binding-linux-x64-musl": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.2.11.tgz", - "integrity": "sha512-Is78i9A8Ui4SqcxUwFJ9uMmjDn58IbVTjFWYdQestFEgeuEmHMLGNriXnVJKkwG2YiZjw8cP0zCTyDMdDGtOOg==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.2.12.tgz", + "integrity": "sha512-3IBxWFMjbOZskDPKv8Lf9BCnahlKuHthWkYnyIxOH/QcJrFcS4EmcenthApkwr/5+nEqZlLzeYbxeMaX7A5u4g==", "cpu": [ "x64" ], @@ -355,9 +355,9 @@ } }, "node_modules/@rolldown/binding-openharmony-arm64": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.2.11.tgz", - "integrity": "sha512-dUCXneZ87INUMyQ0D+C0HrEBNUPNXHaPmU5GTjyKTJEiussw9Kaj5Ln8UztPe4epV/ffvgNBEadksdYhmW6xJA==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.2.12.tgz", + "integrity": "sha512-xtX61xg4LKPkPWilZU1ynKClz5Gj4bf74LML4r3eVLWumKnGjoEr1OSHQhMdbBDoYTi+yjrujvpZe2pUnqCrrA==", "cpu": [ "arm64" ], @@ -372,9 +372,9 @@ } }, "node_modules/@rolldown/binding-win32-arm64-msvc": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.2.11.tgz", - "integrity": "sha512-jByxb6qfd+bH1xUd0qnfFnb17i9sWBPY2tOavJ0l3tdr3OTu+Kvtm8cd/JV5nFt657b1VqGltxg9olOEfofXWw==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.2.12.tgz", + "integrity": "sha512-At7fPB6PCaIjzgIhEZFxuT+BBFqiQibJDT4d3PhiR3f4E7bbMZF4aKblbFfEM3sETRDd1YiQx/+U/g/B/ou5Ew==", "cpu": [ "arm64" ], @@ -389,9 +389,9 @@ } }, "node_modules/@rolldown/binding-win32-x64-msvc": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.2.11.tgz", - "integrity": "sha512-/PzKqzAJ03i19oy2ItPvyvaVjOjBCNnfaJs8yvUdGBKmiESgnrJSQ2awd81QzFbbnAmu7YO9ZnJrDCb9VSJPRA==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.2.12.tgz", + "integrity": "sha512-WIw2haVKwjuYdXkHaoC0mF8Le71TuCBxjrdKqLbJGctbBABj+ClfmNvtbOnzpq3RokNo5+V1qhtSzJyXorsklQ==", "cpu": [ "x64" ], @@ -1490,13 +1490,13 @@ } }, "node_modules/rolldown": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.2.11.tgz", - "integrity": "sha512-qpSwIyz0jHQq5qXBTNxFmE6664rJ7O+4TvPFOiOaBSrz8IOHc1koKKSqTM2H6u1UG1+TveuC6vaDHKXFOvb1Kw==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.2.12.tgz", + "integrity": "sha512-8wafseiaG80xmXSfqidUNqZcylTlhmPZZt+za2m+js2sFZ8dTNlhIOV2WcbIPx2hgwPBJpEUGFAMZ9bgBBLTSQ==", "dev": true, "license": "MIT", "dependencies": { - "@oxc-project/types": "=0.151.0", + "@oxc-project/types": "=0.152.0", "@rolldown/pluginutils": "^1.0.0" }, "bin": { @@ -1506,21 +1506,21 @@ "node": "^20.19.0 || >=22.12.0" }, "optionalDependencies": { - "@rolldown/binding-android-arm-eabi": "1.2.11", - "@rolldown/binding-android-arm64": "1.2.11", - "@rolldown/binding-darwin-arm64": "1.2.11", - "@rolldown/binding-darwin-x64": "1.2.11", - "@rolldown/binding-freebsd-x64": "1.2.11", - "@rolldown/binding-linux-arm-gnueabihf": "1.2.11", - "@rolldown/binding-linux-arm64-gnu": "1.2.11", - "@rolldown/binding-linux-arm64-musl": "1.2.11", - "@rolldown/binding-linux-ppc64-gnu": "1.2.11", - "@rolldown/binding-linux-s390x-gnu": "1.2.11", - "@rolldown/binding-linux-x64-gnu": "1.2.11", - "@rolldown/binding-linux-x64-musl": "1.2.11", - "@rolldown/binding-openharmony-arm64": "1.2.11", - "@rolldown/binding-win32-arm64-msvc": "1.2.11", - "@rolldown/binding-win32-x64-msvc": "1.2.11" + "@rolldown/binding-android-arm-eabi": "1.2.12", + "@rolldown/binding-android-arm64": "1.2.12", + "@rolldown/binding-darwin-arm64": "1.2.12", + "@rolldown/binding-darwin-x64": "1.2.12", + "@rolldown/binding-freebsd-x64": "1.2.12", + "@rolldown/binding-linux-arm-gnueabihf": "1.2.12", + "@rolldown/binding-linux-arm64-gnu": "1.2.12", + "@rolldown/binding-linux-arm64-musl": "1.2.12", + "@rolldown/binding-linux-ppc64-gnu": "1.2.12", + "@rolldown/binding-linux-s390x-gnu": "1.2.12", + "@rolldown/binding-linux-x64-gnu": "1.2.12", + "@rolldown/binding-linux-x64-musl": "1.2.12", + "@rolldown/binding-openharmony-arm64": "1.2.12", + "@rolldown/binding-win32-arm64-msvc": "1.2.12", + "@rolldown/binding-win32-x64-msvc": "1.2.12" } }, "node_modules/rxjs": { @@ -1547,9 +1547,9 @@ } }, "node_modules/source-map-js": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", - "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.2.tgz", + "integrity": "sha512-KGj/8Y43x35aZVDtt+J4mK1hoLGHULMYfSkODJNQjNDC3oW1PqPoxMwo0pLUsWM/UEGzON/NxeHywEfNXNP3Vw==", "dev": true, "license": "BSD-3-Clause", "engines": { diff --git a/tests/.pest/shards.json b/tests/.pest/shards.json index e9dbe590d..9114d4afc 100644 --- a/tests/.pest/shards.json +++ b/tests/.pest/shards.json @@ -1,260 +1,263 @@ { "timings": { - "Appmodules\\activity\\tests\\Feature\\Retrospective\\DiscordSourceTest": 6.5172, - "Appmodules\\activity\\tests\\Feature\\TrackContentContributionTest": 0.8445, - "Appmodules\\activity\\tests\\Feature\\Tracking\\ContributionDetailTest": 0.9462, - "Appmodules\\activity\\tests\\Feature\\Tracking\\InteractionVisibilityTest": 0.8703, - "Appmodules\\activity\\tests\\Feature\\Tracking\\ReassignInteractionOwnershipTest": 0.3272, - "Appmodules\\activity\\tests\\Feature\\Tracking\\TrackActivityTest": 0.8117, - "Appmodules\\activity\\tests\\Unit\\Actions\\NewMessageTest": 6.7424, - "Appmodules\\activity\\tests\\Unit\\Actions\\NewVoiceMessageTest": 7.275, - "Appmodules\\activity\\tests\\Unit\\Actions\\RecordVoicePresenceTest": 7.6852, - "Appmodules\\activity\\tests\\Unit\\Queries\\GetCurrentVoiceChannelTest": 7.6166, - "Appmodules\\activity\\tests\\Unit\\Timeline\\CreatePostTest": 6.6552, - "Appmodules\\activity\\tests\\Unit\\Timeline\\CreateReplyTest": 6.4243, - "Appmodules\\activity\\tests\\Unit\\Timeline\\DeleteReplyTest": 6.6011, - "Appmodules\\activity\\tests\\Unit\\Timeline\\PublishModerationEntryTest": 6.9398, - "Appmodules\\activity\\tests\\Unit\\Timeline\\TimelineFeedQueryTest": 6.6387, - "Appmodules\\activity\\tests\\Unit\\Timeline\\TimelineModelTest": 6.3751, - "Appmodules\\activity\\tests\\Unit\\Timeline\\TogglePinPostTest": 6.8291, - "Appmodules\\botdiscord\\tests\\Feature\\Actions\\VoiceChannel\\HandleStateChannelActionTest": 0.4113, - "Appmodules\\botdiscord\\tests\\Feature\\Events\\RawGatewayEventTest": 0.5363, - "Appmodules\\botdiscord\\tests\\Feature\\Listeners\\AutoExecuteActionTest": 0.6339, - "Appmodules\\botdiscord\\tests\\Feature\\Listeners\\NotifyModerationChannelTest": 0.6111, - "Appmodules\\botdiscord\\tests\\Feature\\Moderation\\DiscordModerationAdapterTest": 4.9919, - "Appmodules\\botdiscord\\tests\\Feature\\SlashCommands\\EditProfileCommandTest": 0.515, - "Appmodules\\botdiscord\\tests\\Feature\\SlashCommands\\IntroductionCommandTest": 0.3617, - "Appmodules\\botdiscord\\tests\\Unit\\Actions\\VoiceChannel\\ConfigureEmpresarialRoomActionTest": 0.8986, - "Appmodules\\botdiscord\\tests\\Unit\\Actions\\VoiceChannel\\JoiningChannelActionTest": 0.3855, - "Appmodules\\botdiscord\\tests\\Unit\\Actions\\VoiceChannel\\LeftChannelActionTest": 0.4802, - "Appmodules\\botdiscord\\tests\\Unit\\Actions\\VoiceTransitionResolverTest": 0.6482, - "Appmodules\\botdiscord\\tests\\Unit\\Actions\\Welcome\\SendWelcomeDmActionTest": 0.1949, - "Appmodules\\botdiscord\\tests\\Unit\\BotLocaleTest": 0.2841, - "Appmodules\\botdiscord\\tests\\Unit\\Concerns\\ResolvesGuildIconTest": 0.2162, - "Appmodules\\botdiscord\\tests\\Unit\\Enums\\DiscordErrorCodeTest": 0.3587, - "Appmodules\\botdiscord\\tests\\Unit\\Enums\\EmpresarialRejectionReasonTest": 0.1157, - "Appmodules\\botdiscord\\tests\\Unit\\Moderation\\ModerationEmbedBuilderTest": 6.8241, - "Appmodules\\botdiscord\\tests\\Unit\\SlashCommands\\EditProfileModalValidationTest": 0.605, - "Appmodules\\botdiscord\\tests\\Unit\\Welcome\\WelcomeEmbedBuilderTest": 0.2412, - "Appmodules\\community\\tests\\Feature\\Retrospective\\PublishRetrospectiveTest": 0.2567, - "Appmodules\\community\\tests\\Feature\\Retrospective\\ResolvePeopleAvatarTest": 0.5606, - "Appmodules\\community\\tests\\Feature\\Retrospective\\ResolvePeopleMemberSinceTest": 0.5717, - "Appmodules\\community\\tests\\Feature\\Retrospective\\RetrospectiveModelTest": 1.9959, - "Appmodules\\community\\tests\\Unit\\Retrospective\\CompileSnapshotTest": 0.2245, - "Appmodules\\community\\tests\\Unit\\Retrospective\\ComposeDeckTest": 0.2555, - "Appmodules\\community\\tests\\Unit\\Retrospective\\ComposePromotionsTest": 0.2763, - "Appmodules\\community\\tests\\Unit\\Retrospective\\CoverKindTest": 0.1909, - "Appmodules\\community\\tests\\Unit\\Retrospective\\DeckConfigTest": 0.8198, - "Appmodules\\community\\tests\\Unit\\Retrospective\\RetrospectiveSnapshotTest": 0.4024, - "Appmodules\\community\\tests\\Unit\\Retrospective\\RetrospectiveStatusTest": 0.2141, - "Appmodules\\contents\\tests\\Feature\\ReconcileOrphanEntriesTest": 1.0079, - "Appmodules\\contents\\tests\\Feature\\SyncArticlesCommandTest": 1.3974, - "Appmodules\\contents\\tests\\Feature\\UpsertArticleTest": 1.3697, - "Appmodules\\contents\\tests\\Unit\\ContentProviderTest": 0.2333, - "Appmodules\\contents\\tests\\Unit\\TagListTest": 0.2326, - "Appmodules\\docs\\tests\\Feature\\Discovery\\CacheDocsCommandTest": 2.9513, - "Appmodules\\docs\\tests\\Feature\\Discovery\\DocsRoutingTest": 2.3821, - "Appmodules\\docs\\tests\\Unit\\Discovery\\BuildTreeTest": 0.5857, - "Appmodules\\docs\\tests\\Unit\\Discovery\\DiscoveryIntegrationTest": 0.2897, - "Appmodules\\docs\\tests\\Unit\\Discovery\\DocumentTierTest": 0.5824, - "Appmodules\\docs\\tests\\Unit\\Discovery\\FoundationsTest": 1.1404, - "Appmodules\\docs\\tests\\Unit\\Discovery\\ParsingTest": 0.3974, - "Appmodules\\docs\\tests\\Unit\\Discovery\\StrategiesTest": 0.4906, - "Appmodules\\economy\\tests\\Feature\\EconomyFlowTest": 0.4294, - "Appmodules\\economy\\tests\\Unit\\CreditTest": 7.0403, - "Appmodules\\economy\\tests\\Unit\\DebitTest": 7.126, - "Appmodules\\economy\\tests\\Unit\\TransferTest": 7.418, - "Appmodules\\events\\tests\\Feature\\CheckInActionTest": 1.3662, - "Appmodules\\events\\tests\\Feature\\Closure\\CloseEventActionTest": 31.5599, - "Appmodules\\events\\tests\\Feature\\Closure\\ClosePendingEventsCommandTest": 0.8821, - "Appmodules\\events\\tests\\Feature\\Closure\\OverrideEnrollmentStatusActionTest": 1.5163, - "Appmodules\\events\\tests\\Feature\\Closure\\ProcessEventClosureJobTest": 0.7081, - "Appmodules\\events\\tests\\Feature\\EnrollUserActionTest": 4.3329, - "Appmodules\\events\\tests\\Feature\\Enrollment\\ApproveApplicationActionTest": 1.2637, - "Appmodules\\events\\tests\\Feature\\Enrollment\\EnrollmentPolicyTest": 0.9768, - "Appmodules\\events\\tests\\Feature\\Enrollment\\RejectApplicationActionTest": 0.6501, - "Appmodules\\events\\tests\\Feature\\EventFactoriesTest": 2.212, - "Appmodules\\events\\tests\\Feature\\EventResourceTest": 5.2697, - "Appmodules\\events\\tests\\Feature\\Gallery\\AlbumTest": 6.4678, - "Appmodules\\events\\tests\\Feature\\HandleBotCheckInTest": 2.6573, - "Appmodules\\events\\tests\\Feature\\NumericCodeCheckInActionTest": 2.0784, - "Appmodules\\events\\tests\\Feature\\QrCheckInActionTest": 2.1141, - "Appmodules\\events\\tests\\Unit\\EnrollmentScopeTest": 7.4118, - "Appmodules\\events\\tests\\Unit\\EnrollmentStatusTest": 1.1026, - "Appmodules\\events\\tests\\Unit\\EventStatusTest": 0.5104, - "Appmodules\\gamification\\tests\\Unit\\Character\\GenerateTextExperienceTest": 1.0194, - "Appmodules\\gamification\\tests\\Unit\\Character\\LevelCalculationTest": 2.9712, - "Appmodules\\gamification\\tests\\Unit\\Character\\VoiceExperienceTest": 1.3045, - "Appmodules\\identity\\tests\\Feature\\Auth\\AttachProviderToUserTest": 0.5788, - "Appmodules\\identity\\tests\\Feature\\Auth\\ConfirmOAuthMergeTest": 0.5352, - "Appmodules\\identity\\tests\\Feature\\Auth\\DetectMergeConflictTest": 0.4757, - "Appmodules\\identity\\tests\\Feature\\Auth\\EnrichUserOnFirstLoginTest": 0.7606, - "Appmodules\\identity\\tests\\Feature\\Auth\\FindOrCreateUserByProviderTest": 1.0562, - "Appmodules\\identity\\tests\\Feature\\Auth\\HandleOAuthCallbackActionTest": 0.4067, - "Appmodules\\identity\\tests\\Feature\\Auth\\MergeAccountsActionTest": 1.9737, - "Appmodules\\identity\\tests\\Feature\\Auth\\MobileAuthControllerTest": 1.192, - "Appmodules\\identity\\tests\\Feature\\Auth\\MobileOAuthControllerTest": 0.5141, - "Appmodules\\identity\\tests\\Feature\\Auth\\OAuthControllerTest": 0.2997, - "Appmodules\\identity\\tests\\Feature\\Authorization\\GrantSuperAdminCommandTest": 0.5515, - "Appmodules\\identity\\tests\\Feature\\Authorization\\SuperAdminGateTest": 0.3137, - "Appmodules\\identity\\tests\\Feature\\ExternalIdentity\\ConnectApiKeyIdentityTest": 1.4139, - "Appmodules\\identity\\tests\\Feature\\ExternalIdentity\\ResolveExternalIdentityTest": 0.3106, - "Appmodules\\identity\\tests\\Unit\\Authorization\\UserRoleTest": 0.1819, - "Appmodules\\identity\\tests\\Unit\\ExternalIdentity\\FindExternalIdentityTest": 0.6203, - "Appmodules\\identity\\tests\\Unit\\ExternalIdentity\\IdentityProviderCredentialsTest": 0.6372, - "Appmodules\\identity\\tests\\Unit\\IdentityProviderColorTest": 2.1266, - "Appmodules\\identity\\tests\\Unit\\UserSituationTest": 0.3871, - "Appmodules\\identity\\tests\\Unit\\User\\ProfileImageTest": 0.4965, - "Appmodules\\integrationdevto\\tests\\Feature\\DevToApiKeyClientTest": 0.4041, - "Appmodules\\integrationdevto\\tests\\Feature\\DevToArticleProviderTest": 0.6999, - "Appmodules\\integrationdevto\\tests\\Feature\\DevToOAuthTest": 0.3002, - "Appmodules\\integrationdevto\\tests\\Unit\\DevToArticleMapperTest": 0.9022, - "Appmodules\\integrationdiscord\\tests\\Feature\\ETL\\ImportDiscordMessageTest": 11.9096, - "Appmodules\\integrationdiscord\\tests\\Feature\\ETL\\ImportDiscordProfileTest": 4.189, - "Appmodules\\integrationdiscord\\tests\\Feature\\ETL\\MergeDuplicateDiscordProfilesTest": 3.0321, - "Appmodules\\integrationdiscord\\tests\\Feature\\Models\\DiscordEventLogTest": 0.2693, - "Appmodules\\integrationdiscord\\tests\\Feature\\OAuth\\DiscordOAuthClientTest": 0.6303, - "Appmodules\\integrationdiscord\\tests\\Feature\\Retrospective\\DiscordMembershipDatesTest": 0.5377, - "Appmodules\\integrationdiscord\\tests\\Unit\\DiscordMessageAdapterTest": 3.5295, - "Appmodules\\integrationdiscord\\tests\\Unit\\DiscordUserSnapshotTest": 0.1997, - "Appmodules\\integrationdiscord\\tests\\Unit\\Enums\\DiscordEventTypeTest": 0.2266, - "Appmodules\\integrationdiscord\\tests\\Unit\\Sync\\PurgeUnusedInvitesActionTest": 17.3318, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\DiscordConnectorTest": 0.2851, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\DiscordRoleResolverTest": 0.4492, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\CreateBanTest": 0.2652, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\CreateDmChannelTest": 0.2769, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\CreateMessageTest": 0.3459, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\DeleteInviteTest": 0.1732, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\DeleteMessageTest": 0.2126, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\ExchangeCodeForTokenTest": 0.3536, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\GetCurrentUserTest": 0.3207, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\GetMemberTest": 0.1824, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\ListGuildInvitesTest": 0.1991, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\ModifyMemberTest": 0.3073, - "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\RemoveMemberTest": 0.2027, - "Appmodules\\integrationgithub\\tests\\Feature\\BackfillGithubCommandTest": 0.6755, - "Appmodules\\integrationgithub\\tests\\Feature\\BackfillGithubRepositoryJobTest": 0.3108, - "Appmodules\\integrationgithub\\tests\\Feature\\BackfillRepositoryTest": 3.0649, - "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\AdoptGithubContributionsTest": 0.8942, - "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\ProjectGithubContributionsCommandTest": 0.7648, - "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\RecordContributionSeamTest": 0.8196, - "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\ResolveContributorIdentityTest": 0.9006, - "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\TrackGithubContributionTest": 1.7975, - "Appmodules\\integrationgithub\\tests\\Feature\\GitHubOAuthClientTest": 0.4926, - "Appmodules\\integrationgithub\\tests\\Feature\\GithubContributionTest": 0.4118, - "Appmodules\\integrationgithub\\tests\\Feature\\GithubRepositoryTest": 0.5387, - "Appmodules\\integrationgithub\\tests\\Feature\\GithubWebhookTest": 1.9985, - "Appmodules\\integrationgithub\\tests\\Feature\\Retrospective\\GithubSourceTest": 3.914, - "Appmodules\\integrationtwitch\\tests\\Feature\\LinkTwitchChannelCommandTest": 0.3254, - "Appmodules\\integrationtwitch\\tests\\Feature\\RegisterTwitchSubscriptionsActionTest": 0.2904, - "Appmodules\\integrationtwitch\\tests\\Feature\\SubscribeTwitchEventsCommandTest": 0.9093, - "Appmodules\\integrationtwitch\\tests\\Feature\\TwitchAppTokenServiceTest": 0.2097, - "Appmodules\\integrationtwitch\\tests\\Feature\\TwitchWebhookTest": 1.1777, - "Appmodules\\integrationwhatsapp\\tests\\Feature\\Ingest\\StoreWhatsAppEventActionTest": 1.0131, - "Appmodules\\integrationwhatsapp\\tests\\Feature\\Ingest\\WebhookIngestTest": 1.5988, - "Appmodules\\marketing\\tests\\Feature\\CreateShortLinkTest": 1.2148, - "Appmodules\\marketing\\tests\\Feature\\RecordShortLinkClickTest": 2.282, - "Appmodules\\marketing\\tests\\Feature\\ResolveShortLinkTest": 1.729, - "Appmodules\\marketing\\tests\\Feature\\UpdateShortLinkTest": 1.2991, - "Appmodules\\marketing\\tests\\Unit\\DestinationUrlValidatorTest": 0.7561, - "Appmodules\\marketing\\tests\\Unit\\SlugGeneratorTest": 0.5905, - "Appmodules\\marketing\\tests\\Unit\\TagListTest": 1.4403, - "Appmodules\\marketing\\tests\\Unit\\UtmParametersTest": 1.6148, - "Appmodules\\moderation\\tests\\Feature\\AppealWorkflowTest": 1.0437, - "Appmodules\\moderation\\tests\\Feature\\Appeals\\FileAppealTest": 1.3089, - "Appmodules\\moderation\\tests\\Feature\\Appeals\\ReviewAppealTest": 1.1084, - "Appmodules\\moderation\\tests\\Feature\\Audit\\AuditLogTest": 0.6769, - "Appmodules\\moderation\\tests\\Feature\\CaseWorkflowTest": 0.7862, - "Appmodules\\moderation\\tests\\Feature\\Cases\\SubmitReportTest": 2.1863, - "Appmodules\\moderation\\tests\\Feature\\Classification\\RouteDecisionTest": 5.9711, - "Appmodules\\moderation\\tests\\Feature\\Classification\\RuleBasedClassifierTest": 1.2165, - "Appmodules\\moderation\\tests\\Feature\\Enforcement\\ExecuteActionTest": 1.2836, - "Appmodules\\moderation\\tests\\Feature\\ModelRelationshipTest": 1.6405, - "Appmodules\\moderation\\tests\\Feature\\PipelineTest": 1.4628, - "Appmodules\\moderation\\tests\\Feature\\Pipeline\\ClassifyAndRouteTest": 0.583, - "Appmodules\\moderation\\tests\\Feature\\Pipeline\\ScreenContentTest": 0.5451, - "Appmodules\\moderation\\tests\\Feature\\Pipeline\\SubmitForModerationTest": 0.5419, - "Appmodules\\moderation\\tests\\Feature\\Platform\\WebAdapterTest": 2.1133, - "Appmodules\\moderation\\tests\\Unit\\ClassifierTest": 1.2513, - "Appmodules\\moderation\\tests\\Unit\\DTOTest": 0.7403, - "Appmodules\\moderation\\tests\\Unit\\EnumTest": 0.6208, - "Appmodules\\moderation\\tests\\Unit\\ModerationRuleMatchTest": 0.8894, - "Appmodules\\moderation\\tests\\Unit\\PenaltyAdvisorTest": 2.4153, - "Appmodules\\moderation\\tests\\Unit\\PlatformRegistryTest": 0.3279, - "Appmodules\\moderation\\tests\\Unit\\RouteCaseActionTest": 1.1415, - "Appmodules\\paneladmin\\tests\\Feature\\AdminLoginCredentialGateTest": 0.4259, - "Appmodules\\paneladmin\\tests\\Feature\\AdminPanelAccessTest": 1.0993, - "Appmodules\\paneladmin\\tests\\Feature\\Albums\\AlbumResourceTest": 7.1453, - "Appmodules\\paneladmin\\tests\\Feature\\Contents\\ContentEntryResourceTest": 4.5635, - "Appmodules\\paneladmin\\tests\\Feature\\Contributions\\ActivityTimelineWidgetTest": 2.3149, - "Appmodules\\paneladmin\\tests\\Feature\\Discord\\DiscordClusterSmokeTest": 4.4836, - "Appmodules\\paneladmin\\tests\\Feature\\Github\\GithubRepositoryResourceTest": 1.6, - "Appmodules\\paneladmin\\tests\\Feature\\Identity\\ExternalIdentityResourceTest": 1.5431, - "Appmodules\\paneladmin\\tests\\Feature\\Identity\\UserResourceTest": 7.7723, - "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\CommunityActivityStatsTest": 0.2943, - "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\LocationDashboardTest": 0.2663, - "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\MeetingShowcasePageTest": 1.1522, - "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\MembersByStateTest": 0.3409, - "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\PeriodStatsTest": 0.2409, - "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\ShortLinkResourceTest": 7.8161, - "Appmodules\\paneladmin\\tests\\Feature\\Moderation\\AppealQueueTest": 3.3765, - "Appmodules\\paneladmin\\tests\\Feature\\Moderation\\ModerationDashboardTest": 4.3705, - "Appmodules\\paneladmin\\tests\\Feature\\Moderation\\ModerationQueueTest": 3.3832, - "Appmodules\\paneladmin\\tests\\Feature\\Moderation\\TestRuleActionTest": 1.2809, - "Appmodules\\paneladmin\\tests\\Feature\\NavigationGroupsTest": 0.909, - "Appmodules\\paneladmin\\tests\\Feature\\Profile\\ProfileResourceTest": 3.8638, - "Appmodules\\paneladmin\\tests\\Feature\\Profile\\SkillResourceTest": 4.4432, - "Appmodules\\paneladmin\\tests\\Feature\\Retrospective\\BuildDeckTest": 12.7739, - "Appmodules\\paneladmin\\tests\\Feature\\Retrospective\\RetrospectiveResourceTest": 1.6344, - "Appmodules\\paneladmin\\tests\\Feature\\Twitch\\ConnectTwitchActionTest": 0.4412, - "Appmodules\\paneladmin\\tests\\Feature\\Twitch\\RegisterSubscriptionsActionTest": 0.4893, - "Appmodules\\paneladmin\\tests\\Unit\\Retrospective\\DeckStructureTest": 0.4644, - "Appmodules\\panelapp\\tests\\Feature\\Auth\\CredentialLoginGateTest": 0.3635, - "Appmodules\\panelapp\\tests\\Feature\\Auth\\LastAuthProviderTest": 0.9936, - "Appmodules\\panelapp\\tests\\Feature\\ConnectionHubTest": 2.857, - "Appmodules\\panelapp\\tests\\Feature\\Events\\ApplicationEnrollmentTest": 2.5886, - "Appmodules\\panelapp\\tests\\Feature\\Events\\NumericCodeCheckInTest": 0.6884, - "Appmodules\\panelapp\\tests\\Feature\\Events\\RsvpEnrollmentTest": 3.5275, - "Appmodules\\panelapp\\tests\\Feature\\ProfileMediaTest": 7.8877, - "Appmodules\\panelapp\\tests\\Feature\\ProfilePageTest": 8.6407, - "Appmodules\\panelapp\\tests\\Feature\\Timeline\\ThreadPageTest": 1.9784, - "Appmodules\\panelapp\\tests\\Unit\\UnconvertedImageSizeTest": 0.3334, - "Appmodules\\portal\\tests\\Feature\\ArticlesPageTest": 2.2087, - "Appmodules\\portal\\tests\\Feature\\CommunityRetrospectivePageTest": 2.8157, - "Appmodules\\portal\\tests\\Feature\\ContributionPanoramaTest": 2.5207, - "Appmodules\\portal\\tests\\Feature\\Gallery\\GalleryPageTest": 6.206, - "Appmodules\\portal\\tests\\Feature\\HeroAvatarsTest": 1.1828, - "Appmodules\\portal\\tests\\Feature\\HomepageTest": 1.4162, - "Appmodules\\portal\\tests\\Feature\\PortalRoutesTest": 0.7077, - "Appmodules\\portal\\tests\\Feature\\PromotionSectionTest": 0.6034, - "Appmodules\\portal\\tests\\Feature\\RetrospectiveSlidesTest": 1.5086, - "Appmodules\\portal\\tests\\Feature\\SeoHeadTest": 2.0862, - "Appmodules\\portal\\tests\\Feature\\ShortLinkRedirectTest": 1.9292, - "Appmodules\\portal\\tests\\Feature\\SocialLinksPageTest": 1.0189, - "Appmodules\\portal\\tests\\Unit\\SlideViewTest": 0.4081, - "Appmodules\\profile\\tests\\Feature\\ProfileCreationTest": 0.4787, - "Appmodules\\profile\\tests\\Feature\\ProfilePreferencesTest": 0.4979, - "Appmodules\\profile\\tests\\Feature\\ProfileWorkExperiencesTest": 0.3608, - "Appmodules\\profile\\tests\\Feature\\SkillSearchTest": 0.2971, - "Appmodules\\profile\\tests\\Feature\\SyncProfileSkillsTest": 1.1697, - "Appmodules\\profile\\tests\\Feature\\ToggleAvailabilityTest": 0.7025, - "Appmodules\\profile\\tests\\Feature\\UpsertProfileTest": 1.4533, - "Appmodules\\profile\\tests\\Feature\\WorkExperienceFactoryTest": 1.1006, - "Appmodules\\profile\\tests\\Unit\\ProfileEnumTest": 0.4055, - "Appmodules\\profile\\tests\\Unit\\ProfileSocialLinksTest": 0.1065, - "Appmodules\\profile\\tests\\Unit\\SkillEnumTest": 0.1654, - "Appmodules\\profile\\tests\\Unit\\SocialPlatformTest": 0.9617, - "Appmodules\\profile\\tests\\Unit\\WorkExperienceTest": 0.2607, - "Appmodules\\profile\\tests\\Unit\\WorkPreferencesTest": 0.482, - "Tests\\Arch\\NoLooseArrayCastsTest": 0.3898, - "Tests\\Feature\\AddressTest": 0.9803, - "Tests\\Feature\\ConnectionHubMergeModalTest": 0.3689, - "Tests\\Feature\\Geo\\GeoLocationTest": 0.8227, - "Tests\\Feature\\LocaleSwitcherTest": 0.6955, - "Tests\\Feature\\PanelRobotsTest": 0.6482, - "Tests\\Feature\\RetrospectiveDemoSeederTest": 19.4223, - "Tests\\Unit\\UploadLimitTest": 0.4904 + "Appmodules\\activity\\tests\\Feature\\Http\\MobileTimelineControllerTest": 1.1251, + "Appmodules\\activity\\tests\\Feature\\Retrospective\\DiscordSourceTest": 4.3192, + "Appmodules\\activity\\tests\\Feature\\TrackContentContributionTest": 0.5646, + "Appmodules\\activity\\tests\\Feature\\Tracking\\ContributionDetailTest": 0.6092, + "Appmodules\\activity\\tests\\Feature\\Tracking\\InteractionVisibilityTest": 0.573, + "Appmodules\\activity\\tests\\Feature\\Tracking\\ReassignInteractionOwnershipTest": 0.191, + "Appmodules\\activity\\tests\\Feature\\Tracking\\TrackActivityTest": 0.5051, + "Appmodules\\activity\\tests\\Unit\\Actions\\NewMessageTest": 4.4956, + "Appmodules\\activity\\tests\\Unit\\Actions\\NewVoiceMessageTest": 4.5939, + "Appmodules\\activity\\tests\\Unit\\Actions\\RecordVoicePresenceTest": 5.0523, + "Appmodules\\activity\\tests\\Unit\\Queries\\GetCurrentVoiceChannelTest": 4.8564, + "Appmodules\\activity\\tests\\Unit\\Timeline\\CreatePostTest": 4.536, + "Appmodules\\activity\\tests\\Unit\\Timeline\\CreateReplyTest": 4.4465, + "Appmodules\\activity\\tests\\Unit\\Timeline\\DeleteReplyTest": 4.4799, + "Appmodules\\activity\\tests\\Unit\\Timeline\\PublishModerationEntryTest": 4.5264, + "Appmodules\\activity\\tests\\Unit\\Timeline\\TimelineFeedQueryTest": 4.6165, + "Appmodules\\activity\\tests\\Unit\\Timeline\\TimelineModelTest": 4.3866, + "Appmodules\\activity\\tests\\Unit\\Timeline\\TogglePinPostTest": 4.5435, + "Appmodules\\botdiscord\\tests\\Feature\\Actions\\VoiceChannel\\HandleStateChannelActionTest": 0.2675, + "Appmodules\\botdiscord\\tests\\Feature\\Events\\RawGatewayEventTest": 0.3635, + "Appmodules\\botdiscord\\tests\\Feature\\Listeners\\AutoExecuteActionTest": 0.4013, + "Appmodules\\botdiscord\\tests\\Feature\\Listeners\\NotifyModerationChannelTest": 0.4121, + "Appmodules\\botdiscord\\tests\\Feature\\Moderation\\DiscordModerationAdapterTest": 3.3582, + "Appmodules\\botdiscord\\tests\\Feature\\SlashCommands\\EditProfileCommandTest": 0.3385, + "Appmodules\\botdiscord\\tests\\Feature\\SlashCommands\\IntroductionCommandTest": 0.2587, + "Appmodules\\botdiscord\\tests\\Unit\\Actions\\VoiceChannel\\ConfigureEmpresarialRoomActionTest": 0.6859, + "Appmodules\\botdiscord\\tests\\Unit\\Actions\\VoiceChannel\\JoiningChannelActionTest": 0.437, + "Appmodules\\botdiscord\\tests\\Unit\\Actions\\VoiceChannel\\LeftChannelActionTest": 0.4485, + "Appmodules\\botdiscord\\tests\\Unit\\Actions\\VoiceTransitionResolverTest": 0.5969, + "Appmodules\\botdiscord\\tests\\Unit\\Actions\\Welcome\\SendWelcomeDmActionTest": 0.1276, + "Appmodules\\botdiscord\\tests\\Unit\\BotLocaleTest": 0.1987, + "Appmodules\\botdiscord\\tests\\Unit\\Concerns\\ResolvesGuildIconTest": 0.1816, + "Appmodules\\botdiscord\\tests\\Unit\\Enums\\DiscordErrorCodeTest": 0.2837, + "Appmodules\\botdiscord\\tests\\Unit\\Enums\\EmpresarialRejectionReasonTest": 0.0946, + "Appmodules\\botdiscord\\tests\\Unit\\Moderation\\ModerationEmbedBuilderTest": 4.4138, + "Appmodules\\botdiscord\\tests\\Unit\\SlashCommands\\EditProfileModalValidationTest": 0.485, + "Appmodules\\botdiscord\\tests\\Unit\\Welcome\\WelcomeEmbedBuilderTest": 0.2405, + "Appmodules\\community\\tests\\Feature\\Retrospective\\PublishRetrospectiveTest": 0.2046, + "Appmodules\\community\\tests\\Feature\\Retrospective\\ResolvePeopleAvatarTest": 0.3581, + "Appmodules\\community\\tests\\Feature\\Retrospective\\ResolvePeopleMemberSinceTest": 0.3727, + "Appmodules\\community\\tests\\Feature\\Retrospective\\RetrospectiveModelTest": 1.2403, + "Appmodules\\community\\tests\\Unit\\Retrospective\\CompileSnapshotTest": 0.1817, + "Appmodules\\community\\tests\\Unit\\Retrospective\\ComposeDeckTest": 0.1839, + "Appmodules\\community\\tests\\Unit\\Retrospective\\ComposePromotionsTest": 0.2367, + "Appmodules\\community\\tests\\Unit\\Retrospective\\CoverKindTest": 0.1537, + "Appmodules\\community\\tests\\Unit\\Retrospective\\DeckConfigTest": 0.6612, + "Appmodules\\community\\tests\\Unit\\Retrospective\\RetrospectiveSnapshotTest": 0.3014, + "Appmodules\\community\\tests\\Unit\\Retrospective\\RetrospectiveStatusTest": 0.1741, + "Appmodules\\contents\\tests\\Feature\\ReconcileOrphanEntriesTest": 0.5806, + "Appmodules\\contents\\tests\\Feature\\SyncArticlesCommandTest": 1.1681, + "Appmodules\\contents\\tests\\Feature\\UpsertArticleTest": 0.8053, + "Appmodules\\contents\\tests\\Unit\\ContentProviderTest": 0.1736, + "Appmodules\\contents\\tests\\Unit\\TagListTest": 0.1702, + "Appmodules\\docs\\tests\\Feature\\Discovery\\CacheDocsCommandTest": 2.0121, + "Appmodules\\docs\\tests\\Feature\\Discovery\\DocsRoutingTest": 1.5554, + "Appmodules\\docs\\tests\\Unit\\Discovery\\BuildTreeTest": 0.4393, + "Appmodules\\docs\\tests\\Unit\\Discovery\\DiscoveryIntegrationTest": 0.2203, + "Appmodules\\docs\\tests\\Unit\\Discovery\\DocumentTierTest": 0.4312, + "Appmodules\\docs\\tests\\Unit\\Discovery\\FoundationsTest": 0.8009, + "Appmodules\\docs\\tests\\Unit\\Discovery\\ParsingTest": 0.286, + "Appmodules\\docs\\tests\\Unit\\Discovery\\StrategiesTest": 0.3462, + "Appmodules\\economy\\tests\\Feature\\EconomyFlowTest": 0.2522, + "Appmodules\\economy\\tests\\Unit\\CreditTest": 4.0164, + "Appmodules\\economy\\tests\\Unit\\DebitTest": 4.1152, + "Appmodules\\economy\\tests\\Unit\\TransferTest": 4.0821, + "Appmodules\\events\\tests\\Feature\\CheckInActionTest": 0.7945, + "Appmodules\\events\\tests\\Feature\\Closure\\CloseEventActionTest": 23.991, + "Appmodules\\events\\tests\\Feature\\Closure\\ClosePendingEventsCommandTest": 0.5017, + "Appmodules\\events\\tests\\Feature\\Closure\\OverrideEnrollmentStatusActionTest": 0.9434, + "Appmodules\\events\\tests\\Feature\\Closure\\ProcessEventClosureJobTest": 0.447, + "Appmodules\\events\\tests\\Feature\\EnrollUserActionTest": 2.9205, + "Appmodules\\events\\tests\\Feature\\Enrollment\\ApproveApplicationActionTest": 0.7932, + "Appmodules\\events\\tests\\Feature\\Enrollment\\EnrollmentPolicyTest": 0.6417, + "Appmodules\\events\\tests\\Feature\\Enrollment\\RejectApplicationActionTest": 0.4084, + "Appmodules\\events\\tests\\Feature\\EventFactoriesTest": 1.5171, + "Appmodules\\events\\tests\\Feature\\EventResourceTest": 3.5109, + "Appmodules\\events\\tests\\Feature\\Gallery\\AlbumTest": 4.4875, + "Appmodules\\events\\tests\\Feature\\HandleBotCheckInTest": 1.8895, + "Appmodules\\events\\tests\\Feature\\NumericCodeCheckInActionTest": 1.4575, + "Appmodules\\events\\tests\\Feature\\QrCheckInActionTest": 1.4926, + "Appmodules\\events\\tests\\Unit\\EnrollmentScopeTest": 4.1523, + "Appmodules\\events\\tests\\Unit\\EnrollmentStatusTest": 0.7175, + "Appmodules\\events\\tests\\Unit\\EventStatusTest": 0.3154, + "Appmodules\\gamification\\tests\\Unit\\Character\\GenerateTextExperienceTest": 0.6313, + "Appmodules\\gamification\\tests\\Unit\\Character\\LevelCalculationTest": 1.4392, + "Appmodules\\gamification\\tests\\Unit\\Character\\VoiceExperienceTest": 0.6919, + "Appmodules\\identity\\tests\\Feature\\Auth\\AttachProviderToUserTest": 0.3667, + "Appmodules\\identity\\tests\\Feature\\Auth\\ConfirmOAuthMergeTest": 0.371, + "Appmodules\\identity\\tests\\Feature\\Auth\\DetectMergeConflictTest": 0.3745, + "Appmodules\\identity\\tests\\Feature\\Auth\\EnrichUserOnFirstLoginTest": 0.5902, + "Appmodules\\identity\\tests\\Feature\\Auth\\FindOrCreateUserByProviderTest": 0.7932, + "Appmodules\\identity\\tests\\Feature\\Auth\\HandleOAuthCallbackActionTest": 0.3128, + "Appmodules\\identity\\tests\\Feature\\Auth\\MergeAccountsActionTest": 1.3746, + "Appmodules\\identity\\tests\\Feature\\Auth\\MobileAuthControllerTest": 0.8738, + "Appmodules\\identity\\tests\\Feature\\Auth\\MobileOAuthControllerTest": 0.4089, + "Appmodules\\identity\\tests\\Feature\\Auth\\OAuthControllerTest": 0.2067, + "Appmodules\\identity\\tests\\Feature\\Authorization\\GrantSuperAdminCommandTest": 0.3942, + "Appmodules\\identity\\tests\\Feature\\Authorization\\SuperAdminGateTest": 0.2403, + "Appmodules\\identity\\tests\\Feature\\ExternalIdentity\\ConnectApiKeyIdentityTest": 0.9652, + "Appmodules\\identity\\tests\\Feature\\ExternalIdentity\\ResolveExternalIdentityTest": 0.2195, + "Appmodules\\identity\\tests\\Feature\\User\\FilamentAvatarUrlTest": 0.8181, + "Appmodules\\identity\\tests\\Unit\\Authorization\\UserRoleTest": 0.096, + "Appmodules\\identity\\tests\\Unit\\ExternalIdentity\\FindExternalIdentityTest": 0.3505, + "Appmodules\\identity\\tests\\Unit\\ExternalIdentity\\IdentityProviderCredentialsTest": 0.4052, + "Appmodules\\identity\\tests\\Unit\\IdentityProviderColorTest": 1.2267, + "Appmodules\\identity\\tests\\Unit\\UserSituationTest": 0.2326, + "Appmodules\\identity\\tests\\Unit\\User\\ProfileImageTest": 0.3275, + "Appmodules\\integrationdevto\\tests\\Feature\\DevToApiKeyClientTest": 0.3116, + "Appmodules\\integrationdevto\\tests\\Feature\\DevToArticleProviderTest": 0.4332, + "Appmodules\\integrationdevto\\tests\\Feature\\DevToOAuthTest": 0.2165, + "Appmodules\\integrationdevto\\tests\\Unit\\DevToArticleMapperTest": 0.523, + "Appmodules\\integrationdiscord\\tests\\Feature\\ETL\\ImportDiscordMessageTest": 7.7243, + "Appmodules\\integrationdiscord\\tests\\Feature\\ETL\\ImportDiscordProfileTest": 2.8334, + "Appmodules\\integrationdiscord\\tests\\Feature\\ETL\\MergeDuplicateDiscordProfilesTest": 2.0863, + "Appmodules\\integrationdiscord\\tests\\Feature\\Models\\DiscordEventLogTest": 0.177, + "Appmodules\\integrationdiscord\\tests\\Feature\\OAuth\\DiscordOAuthClientTest": 0.4074, + "Appmodules\\integrationdiscord\\tests\\Feature\\Retrospective\\DiscordMembershipDatesTest": 0.3827, + "Appmodules\\integrationdiscord\\tests\\Unit\\DiscordMessageAdapterTest": 2.0446, + "Appmodules\\integrationdiscord\\tests\\Unit\\DiscordUserSnapshotTest": 0.0874, + "Appmodules\\integrationdiscord\\tests\\Unit\\Enums\\DiscordEventTypeTest": 0.1067, + "Appmodules\\integrationdiscord\\tests\\Unit\\Sync\\PurgeUnusedInvitesActionTest": 14.3215, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\DiscordConnectorTest": 0.1625, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\DiscordRoleResolverTest": 0.2672, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\CreateBanTest": 0.1538, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\CreateDmChannelTest": 0.1506, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\CreateMessageTest": 0.1521, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\DeleteInviteTest": 0.101, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\DeleteMessageTest": 0.0877, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\ExchangeCodeForTokenTest": 0.1479, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\GetCurrentUserTest": 0.1558, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\GetMemberTest": 0.0983, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\ListGuildInvitesTest": 0.0967, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\ModifyMemberTest": 0.141, + "Appmodules\\integrationdiscord\\tests\\Unit\\Transport\\Requests\\RemoveMemberTest": 0.0965, + "Appmodules\\integrationgithub\\tests\\Feature\\BackfillGithubCommandTest": 0.4506, + "Appmodules\\integrationgithub\\tests\\Feature\\BackfillGithubRepositoryJobTest": 0.1995, + "Appmodules\\integrationgithub\\tests\\Feature\\BackfillRepositoryTest": 2.0655, + "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\AdoptGithubContributionsTest": 0.6144, + "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\ProjectGithubContributionsCommandTest": 0.5605, + "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\RecordContributionSeamTest": 0.5822, + "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\ResolveContributorIdentityTest": 0.643, + "Appmodules\\integrationgithub\\tests\\Feature\\Contributions\\TrackGithubContributionTest": 1.219, + "Appmodules\\integrationgithub\\tests\\Feature\\GitHubOAuthClientTest": 0.3747, + "Appmodules\\integrationgithub\\tests\\Feature\\GithubContributionTest": 0.3021, + "Appmodules\\integrationgithub\\tests\\Feature\\GithubRepositoryTest": 0.377, + "Appmodules\\integrationgithub\\tests\\Feature\\GithubWebhookTest": 1.362, + "Appmodules\\integrationgithub\\tests\\Feature\\Retrospective\\GithubSourceTest": 2.6402, + "Appmodules\\integrationtwitch\\tests\\Feature\\LinkTwitchChannelCommandTest": 0.2268, + "Appmodules\\integrationtwitch\\tests\\Feature\\RegisterTwitchSubscriptionsActionTest": 0.2104, + "Appmodules\\integrationtwitch\\tests\\Feature\\SubscribeTwitchEventsCommandTest": 0.6185, + "Appmodules\\integrationtwitch\\tests\\Feature\\TwitchAppTokenServiceTest": 0.1473, + "Appmodules\\integrationtwitch\\tests\\Feature\\TwitchWebhookTest": 0.8059, + "Appmodules\\integrationwhatsapp\\tests\\Feature\\Ingest\\StoreWhatsAppEventActionTest": 0.6894, + "Appmodules\\integrationwhatsapp\\tests\\Feature\\Ingest\\WebhookIngestTest": 1.0999, + "Appmodules\\marketing\\tests\\Feature\\CreateShortLinkTest": 0.827, + "Appmodules\\marketing\\tests\\Feature\\RecordShortLinkClickTest": 1.539, + "Appmodules\\marketing\\tests\\Feature\\ResolveShortLinkTest": 1.1465, + "Appmodules\\marketing\\tests\\Feature\\UpdateShortLinkTest": 0.8581, + "Appmodules\\marketing\\tests\\Unit\\DestinationUrlValidatorTest": 0.3783, + "Appmodules\\marketing\\tests\\Unit\\SlugGeneratorTest": 0.2748, + "Appmodules\\marketing\\tests\\Unit\\TagListTest": 0.692, + "Appmodules\\marketing\\tests\\Unit\\UtmParametersTest": 0.8853, + "Appmodules\\moderation\\tests\\Feature\\AppealWorkflowTest": 0.6882, + "Appmodules\\moderation\\tests\\Feature\\Appeals\\FileAppealTest": 0.8714, + "Appmodules\\moderation\\tests\\Feature\\Appeals\\ReviewAppealTest": 0.6948, + "Appmodules\\moderation\\tests\\Feature\\Audit\\AuditLogTest": 0.4645, + "Appmodules\\moderation\\tests\\Feature\\CaseWorkflowTest": 0.6048, + "Appmodules\\moderation\\tests\\Feature\\Cases\\SubmitReportTest": 1.5959, + "Appmodules\\moderation\\tests\\Feature\\Classification\\RouteDecisionTest": 3.5402, + "Appmodules\\moderation\\tests\\Feature\\Classification\\RuleBasedClassifierTest": 0.8082, + "Appmodules\\moderation\\tests\\Feature\\Enforcement\\ExecuteActionTest": 0.848, + "Appmodules\\moderation\\tests\\Feature\\ModelRelationshipTest": 1.0322, + "Appmodules\\moderation\\tests\\Feature\\PipelineTest": 1.1308, + "Appmodules\\moderation\\tests\\Feature\\Pipeline\\ClassifyAndRouteTest": 0.3914, + "Appmodules\\moderation\\tests\\Feature\\Pipeline\\ScreenContentTest": 0.3827, + "Appmodules\\moderation\\tests\\Feature\\Pipeline\\SubmitForModerationTest": 0.3307, + "Appmodules\\moderation\\tests\\Feature\\Platform\\WebAdapterTest": 1.3888, + "Appmodules\\moderation\\tests\\Unit\\ClassifierTest": 0.6169, + "Appmodules\\moderation\\tests\\Unit\\DTOTest": 0.3723, + "Appmodules\\moderation\\tests\\Unit\\EnumTest": 0.3187, + "Appmodules\\moderation\\tests\\Unit\\ModerationRuleMatchTest": 0.4461, + "Appmodules\\moderation\\tests\\Unit\\PenaltyAdvisorTest": 1.4378, + "Appmodules\\moderation\\tests\\Unit\\PlatformRegistryTest": 0.1752, + "Appmodules\\moderation\\tests\\Unit\\RouteCaseActionTest": 0.5961, + "Appmodules\\paneladmin\\tests\\Feature\\AdminLoginCredentialGateTest": 0.2937, + "Appmodules\\paneladmin\\tests\\Feature\\AdminPanelAccessTest": 0.77, + "Appmodules\\paneladmin\\tests\\Feature\\Albums\\AlbumResourceTest": 4.7241, + "Appmodules\\paneladmin\\tests\\Feature\\Contents\\ContentEntryResourceTest": 2.8162, + "Appmodules\\paneladmin\\tests\\Feature\\Contributions\\ActivityTimelineWidgetTest": 1.402, + "Appmodules\\paneladmin\\tests\\Feature\\Discord\\DiscordClusterSmokeTest": 2.8695, + "Appmodules\\paneladmin\\tests\\Feature\\Github\\GithubRepositoryResourceTest": 1.0528, + "Appmodules\\paneladmin\\tests\\Feature\\Identity\\ExternalIdentityResourceTest": 0.917, + "Appmodules\\paneladmin\\tests\\Feature\\Identity\\UserResourceTest": 4.834, + "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\CommunityActivityStatsTest": 0.1837, + "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\LocationDashboardTest": 0.1461, + "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\MeetingShowcasePageTest": 0.794, + "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\MembersByStateTest": 0.2322, + "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\PeriodStatsTest": 0.1671, + "Appmodules\\paneladmin\\tests\\Feature\\Marketing\\ShortLinkResourceTest": 4.945, + "Appmodules\\paneladmin\\tests\\Feature\\Moderation\\AppealQueueTest": 2.0886, + "Appmodules\\paneladmin\\tests\\Feature\\Moderation\\ModerationDashboardTest": 2.8581, + "Appmodules\\paneladmin\\tests\\Feature\\Moderation\\ModerationQueueTest": 2.2566, + "Appmodules\\paneladmin\\tests\\Feature\\Moderation\\TestRuleActionTest": 0.8256, + "Appmodules\\paneladmin\\tests\\Feature\\NavigationGroupsTest": 0.603, + "Appmodules\\paneladmin\\tests\\Feature\\Profile\\ProfileResourceTest": 2.4667, + "Appmodules\\paneladmin\\tests\\Feature\\Profile\\SkillResourceTest": 2.7602, + "Appmodules\\paneladmin\\tests\\Feature\\Retrospective\\BuildDeckTest": 9.4086, + "Appmodules\\paneladmin\\tests\\Feature\\Retrospective\\RetrospectiveResourceTest": 1.0888, + "Appmodules\\paneladmin\\tests\\Feature\\Twitch\\ConnectTwitchActionTest": 0.337, + "Appmodules\\paneladmin\\tests\\Feature\\Twitch\\RegisterSubscriptionsActionTest": 0.2073, + "Appmodules\\paneladmin\\tests\\Unit\\Retrospective\\DeckStructureTest": 0.2934, + "Appmodules\\panelapp\\tests\\Feature\\Auth\\CredentialLoginGateTest": 0.291, + "Appmodules\\panelapp\\tests\\Feature\\Auth\\LastAuthProviderTest": 0.6149, + "Appmodules\\panelapp\\tests\\Feature\\ConnectionHubTest": 1.7769, + "Appmodules\\panelapp\\tests\\Feature\\Events\\ApplicationEnrollmentTest": 1.5665, + "Appmodules\\panelapp\\tests\\Feature\\Events\\NumericCodeCheckInTest": 0.3938, + "Appmodules\\panelapp\\tests\\Feature\\Events\\RsvpEnrollmentTest": 2.0613, + "Appmodules\\panelapp\\tests\\Feature\\ProfileMediaTest": 5.8344, + "Appmodules\\panelapp\\tests\\Feature\\ProfilePageTest": 6.3281, + "Appmodules\\panelapp\\tests\\Feature\\Timeline\\ThreadPageTest": 1.1463, + "Appmodules\\panelapp\\tests\\Unit\\UnconvertedImageSizeTest": 0.1889, + "Appmodules\\portal\\tests\\Feature\\ArticlesPageTest": 1.3936, + "Appmodules\\portal\\tests\\Feature\\CommunityRetrospectivePageTest": 1.8651, + "Appmodules\\portal\\tests\\Feature\\ContributionPanoramaTest": 1.5129, + "Appmodules\\portal\\tests\\Feature\\Gallery\\GalleryPageTest": 4.6921, + "Appmodules\\portal\\tests\\Feature\\HeroAvatarsTest": 0.7386, + "Appmodules\\portal\\tests\\Feature\\HomepageTest": 1.0516, + "Appmodules\\portal\\tests\\Feature\\PortalRoutesTest": 0.4991, + "Appmodules\\portal\\tests\\Feature\\PromotionSectionTest": 0.4323, + "Appmodules\\portal\\tests\\Feature\\RetrospectiveSlidesTest": 1.1291, + "Appmodules\\portal\\tests\\Feature\\SeoHeadTest": 1.5754, + "Appmodules\\portal\\tests\\Feature\\ShortLinkRedirectTest": 1.3255, + "Appmodules\\portal\\tests\\Feature\\SocialLinksPageTest": 0.7719, + "Appmodules\\portal\\tests\\Unit\\SlideViewTest": 0.2379, + "Appmodules\\profile\\tests\\Feature\\Http\\MobileProfileControllerTest": 0.3496, + "Appmodules\\profile\\tests\\Feature\\ProfileCreationTest": 0.3217, + "Appmodules\\profile\\tests\\Feature\\ProfilePreferencesTest": 0.3408, + "Appmodules\\profile\\tests\\Feature\\ProfileWorkExperiencesTest": 0.2684, + "Appmodules\\profile\\tests\\Feature\\SkillSearchTest": 0.1972, + "Appmodules\\profile\\tests\\Feature\\SyncProfileSkillsTest": 0.8698, + "Appmodules\\profile\\tests\\Feature\\ToggleAvailabilityTest": 0.5271, + "Appmodules\\profile\\tests\\Feature\\UpsertProfileTest": 1.0693, + "Appmodules\\profile\\tests\\Feature\\WorkExperienceFactoryTest": 0.8035, + "Appmodules\\profile\\tests\\Unit\\ProfileEnumTest": 0.2372, + "Appmodules\\profile\\tests\\Unit\\ProfileSocialLinksTest": 0.0463, + "Appmodules\\profile\\tests\\Unit\\SkillEnumTest": 0.101, + "Appmodules\\profile\\tests\\Unit\\SocialPlatformTest": 0.6168, + "Appmodules\\profile\\tests\\Unit\\WorkExperienceTest": 0.1803, + "Appmodules\\profile\\tests\\Unit\\WorkPreferencesTest": 0.258, + "Tests\\Arch\\NoLooseArrayCastsTest": 0.2982, + "Tests\\Feature\\AddressTest": 0.5726, + "Tests\\Feature\\ConnectionHubMergeModalTest": 0.1583, + "Tests\\Feature\\Geo\\GeoLocationTest": 0.4929, + "Tests\\Feature\\LocaleSwitcherTest": 0.4598, + "Tests\\Feature\\PanelRobotsTest": 0.3846, + "Tests\\Feature\\RetrospectiveDemoSeederTest": 13.5131, + "Tests\\Unit\\UploadLimitTest": 0.5168 }, - "checksum": "b9e818c65e8963f95263e3a52c10e605", - "updated_at": "2026-09-29T21:59:42+00:00" + "checksum": "acb3a3f59e753daa6cc807c1ec3fb201", + "updated_at": "2026-10-04T17:58:57+00:00" }