Add icon to all Create buttons in list views

This commit is contained in:
Nisse Lommerde 2025-02-11 21:40:22 -05:00
parent 16e17de6fb
commit e45041566a
19 changed files with 63 additions and 24 deletions

View File

@ -29,6 +29,7 @@ enum IconEnum: string
case TRASH = 'lucide-trash-2'; case TRASH = 'lucide-trash-2';
case SAVE = 'lucide-save'; case SAVE = 'lucide-save';
case COPY = 'lucide-copy'; case COPY = 'lucide-copy';
case NEW = 'lucide-plus';
// Invoice Status // Invoice Status
case UNPAID = 'lucide-circle-x'; case UNPAID = 'lucide-circle-x';

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\ContactResource\Pages; namespace App\Filament\Admin\Resources\ContactResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Resources\ContactResource; use App\Filament\Resources\ContactResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ListRecords;
@ -13,7 +14,8 @@ class ListContacts extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\CustomerResource\Pages; namespace App\Filament\Admin\Resources\CustomerResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\CustomerResource; use App\Filament\Admin\Resources\CustomerResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ListRecords;
@ -13,7 +14,8 @@ class ListCustomers extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\CustomerResource\RelationManagers; namespace App\Filament\Admin\Resources\CustomerResource\RelationManagers;
use App\Enums\IconEnum;
use Filament\Forms\Components\TextInput; use Filament\Forms\Components\TextInput;
use Filament\Forms\Form; use Filament\Forms\Form;
use Filament\Resources\RelationManagers\RelationManager; use Filament\Resources\RelationManagers\RelationManager;
@ -41,7 +42,8 @@ public function table(Table $table): Table
// //
]) ])
->headerActions([ ->headerActions([
Tables\Actions\CreateAction::make(), Tables\Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]) ])
->actions([ ->actions([
Tables\Actions\EditAction::make(), Tables\Actions\EditAction::make(),

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\CustomerResource\RelationManagers; namespace App\Filament\Admin\Resources\CustomerResource\RelationManagers;
use App\Enums\IconEnum;
use Filament\Forms; use Filament\Forms;
use Filament\Forms\Form; use Filament\Forms\Form;
use Filament\Resources\RelationManagers\RelationManager; use Filament\Resources\RelationManagers\RelationManager;
@ -40,7 +41,8 @@ public function table(Table $table): Table
// //
]) ])
->headerActions([ ->headerActions([
Tables\Actions\CreateAction::make(), Tables\Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]) ])
->actions([ ->actions([
// Tables\Actions\EditAction::make(), // Tables\Actions\EditAction::make(),

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\InvoiceReportResource\Pages; namespace App\Filament\Admin\Resources\InvoiceReportResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\InvoiceReportResource; use App\Filament\Admin\Resources\InvoiceReportResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ListRecords;
@ -15,7 +16,8 @@ class ListInvoiceReports extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -6,6 +6,7 @@
use App\Models\InvoiceReport; use App\Models\InvoiceReport;
use Filament\Actions\Action; use Filament\Actions\Action;
use Filament\Resources\Pages\ViewRecord; use Filament\Resources\Pages\ViewRecord;
use Illuminate\Contracts\Support\Htmlable;
class ViewInvoiceReport extends ViewRecord class ViewInvoiceReport extends ViewRecord
{ {
@ -13,6 +14,11 @@ class ViewInvoiceReport extends ViewRecord
protected static ?string $title = 'View Invoice Report'; protected static ?string $title = 'View Invoice Report';
public function getTitle(): string|Htmlable
{
return parent::getTitle().' '.$this->record->internal_id;
}
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [

View File

@ -37,7 +37,8 @@ public function getTabs(): array
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -18,7 +18,8 @@ class ListOrders extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\OrderResource\RelationManagers; namespace App\Filament\Admin\Resources\OrderResource\RelationManagers;
use App\Enums\IconEnum;
use Filament\Forms; use Filament\Forms;
use Filament\Forms\Form; use Filament\Forms\Form;
use Filament\Resources\RelationManagers\RelationManager; use Filament\Resources\RelationManagers\RelationManager;
@ -35,15 +36,18 @@ public function table(Table $table): Table
// //
]) ])
->headerActions([ ->headerActions([
Tables\Actions\CreateAction::make(), Tables\Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]) ])
->actions([ ->actions([
Tables\Actions\EditAction::make(), Tables\Actions\EditAction::make(),
Tables\Actions\DeleteAction::make(), Tables\Actions\DeleteAction::make()
->icon(IconEnum::TRASH->value),
]) ])
->bulkActions([ ->bulkActions([
Tables\Actions\BulkActionGroup::make([ Tables\Actions\BulkActionGroup::make([
Tables\Actions\DeleteBulkAction::make(), Tables\Actions\DeleteBulkAction::make()
->icon(IconEnum::TRASH->value),
]), ]),
]); ]);
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\PackingSlipResource\Pages; namespace App\Filament\Admin\Resources\PackingSlipResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\PackingSlipResource; use App\Filament\Admin\Resources\PackingSlipResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\EditRecord; use Filament\Resources\Pages\EditRecord;
@ -13,7 +14,8 @@ class EditPackingSlip extends EditRecord
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\DeleteAction::make(), Actions\DeleteAction::make()
->icon(IconEnum::TRASH->value),
]; ];
} }
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\PackingSlipResource\Pages; namespace App\Filament\Admin\Resources\PackingSlipResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\PackingSlipResource; use App\Filament\Admin\Resources\PackingSlipResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ListRecords;
@ -13,7 +14,8 @@ class ListPackingSlips extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -28,7 +28,8 @@ protected function getHeaderActions(): array
->send(); ->send();
}), }),
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\QuoteResource\Pages; namespace App\Filament\Admin\Resources\QuoteResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\QuoteResource; use App\Filament\Admin\Resources\QuoteResource;
use App\Models\Quote; use App\Models\Quote;
use Filament\Actions; use Filament\Actions;
@ -12,20 +13,26 @@ class EditQuote extends EditRecord
{ {
protected static string $resource = QuoteResource::class; protected static string $resource = QuoteResource::class;
public function getTitle(): string|\Illuminate\Contracts\Support\Htmlable
{
return parent::getTitle().' '.$this->record->getKey();
}
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Action::make('save') Action::make('save')
->label('Save changes') ->label('Save changes')
->action('save') ->action('save')
->icon('lucide-save'), ->icon(IconEnum::SAVE->value),
Action::make('print') Action::make('print')
->icon('lucide-printer') ->icon(IconEnum::PRINT->value)
->url(fn (Quote $record) => route('pdf.quote', $record)) ->url(fn (Quote $record) => route('pdf.quote', $record))
->openUrlInNewTab(), ->openUrlInNewTab(),
Actions\DeleteAction::make(), Actions\DeleteAction::make()
->icon(IconEnum::TRASH->value),
]; ];
} }
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\QuoteResource\Pages; namespace App\Filament\Admin\Resources\QuoteResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\QuoteResource; use App\Filament\Admin\Resources\QuoteResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ListRecords;
@ -13,7 +14,8 @@ class ListQuotes extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\ShippingEntryResource\Pages; namespace App\Filament\Admin\Resources\ShippingEntryResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\ShippingEntryResource; use App\Filament\Admin\Resources\ShippingEntryResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ListRecords;
@ -13,7 +14,8 @@ class ListShippingEntries extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\TaxRateResource\Pages; namespace App\Filament\Admin\Resources\TaxRateResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\TaxRateResource; use App\Filament\Admin\Resources\TaxRateResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ListRecords;
@ -13,7 +14,8 @@ class ListTaxRates extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()
->icon(IconEnum::NEW->value),
]; ];
} }
} }

View File

@ -2,6 +2,7 @@
namespace App\Filament\Admin\Resources\UserResource\Pages; namespace App\Filament\Admin\Resources\UserResource\Pages;
use App\Enums\IconEnum;
use App\Filament\Admin\Resources\UserResource; use App\Filament\Admin\Resources\UserResource;
use Filament\Actions; use Filament\Actions;
use Filament\Resources\Pages\ListRecords; use Filament\Resources\Pages\ListRecords;
@ -14,6 +15,7 @@ protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make() Actions\CreateAction::make()
->icon(IconEnum::NEW->value)
->modal(), ->modal(),
]; ];
} }

View File

@ -2,7 +2,6 @@
namespace App\Providers; namespace App\Providers;
use Illuminate\Pagination\Paginator;
use Illuminate\Support\ServiceProvider; use Illuminate\Support\ServiceProvider;
class AppServiceProvider extends ServiceProvider class AppServiceProvider extends ServiceProvider
@ -18,8 +17,5 @@ public function register(): void
/** /**
* Bootstrap any application services. * Bootstrap any application services.
*/ */
public function boot(): void public function boot(): void {}
{
Paginator::useBootstrapFive();
}
} }