56 lines
3.1 KiB
PHP
56 lines
3.1 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\AccountBalanceController;
|
|
use App\Http\Controllers\EncryptionController;
|
|
use App\Http\Controllers\Sync\AccountBalanceSyncController;
|
|
use App\Http\Controllers\Sync\AccountSyncController;
|
|
use App\Http\Controllers\Sync\BankSyncController;
|
|
use App\Http\Controllers\Sync\CategorySyncController;
|
|
use App\Http\Controllers\TransactionController;
|
|
use Illuminate\Support\Facades\Route;
|
|
use Inertia\Inertia;
|
|
use Laravel\Fortify\Features;
|
|
|
|
Route::get('/', function () {
|
|
return Inertia::render('welcome', [
|
|
'canRegister' => Features::enabled(Features::registration()),
|
|
]);
|
|
})->name('home');
|
|
|
|
Route::middleware(['auth'])->group(function () {
|
|
Route::get('setup-encryption', function () {
|
|
return Inertia::render('auth/setup-encryption');
|
|
})->name('setup-encryption');
|
|
|
|
Route::post('api/encryption/setup', [EncryptionController::class, 'setup']);
|
|
Route::get('api/encryption/message', [EncryptionController::class, 'getMessage']);
|
|
Route::put('api/encryption/message', [EncryptionController::class, 'updateMessage']);
|
|
|
|
Route::get('api/sync/categories', [CategorySyncController::class, 'index']);
|
|
Route::get('api/sync/accounts', [AccountSyncController::class, 'index']);
|
|
Route::get('api/sync/banks', [BankSyncController::class, 'index']);
|
|
Route::get('api/sync/automation-rules', [\App\Http\Controllers\Sync\AutomationRuleSyncController::class, 'index']);
|
|
Route::get('api/sync/transactions', [\App\Http\Controllers\Sync\TransactionSyncController::class, 'index']);
|
|
Route::post('api/sync/transactions', [\App\Http\Controllers\Sync\TransactionSyncController::class, 'store']);
|
|
Route::patch('api/sync/transactions/{transaction}', [\App\Http\Controllers\Sync\TransactionSyncController::class, 'update']);
|
|
Route::delete('api/sync/transactions/{transaction}', [\App\Http\Controllers\Sync\TransactionSyncController::class, 'destroy']);
|
|
Route::get('api/sync/account-balances', [AccountBalanceSyncController::class, 'index']);
|
|
Route::post('api/sync/account-balances', [AccountBalanceSyncController::class, 'store']);
|
|
Route::patch('api/sync/account-balances/{accountBalance}', [AccountBalanceSyncController::class, 'update']);
|
|
Route::put('api/accounts/{account}/balance/current', [AccountBalanceController::class, 'updateCurrent'])->name('accounts.balance.update-current');
|
|
});
|
|
|
|
Route::middleware(['auth', 'verified', 'redirect.encryption'])->group(function () {
|
|
Route::get('dashboard', function () {
|
|
return Inertia::render('dashboard');
|
|
})->name('dashboard');
|
|
|
|
Route::get('transactions', [TransactionController::class, 'index'])->name('transactions.index');
|
|
Route::post('transactions', [TransactionController::class, 'store'])->name('transactions.store');
|
|
Route::patch('transactions/bulk', [TransactionController::class, 'bulkUpdate'])->name('transactions.bulk-update');
|
|
Route::patch('transactions/{transaction}', [TransactionController::class, 'update'])->name('transactions.update');
|
|
Route::delete('transactions/{transaction}', [TransactionController::class, 'destroy'])->name('transactions.destroy');
|
|
});
|
|
|
|
require __DIR__.'/settings.php';
|