group(function () { Route::post('transaction/exim/{exim}', 'TransactionEximController'); Route::patch('transaction/actions/{action}', 'TransactionActionsController'); Route::patch('transaction/action/{transaction}/{action}', 'TransactionActionController'); Route::patch('transaction/workflow/{transaction}/{transition}', 'TransactionWorkflowController'); Route::resource('transaction', 'TransactionResourceController'); }); // Guard routes for project Route::prefix('{guard}/map')->group(function () { Route::post('project/exim/{exim}', 'ProjectEximController'); Route::patch('project/actions/{action}', 'ProjectActionsController'); Route::patch('project/action/{project}/{action}', 'ProjectActionController'); Route::patch('project/workflow/{project}/{transition}', 'ProjectWorkflowController'); Route::resource('project', 'ProjectResourceController'); }); // Guard routes for building Route::prefix('{guard}/map')->group(function () { Route::post('building/exim/{exim}', 'BuildingEximController'); Route::resource('building', 'BuildingResourceController'); }); // Guard routes for developer Route::prefix('{guard}/map')->group(function () { Route::post('developer/exim/{exim}', 'DeveloperEximController'); Route::resource('developer', 'DeveloperResourceController'); }); // Guard routes for unit Route::prefix('{guard}/map')->group(function () { Route::post('unit/exim/{exim}', 'UnitEximController'); Route::patch('unit/actions/{action}', 'UnitActionsController'); Route::patch('unit/action/{unit}/{action}', 'UnitActionController'); Route::patch('unit/workflow/{unit}/{transition}', 'UnitWorkflowController'); Route::resource('unit', 'UnitResourceController'); }); // Public routes for map Route::get('maps/', 'MapPublicController@index'); Route::get('map/{slug?}', 'MapPublicController@show');