66 lines
2.9 KiB
Markdown
66 lines
2.9 KiB
Markdown
# Laravel Collective to Spatie Laravel HTML Adapter
|
|
|
|
This package serves as an adapter to help projects that depend on the obsolete `laravel-collective/html` library. It provides an interface that uses the same syntax as the `Form` class of `laravel-collective/html` to create HTML elements. Under the hood, it utilizes the `spatie/laravel-html` library, which is actively maintained, to generate the HTML elements. This allows projects to update to newer Laravel versions without changing the HTML creation syntax.
|
|
|
|
## Features
|
|
- Zero configuration needed, works out of the box.
|
|
- Uses the same syntax as `laravel-collective/html`.
|
|
- Leverages the actively maintained `spatie/laravel-html` library.
|
|
|
|
## Available Methods
|
|
The following methods can be used and are located in the `src/FormAdapter` directory:
|
|
|
|
- `checkbox($name, $value = 1, $checked = null, $options = [])`
|
|
- `open(array $options = [])`
|
|
- `label($name, $value = null, $options = [], $escape_html = true)`
|
|
- `text($name, $value = null, $options = [])`
|
|
- `password($name, $options = [])`
|
|
- `select($name, $list = [], $selected = null, array $selectAttributes = [], array $optionsAttributes = [], array $optgroupsAttributes = [])`
|
|
- `radio($name, $value = null, $checked = null, $options = [])`
|
|
- `submit($value = null, $options = [])`
|
|
- `close()`
|
|
- `input($type, $name, $value = null, $options = [])`
|
|
- `search($name, $value = null, $options = [])`
|
|
- `model($model, array $options = [])`
|
|
- `hidden($name, $value = null, $options = [])`
|
|
- `email($name, $value = null, $options = [])`
|
|
- `tel($name, $value = null, $options = [])`
|
|
- `number($name, $value = null, $options = [])`
|
|
- `date($name, $value = null, $options = [])`
|
|
- `datetime($name, $value = null, $options = [])`
|
|
- `datetimeLocal($name, $value = null, $options = [])`
|
|
- `time($name, $value = null, $options = [])`
|
|
- `url($name, $value = null, $options = [])`
|
|
- `file($name, $options = [])`
|
|
- `textarea($name, $value = null, $options = [])`
|
|
- `reset($value, $attributes = [])`
|
|
- `image($url, $name = null, $attributes = [])`
|
|
- `color($name, $value = null, $options = [])`
|
|
- `button($value = null, $options = [])`
|
|
|
|
## Installation
|
|
|
|
To install the package, use composer:
|
|
|
|
```sh
|
|
composer require alban/laravel-collective-spatie-html-parser
|
|
```
|
|
|
|
## Usage
|
|
|
|
The methods listed above can be used in the same way as you would use the Form class from laravel-collective. Here is an example in a Blade template:
|
|
|
|
```php
|
|
{{-- Using the FormAdapter class in a Blade template --}}
|
|
{!! Form::text('relationship', $item->client->agent_relationship, ['required', 'class' => 'form-control input-sm']) !!}
|
|
```
|
|
|
|
For more examples, please refer to the source code in the `src/FormAdapter.php` class file.
|
|
|
|
## License
|
|
|
|
This package is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).
|
|
|
|
## Contributing
|
|
|
|
You are welcome to contribute to this project. Please refer to the [contributing guidelines](CONTRIBUTING.md) for more information.
|