api refactoring

This commit is contained in:
Čarodej
2022-05-11 09:19:55 +02:00
parent d2371e667f
commit c0e431b384
76 changed files with 1142 additions and 690 deletions

View File

@@ -9,10 +9,12 @@ use Domain\Files\Controllers\UploadFileController;
use App\Users\Controllers\ForgotPasswordController;
use Domain\Folders\Controllers\FavouriteController;
use Domain\Sharing\Controllers\ShareItemController;
use Domain\Settings\Controllers\GetConfigController;
use Domain\SetupWizard\Controllers\PingAPIController;
use Domain\Folders\Controllers\CreateFolderController;
use Domain\Browsing\Controllers\BrowseFolderController;
use Domain\Sharing\Controllers\ShareViaEmailController;
use Domain\Files\Controllers\UploadFileChunksController;
use Domain\Folders\Controllers\NavigationTreeController;
use Domain\Items\Controllers\MoveFileOrFolderController;
use App\Socialite\Controllers\SocialiteRedirectController;
@@ -28,9 +30,15 @@ use Domain\Homepage\Controllers\SendContactMessageController;
use Domain\RemoteUpload\Controllers\RemoteUploadFileController;
use Domain\Sharing\Controllers\GetShareLinkViaQrCodeController;
use App\Users\Controllers\Authentication\RegisterUserController;
use Domain\Notifications\Controllers\GetUserNotificationsController;
use Domain\Notifications\Controllers\FlushUserNotificationsController;
use Domain\Notifications\Controllers\MarkUserNotificationsAsReadController;
use App\Users\Controllers\Authentication\DestroyActiveBearerTokenController;
use App\Users\Controllers\Authentication\AuthenticateAndReturnBearerTokenController;
// Ping Pong
Route::get('/ping', PingAPIController::class);
Route::get('/config', GetConfigController::class);
// Pages
Route::apiResource('/page', PagesController::class);
@@ -39,15 +47,18 @@ Route::apiResource('/page', PagesController::class);
Route::post('/contact', SendContactMessageController::class);
Route::get('/settings', GetSettingsValueController::class);
// Register user
// Register/login user
Route::post('/register', RegisterUserController::class);
Route::post('/login', AuthenticateAndReturnBearerTokenController::class)
->middleware('throttle:login');
Route::post('/logout', DestroyActiveBearerTokenController::class);
// Socialite
Route::get('/socialite/{provider}/redirect', SocialiteRedirectController::class);
// Password reset
Route::group(['prefix' => 'password'], function () {
Route::post('/email', [ForgotPasswordController::class, 'sendResetLinkEmail']);
Route::post('/recover', [ForgotPasswordController::class, 'sendResetLinkEmail']);
Route::post('/reset', [ResetPasswordController::class, 'reset']);
});
@@ -74,8 +85,13 @@ Route::group(['middleware' => ['auth:sanctum']], function () {
Route::apiResource('/share', ShareController::class);
Route::post('/share/{id}', ShareItemController::class);
// Notifications
Route::post('/notifications/read', MarkUserNotificationsAsReadController::class);
Route::delete('/notifications', FlushUserNotificationsController::class);
Route::get('/notifications', GetUserNotificationsController::class);
// Favourites
Route::apiResource('/folders/favourites', FavouriteController::class);
Route::apiResource('/favourites', FavouriteController::class);
// Search
Route::get('/search', SpotlightSearchController::class);
@@ -84,9 +100,11 @@ Route::group(['middleware' => ['auth:sanctum']], function () {
// User master,editor routes
Route::group(['middleware' => ['auth:sanctum']], function () {
Route::post('/upload/remote', RemoteUploadFileController::class);
Route::post('/create-folder', CreateFolderController::class);
Route::post('/upload/chunks', UploadFileChunksController::class);
Route::post('/upload', UploadFileController::class);
Route::post('/create-folder', CreateFolderController::class);
Route::patch('/rename/{id}', RenameFileOrFolderController::class);
Route::post('/remove', DeleteFileOrFolderController::class);
Route::post('/move', MoveFileOrFolderController::class);

View File

@@ -8,8 +8,9 @@ use Domain\UploadRequest\Controllers\BrowseUploadRequestController;
use Domain\UploadRequest\Controllers\CreateUploadRequestController;
use Domain\UploadRequest\Controllers\MoveItemInUploadRequestController;
use Domain\UploadRequest\Controllers\SetUploadRequestAsFilledController;
use Domain\UploadRequest\Controllers\UploadFilesForUploadRequestController;
use Domain\UploadRequest\Controllers\UploadFileForUploadRequestController;
use Domain\UploadRequest\Controllers\GetFolderTreeForUploadRequestController;
use Domain\UploadRequest\Controllers\UploadFileChunksForUploadRequestController;
use Domain\RemoteUpload\Controllers\UploadFilesRemotelyForUploadRequestController;
Route::get('/{uploadRequest}', GetUploadRequestController::class);
@@ -21,7 +22,10 @@ Route::group(['middleware' => 'upload-request'], function () {
// Edit
Route::post('/{uploadRequest}/upload/remote', UploadFilesRemotelyForUploadRequestController::class);
Route::post('/{uploadRequest}/upload', UploadFilesForUploadRequestController::class);
Route::post('/{uploadRequest}/upload/chunks', UploadFileChunksForUploadRequestController::class);
Route::post('/{uploadRequest}/upload', UploadFileForUploadRequestController::class);
Route::post('/{uploadRequest}/move', MoveItemInUploadRequestController::class);
Route::patch('/{uploadRequest}/rename/{id}', RenameFileOrFolderController::class);
Route::post('/{uploadRequest}/create-folder', CreateFolderController::class);
Route::post('/{uploadRequest}/remove', DeleteFileOrFolderController::class);
@@ -29,7 +33,6 @@ Route::group(['middleware' => 'upload-request'], function () {
// Browsing
Route::get('/{uploadRequest}/navigation', GetFolderTreeForUploadRequestController::class);
Route::get('/{uploadRequest}/browse/{folder?}', BrowseUploadRequestController::class);
Route::post('/{uploadRequest}/move', MoveItemInUploadRequestController::class);
});
// User functionality

View File

@@ -3,10 +3,10 @@
use Domain\Sharing\Controllers\ShareController;
use Domain\Zip\Controllers\VisitorZipController;
use Domain\Files\Controllers\VisitorShowFileController;
use Domain\Files\Controllers\VisitorUploadFileController;
use Domain\Folders\Controllers\VisitorCreateFolderController;
use Domain\Sharing\Controllers\WebCrawlerOpenGraphController;
use Domain\Browsing\Controllers\VisitorBrowseFolderController;
use Domain\Files\Controllers\VisitorUploadFileChunksController;
use Domain\Items\Controllers\VisitorMoveFileOrFolderController;
use Domain\Items\Controllers\VisitorDeleteFileOrFolderController;
use Domain\Items\Controllers\VisitorRenameFileOrFolderController;
@@ -18,8 +18,9 @@ use Domain\Browsing\Controllers\VisitorSearchFilesAndFoldersController;
// Browse functions
Route::group(['prefix' => 'editor'], function () {
Route::post('/upload/remote/{shared}', VisitorRemoteUploadFileController::class);
Route::post('/upload/chunks/{shared}', VisitorUploadFileChunksController::class);
Route::post('/create-folder/{shared}', VisitorCreateFolderController::class);
Route::post('/upload/{shared}', VisitorUploadFileController::class);
Route::patch('/rename/{id}/{shared}', VisitorRenameFileOrFolderController::class);
Route::post('/remove/{shared}', VisitorDeleteFileOrFolderController::class);

View File

@@ -1,5 +1,6 @@
<?php
use App\Users\Controllers\Account\UpdateAvatarController;
use App\Users\Controllers\Account\AccountDetailsController;
use App\Users\Controllers\Account\UpdatePasswordController;
use App\Users\Controllers\Account\StorageCapacityController;
@@ -7,34 +8,27 @@ use App\Users\Controllers\Verification\VerifyEmailController;
use Domain\Transactions\Controllers\GetTransactionsController;
use App\Users\Controllers\Authentication\CheckAccountController;
use App\Users\Controllers\Account\UpdateProfileSettingsController;
use Domain\Notifications\Controllers\GetUserNotificationsController;
use App\Users\Controllers\Authentication\AccountAccessTokenController;
use Domain\Notifications\Controllers\FlushUserNotificationsController;
use App\Users\Controllers\Verification\ResendVerificationEmailController;
use Domain\Notifications\Controllers\MarkUserNotificationsAsReadController;
Route::post('/check', CheckAccountController::class);
// Email verification
Route::get('/email/verify/{id}', VerifyEmailController::class)
Route::get('/verify/{id}', VerifyEmailController::class)
->name('verification.verify');
Route::post('/email/verify/resend', ResendVerificationEmailController::class)
Route::post('/verify', ResendVerificationEmailController::class)
->name('verification.send');
Route::group(['middleware' => ['auth:sanctum']], function () {
// User Access Token
Route::apiResource('/tokens', AccountAccessTokenController::class);
// Notifications
Route::post('/notifications/read', MarkUserNotificationsAsReadController::class);
Route::delete('/notifications', FlushUserNotificationsController::class);
Route::get('/notifications', GetUserNotificationsController::class);
// Account
Route::patch('/settings', UpdateProfileSettingsController::class);
Route::get('/transactions', GetTransactionsController::class);
Route::post('/password', UpdatePasswordController::class);
Route::get('/storage', StorageCapacityController::class);
Route::post('/avatar', UpdateAvatarController::class);
Route::get('/', AccountDetailsController::class);
});