refactor(api): relocate API module to Core\Api namespace

Move API module from src/Mod/Api/ to src/Api/ and update namespace
from Core\Mod\Api\ to Core\Api\ as part of monorepo separation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Snider 2026-01-27 16:14:36 +00:00
parent 9cc9e4a178
commit 57fa0d6727
85 changed files with 128 additions and 128 deletions

View file

@ -10,7 +10,7 @@
},
"autoload": {
"psr-4": {
"Core\\Mod\\Api\\": "src/Mod/Api/",
"Core\\Api\\": "src/Api/",
"Core\\Website\\Api\\": "src/Website/Api/"
}
},

View file

@ -2,13 +2,13 @@
declare(strict_types=1);
namespace Core\Mod\Api;
namespace Core\Api;
use Core\Events\AdminPanelBooting;
use Core\Events\ApiRoutesRegistering;
use Core\Events\ConsoleBooting;
use Core\Mod\Api\Documentation\DocumentationServiceProvider;
use Core\Mod\Api\RateLimit\RateLimitService;
use Core\Api\Documentation\DocumentationServiceProvider;
use Core\Api\RateLimit\RateLimitService;
use Illuminate\Cache\RateLimiting\Limit;
use Illuminate\Contracts\Cache\Repository as CacheRepository;
use Illuminate\Http\Request;

View file

@ -1,6 +1,6 @@
<?php
namespace Core\Mod\Api\Concerns;
namespace Core\Api\Concerns;
use Illuminate\Http\JsonResponse;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Concerns;
namespace Core\Api\Concerns;
use Core\Mod\Tenant\Models\UserToken;
use Illuminate\Database\Eloquent\Relations\HasMany;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Concerns;
namespace Core\Api\Concerns;
use Illuminate\Http\Request;
use Core\Mod\Tenant\Models\User;

View file

@ -2,11 +2,11 @@
declare(strict_types=1);
namespace Core\Mod\Api\Console\Commands;
namespace Core\Api\Console\Commands;
use Core\Mod\Api\Models\ApiKey;
use Core\Mod\Api\Notifications\HighApiUsageNotification;
use Core\Mod\Api\RateLimit\RateLimitService;
use Core\Api\Models\ApiKey;
use Core\Api\Notifications\HighApiUsageNotification;
use Core\Api\RateLimit\RateLimitService;
use Core\Mod\Tenant\Models\Workspace;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\Cache;

View file

@ -2,11 +2,11 @@
declare(strict_types=1);
namespace Core\Mod\Api\Console\Commands;
namespace Core\Api\Console\Commands;
use Illuminate\Console\Command;
use Illuminate\Support\Facades\Log;
use Core\Mod\Api\Services\WebhookSecretRotationService;
use Core\Api\Services\WebhookSecretRotationService;
use Core\Content\Models\ContentWebhookEndpoint;
use Core\Social\Models\Webhook;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Contracts;
namespace Core\Api\Contracts;
/**
* Contract for webhook events that can be rendered with templates.

View file

@ -2,12 +2,12 @@
declare(strict_types=1);
namespace Core\Mod\Api\Controllers\Api;
namespace Core\Api\Controllers\Api;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Core\Mod\Api\Services\WebhookSecretRotationService;
use Core\Api\Services\WebhookSecretRotationService;
use Core\Content\Models\ContentWebhookEndpoint;
use Core\Social\Models\Webhook;

View file

@ -2,15 +2,15 @@
declare(strict_types=1);
namespace Core\Mod\Api\Controllers\Api;
namespace Core\Api\Controllers\Api;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
use Illuminate\Support\Str;
use Core\Mod\Api\Enums\WebhookTemplateFormat;
use Core\Mod\Api\Models\WebhookPayloadTemplate;
use Core\Mod\Api\Services\WebhookTemplateService;
use Core\Api\Enums\WebhookTemplateFormat;
use Core\Api\Models\WebhookPayloadTemplate;
use Core\Api\Services\WebhookTemplateService;
/**
* API controller for managing webhook payload templates.

View file

@ -2,10 +2,10 @@
declare(strict_types=1);
namespace Core\Mod\Api\Controllers;
namespace Core\Api\Controllers;
use Core\Front\Controller;
use Core\Mod\Api\Models\ApiKey;
use Core\Api\Models\ApiKey;
use Core\Mod\Mcp\Models\McpApiRequest;
use Core\Mod\Mcp\Models\McpToolCall;
use Core\Mod\Mcp\Models\McpToolVersion;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Attributes;
namespace Core\Api\Documentation\Attributes;
use Attribute;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Attributes;
namespace Core\Api\Documentation\Attributes;
use Attribute;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Attributes;
namespace Core\Api\Documentation\Attributes;
use Attribute;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Attributes;
namespace Core\Api\Documentation\Attributes;
use Attribute;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Attributes;
namespace Core\Api\Documentation\Attributes;
use Attribute;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation;
namespace Core\Api\Documentation;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Request;

View file

@ -2,9 +2,9 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation;
namespace Core\Api\Documentation;
use Core\Mod\Api\Documentation\Middleware\ProtectDocumentation;
use Core\Api\Documentation\Middleware\ProtectDocumentation;
use Illuminate\Support\Facades\Route;
use Illuminate\Support\ServiceProvider;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Examples;
namespace Core\Api\Documentation\Examples;
/**
* Common API Examples.

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation;
namespace Core\Api\Documentation;
use Illuminate\Routing\Route;

View file

@ -2,9 +2,9 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Extensions;
namespace Core\Api\Documentation\Extensions;
use Core\Mod\Api\Documentation\Extension;
use Core\Api\Documentation\Extension;
use Illuminate\Routing\Route;
/**

View file

@ -2,10 +2,10 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Extensions;
namespace Core\Api\Documentation\Extensions;
use Core\Mod\Api\Documentation\Extension;
use Core\Mod\Api\RateLimit\RateLimit;
use Core\Api\Documentation\Extension;
use Core\Api\RateLimit\RateLimit;
use Illuminate\Routing\Route;
use ReflectionClass;

View file

@ -2,9 +2,9 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Extensions;
namespace Core\Api\Documentation\Extensions;
use Core\Mod\Api\Documentation\Extension;
use Core\Api\Documentation\Extension;
use Illuminate\Routing\Route;
/**

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation\Middleware;
namespace Core\Api\Documentation\Middleware;
use Closure;
use Illuminate\Http\Request;

View file

@ -2,9 +2,9 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation;
namespace Core\Api\Documentation;
use Core\Mod\Api\Documentation\Attributes\ApiTag;
use Core\Api\Documentation\Attributes\ApiTag;
use Illuminate\Support\Facades\Route;
use ReflectionClass;

View file

@ -2,16 +2,16 @@
declare(strict_types=1);
namespace Core\Mod\Api\Documentation;
namespace Core\Api\Documentation;
use Core\Mod\Api\Documentation\Attributes\ApiHidden;
use Core\Mod\Api\Documentation\Attributes\ApiParameter;
use Core\Mod\Api\Documentation\Attributes\ApiResponse;
use Core\Mod\Api\Documentation\Attributes\ApiSecurity;
use Core\Mod\Api\Documentation\Attributes\ApiTag;
use Core\Mod\Api\Documentation\Extensions\ApiKeyAuthExtension;
use Core\Mod\Api\Documentation\Extensions\RateLimitExtension;
use Core\Mod\Api\Documentation\Extensions\WorkspaceHeaderExtension;
use Core\Api\Documentation\Attributes\ApiHidden;
use Core\Api\Documentation\Attributes\ApiParameter;
use Core\Api\Documentation\Attributes\ApiResponse;
use Core\Api\Documentation\Attributes\ApiSecurity;
use Core\Api\Documentation\Attributes\ApiTag;
use Core\Api\Documentation\Extensions\ApiKeyAuthExtension;
use Core\Api\Documentation\Extensions\RateLimitExtension;
use Core\Api\Documentation\Extensions\WorkspaceHeaderExtension;
use Illuminate\Http\Resources\Json\JsonResource;
use Illuminate\Routing\Route;
use Illuminate\Support\Facades\Cache;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
use Core\Mod\Api\Documentation\DocumentationController;
use Core\Api\Documentation\DocumentationController;
use Illuminate\Support\Facades\Route;
/*

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Enums;
namespace Core\Api\Enums;
/**
* Built-in webhook template types.

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Enums;
namespace Core\Api\Enums;
/**
* Webhook payload template formats.

View file

@ -2,9 +2,9 @@
declare(strict_types=1);
namespace Core\Mod\Api\Exceptions;
namespace Core\Api\Exceptions;
use Core\Mod\Api\RateLimit\RateLimitResult;
use Core\Api\RateLimit\RateLimitResult;
use Illuminate\Http\JsonResponse;
use Symfony\Component\HttpKernel\Exception\HttpException;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Guards;
namespace Core\Api\Guards;
use Core\Mod\Tenant\Models\User;
use Core\Mod\Tenant\Models\UserToken;

View file

@ -2,9 +2,9 @@
declare(strict_types=1);
namespace Core\Mod\Api\Jobs;
namespace Core\Api\Jobs;
use Core\Mod\Api\Models\WebhookDelivery;
use Core\Api\Models\WebhookDelivery;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;

View file

@ -2,10 +2,10 @@
declare(strict_types=1);
namespace Core\Mod\Api\Middleware;
namespace Core\Api\Middleware;
use Closure;
use Core\Mod\Api\Models\ApiKey;
use Core\Api\Models\ApiKey;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Middleware;
namespace Core\Api\Middleware;
use Closure;
use Illuminate\Http\Request;

View file

@ -2,14 +2,14 @@
declare(strict_types=1);
namespace Core\Mod\Api\Middleware;
namespace Core\Api\Middleware;
use Closure;
use Core\Mod\Api\Exceptions\RateLimitExceededException;
use Core\Mod\Api\Models\ApiKey;
use Core\Mod\Api\RateLimit\RateLimit;
use Core\Mod\Api\RateLimit\RateLimitResult;
use Core\Mod\Api\RateLimit\RateLimitService;
use Core\Api\Exceptions\RateLimitExceededException;
use Core\Api\Models\ApiKey;
use Core\Api\RateLimit\RateLimit;
use Core\Api\RateLimit\RateLimitResult;
use Core\Api\RateLimit\RateLimitService;
use Illuminate\Http\Request;
use ReflectionClass;
use ReflectionMethod;
@ -37,7 +37,7 @@ use Symfony\Component\HttpFoundation\Response;
* Register in bootstrap/app.php:
* ->withMiddleware(function (Middleware $middleware) {
* $middleware->alias([
* 'api.rate' => \Core\Mod\Api\Middleware\RateLimitApi::class,
* 'api.rate' => \Core\Api\Middleware\RateLimitApi::class,
* ]);
* })
*/

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Middleware;
namespace Core\Api\Middleware;
use Closure;
use Illuminate\Http\Request;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Models;
namespace Core\Api\Models;
use Core\Mod\Tenant\Models\User;
use Core\Mod\Tenant\Models\Workspace;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Models;
namespace Core\Api\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

View file

@ -2,9 +2,9 @@
declare(strict_types=1);
namespace Core\Mod\Api\Models;
namespace Core\Api\Models;
use Core\Mod\Api\Services\WebhookSignature;
use Core\Api\Services\WebhookSignature;
use Core\Mod\Tenant\Models\Workspace;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Models;
namespace Core\Api\Models;
use Core\Mod\Tenant\Concerns\BelongsToNamespace;
use Core\Mod\Tenant\Models\Workspace;
@ -11,8 +11,8 @@ use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo;
use Illuminate\Support\Str;
use Core\Mod\Api\Enums\BuiltinTemplateType;
use Core\Mod\Api\Enums\WebhookTemplateFormat;
use Core\Api\Enums\BuiltinTemplateType;
use Core\Api\Enums\WebhookTemplateFormat;
use Spatie\Activitylog\LogOptions;
use Spatie\Activitylog\Traits\LogsActivity;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Notifications;
namespace Core\Api\Notifications;
use Core\Mod\Tenant\Models\Workspace;
use Illuminate\Bus\Queueable;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\RateLimit;
namespace Core\Api\RateLimit;
use Attribute;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\RateLimit;
namespace Core\Api\RateLimit;
use Carbon\Carbon;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\RateLimit;
namespace Core\Api\RateLimit;
use Carbon\Carbon;
use Illuminate\Contracts\Cache\Repository as CacheRepository;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Resources;
namespace Core\Api\Resources;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Resources;
namespace Core\Api\Resources;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Resources;
namespace Core\Api\Resources;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\ResourceCollection;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Resources;
namespace Core\Api\Resources;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Resources;
namespace Core\Api\Resources;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\JsonResource;

View file

@ -2,10 +2,10 @@
declare(strict_types=1);
use Core\Mod\Api\Controllers\EntitlementApiController;
use Core\Mod\Api\Controllers\McpApiController;
use Core\Mod\Api\Controllers\SeoReportController;
use Core\Mod\Api\Controllers\UnifiedPixelController;
use Core\Api\Controllers\EntitlementApiController;
use Core\Api\Controllers\McpApiController;
use Core\Api\Controllers\SeoReportController;
use Core\Api\Controllers\UnifiedPixelController;
use Core\Mod\Mcp\Middleware\McpApiKeyAuth;
use Illuminate\Support\Facades\Route;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Services;
namespace Core\Api\Services;
/**
* API Code Snippet Generator - generates code snippets in multiple languages.

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Services;
namespace Core\Api\Services;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Carbon;

View file

@ -2,11 +2,11 @@
declare(strict_types=1);
namespace Core\Mod\Api\Services;
namespace Core\Api\Services;
use Core\Mod\Api\Jobs\DeliverWebhookJob;
use Core\Mod\Api\Models\WebhookDelivery;
use Core\Mod\Api\Models\WebhookEndpoint;
use Core\Api\Jobs\DeliverWebhookJob;
use Core\Api\Models\WebhookDelivery;
use Core\Api\Models\WebhookEndpoint;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Log;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\Services;
namespace Core\Api\Services;
use Illuminate\Support\Str;

View file

@ -2,14 +2,14 @@
declare(strict_types=1);
namespace Core\Mod\Api\Services;
namespace Core\Api\Services;
use Illuminate\Support\Arr;
use Illuminate\Support\Carbon;
use Core\Mod\Api\Contracts\WebhookEvent;
use Core\Mod\Api\Enums\BuiltinTemplateType;
use Core\Mod\Api\Enums\WebhookTemplateFormat;
use Core\Mod\Api\Models\WebhookPayloadTemplate;
use Core\Api\Contracts\WebhookEvent;
use Core\Api\Enums\BuiltinTemplateType;
use Core\Api\Enums\WebhookTemplateFormat;
use Core\Api\Models\WebhookPayloadTemplate;
/**
* Service for rendering and validating webhook payload templates.

View file

@ -2,18 +2,18 @@
declare(strict_types=1);
namespace Core\Mod\Api\Tests\Feature;
namespace Core\Api\Tests\Feature;
use Core\Mod\Api\Documentation\Attributes\ApiHidden;
use Core\Mod\Api\Documentation\Attributes\ApiParameter;
use Core\Mod\Api\Documentation\Attributes\ApiResponse;
use Core\Mod\Api\Documentation\Attributes\ApiSecurity;
use Core\Mod\Api\Documentation\Attributes\ApiTag;
use Core\Mod\Api\Documentation\Extension;
use Core\Mod\Api\Documentation\Extensions\ApiKeyAuthExtension;
use Core\Mod\Api\Documentation\Extensions\RateLimitExtension;
use Core\Mod\Api\Documentation\Extensions\WorkspaceHeaderExtension;
use Core\Mod\Api\Documentation\OpenApiBuilder;
use Core\Api\Documentation\Attributes\ApiHidden;
use Core\Api\Documentation\Attributes\ApiParameter;
use Core\Api\Documentation\Attributes\ApiResponse;
use Core\Api\Documentation\Attributes\ApiSecurity;
use Core\Api\Documentation\Attributes\ApiTag;
use Core\Api\Documentation\Extension;
use Core\Api\Documentation\Extensions\ApiKeyAuthExtension;
use Core\Api\Documentation\Extensions\RateLimitExtension;
use Core\Api\Documentation\Extensions\WorkspaceHeaderExtension;
use Core\Api\Documentation\OpenApiBuilder;
use Orchestra\Testbench\TestCase;
/**

View file

@ -2,14 +2,14 @@
declare(strict_types=1);
namespace Core\Mod\Api\Tests\Feature;
namespace Core\Api\Tests\Feature;
use Carbon\Carbon;
use Core\LifecycleEventProvider;
use Core\Mod\Api\Exceptions\RateLimitExceededException;
use Core\Mod\Api\RateLimit\RateLimit;
use Core\Mod\Api\RateLimit\RateLimitResult;
use Core\Mod\Api\RateLimit\RateLimitService;
use Core\Api\Exceptions\RateLimitExceededException;
use Core\Api\RateLimit\RateLimit;
use Core\Api\RateLimit\RateLimitResult;
use Core\Api\RateLimit\RateLimitService;
use Illuminate\Contracts\Cache\Repository as CacheRepository;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Illuminate\Support\Facades\Cache;

View file

@ -2,11 +2,11 @@
declare(strict_types=1);
use Core\Mod\Api\Jobs\DeliverWebhookJob;
use Core\Mod\Api\Models\WebhookDelivery;
use Core\Mod\Api\Models\WebhookEndpoint;
use Core\Mod\Api\Services\WebhookService;
use Core\Mod\Api\Services\WebhookSignature;
use Core\Api\Jobs\DeliverWebhookJob;
use Core\Api\Models\WebhookDelivery;
use Core\Api\Models\WebhookEndpoint;
use Core\Api\Services\WebhookService;
use Core\Api\Services\WebhookSignature;
use Core\Mod\Tenant\Models\Workspace;
use Illuminate\Support\Facades\Http;

View file

@ -2,7 +2,7 @@
declare(strict_types=1);
namespace Core\Mod\Api\View\Modal\Admin;
namespace Core\Api\View\Modal\Admin;
use Illuminate\Support\Str;
use Livewire\Attributes\Computed;
@ -11,10 +11,10 @@ use Livewire\Attributes\Url;
use Livewire\Attributes\Validate;
use Livewire\Component;
use Livewire\WithPagination;
use Core\Mod\Api\Enums\BuiltinTemplateType;
use Core\Mod\Api\Enums\WebhookTemplateFormat;
use Core\Mod\Api\Models\WebhookPayloadTemplate;
use Core\Mod\Api\Services\WebhookTemplateService;
use Core\Api\Enums\BuiltinTemplateType;
use Core\Api\Enums\WebhookTemplateFormat;
use Core\Api\Models\WebhookPayloadTemplate;
use Core\Api\Services\WebhookTemplateService;
#[Layout('hub::admin.layouts.app')]
class WebhookTemplateManager extends Component