feat: add domains, ideas, layouts, widgets API modules

- Add DomainsModule with full CRUD, search, and activity logging
- Add IdeasModule with quick capture endpoint
- Add LayoutsModule for user dashboard layouts
- Add WidgetsModule for widget definitions (read-only)
- Update ActivityService with domain/idea logging methods
- Register all new modules in AppModule
This commit is contained in:
Jason Woltje
2026-01-29 13:47:03 -06:00
parent 973502f26e
commit f47dd8bc92
66 changed files with 4277 additions and 29 deletions

View File

@@ -0,0 +1,39 @@
import {
Controller,
Get,
Param,
UseGuards,
} from "@nestjs/common";
import { WidgetsService } from "./widgets.service";
import { AuthGuard } from "../auth/guards/auth.guard";
/**
* Controller for widget definition endpoints
* All endpoints require authentication
* Provides read-only access to available widget definitions
*/
@Controller("widgets")
@UseGuards(AuthGuard)
export class WidgetsController {
constructor(private readonly widgetsService: WidgetsService) {}
/**
* GET /api/widgets
* List all available widget definitions
* Returns only active widgets
*/
@Get()
async findAll() {
return this.widgetsService.findAll();
}
/**
* GET /api/widgets/:name
* Get a widget definition by name
* Useful for fetching widget configuration schemas
*/
@Get(":name")
async findByName(@Param("name") name: string) {
return this.widgetsService.findByName(name);
}
}