$article->languages can be ['es','de'] and sometimes it can be ['fr','nl'].. etc. Now, i worked with spatie/laravel-translatable in the past with no problem at all, when getTranslatableLocales() has a fixed set of languages, but when trying to populate the locale switcher dynamically by $article->languages - it fallbacks to the default config once language is changed. ArticleResource.php - Actions\LocaleSwitcher::make() on getHeaderActions()) - the $recordId is emptied, hence it retrieves the $defaultLnaguages instead. I guess there's a more way to access the current record instead of request()->route('record')