### Create app with filakit CLI Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Simplified setup using the filakit CLI. Requires installing the CLI first with `composer global require jeffersongoncalves/filakit-cli`. ```bash filakit new my-app --kit=jeffersongoncalves/helpdeskkitv4 ``` -------------------------------- ### Run automated installation Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Automates installation: installs Composer dependencies, sets up environment, generates app key, sets up database, runs migrations, installs Node dependencies, builds assets, and configures Herd if used. ```bash php install.php ``` -------------------------------- ### Set up environment and generate key Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Copies the environment example file and generates the application key. ```bash cp .env.example .env php artisan key:generate ``` -------------------------------- ### Set up environment (Docker) Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Copies the environment example file. ```bash cp .env.example .env ``` -------------------------------- ### Run the development server Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Starts the Laravel development server. ```bash php artisan serve ``` -------------------------------- ### Install JavaScript dependencies Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Installs JavaScript dependencies for the project. ```bash pnpm install ``` -------------------------------- ### Install Composer dependencies Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Installs PHP Composer dependencies. ```bash composer install ``` -------------------------------- ### Install cweagans/composer-patches Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md Command to install the composer-patches package, which is recommended for applying the compatibility fixes automatically. ```bash composer require cweagans/composer-patches ``` -------------------------------- ### Start Sail containers Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Starts the Sail containers in detached mode. Laravel Sail automatically handles the development server, so `php artisan serve` is not needed. ```bash ./vendor/bin/sail up -d ``` -------------------------------- ### Configure custom ports for Sail Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Example environment variables to configure custom ports for the Sail containers. Adjust if other services use the same ports. ```bash # Application Port (ex: 8080) APP_PORT=8080 # MySQL Port (ex: 3306) FORWARD_DB_PORT=3306 # Redis Port (ex: 6379) FORWARD_REDIS_PORT=6379 # Mailpit Port (ex: 1025) FORWARD_MAILPIT_PORT=1025 ``` -------------------------------- ### Create Laravel app with HelpDesk Kit Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Creates a new Laravel application using the HelpDesk Kit starter kit with MySQL as the database. ```bash laravel new my-app --using=jeffersongoncalves/helpdeskkitv4 --database=mysql ``` -------------------------------- ### Move into project directory Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Moves into the project directory. ```bash cd my-app ``` -------------------------------- ### Build frontend assets Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Builds frontend assets. ```bash pnpm run build ``` -------------------------------- ### Enable or disable panels in config/helpdeskkit.php Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Configuration keys in config/helpdeskkit.php that enable or disable each Filament panel. Set to false to disable a panel. ```php 'admin_panel_enabled' => true, 'operator_panel_enabled' => true, 'app_panel_enabled' => true, 'guest_panel_enabled' => true, ``` -------------------------------- ### Run database migrations Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Runs database migrations. ```bash php artisan migrate ``` -------------------------------- ### Run Development Server with composer dev or Separate Commands Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Commands to run the development server. The first command runs the server with logs, queues, and asset compilation. The second command runs each component separately: the Laravel development server, the queue listener with one retry attempt, and the Vite development server via pnpm. ```bash composer dev ``` ```bash php artisan serve php artisan queue:listen --tries=1 pnpm run dev ``` -------------------------------- ### Generate application key (Sail) Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Generates the application key inside the Sail container. ```bash php artisan key:generate ``` -------------------------------- ### Attach to application container Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/README.md Attaches to the application container to run commands inside it. ```bash ./vendor/bin/sail shell ``` -------------------------------- ### Fix for User TicketResource::getSlug() Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md Diff showing the required changes to the getSlug method in the User TicketResource file, including adding the Filament\Panel import and updating the method signature. ```diff + use Filament\Panel; - public static function getSlug(): string + public static function getSlug(?Panel $panel = null): string { return config('filament-help-desk.user.slug', 'tickets'); } ``` -------------------------------- ### Composer Patches Configuration Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md JSON configuration to add to composer.json to apply the patch file to the package during composer install/update. ```json { "extra": { "patches": { "jeffersongoncalves/filament-help-desk": { "Filament 4.5 compatibility fixes": "patches/filament-help-desk-filament-4.5-compat.patch" } } } } ``` -------------------------------- ### Fix for Operator TicketResource::getSlug() Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md Diff showing the required changes to the getSlug method in the Operator TicketResource file, including adding the Filament\Panel import and updating the method signature. ```diff + use Filament\Panel; - public static function getSlug(): string + public static function getSlug(?Panel $panel = null): string { return config('filament-help-desk.operator.slug', 'tickets'); } ``` -------------------------------- ### New Resource::getSlug() Signature Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md New signature of the getSlug method in Filament 4.5 after the change. ```php public static function getSlug(?Panel $panel = null): string ``` -------------------------------- ### PHP Fatal Error for getSlug() Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md Error message shown when the package's getSlug method does not accept the optional Panel parameter required by Filament 4.5. ```text PHP Fatal error: Declaration of JeffersonGoncalves\FilamentHelpDesk\User\Resources\TicketResource::getSlug(): string must be compatible with Filament\Resources\Resource::getSlug(?Filament\Panel $panel = null): string ``` -------------------------------- ### New ChartWidget::$heading Declaration Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md New signature of the heading property in Filament 4.5 after the change. ```php protected ?string $heading = null; ``` -------------------------------- ### Old Resource::getSlug() Signature Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md Old signature of the getSlug method in Filament 4.5 before the change. ```php public static function getSlug(): string ``` -------------------------------- ### Fix for ChartWidget::$heading Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md Diff showing the required change to remove the static keyword from the heading property in both affected widget files. ```diff - protected static ?string $heading = null; + protected ?string $heading = null; ``` -------------------------------- ### PHP Fatal Error for ChartWidget::$heading Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md Error message shown when the package's widget declares the heading property as static while Filament 4.5 expects it to be non-static. ```text PHP Fatal error: Cannot redeclare non static Filament\Widgets\ChartWidget::$heading as static JeffersonGoncalves\FilamentHelpDesk\Admin\Widgets\TicketsByPriorityWidget::$heading ``` -------------------------------- ### Old ChartWidget::$heading Declaration Source: https://github.com/jeffersongoncalves/helpdeskkitv4/blob/main/docs/filament-help-desk-fixes.md Old signature of the heading property in Filament 4.5 before the change. ```php protected static ?string $heading = null; ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.