vona-module-test-vona 5.0.52 → 5.0.54

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -358,7 +358,7 @@ import { SymbolKeyEntity, SymbolKeyEntityMeta, SymbolKeyModelOptions } from 'von
358
358
  declare module 'vona-module-test-vona' {
359
359
  interface IModelOptionsCategory {
360
360
  relations: {
361
- children: IModelRelationHasMany<ModelCategory, true, 'id' | 'name', undefined, undefined, undefined>;
361
+ children: IModelRelationHasMany<ModelCategory, 'categoryIdParent', true, 'id' | 'name', undefined, undefined, undefined>;
362
362
  };
363
363
  }
364
364
  interface IModelOptionsCategoryChain {
@@ -369,16 +369,16 @@ declare module 'vona-module-test-vona' {
369
369
  interface IModelOptionsOrder {
370
370
  relations: {
371
371
  user: IModelRelationBelongsTo<ModelOrder, ModelUser, true, 'id' | 'name'>;
372
- products: IModelRelationHasMany<ModelProduct, true, 'id' | 'name' | 'price' | 'quantity' | 'amount', undefined, undefined, undefined>;
372
+ products: IModelRelationHasMany<ModelProduct, 'orderId', true, 'id' | 'name' | 'price' | 'quantity' | 'amount', undefined, undefined, undefined>;
373
373
  };
374
374
  }
375
375
  interface IModelOptionsOrderStats {
376
376
  relations: {
377
- productStats: IModelRelationHasMany<ModelProduct, true, '*', undefined, {
377
+ productStats: IModelRelationHasMany<ModelProduct, 'orderId', true, undefined, undefined, {
378
378
  count?: '*' | Array<'*'>;
379
379
  sum?: 'amount' | Array<'amount'>;
380
380
  }, undefined>;
381
- productsGroups: IModelRelationHasMany<ModelProduct, false, undefined, undefined, {
381
+ productsGroups: IModelRelationHasMany<ModelProduct, 'orderId', false, undefined, undefined, {
382
382
  count?: '*' | Array<'*'>;
383
383
  sum?: 'amount' | Array<'amount'>;
384
384
  }, 'id' | Array<'id'>>;
@@ -386,13 +386,13 @@ declare module 'vona-module-test-vona' {
386
386
  }
387
387
  interface IModelOptionsPost {
388
388
  relations: {
389
- postContent: IModelRelationHasOne<ModelPostContent, false, 'id' | 'content'>;
389
+ postContent: IModelRelationHasOne<ModelPostContent, 'postId', false, 'id' | 'content'>;
390
390
  user: IModelRelationBelongsTo<ModelPost, ModelUser, true, 'id' | 'name'>;
391
391
  };
392
392
  }
393
393
  interface IModelOptionsPostContent {
394
394
  relations: {
395
- post: IModelRelationBelongsTo<ModelPostContent, ModelPost, false, '*'>;
395
+ post: IModelRelationBelongsTo<ModelPostContent, ModelPost, false, undefined>;
396
396
  };
397
397
  }
398
398
  interface IModelOptionsRole {
@@ -402,24 +402,24 @@ declare module 'vona-module-test-vona' {
402
402
  }
403
403
  interface IModelOptionsUser {
404
404
  relations: {
405
- posts: IModelRelationHasMany<ModelPost, false, 'id' | 'title', ['test-vona:user', ModelPostContent], undefined, undefined>;
405
+ posts: IModelRelationHasMany<ModelPost, 'userId', false, 'id' | 'title', ['test-vona:user', ModelPostContent], undefined, undefined>;
406
406
  roles: IModelRelationBelongsToMany<'test-vona:roleUser', 'test-vona:role', false, 'id' | 'name', undefined, undefined, undefined>;
407
407
  };
408
408
  }
409
409
  interface IModelOptionsUserStats {
410
410
  relations: {
411
- posts: IModelRelationHasMany<ModelPost, true, '*', undefined, {
411
+ posts: IModelRelationHasMany<ModelPost, 'userId', true, undefined, undefined, {
412
412
  count?: '*' | 'title' | Array<'*' | 'title'>;
413
413
  sum?: 'stars' | Array<'stars'>;
414
414
  }, undefined>;
415
- roles: IModelRelationBelongsToMany<'test-vona:roleUser', 'test-vona:role', false, '*', undefined, {
415
+ roles: IModelRelationBelongsToMany<'test-vona:roleUser', 'test-vona:role', false, undefined, undefined, {
416
416
  count?: '*' | Array<'*'>;
417
417
  }, undefined>;
418
418
  };
419
419
  }
420
420
  interface IModelOptionsUserStatsGroup {
421
421
  relations: {
422
- posts: IModelRelationHasMany<ModelPost, true, undefined, undefined, {
422
+ posts: IModelRelationHasMany<ModelPost, 'userId', true, undefined, undefined, {
423
423
  count?: '*' | 'title' | Array<'*' | 'title'>;
424
424
  sum?: 'stars' | Array<'stars'>;
425
425
  }, 'title' | Array<'title'>>;
@@ -1089,6 +1089,24 @@ declare module 'vona-module-test-vona' {
1089
1089
  }
1090
1090
  }
1091
1091
  /** schedule: end */
1092
+ /** serializerTransform: begin */
1093
+ export * from '../bean/serializerTransform.email.ts';
1094
+ import type { ISerializerTransformOptionsEmail } from '../bean/serializerTransform.email.ts';
1095
+ import 'vona';
1096
+ declare module 'vona-module-a-serialization' {
1097
+ interface ISerializerTransformRecord {
1098
+ 'test-vona:email': ISerializerTransformOptionsEmail;
1099
+ }
1100
+ }
1101
+ declare module 'vona-module-test-vona' {
1102
+ interface SerializerTransformEmail {
1103
+ }
1104
+ interface SerializerTransformEmail {
1105
+ get $beanFullName(): 'test-vona.serializerTransform.email';
1106
+ get $onionName(): 'test-vona:email';
1107
+ }
1108
+ }
1109
+ /** serializerTransform: end */
1092
1110
  /** summerCache: begin */
1093
1111
  export * from '../bean/summerCache.test.ts';
1094
1112
  import { type IDecoratorSummerCacheOptions } from 'vona-module-a-summer';
@@ -1120,11 +1138,16 @@ export * from '../dto/orderQueryPage.ts';
1120
1138
  export * from '../dto/orderResult.ts';
1121
1139
  export * from '../dto/orderResultPage.ts';
1122
1140
  export * from '../dto/orderUpdate.ts';
1141
+ export * from '../dto/postAggregate.ts';
1123
1142
  export * from '../dto/postCreate.ts';
1143
+ export * from '../dto/postGroup.ts';
1124
1144
  export * from '../dto/postQuery.ts';
1125
1145
  export * from '../dto/postQueryRes.ts';
1126
1146
  export * from '../dto/profile.ts';
1127
1147
  export * from '../dto/roleLazy.ts';
1148
+ export * from '../dto/serializerArray.ts';
1149
+ export * from '../dto/serializerLazy.ts';
1150
+ export * from '../dto/serializerSimple.ts';
1128
1151
  export * from '../dto/signin.ts';
1129
1152
  export * from '../dto/user.ts';
1130
1153
  export * from '../dto/userCreate.ts';
@@ -1137,11 +1160,16 @@ import type { IDtoOptionsOrderQueryPage } from '../dto/orderQueryPage.ts';
1137
1160
  import type { IDtoOptionsOrderResult } from '../dto/orderResult.ts';
1138
1161
  import type { IDtoOptionsOrderResultPage } from '../dto/orderResultPage.ts';
1139
1162
  import type { IDtoOptionsOrderUpdate } from '../dto/orderUpdate.ts';
1163
+ import type { IDtoOptionsPostAggregate } from '../dto/postAggregate.ts';
1140
1164
  import type { IDtoOptionsPostCreate } from '../dto/postCreate.ts';
1165
+ import type { IDtoOptionsPostGroup } from '../dto/postGroup.ts';
1141
1166
  import type { IDtoOptionsPostQuery } from '../dto/postQuery.ts';
1142
1167
  import type { IDtoOptionsPostQueryRes } from '../dto/postQueryRes.ts';
1143
1168
  import type { IDtoOptionsProfile } from '../dto/profile.ts';
1144
1169
  import type { IDtoOptionsRoleLazy } from '../dto/roleLazy.ts';
1170
+ import type { IDtoOptionsSerializerArray } from '../dto/serializerArray.ts';
1171
+ import type { IDtoOptionsSerializerLazy } from '../dto/serializerLazy.ts';
1172
+ import type { IDtoOptionsSerializerSimple } from '../dto/serializerSimple.ts';
1145
1173
  import type { IDtoOptionsSignin } from '../dto/signin.ts';
1146
1174
  import type { IDtoOptionsUser } from '../dto/user.ts';
1147
1175
  import type { IDtoOptionsUserCreate } from '../dto/userCreate.ts';
@@ -1157,11 +1185,16 @@ declare module 'vona-module-a-web' {
1157
1185
  'test-vona:orderResult': IDtoOptionsOrderResult;
1158
1186
  'test-vona:orderResultPage': IDtoOptionsOrderResultPage;
1159
1187
  'test-vona:orderUpdate': IDtoOptionsOrderUpdate;
1188
+ 'test-vona:postAggregate': IDtoOptionsPostAggregate;
1160
1189
  'test-vona:postCreate': IDtoOptionsPostCreate;
1190
+ 'test-vona:postGroup': IDtoOptionsPostGroup;
1161
1191
  'test-vona:postQuery': IDtoOptionsPostQuery;
1162
1192
  'test-vona:postQueryRes': IDtoOptionsPostQueryRes;
1163
1193
  'test-vona:profile': IDtoOptionsProfile;
1164
1194
  'test-vona:roleLazy': IDtoOptionsRoleLazy;
1195
+ 'test-vona:serializerArray': IDtoOptionsSerializerArray;
1196
+ 'test-vona:serializerLazy': IDtoOptionsSerializerLazy;
1197
+ 'test-vona:serializerSimple': IDtoOptionsSerializerSimple;
1165
1198
  'test-vona:signin': IDtoOptionsSignin;
1166
1199
  'test-vona:user': IDtoOptionsUser;
1167
1200
  'test-vona:userCreate': IDtoOptionsUserCreate;
@@ -1180,11 +1213,16 @@ import type { DtoOrderQueryPage } from '../dto/orderQueryPage.ts';
1180
1213
  import type { DtoOrderResult } from '../dto/orderResult.ts';
1181
1214
  import type { DtoOrderResultPage } from '../dto/orderResultPage.ts';
1182
1215
  import type { DtoOrderUpdate } from '../dto/orderUpdate.ts';
1216
+ import type { DtoPostAggregate } from '../dto/postAggregate.ts';
1183
1217
  import type { DtoPostCreate } from '../dto/postCreate.ts';
1218
+ import type { DtoPostGroup } from '../dto/postGroup.ts';
1184
1219
  import type { DtoPostQuery } from '../dto/postQuery.ts';
1185
1220
  import type { DtoPostQueryRes } from '../dto/postQueryRes.ts';
1186
1221
  import type { DtoProfile } from '../dto/profile.ts';
1187
1222
  import type { DtoRoleLazy } from '../dto/roleLazy.ts';
1223
+ import type { DtoSerializerArray } from '../dto/serializerArray.ts';
1224
+ import type { DtoSerializerLazy } from '../dto/serializerLazy.ts';
1225
+ import type { DtoSerializerSimple } from '../dto/serializerSimple.ts';
1188
1226
  import type { DtoSignin } from '../dto/signin.ts';
1189
1227
  import type { DtoUser } from '../dto/user.ts';
1190
1228
  import type { DtoUserCreate } from '../dto/userCreate.ts';
@@ -1212,9 +1250,15 @@ declare module 'vona-module-test-vona' {
1212
1250
  interface IDtoOptionsOrderUpdate {
1213
1251
  fields?: TypeEntityOptionsFields<DtoOrderUpdate, IDtoOptionsOrderUpdate[TypeSymbolKeyFieldsMore]>;
1214
1252
  }
1253
+ interface IDtoOptionsPostAggregate {
1254
+ fields?: TypeEntityOptionsFields<DtoPostAggregate, IDtoOptionsPostAggregate[TypeSymbolKeyFieldsMore]>;
1255
+ }
1215
1256
  interface IDtoOptionsPostCreate {
1216
1257
  fields?: TypeEntityOptionsFields<DtoPostCreate, IDtoOptionsPostCreate[TypeSymbolKeyFieldsMore]>;
1217
1258
  }
1259
+ interface IDtoOptionsPostGroup {
1260
+ fields?: TypeEntityOptionsFields<DtoPostGroup, IDtoOptionsPostGroup[TypeSymbolKeyFieldsMore]>;
1261
+ }
1218
1262
  interface IDtoOptionsPostQuery {
1219
1263
  fields?: TypeEntityOptionsFields<DtoPostQuery, IDtoOptionsPostQuery[TypeSymbolKeyFieldsMore]>;
1220
1264
  }
@@ -1227,6 +1271,15 @@ declare module 'vona-module-test-vona' {
1227
1271
  interface IDtoOptionsRoleLazy {
1228
1272
  fields?: TypeEntityOptionsFields<DtoRoleLazy, IDtoOptionsRoleLazy[TypeSymbolKeyFieldsMore]>;
1229
1273
  }
1274
+ interface IDtoOptionsSerializerArray {
1275
+ fields?: TypeEntityOptionsFields<DtoSerializerArray, IDtoOptionsSerializerArray[TypeSymbolKeyFieldsMore]>;
1276
+ }
1277
+ interface IDtoOptionsSerializerLazy {
1278
+ fields?: TypeEntityOptionsFields<DtoSerializerLazy, IDtoOptionsSerializerLazy[TypeSymbolKeyFieldsMore]>;
1279
+ }
1280
+ interface IDtoOptionsSerializerSimple {
1281
+ fields?: TypeEntityOptionsFields<DtoSerializerSimple, IDtoOptionsSerializerSimple[TypeSymbolKeyFieldsMore]>;
1282
+ }
1230
1283
  interface IDtoOptionsSignin {
1231
1284
  fields?: TypeEntityOptionsFields<DtoSignin, IDtoOptionsSignin[TypeSymbolKeyFieldsMore]>;
1232
1285
  }
@@ -1257,6 +1310,7 @@ export * from '../controller/passport.ts';
1257
1310
  export * from '../controller/performAction.ts';
1258
1311
  export * from '../controller/post.ts';
1259
1312
  export * from '../controller/queue.ts';
1313
+ export * from '../controller/serializer.ts';
1260
1314
  export * from '../controller/summer.ts';
1261
1315
  export * from '../controller/tail.ts';
1262
1316
  export * from '../controller/transaction.ts';
@@ -1273,6 +1327,7 @@ import type { IControllerOptionsPassport } from '../controller/passport.ts';
1273
1327
  import type { IControllerOptionsPerformAction } from '../controller/performAction.ts';
1274
1328
  import type { IControllerOptionsPost } from '../controller/post.ts';
1275
1329
  import type { IControllerOptionsQueue } from '../controller/queue.ts';
1330
+ import type { IControllerOptionsSerializer } from '../controller/serializer.ts';
1276
1331
  import type { IControllerOptionsSummer } from '../controller/summer.ts';
1277
1332
  import type { IControllerOptionsTail } from '../controller/tail.ts';
1278
1333
  import type { IControllerOptionsTransaction } from '../controller/transaction.ts';
@@ -1292,6 +1347,7 @@ declare module 'vona-module-a-web' {
1292
1347
  'test-vona:performAction': IControllerOptionsPerformAction;
1293
1348
  'test-vona:post': IControllerOptionsPost;
1294
1349
  'test-vona:queue': IControllerOptionsQueue;
1350
+ 'test-vona:serializer': IControllerOptionsSerializer;
1295
1351
  'test-vona:summer': IControllerOptionsSummer;
1296
1352
  'test-vona:tail': IControllerOptionsTail;
1297
1353
  'test-vona:transaction': IControllerOptionsTransaction;
@@ -1371,6 +1427,12 @@ declare module 'vona-module-test-vona' {
1371
1427
  get $beanFullName(): 'test-vona.controller.queue';
1372
1428
  get $onionName(): 'test-vona:queue';
1373
1429
  }
1430
+ interface ControllerSerializer {
1431
+ }
1432
+ interface ControllerSerializer {
1433
+ get $beanFullName(): 'test-vona.controller.serializer';
1434
+ get $onionName(): 'test-vona:serializer';
1435
+ }
1374
1436
  interface ControllerSummer {
1375
1437
  }
1376
1438
  interface ControllerSummer {
@@ -1410,6 +1472,7 @@ import '../controller/passport.ts';
1410
1472
  import '../controller/performAction.ts';
1411
1473
  import '../controller/post.ts';
1412
1474
  import '../controller/queue.ts';
1475
+ import '../controller/serializer.ts';
1413
1476
  import '../controller/summer.ts';
1414
1477
  import '../controller/tail.ts';
1415
1478
  import '../controller/transaction.ts';
@@ -1451,6 +1514,9 @@ declare module 'vona-module-test-vona' {
1451
1514
  interface IControllerOptionsQueue {
1452
1515
  actions?: TypeControllerOptionsActions<ControllerQueue>;
1453
1516
  }
1517
+ interface IControllerOptionsSerializer {
1518
+ actions?: TypeControllerOptionsActions<ControllerSerializer>;
1519
+ }
1454
1520
  interface IControllerOptionsSummer {
1455
1521
  actions?: TypeControllerOptionsActions<ControllerSummer>;
1456
1522
  }
@@ -1486,6 +1552,8 @@ declare module 'vona-module-a-web' {
1486
1552
  '/test/vona/order/findMany': undefined;
1487
1553
  '/test/vona/passport/echo/:name': undefined;
1488
1554
  '/test/vona/passport/isAuthenticated': undefined;
1555
+ '/test/vona/post/group': undefined;
1556
+ '/test/vona/post/aggregate': undefined;
1489
1557
  '/test/vona/post/findManyEcho': undefined;
1490
1558
  '/test/vona/post/findMany': undefined;
1491
1559
  }
@@ -1498,12 +1566,16 @@ declare module 'vona-module-a-web' {
1498
1566
  '/test/vona/onion/echo2/:userId/:userName': undefined;
1499
1567
  '/test/vona/onion/echo4': undefined;
1500
1568
  '/test/vona/order/create': undefined;
1569
+ '/test/vona/order/update/:id': undefined;
1501
1570
  '/test/vona/passport/login': undefined;
1502
1571
  '/test/vona/passport/refresh': undefined;
1503
1572
  '/test/vona/passport/logout': undefined;
1504
1573
  '/test/vona/performAction/echo': undefined;
1505
1574
  '/test/vona/queue/pushAsync': undefined;
1506
1575
  '/test/vona/queue/push': undefined;
1576
+ '/test/vona/serializer/echoSimple': undefined;
1577
+ '/test/vona/serializer/echoArray': undefined;
1578
+ '/test/vona/serializer/echoLazy': undefined;
1507
1579
  '/test/vona/summer': undefined;
1508
1580
  '/test/vona/tail': undefined;
1509
1581
  '/test/vona/transaction/fail': undefined;
@@ -0,0 +1,10 @@
1
+ import type { IDecoratorSerializerTransformOptions, ISerializerTransform } from 'vona-module-a-serialization';
2
+ import { BeanBase } from 'vona';
3
+ export type TypeSerializerTransformEmailValue = string | undefined;
4
+ export type TypeSerializerTransformEmailData = unknown;
5
+ export type TypeSerializerTransformEmailResult = TypeSerializerTransformEmailValue;
6
+ export interface ISerializerTransformOptionsEmail extends IDecoratorSerializerTransformOptions {
7
+ }
8
+ export declare class SerializerTransformEmail extends BeanBase implements ISerializerTransform<TypeSerializerTransformEmailValue, TypeSerializerTransformEmailData, TypeSerializerTransformEmailResult> {
9
+ transform(value: TypeSerializerTransformEmailValue, _data: TypeSerializerTransformEmailData, _options: ISerializerTransformOptionsEmail): Promise<TypeSerializerTransformEmailResult>;
10
+ }
@@ -1,14 +1,75 @@
1
+ import type { TableIdentity } from 'table-identity';
1
2
  import type { IQueryParams } from 'vona-module-a-orm';
2
3
  import type { IDecoratorControllerOptions } from 'vona-module-a-web';
3
4
  import type { ModelOrder } from '../model/order.ts';
4
5
  import { BeanBase } from 'vona';
5
6
  import { DtoOrderCreate } from '../dto/orderCreate.ts';
6
7
  import { DtoOrderResult } from '../dto/orderResult.ts';
7
- import { DtoOrderResultPage } from '../dto/orderResultPage.ts';
8
+ import { DtoOrderUpdate } from '../dto/orderUpdate.ts';
8
9
  export interface IControllerOptionsOrder extends IDecoratorControllerOptions {
9
10
  }
10
11
  export declare class ControllerOrder extends BeanBase {
11
12
  create(data: DtoOrderCreate): Promise<import("vona-module-a-orm").TypeModelMutateRelationData<import("vona-module-test-vona").EntityOrder, ModelOrder, import("vona-module-a-orm").IModelInsertOptions<import("vona-module-test-vona").EntityOrder, ModelOrder>, true>>;
13
+ update(id: TableIdentity, data: DtoOrderUpdate): Promise<import("vona-module-a-orm").TypeModelMutateRelationData<import("vona-module-test-vona").EntityOrder, ModelOrder, import("vona-module-a-orm").IModelUpdateOptions<import("vona-module-test-vona").EntityOrder, ModelOrder>>>;
12
14
  findAll(params: IQueryParams<ModelOrder>): Promise<DtoOrderResult[]>;
13
- findMany(params: IQueryParams<ModelOrder>): Promise<DtoOrderResultPage>;
15
+ findMany(params: IQueryParams<ModelOrder>): Promise<import("vona-module-a-orm").TypeModelSelectAndCount<import("vona-module-test-vona").EntityOrder, ModelOrder, {
16
+ include: {
17
+ products: true;
18
+ };
19
+ with?: Record<string, unknown>;
20
+ distinct?: boolean | keyof import("vona-module-test-vona").EntityOrder | (keyof import("vona-module-test-vona").EntityOrder)[] | undefined;
21
+ columns?: "id" | "iid" | "createdAt" | "updatedAt" | "deleted" | "*" | "userId" | "orderNo" | "remark" | ("id" | "iid" | "createdAt" | "updatedAt" | "deleted" | "*" | "userId" | "orderNo" | "remark")[] | undefined;
22
+ where?: import("vona-module-a-orm").TypeModelWhereInner<{
23
+ "testVonaProduct.name": string;
24
+ "testVonaProduct.price": number;
25
+ "testVonaProduct.quantity": number;
26
+ "testVonaProduct.amount": number;
27
+ "testVonaProduct.orderId": TableIdentity;
28
+ "testVonaProduct.id": TableIdentity;
29
+ "testVonaProduct.createdAt": Date;
30
+ "testVonaProduct.updatedAt": Date;
31
+ "testVonaProduct.deleted": boolean;
32
+ "testVonaProduct.iid": number;
33
+ } & {
34
+ "testVonaOrder.orderNo": string;
35
+ "testVonaOrder.remark"?: string | undefined;
36
+ "testVonaOrder.userId": TableIdentity;
37
+ "testVonaOrder.id": TableIdentity;
38
+ "testVonaOrder.createdAt": Date;
39
+ "testVonaOrder.updatedAt": Date;
40
+ "testVonaOrder.deleted": boolean;
41
+ "testVonaOrder.iid": number;
42
+ } & import("vona-module-test-vona").EntityOrder> | import("vona-module-a-orm").TypeModelWhereInner<{
43
+ "testVonaUser.name": string;
44
+ "testVonaUser.age"?: number | undefined;
45
+ "testVonaUser.scores"?: number | undefined;
46
+ "testVonaUser.id": TableIdentity;
47
+ "testVonaUser.createdAt": Date;
48
+ "testVonaUser.updatedAt": Date;
49
+ "testVonaUser.deleted": boolean;
50
+ "testVonaUser.iid": number;
51
+ } & {
52
+ "testVonaOrder.orderNo": string;
53
+ "testVonaOrder.remark"?: string | undefined;
54
+ "testVonaOrder.userId": TableIdentity;
55
+ "testVonaOrder.id": TableIdentity;
56
+ "testVonaOrder.createdAt": Date;
57
+ "testVonaOrder.updatedAt": Date;
58
+ "testVonaOrder.deleted": boolean;
59
+ "testVonaOrder.iid": number;
60
+ } & import("vona-module-test-vona").EntityOrder> | undefined;
61
+ joins?: import("vona-module-a-orm").IModelSelectParamsJoin<import("vona-module-test-vona").EntityOrder, import("vona").TypeRecordValues<{
62
+ user: "testVonaUser";
63
+ products: "testVonaProduct";
64
+ }>, import("vona-module-a-orm").TypeEntityTableColumnNamesOfModelSelf<ModelOrder> | import("vona").TypeRecordValues<{
65
+ user: "testVonaUser.name" | "testVonaUser.id" | "testVonaUser.iid" | "testVonaUser.createdAt" | "testVonaUser.updatedAt" | "testVonaUser.deleted" | "testVonaUser.age" | "testVonaUser.scores";
66
+ products: "testVonaProduct.name" | "testVonaProduct.id" | "testVonaProduct.iid" | "testVonaProduct.createdAt" | "testVonaProduct.updatedAt" | "testVonaProduct.deleted" | "testVonaProduct.price" | "testVonaProduct.quantity" | "testVonaProduct.amount" | "testVonaProduct.orderId";
67
+ }>>[] | undefined;
68
+ orders?: import("vona-module-a-orm").IModelSelectParamsOrder<import("vona-module-a-orm").TypeEntityTableColumnNamesOfModelSelf<ModelOrder> | import("vona").TypeRecordValues<{
69
+ user: "testVonaUser.name" | "testVonaUser.id" | "testVonaUser.iid" | "testVonaUser.createdAt" | "testVonaUser.updatedAt" | "testVonaUser.deleted" | "testVonaUser.age" | "testVonaUser.scores";
70
+ products: "testVonaProduct.name" | "testVonaProduct.id" | "testVonaProduct.iid" | "testVonaProduct.createdAt" | "testVonaProduct.updatedAt" | "testVonaProduct.deleted" | "testVonaProduct.price" | "testVonaProduct.quantity" | "testVonaProduct.amount" | "testVonaProduct.orderId";
71
+ }>>[] | undefined;
72
+ limit?: number;
73
+ offset?: number;
74
+ }, undefined, undefined, undefined, 50>>;
14
75
  }
@@ -2,9 +2,13 @@ import type { IQueryParams } from 'vona-module-a-orm';
2
2
  import type { IDecoratorControllerOptions, IPipeOptionsQueryTransformInfo } from 'vona-module-a-web';
3
3
  import type { ModelPost } from '../model/post.ts';
4
4
  import { BeanBase } from 'vona';
5
+ import { DtoPostAggregate } from '../dto/postAggregate.ts';
6
+ import { DtoPostGroup } from '../dto/postGroup.ts';
5
7
  export interface IControllerOptionsPost extends IDecoratorControllerOptions {
6
8
  }
7
9
  export declare class ControllerPost extends BeanBase {
10
+ group(): Promise<DtoPostGroup[]>;
11
+ aggregate(): Promise<DtoPostAggregate>;
8
12
  findManyEcho(params: IQueryParams<ModelPost>): IQueryParams<ModelPost>;
9
13
  findManyQueryTransform(_info: IPipeOptionsQueryTransformInfo): boolean | undefined;
10
14
  findMany(params: IQueryParams<ModelPost>): Promise<import("vona-module-a-orm").TypeModelSelectAndCount<import("vona-module-test-vona").EntityPost, ModelPost, {
@@ -54,11 +58,11 @@ export declare class ControllerPost extends BeanBase {
54
58
  postContent: "testVonaPostContent";
55
59
  user: "testVonaUser";
56
60
  }>, import("vona-module-a-orm").TypeEntityTableColumnNamesOfModelSelf<ModelPost> | import("vona").TypeRecordValues<{
57
- postContent: "testVonaPostContent.id" | "testVonaPostContent.content" | "testVonaPostContent.iid" | "testVonaPostContent.createdAt" | "testVonaPostContent.updatedAt" | "testVonaPostContent.deleted" | "testVonaPostContent.postId";
61
+ postContent: "testVonaPostContent.content" | "testVonaPostContent.id" | "testVonaPostContent.iid" | "testVonaPostContent.createdAt" | "testVonaPostContent.updatedAt" | "testVonaPostContent.deleted" | "testVonaPostContent.postId";
58
62
  user: "testVonaUser.name" | "testVonaUser.id" | "testVonaUser.iid" | "testVonaUser.createdAt" | "testVonaUser.updatedAt" | "testVonaUser.deleted" | "testVonaUser.age" | "testVonaUser.scores";
59
63
  }>>[] | undefined;
60
64
  orders?: import("vona-module-a-orm").IModelSelectParamsOrder<import("vona-module-a-orm").TypeEntityTableColumnNamesOfModelSelf<ModelPost> | import("vona").TypeRecordValues<{
61
- postContent: "testVonaPostContent.id" | "testVonaPostContent.content" | "testVonaPostContent.iid" | "testVonaPostContent.createdAt" | "testVonaPostContent.updatedAt" | "testVonaPostContent.deleted" | "testVonaPostContent.postId";
65
+ postContent: "testVonaPostContent.content" | "testVonaPostContent.id" | "testVonaPostContent.iid" | "testVonaPostContent.createdAt" | "testVonaPostContent.updatedAt" | "testVonaPostContent.deleted" | "testVonaPostContent.postId";
62
66
  user: "testVonaUser.name" | "testVonaUser.id" | "testVonaUser.iid" | "testVonaUser.createdAt" | "testVonaUser.updatedAt" | "testVonaUser.deleted" | "testVonaUser.age" | "testVonaUser.scores";
63
67
  }>>[] | undefined;
64
68
  limit?: number;
@@ -0,0 +1,12 @@
1
+ import type { IDecoratorControllerOptions } from 'vona-module-a-web';
2
+ import { BeanBase } from 'vona';
3
+ import { DtoSerializerArray } from '../dto/serializerArray.ts';
4
+ import { DtoSerializerLazy } from '../dto/serializerLazy.ts';
5
+ import { DtoSerializerSimple } from '../dto/serializerSimple.ts';
6
+ export interface IControllerOptionsSerializer extends IDecoratorControllerOptions {
7
+ }
8
+ export declare class ControllerSerializer extends BeanBase {
9
+ echoSimple(data: DtoSerializerSimple): DtoSerializerSimple;
10
+ echoArray(data: DtoSerializerArray[]): DtoSerializerArray[];
11
+ echoLazy(data: DtoSerializerLazy): DtoSerializerLazy;
12
+ }
@@ -0,0 +1,13 @@
1
+ import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
+ export interface IDtoOptionsPostAggregate extends IDecoratorDtoOptions {
3
+ }
4
+ declare const DtoPostAggregate_base: import("vona-core").Constructable<import("vona-module-a-orm").TypeRecordAggrsValuesToObject<import("vona-module-a-orm").TypeRecordAggrsValues<{
5
+ count: "count_all" | "count_stars";
6
+ sum: "sum_stars";
7
+ avg: "avg_stars";
8
+ min: "min_stars";
9
+ max: "max_stars";
10
+ }>>>;
11
+ export declare class DtoPostAggregate extends DtoPostAggregate_base {
12
+ }
13
+ export {};
@@ -0,0 +1,12 @@
1
+ import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
+ export interface IDtoOptionsPostGroup extends IDecoratorDtoOptions {
3
+ }
4
+ declare const DtoPostGroup_base: import("vona-core").Constructable<{
5
+ userId: import("table-identity").TableIdentity;
6
+ } & import("vona-module-a-orm").TypeRecordAggrsValuesToObject<import("vona-module-a-orm").TypeRecordAggrsValues<{
7
+ count: "count_all";
8
+ sum: "sum_stars";
9
+ }>>>;
10
+ export declare class DtoPostGroup extends DtoPostGroup_base {
11
+ }
12
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
+ import { DtoSerializerSimple } from './serializerSimple.ts';
3
+ export interface IDtoOptionsSerializerArray extends IDecoratorDtoOptions {
4
+ }
5
+ export declare class DtoSerializerArray {
6
+ simples: DtoSerializerSimple[];
7
+ simplesLazy: DtoSerializerSimple[];
8
+ }
@@ -0,0 +1,8 @@
1
+ import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
+ import { DtoSerializerSimple } from './serializerSimple.ts';
3
+ export interface IDtoOptionsSerializerLazy extends IDecoratorDtoOptions {
4
+ }
5
+ export declare class DtoSerializerLazy {
6
+ simple: DtoSerializerSimple;
7
+ simpleLazy: DtoSerializerSimple;
8
+ }
@@ -0,0 +1,19 @@
1
+ import type { IDecoratorDtoOptions } from 'vona-module-a-web';
2
+ export interface IDtoOptionsSerializerSimple extends IDecoratorDtoOptions {
3
+ }
4
+ export declare class DtoSerializerSimple {
5
+ password: string;
6
+ password2: string;
7
+ email: string;
8
+ email2: string;
9
+ email3: string;
10
+ email4: string;
11
+ email5: string;
12
+ email6: string;
13
+ email7: string;
14
+ firstName: string;
15
+ lastName: string;
16
+ fullName: string;
17
+ fullName2: string;
18
+ get fullName3(): string;
19
+ }
package/dist/index.d.ts CHANGED
@@ -1 +1,2 @@
1
1
  export * from './.metadata/index.ts';
2
+ export * from './lib/index.ts';