a-sabagh / laravel-enhance-enums
There is no license information available for the latest version (dev-main) of this package.
A lightweight Laravel package that adds a reusable Translatable trait for handling model translations with clean, consistent syntax.
dev-main
2025-10-02 13:08 UTC
Requires
- php: ^8.1
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0|^12.0
Requires (Dev)
- laravel/pint: ^1.24
- orchestra/testbench: ^4.0|^5.0|^6.0|^7.0|^8.0|^9.0|^10.0
- phpunit/phpunit: ^8.0|^9.3|^10.4|^11.5
This package is auto-updated.
Last update: 2026-03-02 14:03:13 UTC
README
A small Laravel package that adds translation support for PHP 8.1+ Enums.
Installation
Require the package via composer:
composer require a-sabagh/laravel-enhance-enums
Usage
1. Create an Enum
<?php namespace App\Enums; use Enhance\Enums\Concerns\Translatable; enum PostStatus: string { use Translatable; case PUBLISH = 'publish'; case DRAFT = 'draft'; }
2. Add Translations
Create a language file in your package or application:
lang/fa/enums.php
<?php use App\Enums\PostStatus; return [ PostStatus::class => [ 'publish' => 'منتشر شده', 'draft' => 'پیش نویس', ], ];
3. Call translate()
PostStatus::PUBLISH->translate(); // returns "منتشر شده" PostStatus::DRAFT->translate(); // returns "پیش نویس"