husam-tariq/filament-timepicker
Forms\Components\TimePickerField), aligning with Filament’s declarative field system.24-hour format, AM/PM toggle, custom labels), reducing frontend complexity for time-related form fields.filament/filament (core dependency).filament/filament to a compatible version in composer.json.DateTime and user locale. Ensure consistency with app-wide timezone settings (e.g., config/app.php).after: for time ranges).aria-label for custom labels).12-hour/24-hour toggle, or fixed formats? Customize via config() or publish views.collective/html or custom Blade components if not using Filament.vue-timepicker).DatePicker, Select) for compound time/date inputs.modifyQueryUsing or mutateFormDataUsing for backend logic.text fields with manual parsing) to identify replacement candidates.<input type="text" name="start_time"> with TimePickerField::make('start_time').composer require husam-tariq/filament-timepicker
php artisan vendor:publish --tag="filament-timepicker-views"
use HusamTariq\FilamentTimePicker\Forms\Components\TimePickerField;
TimePickerField::make('appointment_time')
->label('Appointment Time')
->required()
->hours(24) // Optional: Force 24-hour format
->minutes(30); // Optional: Increment by 30 mins
2025-09-23 14:30:00 format).composer.json for required Filament version (e.g., ^3.0).TIME or DATETIME in MySQL/PostgreSQL.TimePickerField for time inputs").husam-tariq/filament-timepicker for updates (MIT license allows forks if needed).composer.json to avoid surprises:
"husam-tariq/filament-timepicker": "^1.0"
storage/logs/laravel.log) for field registration errors.Carbon vs. database timezone).| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Package incompatibility | Broken time inputs | Pin version, test in staging |
| Timezone misconfiguration | Incorrect time storage/retrieval | Standardize config/app.php timezone |
| Filament update breaks field | Form submission errors | Check changelog, extend field if needed |
| JavaScript errors | Non-functional timepicker | Fallback to <input type="time"> (polyfill) |
| Database schema mismatch | Query failures | Ensure TIME/DATETIME columns match format |
TimePickerField").// Time range validation
TimePickerField::make('end_time')
->rules(['after:start_time'])
->required();
How can I help you explore Laravel packages today?