( table: T, columnTypeMap: TableSqliteTypeMap<T> )
| 67 | }; |
| 68 | |
| 69 | export function getCreateTableQueryFromTable<T extends BaseTableQueryInterpolator>( |
| 70 | table: T, |
| 71 | columnTypeMap: TableSqliteTypeMap<T> |
| 72 | ): string { |
| 73 | return ` |
| 74 | create table if not exists "${table.toString()}" ( |
| 75 | ${objectKeys(table.columns) |
| 76 | .map(k => `"${String(k)}" ${String(columnTypeMap[k])}`) |
| 77 | .join(',\n')} |
| 78 | ); |
| 79 | `.trim(); |
| 80 | } |
| 81 | |
| 82 | function objectKeys<T extends object>(obj: T): Array<keyof T> { |
| 83 | return Object.keys(obj) as Array<keyof T>; |
no test coverage detected