Refactor file imports and clean up unused components in various resources: remove unnecessary imports in CommentResource, NewsResource, and SolutionResource, and ensure consistent formatting across files. Add missing newlines at the end of files for better code quality.

This commit is contained in:
2025-07-28 20:10:34 +05:00
parent b23f537086
commit e2323c7949
18 changed files with 287 additions and 291 deletions

View File

@@ -4,9 +4,9 @@ namespace App\Filament\Pages;
use App\Settings\CtaSettings;
use Filament\Forms;
use Filament\Forms\Components\FileUpload;
use Filament\Forms\Form;
use Filament\Pages\SettingsPage;
use Filament\Forms\Components\FileUpload;
class ManageCtaSettings extends SettingsPage
{

View File

@@ -93,262 +93,262 @@ class ManageSolutions extends SettingsPage
private static function getIconOptions(): array
{
return [
"microsoft-word" => "microsoft-word",
"text-box" => "text-box",
"document-1" => "document-1",
"layers-1" => "layers-1",
"folder-1" => "folder-1",
"contract" => "contract",
"layer" => "layer",
"download-pdf" => "download-pdf",
"pdf" => "pdf",
"cloud-computing" => "cloud-computing",
"downloads" => "downloads",
"layers" => "layers",
"document" => "document",
"light-bulb-1" => "light-bulb-1",
"idea-2" => "idea-2",
"light-bulb" => "light-bulb",
"idea-1" => "idea-1",
"solution-2" => "solution-2",
"lightbulb" => "lightbulb",
"menus" => "menus",
"support-1" => "support-1",
"swipe-left" => "swipe-left",
"development" => "development",
"domain" => "domain",
"pets" => "pets",
"diagram" => "diagram",
"targeting" => "targeting",
"business-intelligence" => "business-intelligence",
"menu-6" => "menu-6",
"high-quality" => "high-quality",
"campaign" => "campaign",
"brain" => "brain",
"software-application" => "software-application",
"apps" => "apps",
"wrench-1" => "wrench-1",
"social-media-marketing-1" => "social-media-marketing-1",
"category-1" => "category-1",
"trophy-3" => "trophy-3",
"email-marketing" => "email-marketing",
"setting" => "setting",
"more" => "more",
"menu-5" => "menu-5",
"menu-4" => "menu-4",
"medical" => "medical",
"sparkle" => "sparkle",
"menu-3" => "menu-3",
"technology-2" => "technology-2",
"process" => "process",
"hearth-1" => "hearth-1",
"hearth" => "hearth",
"technology-1" => "technology-1",
"category" => "category",
"customer-care" => "customer-care",
"folder" => "folder",
"portfolio-1" => "portfolio-1",
"report" => "report",
"thinking" => "thinking",
"fingerprint" => "fingerprint",
"clock-2" => "clock-2",
"award" => "award",
"paper-plane" => "paper-plane",
"repair" => "repair",
"email-5" => "email-5",
"strategy" => "strategy",
"portfolio" => "portfolio",
"web-design" => "web-design",
"email-4" => "email-4",
"down-arrow-1" => "down-arrow-1",
"location-2" => "location-2",
"phone-call-2" => "phone-call-2",
"telephone-call" => "telephone-call",
"teamwork" => "teamwork",
"up-arrow-1" => "up-arrow-1",
"menu-2" => "menu-2",
"developing" => "developing",
"money-bag" => "money-bag",
"thumbs-up" => "thumbs-up",
"profits" => "profits",
"location-1" => "location-1",
"help-1" => "help-1",
"online-chat" => "online-chat",
"worker" => "worker",
"smart-home" => "smart-home",
"customer-service-1" => "customer-service-1",
"internet" => "internet",
"cash-flow" => "cash-flow",
"monitor" => "monitor",
"search-1" => "search-1",
"wrench" => "wrench",
"coin" => "coin",
"cash" => "cash",
"analyst" => "analyst",
"dashboard-1" => "dashboard-1",
"digital" => "digital",
"searching" => "searching",
"email-3" => "email-3",
"star-1" => "star-1",
"touch" => "touch",
"medal" => "medal",
"world-wide-web-1" => "world-wide-web-1",
"phone" => "phone",
"social-media" => "social-media",
"24-7" => "24-7",
"hard-work" => "hard-work",
"star" => "star",
"plus" => "plus",
"minus-2" => "minus-2",
"menu-1" => "menu-1",
"cloud" => "cloud",
"handshake" => "handshake",
"people" => "people",
"ai" => "ai",
"save-money" => "save-money",
"shopping-online" => "shopping-online",
"profit-1" => "profit-1",
"blockchain" => "blockchain",
"sales" => "sales",
"back-in-time" => "back-in-time",
"clock-1" => "clock-1",
"user-3" => "user-3",
"user-2" => "user-2",
"pawprint" => "pawprint",
"payment-method" => "payment-method",
"world-wide-web" => "world-wide-web",
"minus-1" => "minus-1",
"add-1" => "add-1",
"management" => "management",
"help" => "help",
"chip" => "chip",
"artificial-intelligence" => "artificial-intelligence",
"group" => "group",
"money-1" => "money-1",
"conversation" => "conversation",
"email-2" => "email-2",
"rating" => "rating",
"placeholder" => "placeholder",
"trophy-2" => "trophy-2",
"cpu" => "cpu",
"home" => "home",
"right-arrow-1" => "right-arrow-1",
"like" => "like",
"mail" => "mail",
"briefcase" => "briefcase",
"money" => "money",
"up-arrow" => "up-arrow",
"trophy-1" => "trophy-1",
"user-1" => "user-1",
"question" => "question",
"team-1" => "team-1",
"user" => "user",
"email-1" => "email-1",
"price-tag-1" => "price-tag-1",
"tag" => "tag",
"loupe" => "loupe",
"right-arrow" => "right-arrow",
"left-arrow-1" => "left-arrow-1",
"down-arrow" => "down-arrow",
"price-tag" => "price-tag",
"stars" => "stars",
"search" => "search",
"phone-call-1" => "phone-call-1",
"award-symbol" => "award-symbol",
"christmas-stars" => "christmas-stars",
"minus" => "minus",
"add" => "add",
"cancel-1" => "cancel-1",
"checked" => "checked",
"cyber-security" => "cyber-security",
"data-protection" => "data-protection",
"hosting" => "hosting",
"brand-awareness" => "brand-awareness",
"ux-design" => "ux-design",
"influencer" => "influencer",
"online-advertising" => "online-advertising",
"web-management" => "web-management",
"seo-1" => "seo-1",
"computer" => "computer",
"software-development" => "software-development",
"coding-1" => "coding-1",
"coding" => "coding",
"app-development" => "app-development",
"content-marketing" => "content-marketing",
"social-media-marketing" => "social-media-marketing",
"analysis-1" => "analysis-1",
"twitter" => "twitter",
"repairing" => "repairing",
"data-visualization" => "data-visualization",
"information-technology" => "information-technology",
"statistics-1" => "statistics-1",
"exploration" => "exploration",
"project-1" => "project-1",
"cross-mark" => "cross-mark",
"search-analysis" => "search-analysis",
"system" => "system",
"hashtag-1" => "hashtag-1",
"hashtag" => "hashtag",
"it-department" => "it-department",
"creative" => "creative",
"online-analytical" => "online-analytical",
"secure-data" => "secure-data",
"slash" => "slash",
"creative-thinking" => "creative-thinking",
"right-up" => "right-up",
"dashboard" => "dashboard",
"profit" => "profit",
"project" => "project",
"phone-call" => "phone-call",
"seo" => "seo",
"prototype" => "prototype",
"creative-process" => "creative-process",
"growth" => "growth",
"technical-support" => "technical-support",
"technology" => "technology",
"solution-1" => "solution-1",
"creative-tools" => "creative-tools",
"data-science" => "data-science",
"costumer" => "costumer",
"cooperation" => "cooperation",
"next" => "next",
"back" => "back",
"brand" => "brand",
"right-arrows" => "right-arrows",
"idea" => "idea",
"design-thinking" => "design-thinking",
"check" => "check",
"cross" => "cross",
"right" => "right",
"link" => "link",
"server" => "server",
"analysis" => "analysis",
"support" => "support",
"project-management" => "project-management",
"networking" => "networking",
"team" => "team",
"check-mark" => "check-mark",
"consultation" => "consultation",
"solution" => "solution",
"success" => "success",
"customer-review" => "customer-review",
"select" => "select",
"statistics" => "statistics",
"machine-learning" => "machine-learning",
"vector" => "vector",
"trophy" => "trophy",
"data" => "data",
"clock" => "clock",
"cancel" => "cancel",
"customer-service" => "customer-service",
"digital-marketing" => "digital-marketing",
"email" => "email",
"stats" => "stats",
"menu" => "menu",
"location" => "location",
"tick" => "tick",
"left-arrow" => "left-arrow",
"dots-menu" => "dots-menu",
'microsoft-word' => 'microsoft-word',
'text-box' => 'text-box',
'document-1' => 'document-1',
'layers-1' => 'layers-1',
'folder-1' => 'folder-1',
'contract' => 'contract',
'layer' => 'layer',
'download-pdf' => 'download-pdf',
'pdf' => 'pdf',
'cloud-computing' => 'cloud-computing',
'downloads' => 'downloads',
'layers' => 'layers',
'document' => 'document',
'light-bulb-1' => 'light-bulb-1',
'idea-2' => 'idea-2',
'light-bulb' => 'light-bulb',
'idea-1' => 'idea-1',
'solution-2' => 'solution-2',
'lightbulb' => 'lightbulb',
'menus' => 'menus',
'support-1' => 'support-1',
'swipe-left' => 'swipe-left',
'development' => 'development',
'domain' => 'domain',
'pets' => 'pets',
'diagram' => 'diagram',
'targeting' => 'targeting',
'business-intelligence' => 'business-intelligence',
'menu-6' => 'menu-6',
'high-quality' => 'high-quality',
'campaign' => 'campaign',
'brain' => 'brain',
'software-application' => 'software-application',
'apps' => 'apps',
'wrench-1' => 'wrench-1',
'social-media-marketing-1' => 'social-media-marketing-1',
'category-1' => 'category-1',
'trophy-3' => 'trophy-3',
'email-marketing' => 'email-marketing',
'setting' => 'setting',
'more' => 'more',
'menu-5' => 'menu-5',
'menu-4' => 'menu-4',
'medical' => 'medical',
'sparkle' => 'sparkle',
'menu-3' => 'menu-3',
'technology-2' => 'technology-2',
'process' => 'process',
'hearth-1' => 'hearth-1',
'hearth' => 'hearth',
'technology-1' => 'technology-1',
'category' => 'category',
'customer-care' => 'customer-care',
'folder' => 'folder',
'portfolio-1' => 'portfolio-1',
'report' => 'report',
'thinking' => 'thinking',
'fingerprint' => 'fingerprint',
'clock-2' => 'clock-2',
'award' => 'award',
'paper-plane' => 'paper-plane',
'repair' => 'repair',
'email-5' => 'email-5',
'strategy' => 'strategy',
'portfolio' => 'portfolio',
'web-design' => 'web-design',
'email-4' => 'email-4',
'down-arrow-1' => 'down-arrow-1',
'location-2' => 'location-2',
'phone-call-2' => 'phone-call-2',
'telephone-call' => 'telephone-call',
'teamwork' => 'teamwork',
'up-arrow-1' => 'up-arrow-1',
'menu-2' => 'menu-2',
'developing' => 'developing',
'money-bag' => 'money-bag',
'thumbs-up' => 'thumbs-up',
'profits' => 'profits',
'location-1' => 'location-1',
'help-1' => 'help-1',
'online-chat' => 'online-chat',
'worker' => 'worker',
'smart-home' => 'smart-home',
'customer-service-1' => 'customer-service-1',
'internet' => 'internet',
'cash-flow' => 'cash-flow',
'monitor' => 'monitor',
'search-1' => 'search-1',
'wrench' => 'wrench',
'coin' => 'coin',
'cash' => 'cash',
'analyst' => 'analyst',
'dashboard-1' => 'dashboard-1',
'digital' => 'digital',
'searching' => 'searching',
'email-3' => 'email-3',
'star-1' => 'star-1',
'touch' => 'touch',
'medal' => 'medal',
'world-wide-web-1' => 'world-wide-web-1',
'phone' => 'phone',
'social-media' => 'social-media',
'24-7' => '24-7',
'hard-work' => 'hard-work',
'star' => 'star',
'plus' => 'plus',
'minus-2' => 'minus-2',
'menu-1' => 'menu-1',
'cloud' => 'cloud',
'handshake' => 'handshake',
'people' => 'people',
'ai' => 'ai',
'save-money' => 'save-money',
'shopping-online' => 'shopping-online',
'profit-1' => 'profit-1',
'blockchain' => 'blockchain',
'sales' => 'sales',
'back-in-time' => 'back-in-time',
'clock-1' => 'clock-1',
'user-3' => 'user-3',
'user-2' => 'user-2',
'pawprint' => 'pawprint',
'payment-method' => 'payment-method',
'world-wide-web' => 'world-wide-web',
'minus-1' => 'minus-1',
'add-1' => 'add-1',
'management' => 'management',
'help' => 'help',
'chip' => 'chip',
'artificial-intelligence' => 'artificial-intelligence',
'group' => 'group',
'money-1' => 'money-1',
'conversation' => 'conversation',
'email-2' => 'email-2',
'rating' => 'rating',
'placeholder' => 'placeholder',
'trophy-2' => 'trophy-2',
'cpu' => 'cpu',
'home' => 'home',
'right-arrow-1' => 'right-arrow-1',
'like' => 'like',
'mail' => 'mail',
'briefcase' => 'briefcase',
'money' => 'money',
'up-arrow' => 'up-arrow',
'trophy-1' => 'trophy-1',
'user-1' => 'user-1',
'question' => 'question',
'team-1' => 'team-1',
'user' => 'user',
'email-1' => 'email-1',
'price-tag-1' => 'price-tag-1',
'tag' => 'tag',
'loupe' => 'loupe',
'right-arrow' => 'right-arrow',
'left-arrow-1' => 'left-arrow-1',
'down-arrow' => 'down-arrow',
'price-tag' => 'price-tag',
'stars' => 'stars',
'search' => 'search',
'phone-call-1' => 'phone-call-1',
'award-symbol' => 'award-symbol',
'christmas-stars' => 'christmas-stars',
'minus' => 'minus',
'add' => 'add',
'cancel-1' => 'cancel-1',
'checked' => 'checked',
'cyber-security' => 'cyber-security',
'data-protection' => 'data-protection',
'hosting' => 'hosting',
'brand-awareness' => 'brand-awareness',
'ux-design' => 'ux-design',
'influencer' => 'influencer',
'online-advertising' => 'online-advertising',
'web-management' => 'web-management',
'seo-1' => 'seo-1',
'computer' => 'computer',
'software-development' => 'software-development',
'coding-1' => 'coding-1',
'coding' => 'coding',
'app-development' => 'app-development',
'content-marketing' => 'content-marketing',
'social-media-marketing' => 'social-media-marketing',
'analysis-1' => 'analysis-1',
'twitter' => 'twitter',
'repairing' => 'repairing',
'data-visualization' => 'data-visualization',
'information-technology' => 'information-technology',
'statistics-1' => 'statistics-1',
'exploration' => 'exploration',
'project-1' => 'project-1',
'cross-mark' => 'cross-mark',
'search-analysis' => 'search-analysis',
'system' => 'system',
'hashtag-1' => 'hashtag-1',
'hashtag' => 'hashtag',
'it-department' => 'it-department',
'creative' => 'creative',
'online-analytical' => 'online-analytical',
'secure-data' => 'secure-data',
'slash' => 'slash',
'creative-thinking' => 'creative-thinking',
'right-up' => 'right-up',
'dashboard' => 'dashboard',
'profit' => 'profit',
'project' => 'project',
'phone-call' => 'phone-call',
'seo' => 'seo',
'prototype' => 'prototype',
'creative-process' => 'creative-process',
'growth' => 'growth',
'technical-support' => 'technical-support',
'technology' => 'technology',
'solution-1' => 'solution-1',
'creative-tools' => 'creative-tools',
'data-science' => 'data-science',
'costumer' => 'costumer',
'cooperation' => 'cooperation',
'next' => 'next',
'back' => 'back',
'brand' => 'brand',
'right-arrows' => 'right-arrows',
'idea' => 'idea',
'design-thinking' => 'design-thinking',
'check' => 'check',
'cross' => 'cross',
'right' => 'right',
'link' => 'link',
'server' => 'server',
'analysis' => 'analysis',
'support' => 'support',
'project-management' => 'project-management',
'networking' => 'networking',
'team' => 'team',
'check-mark' => 'check-mark',
'consultation' => 'consultation',
'solution' => 'solution',
'success' => 'success',
'customer-review' => 'customer-review',
'select' => 'select',
'statistics' => 'statistics',
'machine-learning' => 'machine-learning',
'vector' => 'vector',
'trophy' => 'trophy',
'data' => 'data',
'clock' => 'clock',
'cancel' => 'cancel',
'customer-service' => 'customer-service',
'digital-marketing' => 'digital-marketing',
'email' => 'email',
'stats' => 'stats',
'menu' => 'menu',
'location' => 'location',
'tick' => 'tick',
'left-arrow' => 'left-arrow',
'dots-menu' => 'dots-menu',
];
}

View File

@@ -3,12 +3,12 @@
namespace App\Filament\Pages;
use App\Settings\SuccessSettings;
use Filament\Forms\Components\FileUpload;
use Filament\Forms\Components\Grid;
use Filament\Forms\Components\Repeater;
use Filament\Forms\Components\Section;
use Filament\Forms\Components\Textarea;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Components\FileUpload;
use Filament\Forms\Form;
use Filament\Pages\SettingsPage;
use Illuminate\Contracts\Support\Htmlable;

View File

@@ -3,7 +3,6 @@
namespace App\Filament\Resources;
use App\Filament\Resources\CommentResource\Pages;
use App\Filament\Resources\CommentResource\RelationManagers;
use App\Models\Comment;
use Filament\Forms;
use Filament\Forms\Components\RichEditor;
@@ -13,8 +12,6 @@ use Filament\Forms\Form;
use Filament\Resources\Resource;
use Filament\Tables;
use Filament\Tables\Table;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\SoftDeletingScope;
class CommentResource extends Resource
{

View File

@@ -3,7 +3,6 @@
namespace App\Filament\Resources\CommentResource\Pages;
use App\Filament\Resources\CommentResource;
use Filament\Actions;
use Filament\Resources\Pages\CreateRecord;
class CreateComment extends CreateRecord

View File

@@ -3,6 +3,7 @@
namespace App\Filament\Resources;
use App\Filament\Resources\NewsResource\Pages;
use App\Filament\Resources\NewsResource\RelationManagers\CommentsRelationManager;
use App\Models\News;
use Filament\Forms;
use Filament\Forms\Components\DateTimePicker;
@@ -15,7 +16,6 @@ use Filament\Tables;
use Filament\Tables\Columns\ImageColumn;
use Filament\Tables\Table;
use Illuminate\Support\Str;
use App\Filament\Resources\NewsResource\RelationManagers\CommentsRelationManager;
class NewsResource extends Resource
{

View File

@@ -2,7 +2,6 @@
namespace App\Filament\Resources\NewsResource\RelationManagers;
use Filament\Forms;
use Filament\Forms\Components\RichEditor;
use Filament\Forms\Components\TextInput;
use Filament\Forms\Form;

View File

@@ -3,15 +3,13 @@
namespace App\Filament\Resources;
use App\Filament\Resources\SolutionResource\Pages;
use App\Filament\Resources\SolutionResource\RelationManagers;
use App\Models\Solution;
use Filament\Forms;
use Filament\Forms\Form;
use Filament\Resources\Resource;
use Filament\Tables;
use Filament\Tables\Table;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\SoftDeletingScope;
use Illuminate\Support\Str;
class SolutionResource extends Resource
{
@@ -27,7 +25,9 @@ class SolutionResource extends Resource
->schema([
Forms\Components\TextInput::make('title')
->required()
->maxLength(255),
->maxLength(255)
->reactive()
->afterStateUpdated(fn (string $operation, $state, Forms\Set $set) => $operation === 'create' ? $set('slug', Str::slug($state)) : null),
Forms\Components\TextInput::make('slug')
->required()
->maxLength(255),

View File

@@ -3,7 +3,6 @@
namespace App\Filament\Resources\SolutionResource\Pages;
use App\Filament\Resources\SolutionResource;
use Filament\Actions;
use Filament\Resources\Pages\CreateRecord;
class CreateSolution extends CreateRecord

View File

@@ -3,7 +3,6 @@
namespace App\Http\Controllers;
use App\Models\News;
use App\Models\Comment;
use Illuminate\Http\Request;
class NewsPageController extends Controller

View File

@@ -2,9 +2,9 @@
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Database\Eloquent\Factories\HasFactory;
class Comment extends Model
{

View File

@@ -2,6 +2,8 @@
namespace App\Providers\Filament;
use App\Filament\Pages\HomePageSettings;
use App\Filament\Pages\ManageCtaSettings;
use Filament\Http\Middleware\Authenticate;
use Filament\Http\Middleware\DisableBladeIconComponents;
use Filament\Http\Middleware\DispatchServingFilamentEvent;
@@ -17,8 +19,6 @@ use Illuminate\Routing\Middleware\SubstituteBindings;
use Illuminate\Session\Middleware\AuthenticateSession;
use Illuminate\Session\Middleware\StartSession;
use Illuminate\View\Middleware\ShareErrorsFromSession;
use App\Filament\Pages\HomePageSettings;
use App\Filament\Pages\ManageCtaSettings;
class PanelPanelProvider extends PanelProvider
{

View File

@@ -7,8 +7,11 @@ use Spatie\LaravelSettings\Settings;
class CtaSettings extends Settings
{
public string $title;
public string $button_text;
public string $button_url;
public string $background_image;
public static function group(): string

View File

@@ -13,6 +13,7 @@ class NewsFactory extends Factory
public function definition()
{
$title = $this->faker->sentence(6);
return [
'title' => $title,
'slug' => Str::slug($title),

View File

@@ -2,9 +2,8 @@
namespace Database\Seeders;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use App\Models\News;
use Illuminate\Database\Seeder;
class NewsTableSeeder extends Seeder
{