lucasgiovanny/filament-inline-translate-field

Create a beautiful key-value field to allow users to enter all possible language values for a field on the same page

v1.0.1 2023-02-24 15:52 UTC

This package is auto-updated.

Last update: 2024-05-15 11:04:19 UTC


README

Latest Version on Packagist Total Downloads

Create a beautiful key-value field to allow users to enter all possible language values for a field on the same page

image

Installation

  1. You can install the package via composer:
composer require lucasgiovanny/filament-inline-translate-field
  1. Configure you model, as defined on spatie/laravel-translatable documentation:
  • Add the Spatie\Translatable\HasTranslations trait to the model that is going to use this field.
  • Next, you should create a public property $translatable which holds an array with all the names of attributes you wish to make translatable.
  • Finally, you should make sure that all translatable attributes are set to the json-datatype in your database. If your database doesn't support json-columns, use text.
use Illuminate\Database\Eloquent\Model;
use Spatie\Translatable\HasTranslations;

class Activity extends Model
{
    use HasTranslations;

    public $translatable = ['name'];
}
  1. Publish the configuration file to set the available languages:
php artisan vendor:publish --tag="filament-inline-translate-field-config"
return [
    'available_locales' => [
        'en' => 'English',
        'fr' => 'French',
        'es' => 'Spanish',
    ],
];

Optionally, you can publish the translation files:

php artisan vendor:publish --tag="filament-inline-translate-field-translations

Usage

use LucasGiovanny\FilamentInlineTranslateField\Forms\Components\Fields\InlineTranslateField;

return $form
    ->schema([
        InlineTranslateField::make('name'),
    ]);

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.