feat: add ApiResponse trait for standardized API responses

chore: update composer dependencies to include phppresentation

chore: update composer.lock after adding phppresentation

feat: create categories migration for category management

feat: create templates migration for template storage

feat: create template generations migration for tracking template usage

feat: create template keys migration for template customization

feat: create notifications migration for user notifications

feat: update API routes for categories, templates, and user profile management

docs: update API documentation to include new endpoints for profile and wallet
This commit is contained in:
2026-07-07 01:03:12 +03:30
parent cf0e6f82fd
commit ae974c2afa
68 changed files with 3594 additions and 100 deletions

View File

@@ -0,0 +1,19 @@
<?php
namespace App\Enums;
enum NotificationType: string
{
case System = 'system';
case Wallet = 'wallet';
case Template = 'template';
public function label(): string
{
return match ($this) {
self::System => 'سیستمی',
self::Wallet => 'کیف پول',
self::Template => 'قالب',
};
}
}

View File

@@ -0,0 +1,21 @@
<?php
namespace App\Enums;
enum TemplateGenerationStatus: string
{
case Pending = 'pending';
case Processing = 'processing';
case Completed = 'completed';
case Failed = 'failed';
public function label(): string
{
return match ($this) {
self::Pending => 'در انتظار',
self::Processing => 'در حال تولید',
self::Completed => 'تکمیل شده',
self::Failed => 'ناموفق',
};
}
}

View File

@@ -0,0 +1,19 @@
<?php
namespace App\Enums;
enum TemplateKeyType: string
{
case Text = 'text';
case Image = 'image';
case Chart = 'chart';
public function label(): string
{
return match ($this) {
self::Text => 'متن',
self::Image => 'عکس',
self::Chart => 'چارت',
};
}
}