Laravel Translations UI package provides a user-friendly interface for managing translations in your Laravel application. It simplifies tasks such as adding, editing, deleting, and exporting translations. The package also includes a handy search feature and the ability to invite collaborators for easy translation management
I had a translation file which was called pages/auth and every time I try to import or export the translations the file name will be converted to pagauth in the Spanish Language for some reason,
until I went through the package file and found this line:
$filePath = str_replace('.'.$extension, '', str_replace($locale.DIRECTORY_SEPARATOR, '', $file));
in the SyncPhrasesAction file
which in my case will replace the es/ part with nothing in this file pages/auth to become pagauth.
after playing around with the code I found out it's meant to replace the first part of the translations file as it'll be passed to the SyncPhrasesAction as es/pages/auth.php so there no need to use the aggressive str_replace and instead use preg_replace with the ^ flag will make the function make sure that it's searching for the locale name in the start of the file name instead of the whole file name
I need to explain the case clearly
I had a translation file which was called pages/auth and every time I try to import or export the translations the file name will be converted to pagauth in the Spanish Language for some reason,
until I went through the package file and found this line: $filePath = str_replace('.'.$extension, '', str_replace($locale.DIRECTORY_SEPARATOR, '', $file)); in the SyncPhrasesAction file
which in my case will replace the es/ part with nothing in this file pages/auth to become pagauth.
after playing around with the code I found out it's meant to replace the first part of the translations file as it'll be passed to the SyncPhrasesAction as
es/pages/auth.php
so there no need to use the aggressivestr_replace
and instead usepreg_replace
with the^
flag will make the function make sure that it's searching for the locale name in the start of the file name instead of the whole file name