Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/operativeit/nova-signature
Digital Signature component for Laravel Nova 4
https://github.com/operativeit/nova-signature
Last synced: about 2 months ago
JSON representation
Digital Signature component for Laravel Nova 4
- Host: GitHub
- URL: https://github.com/operativeit/nova-signature
- Owner: operativeit
- License: mit
- Created: 2023-09-11T17:07:42.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-01-06T19:19:16.000Z (about 1 year ago)
- Last Synced: 2024-10-13T01:20:10.970Z (3 months ago)
- Language: Vue
- Size: 317 KB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
Awesome Lists containing this project
README
# Laravel Nova 4 Signature
This [Nova](https://nova.laravel.com/) field lets you save a signature as a field for your resource.
It's based on the work of [lab404/nova-signature](https://packagist.org/packages/lab404/nova-signature) that works only with Nova 3 as fare as I know.![signature 1](https://github.com/operativeit/nova-signature/assets/188766/0d46c72d-987d-4d3c-a0cf-5edcdd18efb8)
[![Latest Version on Packagist](https://img.shields.io/packagist/v/operativeit/nova-signature.svg?style=flat-square)](https://packagist.org/packages/operativeit/nova-signature)
[![Total Downloads](https://img.shields.io/packagist/dt/operativeit/nova-signature.svg?style=flat-square)](https://packagist.org/packages/operativeit/nova-signature)
![GitHub forks](https://img.shields.io/github/forks/operativeit/nova-signature)
![GitHub issues](https://img.shields.io/github/issues/operativeit/nova-signature)
[![License](https://img.shields.io/packagist/l/operativeit/nova-signature)](https://github.com/operativeit/nova-signature/blob/master/LICENSE.md)Behind the scenes [WangShayne/vue3-signature](https://github.com/WangShayne/vue3-signature) is used.
Note that vue3-signature doesn't expose all signature pad components so to get it working with our component it was required to patch library to propagate "begin" and "end" event to parent component as I was unable to use a watcher as in the previous version [WangShayne/vue3-signature](https://github.com/WangShayne/vue3-signature).
Here our patched fork [operativeit/vue3-signature](https://github.com/operativeit/vue3-signature).
## Installation
`composer require eom-plus/nova-signature`
## Usage
In your nova resource make the field `EomPlus\NovaSignature\Signature`.
This field fits perfectly with a `TEXT` column as it store data in base64 format and can be used both for resources and actions.```php
use EomPlus\NovaSignature\Signature;// ...
public function fields()
{
return [
// ...
Signature::make('Signature'),
// ...
];
}
```## Configuration
Showed example values are the default ones.
```php
Signature::make('Signature')
->color('black') // (string) Any css compatible value: "red", "rgb(0, 0, 0)", ...
->bgColor('white') // (string) Same as 'color'
->width('100%') // (string) Any css compatible value: "100%", "200px", ...
->height('250px') // (string) Same as 'width'
->asSvg() // Save image as SVG format, you can use asJpg() to save as JPEG instead. By default format is PNG.
```### Validation
You can use the `signature` validation rules to check if the signature is valid.
We also provide the `validSignature` method that adds `nullable` and `signature` rules.```php
// With validSignature()
Signature::make('Signature')
->validSignature() // 'nullable' and 'signature' rules// Your own rules
Signature::make('Signature')
->rules('signature', ...)
```
### TranslationsCurrenlty we have include french, spanish and english translations.
If you want to add more language you publish translations with the following command```
php artisan vendor:publish --provider=EomPlus\NovaSignature\FieldServiceProvider --tags=translations
```If you add more languages don't hesitate to send us a PR.
## ⭐️ Show Your Support
Please give a ⭐️ if this project helped you!
### Other Packages You Might Like
- [Nova Rating Field](https://github.com/operativeit/nova-rating-field) - A Star rating Nova 4 field to use in your Laravel Nova apps.
- [Nova Feedback Field](https://github.com/operativeit/nova-feedback-field) - An Emoji feedback Nova 4 field to use in your Laravel Nova apps.
- [Nova Input Group](https://github.com/operativeit/nova-input-group) - A Laravel Nova 4 text field formatted as input group
- [Nova Signature](https://github.com/operativeit/nova-signature) - A Laravel Nova 4 signature pad
Take a look to our Github repositories as we have a lot of forked nova components with fixes that are still not merge into main owner branch.## License
The MIT License (MIT). Please see [License File](https://github.com/operativeit/nova-signature/blob/master/LICENSE.md) for more information.