codebar-ag / laravel-filament-revealable-field
This is my package laravel-filament-revealable-field
Fund package maintenance!
CodebarAg
Installs: 1 010
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Requires
- php: ^8.2
- filament/infolists: ^4.0
- illuminate/contracts: ^12.0
- livewire/livewire: ^3.6
- spatie/laravel-package-tools: ^1.19
Requires (Dev)
- larastan/larastan: ^v3.1
- laravel/pint: ^1.21
- nunomaduro/collision: ^8.1.1
- orchestra/testbench: ^10.0
- pestphp/pest: ^3.7
- pestphp/pest-plugin-arch: ^3.0
- pestphp/pest-plugin-laravel: ^3.1
- phpstan/extension-installer: ^1.4
- phpstan/phpstan-deprecation-rules: ^2.0
- phpstan/phpstan-phpunit: ^2.0
- spatie/laravel-ray: ^1.39
This package is auto-updated.
Last update: 2025-07-15 12:37:55 UTC
README
π‘ What is Filament Revealable Field?
Filament Revealable Field is an Infolist Field for toggling the visibility of sensitive data. It provides a secure way to display confidential information that can be revealed on demand, with optional copy-to-clipboard functionality.
π Requirements
Package | PHP | Laravel | Filament Infolists |
---|---|---|---|
v13.0.0 (alpha) | ^8.3 | ^13.x | ^4.0 |
v12.0.0 | ^8.2 | ^12.x | ^3.0 |
v2.0.0 | ^8.2 - ^8.3 | 11.x | ^3.2 |
v1.0.0 | ^8.2 - ^8.3 | 11.x | ^3.2 |
βοΈ Installation
You can install the package via composer:
composer require codebar-ag/laravel-filament-revealable-field
CSS Setup
Add the following to your resources/css/app.css
file:
@source '../../vendor/codebar-ag/laravel-filament-revealable-field/src/Infolists/Components/RevealableEntry.php';
Usage
Infolists:
use CodebarAg\FilamentRevealableField\Infolists\Components\RevealableEntry; ... public function infolist(Infolist $infolist): Infolist { return $infolist ->schema([ RevealableEntry::make('revealable') ->label('REVEALABLE') ->copyable() // Enable copy functionality ->copyMessage('Value copied!') // Custom copy message ->copyableState('Custom copy text'); // Custom text to copy ]); } ...
π Features
Revealable Content
- Click the eye icon to toggle visibility of sensitive data
- Hidden content is displayed as asterisks (
********
) - Secure by default - content is hidden until explicitly revealed
Copyable Content
- Enable copy-to-clipboard functionality with
->copyable()
- Customize copy message with
->copyMessage('Custom message')
- Set custom text to copy with
->copyableState('Custom text')
- Set copy message duration with
->copyMessageDuration(3000)
Available Methods
RevealableEntry::make('field_name') ->label('Field Label') ->copyable() // Enable copy functionality ->copyMessage('Value copied to clipboard!') // Custom success message ->copyableState('Custom text to copy') // Custom text to copy (defaults to field value) ->copyMessageDuration(3000); // Message duration in milliseconds (default: 2000)
π§ Testing
Copy your own phpunit.xml-file.
cp phpunit.xml.dist phpunit.xml
Run the tests:
./vendor/bin/pest
π Changelog
Please see CHANGELOG for recent changes.
βοΈ Contributing
Please see CONTRIBUTING for details.
composer test
Code Style
./vendor/bin/pint
π§βπ» Security Vulnerabilities
Please review our security policy on reporting security vulnerabilities.
π Credits
- Rhys Lees
- Sebastian Fix
- All Contributors
- Skeleton Repository from Spatie
- Laravel Package Training from Spatie
π License
The MIT License (MIT). Please have a look at License File for more information.