Changes in / [f46bf5c:b6e1b3c]
- Files:
-
- 3 edited
-
database/drizzle/queries/components.ts (modified) (2 diffs)
-
database/drizzle/util/componentFieldConfig.ts (modified) (1 diff)
-
pages/dashboard/admin/adminDashboard.telefunc.ts (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
database/drizzle/queries/components.ts
rf46bf5c rb6e1b3c 12 12 } from "../schema"; 13 13 import {and, asc, desc, eq, ilike, SQL, sql} from "drizzle-orm"; 14 import {typeConfigMap, ComponentType , requiredFields} from "../util/componentFieldConfig";14 import {typeConfigMap, ComponentType} from "../util/componentFieldConfig"; 15 15 import {AnyPgColumn} from "drizzle-orm/pg-core"; 16 16 import {inArray} from "drizzle-orm/sql/expressions/conditions"; … … 101 101 ...component, 102 102 details: details 103 };104 }105 106 export async function getDetailsForNewComponent(componentType: string) {107 const config = typeConfigMap[componentType as ComponentType];108 109 return {110 type: componentType as ComponentType,111 requiredFields: requiredFields[componentType as ComponentType] ?? [],112 multiTables: config.multiTables ?? {},113 103 }; 114 104 } -
database/drizzle/util/componentFieldConfig.ts
rf46bf5c rb6e1b3c 108 108 return true; 109 109 } 110 111 export function getValidationError(type: string, specificData: any): string | null { 112 if (!(type in requiredFields)) { 113 return `Invalid component type: ${type}`; 114 } 115 116 const fields = requiredFields[type as ComponentType]; 117 const missingFields: string[] = []; 118 119 for (const field of fields) { 120 const value = specificData[field]; 121 if (value === undefined || value === null || value === '') { 122 missingFields.push(field); 123 } 124 } 125 126 if (missingFields.length > 0) { 127 return `Missing required fields: ${missingFields.join(', ')}`; 128 } 129 130 return null; 131 } -
pages/dashboard/admin/adminDashboard.telefunc.ts
rf46bf5c rb6e1b3c 63 63 return { success: true }; 64 64 } 65 66 export async function onGetDetailsForNewComponent({ type }67 : { type: string }) {68 const { c, userId } = await requireAdmin()69 70 const details = await drizzleQueries.getDetailsForNewComponent(type);71 72 return details;73 }
Note:
See TracChangeset
for help on using the changeset viewer.
