modstore / laravel-enum-js
Package to generate javascript versions of your PHP enum files to be used in your js builds etc.
Installs: 53 717
Dependents: 0
Suggesters: 0
Security: 0
Stars: 14
Watchers: 1
Forks: 6
Open Issues: 1
Requires
- php: ^7.1|^8.0|^8.1
- illuminate/support: >=6.0
Requires (Dev)
- orchestra/testbench: ^4.0|^6.24|^7.6
- phpunit/phpunit: ^8.0
README
Package to generate javascript versions of your PHP enum files to be used in your js builds etc. Works with Php8.1+ enums, constants in your PHP files, or you can use a package such as https://github.com/BenSampo/laravel-enum
Installation
You can install the package via composer:
composer require modstore/laravel-enum-js
Publish the config:
php artisan vendor:publish --provider="Modstore\LaravelEnumJs\LaravelEnumJsServiceProvider"
Usage
Create a storage location, the path the generated files will be saved to.
// config/filesystems.php ... 'disks' => [ 'enum-js' => [ 'driver' => 'local', 'root' => resource_path() . '/js/enums', ], ], ...
Check the other configuration options in the config file.
You can generate the js files by running the following Artisan command:
php artisan enum-js:generate
NOTE: When developing, if you create a new file, you will likely need to dump the autoload files before this command will pick it up, e.g.
composer dump-autoload php artisan enum-js:generate
You can then use the generated files in your javascript like so:
import * as Status from '../enums/Status' if (this.status === Status.Active) { // Do something. }
Testing
composer test
Changelog
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.