Add workshops CMS API with schedule, registrations, and public storefront routes.

Includes SQL migrations, Prisma models, dashboard CRUD, registration status workflow, and website OpenAPI updates for workshop listing and signup.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Alireza Hassani
2026-08-22 12:22:24 +03:30
co-authored by Cursor
parent 9d56ec7396
commit c7d5204b49
19 changed files with 1919 additions and 19 deletions
@@ -118,6 +118,7 @@ export const BUSINESS_DASHBOARD_MODULE_IDS = [
'warehouse',
'videos',
'instructions',
'workshops',
'finance',
] as const;
@@ -188,13 +189,19 @@ export const DEFAULT_ORDER_PROCESS_STEPS: OrderProcessStep[] = [
},
];
/** Modules enabled when a new business is created (super-admin). */
export const DEFAULT_NEW_BUSINESS_MODULES: BusinessModuleId[] = [
'products',
'blog',
'finance',
];
/**
* Existing tenants without `settings.modules` keep every business-dashboard module
* enabled. Customer modules stay opt-in.
* enabled except opt-in modules. Customer modules stay opt-in.
*/
export const DEFAULT_ENABLED_BUSINESS_MODULES: BusinessModuleId[] = [
...BUSINESS_DASHBOARD_MODULE_IDS,
];
export const DEFAULT_ENABLED_BUSINESS_MODULES: BusinessModuleId[] =
BUSINESS_DASHBOARD_MODULE_IDS.filter((id) => id !== 'workshops');
export const DEFAULT_HOME_CHARTS: [HomeChartId, HomeChartId] = [
'orders_30d',