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.

Installs: 5

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/a-sabagh/laravel-enhance-enums

dev-main 2025-10-02 13:08 UTC

This package is auto-updated.

Last update: 2025-10-02 13:09:28 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 "پیش نویس"