Skip to content

Commit affa6eb

Browse files
chore: wip
1 parent 402aa52 commit affa6eb

File tree

8 files changed

+152
-191
lines changed

8 files changed

+152
-191
lines changed

storage/framework/core/actions/src/orm/generate-model.ts

Lines changed: 19 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -657,7 +657,7 @@ async function generateModelString(tableName: string, model: Model, attributes:
657657
}
658658
659659
// Method to find a ${formattedModelName} by ID
660-
static async find(id: number, fields?: (keyof ${modelName}Type)[]) {
660+
static async find(id: number, fields?: (keyof ${modelName}Type)[]): Promise<${modelName}Model> {
661661
let query = db.selectFrom('${tableName}').where('id', '=', id)
662662
663663
if (fields)
@@ -673,7 +673,7 @@ async function generateModelString(tableName: string, model: Model, attributes:
673673
return new ${modelName}Model(model)
674674
}
675675
676-
static async findOrFail(id: number, fields?: (keyof ${modelName}Type)[]) {
676+
static async findOrFail(id: number, fields?: (keyof ${modelName}Type)[]): Promise<${modelName}Model> {
677677
let query = db.selectFrom('${tableName}').where('id', '=', id)
678678
679679
if (fields)
@@ -689,7 +689,7 @@ async function generateModelString(tableName: string, model: Model, attributes:
689689
return new ${modelName}Model(model)
690690
}
691691
692-
static async findMany(ids: number[], fields?: (keyof ${modelName}Type)[]) {
692+
static async findMany(ids: number[], fields?: (keyof ${modelName}Type)[]): Promise<${modelName}Model[]> {
693693
let query = db.selectFrom('${tableName}').where('id', 'in', ids)
694694
695695
if (fields)
@@ -754,15 +754,11 @@ async function generateModelString(tableName: string, model: Model, attributes:
754754
755755
// Method to create a new ${formattedModelName}
756756
static async create(new${modelName}: New${modelName}): Promise<${modelName}Model> {
757-
const model = await db.insertInto('${tableName}')
757+
const result = await db.insertInto('${tableName}')
758758
.values(new${modelName})
759759
.executeTakeFirstOrThrow()
760760
761-
const result = await db.insertInto('users')
762-
.values(newUser)
763-
.executeTakeFirstOrThrow()
764-
765-
return await find(Number(result.insertId))
761+
return await find(Number(result.insertId)) as ${modelName}Model
766762
}
767763
768764
// Method to remove a ${formattedModelName}
@@ -774,7 +770,7 @@ async function generateModelString(tableName: string, model: Model, attributes:
774770
return new ${modelName}Model(model)
775771
}
776772
777-
async where(column: string, operator = '=', value: any) {
773+
async where(column: string, operator = '=', value: any): Promise<${modelName}Type[]> {
778774
let query = db.selectFrom('${tableName}')
779775
780776
query = query.where(column, operator, value)
@@ -826,7 +822,7 @@ async function generateModelString(tableName: string, model: Model, attributes:
826822
return await query.selectAll().execute()
827823
}
828824
829-
async whereIn(column: keyof ${modelName}Type, values: any[], options: QueryOptions = {}) {
825+
async whereIn(column: keyof ${modelName}Type, values: any[], options: QueryOptions = {}): Promise<${modelName}Type[]> {
830826
let query = db.selectFrom('${tableName}')
831827
832828
query = query.where(column, 'in', values)
@@ -845,42 +841,42 @@ async function generateModelString(tableName: string, model: Model, attributes:
845841
return await query.selectAll().execute()
846842
}
847843
848-
async first() {
844+
async first(): Promise<${modelName}Type> {
849845
return await db.selectFrom('${tableName}')
850846
.selectAll()
851847
.executeTakeFirst()
852848
}
853849
854-
async last() {
850+
async last(): Promise<${modelName}Type> {
855851
return await db.selectFrom('${tableName}')
856852
.selectAll()
857853
.orderBy('id', 'desc')
858854
.executeTakeFirst()
859855
}
860856
861-
async orderBy(column: keyof ${modelName}Type, order: 'asc' | 'desc') {
857+
async orderBy(column: keyof ${modelName}Type, order: 'asc' | 'desc'): Promise<${modelName}Type[]> {
862858
return await db.selectFrom('${tableName}')
863859
.selectAll()
864860
.orderBy(column, order)
865861
.execute()
866862
}
867863
868-
async orderByDesc(column: keyof ${modelName}Type) {
864+
async orderByDesc(column: keyof ${modelName}Type): Promise<${modelName}Type[]> {
869865
return await db.selectFrom('${tableName}')
870866
.selectAll()
871867
.orderBy(column, 'desc')
872868
.execute()
873869
}
874870
875-
async orderByAsc(column: keyof ${modelName}Type) {
871+
async orderByAsc(column: keyof ${modelName}Type): Promise<${modelName}Type[]> {
876872
return await db.selectFrom('${tableName}')
877873
.selectAll()
878874
.orderBy(column, 'asc')
879875
.execute()
880876
}
881877
882878
// Method to get the ${formattedModelName} instance itself
883-
self() {
879+
self(): ${modelName}Model {
884880
return this
885881
}
886882
@@ -1014,7 +1010,7 @@ async function generateModelString(tableName: string, model: Model, attributes:
10141010
return model.map(modelItem => new ${modelName}Model(modelItem))
10151011
}
10161012
1017-
export async function count() {
1013+
export async function count(): Number {
10181014
const results = await db.selectFrom('${tableName}')
10191015
.selectAll()
10201016
.execute()
@@ -1057,7 +1053,7 @@ async function generateModelString(tableName: string, model: Model, attributes:
10571053
return await query.selectAll().execute()
10581054
}
10591055
1060-
export async function all(limit: number = 10, offset: number = 0) {
1056+
export async function all(limit: number = 10, offset: number = 0): Promise<${modelName}Type[]> {
10611057
return await db.selectFrom('${tableName}')
10621058
.selectAll()
10631059
.orderBy('created_at', 'desc')
@@ -1066,28 +1062,28 @@ async function generateModelString(tableName: string, model: Model, attributes:
10661062
.execute()
10671063
}
10681064
1069-
export async function create(new${modelName}: New${modelName}) {
1065+
export async function create(new${modelName}: New${modelName}): Promise<${modelName}Model> {
10701066
const result = await db.insertInto('users')
10711067
.values(newUser)
10721068
.executeTakeFirstOrThrow()
10731069
10741070
return await find(Number(result.insertId))
10751071
}
10761072
1077-
export async function first() {
1073+
export async function first(): Promise<${modelName}Model> {
10781074
return await db.selectFrom('${tableName}')
10791075
.selectAll()
10801076
.executeTakeFirst()
10811077
}
10821078
1083-
export async function recent(limit: number) {
1079+
export async function recent(limit: number): Promise<${modelName}Model[]> {
10841080
return await db.selectFrom('${tableName}')
10851081
.selectAll()
10861082
.limit(limit)
10871083
.execute()
10881084
}
10891085
1090-
export async function last(limit: number) {
1086+
export async function last(limit: number): Promise<${modelName}Type> {
10911087
return await db.selectFrom('${tableName}')
10921088
.selectAll()
10931089
.orderBy('id', 'desc')

storage/framework/orm/src/models/AccessToken.ts

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
6060
}
6161

6262
// Method to find a accesstoken by ID
63-
static async find(id: number, fields?: (keyof AccessTokenType)[]) {
63+
static async find(id: number, fields?: (keyof AccessTokenType)[]): Promise<AccessTokenModel> {
6464
let query = db.selectFrom('access_tokens').where('id', '=', id)
6565

6666
if (fields)
@@ -76,7 +76,7 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
7676
return new AccessTokenModel(model)
7777
}
7878

79-
static async findOrFail(id: number, fields?: (keyof AccessTokenType)[]) {
79+
static async findOrFail(id: number, fields?: (keyof AccessTokenType)[]): Promise<AccessTokenModel> {
8080
let query = db.selectFrom('access_tokens').where('id', '=', id)
8181

8282
if (fields)
@@ -92,7 +92,7 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
9292
return new AccessTokenModel(model)
9393
}
9494

95-
static async findMany(ids: number[], fields?: (keyof AccessTokenType)[]) {
95+
static async findMany(ids: number[], fields?: (keyof AccessTokenType)[]): Promise<AccessTokenModel[]> {
9696
let query = db.selectFrom('access_tokens').where('id', 'in', ids)
9797

9898
if (fields)
@@ -157,15 +157,11 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
157157

158158
// Method to create a new accesstoken
159159
static async create(newAccessToken: NewAccessToken): Promise<AccessTokenModel> {
160-
const model = await db.insertInto('access_tokens')
160+
const result = await db.insertInto('access_tokens')
161161
.values(newAccessToken)
162162
.executeTakeFirstOrThrow()
163163

164-
const result = await db.insertInto('users')
165-
.values(newUser)
166-
.executeTakeFirstOrThrow()
167-
168-
return await find(Number(result.insertId))
164+
return await find(Number(result.insertId)) as AccessTokenModel
169165
}
170166

171167
// Method to remove a accesstoken
@@ -177,7 +173,7 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
177173
return new AccessTokenModel(model)
178174
}
179175

180-
async where(column: string, operator = '=', value: any) {
176+
async where(column: string, operator = '=', value: any): Promise<AccessTokenType[]> {
181177
let query = db.selectFrom('access_tokens')
182178

183179
query = query.where(column, operator, value)
@@ -229,7 +225,7 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
229225
return await query.selectAll().execute()
230226
}
231227

232-
async whereIn(column: keyof AccessTokenType, values: any[], options: QueryOptions = {}) {
228+
async whereIn(column: keyof AccessTokenType, values: any[], options: QueryOptions = {}): Promise<AccessTokenType[]> {
233229
let query = db.selectFrom('access_tokens')
234230

235231
query = query.where(column, 'in', values)
@@ -248,42 +244,42 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
248244
return await query.selectAll().execute()
249245
}
250246

251-
async first() {
247+
async first(): Promise<AccessTokenType> {
252248
return await db.selectFrom('access_tokens')
253249
.selectAll()
254250
.executeTakeFirst()
255251
}
256252

257-
async last() {
253+
async last(): Promise<AccessTokenType> {
258254
return await db.selectFrom('access_tokens')
259255
.selectAll()
260256
.orderBy('id', 'desc')
261257
.executeTakeFirst()
262258
}
263259

264-
async orderBy(column: keyof AccessTokenType, order: 'asc' | 'desc') {
260+
async orderBy(column: keyof AccessTokenType, order: 'asc' | 'desc'): Promise<AccessTokenType[]> {
265261
return await db.selectFrom('access_tokens')
266262
.selectAll()
267263
.orderBy(column, order)
268264
.execute()
269265
}
270266

271-
async orderByDesc(column: keyof AccessTokenType) {
267+
async orderByDesc(column: keyof AccessTokenType): Promise<AccessTokenType[]> {
272268
return await db.selectFrom('access_tokens')
273269
.selectAll()
274270
.orderBy(column, 'desc')
275271
.execute()
276272
}
277273

278-
async orderByAsc(column: keyof AccessTokenType) {
274+
async orderByAsc(column: keyof AccessTokenType): Promise<AccessTokenType[]> {
279275
return await db.selectFrom('access_tokens')
280276
.selectAll()
281277
.orderBy(column, 'asc')
282278
.execute()
283279
}
284280

285281
// Method to get the accesstoken instance itself
286-
self() {
282+
self(): AccessTokenModel {
287283
return this
288284
}
289285

@@ -318,7 +314,6 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
318314
const newModel = await db.insertInto('access_tokens')
319315
.values(this.accesstoken as NewAccessToken)
320316
.executeTakeFirstOrThrow()
321-
this.accesstoken = newModel
322317
}
323318
else {
324319
// Update existing accesstoken
@@ -434,7 +429,7 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
434429
return model.map(modelItem => new AccessTokenModel(modelItem))
435430
}
436431

437-
export async function count() {
432+
export async function count(): Number {
438433
const results = await db.selectFrom('access_tokens')
439434
.selectAll()
440435
.execute()
@@ -477,7 +472,7 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
477472
return await query.selectAll().execute()
478473
}
479474

480-
export async function all(limit: number = 10, offset: number = 0) {
475+
export async function all(limit: number = 10, offset: number = 0): Promise<AccessTokenType[]> {
481476
return await db.selectFrom('access_tokens')
482477
.selectAll()
483478
.orderBy('created_at', 'desc')
@@ -486,28 +481,28 @@ import type { ColumnType, Generated, Insertable, Selectable, Updateable } from '
486481
.execute()
487482
}
488483

489-
export async function create(newAccessToken: NewAccessToken) {
484+
export async function create(newAccessToken: NewAccessToken): Promise<AccessTokenModel> {
490485
const result = await db.insertInto('users')
491486
.values(newUser)
492487
.executeTakeFirstOrThrow()
493488

494489
return await find(Number(result.insertId))
495490
}
496491

497-
export async function first() {
492+
export async function first(): Promise<AccessTokenModel> {
498493
return await db.selectFrom('access_tokens')
499494
.selectAll()
500495
.executeTakeFirst()
501496
}
502497

503-
export async function recent(limit: number) {
498+
export async function recent(limit: number): Promise<AccessTokenModel[]> {
504499
return await db.selectFrom('access_tokens')
505500
.selectAll()
506501
.limit(limit)
507502
.execute()
508503
}
509504

510-
export async function last(limit: number) {
505+
export async function last(limit: number): Promise<AccessTokenType> {
511506
return await db.selectFrom('access_tokens')
512507
.selectAll()
513508
.orderBy('id', 'desc')

0 commit comments

Comments
 (0)