From 686cda21bf78cd893a4373af6abc1e87e06834f0 Mon Sep 17 00:00:00 2001 From: Nisse Lommerde Date: Tue, 11 Feb 2025 14:50:09 -0500 Subject: [PATCH] Moved hard-coded icon names to IconEnum --- app/Enums/IconEnum.php | 68 +++++++++++++++++++++++++---------- app/Enums/InvoiceStatus.php | 6 ++-- app/Enums/OrderAttributes.php | 14 ++++---- app/Enums/OrderStatus.php | 10 +++--- app/Enums/ShippingType.php | 8 ++--- 5 files changed, 69 insertions(+), 37 deletions(-) diff --git a/app/Enums/IconEnum.php b/app/Enums/IconEnum.php index 86838ac..b8c3207 100644 --- a/app/Enums/IconEnum.php +++ b/app/Enums/IconEnum.php @@ -4,23 +4,55 @@ enum IconEnum: string { - case DEFAULT = 'heroicon-o-rectangle-stack'; - case INVOICE = 'lucide-file-text'; - case ORDER = 'lucide-shopping-cart'; - case QUOTE = 'lucide-quote'; - case CUSTOMER = 'lucide-building'; - case PACKING_SLIP = 'lucide-package'; - case SHIPPING_ENTRY = 'lucide-truck'; - case USER = 'lucide-users'; - case TAX_RATE = 'lucide-circle-dollar-sign'; + // Sidebar Icons + case DEFAULT = 'heroicon-o-rectangle-stack'; + case INVOICE = 'lucide-file-text'; + case ORDER = 'lucide-shopping-cart'; + case QUOTE = 'lucide-quote'; + case CUSTOMER = 'lucide-building'; + case PACKING_SLIP = 'lucide-package'; + case SHIPPING_ENTRY = 'lucide-truck'; + case USER = 'lucide-users'; + case TAX_RATE = 'lucide-circle-dollar-sign'; + case PRODUCT_SERVICE = 'heroicon-o-rectangle'; + case CUSTOMER_SALES = 'lucide-book-user'; + case INVOICE_REPORT = 'lucide-file-spreadsheet'; + case DISTRIBUTE_PAYMENTS = 'lucide-rotate-cw'; - case PRODUCT_SERVICE = 'heroicon-o-rectangle'; - case CUSTOMER_SALES = 'lucide-book-user'; - case INVOICE_REPORT = 'lucide-files'; - case TAB_ALL = 'lucide-layout-grid'; - case TAB_OVERDUE = 'lucide-calendar-clock'; - case PRINT = 'lucide-printer'; - case TRASH = 'lucide-trash-2'; - case SAVE = 'lucide-save'; - case COPY = 'lucide-copy'; + + // Tabs + case TAB_ALL = 'lucide-layout-grid'; + case TAB_OVERDUE = 'lucide-calendar-clock'; + + // Action Icons + case PRINT = 'lucide-printer'; + case TRASH = 'lucide-trash-2'; + case SAVE = 'lucide-save'; + case COPY = 'lucide-copy'; + + // Invoice Status + case UNPAID = 'lucide-circle-x'; + case PAID = 'lucide-circle-check'; + case VOID = 'lucide-circle-slash'; + + // Order Attributes + case NEW_ART = 'lucide-brush'; + case REPEAT = 'lucide-files'; + case RUSH = 'lucide-bell-ring'; + case EVENT = 'lucide-calendar-range'; + case DIGITIZING = 'lucide-computer'; + case GARMENTS = 'lucide-shirt'; + case SUPPLIED_FILE = 'lucide-file-check'; + + // Order Status + case DRAFT = 'lucide-pencil'; + case APPROVED = 'lucide-check-check'; + case PRODUCTION = 'lucide-refresh-cw'; + case SHIPPED = 'lucide-send'; + case INVOICED = 'lucide-credit-card'; + + // Shipping Types (THEY_SHIP => SHIPPING_ENTRY) + case WE_SHIP = 'lucide-house'; + case PICKUP = 'lucide-handshake'; + case SHIPPING_OTHER = 'lucide-ellipsis'; } diff --git a/app/Enums/InvoiceStatus.php b/app/Enums/InvoiceStatus.php index 10052c7..e3aaf0f 100644 --- a/app/Enums/InvoiceStatus.php +++ b/app/Enums/InvoiceStatus.php @@ -29,9 +29,9 @@ public function getColor(): string|array|null public function getIcon(): ?string { return match ($this) { - self::UNPAID => 'lucide-circle-x', - self::PAID => 'lucide-circle-check', - self::VOID => 'lucide-circle-slash', + self::UNPAID => IconEnum::UNPAID->value, + self::PAID => IconEnum::PAID->value, + self::VOID => IconEnum::VOID->value, }; } } diff --git a/app/Enums/OrderAttributes.php b/app/Enums/OrderAttributes.php index 050e63d..d04affb 100644 --- a/app/Enums/OrderAttributes.php +++ b/app/Enums/OrderAttributes.php @@ -23,13 +23,13 @@ public function getLabel(): ?string public function getIcon(): ?string { return match ($this) { - self::new_art => 'lucide-brush', - self::repeat => 'lucide-files', - self::rush => 'lucide-bell-ring', - self::event => 'lucide-calendar-range', - self::digitizing => 'lucide-computer', - self::garments => 'lucide-shirt', - self::supplied_file => 'lucide-file-check', + self::new_art => IconEnum::NEW_ART->value, + self::repeat => IconEnum::REPEAT->value, + self::rush => IconEnum::RUSH->value, + self::event => IconEnum::EVENT->value, + self::digitizing => IconEnum::DIGITIZING->value, + self::garments => IconEnum::GARMENTS->value, + self::supplied_file => IconEnum::SUPPLIED_FILE->value, }; } } diff --git a/app/Enums/OrderStatus.php b/app/Enums/OrderStatus.php index 630ae1a..b598a37 100644 --- a/app/Enums/OrderStatus.php +++ b/app/Enums/OrderStatus.php @@ -33,11 +33,11 @@ public function getColor(): string|array|null public function getIcon(): ?string { return match ($this) { - self::DRAFT => 'lucide-pencil', - self::APPROVED => 'lucide-check-check', - self::PRODUCTION => 'lucide-refresh-cw', - self::SHIPPED => 'lucide-send', - self::INVOICED => 'lucide-credit-card', + self::DRAFT => IconEnum::DRAFT->value, + self::APPROVED => IconEnum::APPROVED->value, + self::PRODUCTION => IconEnum::PRODUCTION->value, + self::SHIPPED => IconEnum::SHIPPED->value, + self::INVOICED => IconEnum::INVOICED->value, }; } } diff --git a/app/Enums/ShippingType.php b/app/Enums/ShippingType.php index 7e7ed10..f487e2d 100644 --- a/app/Enums/ShippingType.php +++ b/app/Enums/ShippingType.php @@ -20,10 +20,10 @@ public function getLabel(): ?string public function getIcon(): ?string { return match ($this) { - self::THEY_SHIP => 'lucide-truck', - self::WE_SHIP => 'lucide-house', - self::PICKUP => 'lucide-handshake', - self::OTHER => 'lucide-ellipsis' + self::THEY_SHIP => IconEnum::SHIPPING_ENTRY->value, + self::WE_SHIP => IconEnum::WE_SHIP->value, + self::PICKUP => IconEnum::PICKUP->value, + self::OTHER => IconEnum::SHIPPING_OTHER->value, }; } }