@metapic/nestjs-utils 1.1.0 → 2.0.0

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.
@@ -1,9 +1,8 @@
1
1
  import { type Type } from '@nestjs/common';
2
2
  import { ApiResponseNoStatusOptions } from '@nestjs/swagger';
3
- import { type ClassConstructor } from 'class-transformer';
4
3
  import { type IPaginationLinks, type IPaginationMeta, type IPaginationOptions, Pagination } from 'nestjs-typeorm-paginate';
5
4
  import { FindManyOptions, FindOptionsWhere, type ObjectLiteral, Repository, type SelectQueryBuilder } from 'typeorm';
6
- export declare function toPaginatedProjectionResponse<Dto, Projection extends ObjectLiteral>(projection: ClassConstructor<Projection>, mapper: (projection: Projection) => Dto, queryBuilder: SelectQueryBuilder<Projection>, paginationOptions: IPaginationOptions): Promise<Paginated<Dto>>;
5
+ export declare function toPaginatedProjectionResponse<Dto, Projection extends ObjectLiteral>(queryBuilder: SelectQueryBuilder<Projection>, mapper: (projection: Projection) => Dto, paginationOptions: IPaginationOptions): Promise<Paginated<Dto>>;
7
6
  export declare function toPaginatedResponse<Dto, Entity extends ObjectLiteral>(mapper: (entity: Entity) => Dto, queryBuilder: SelectQueryBuilder<Entity>, paginationOptions: IPaginationOptions): Promise<Paginated<Dto>>;
8
7
  export declare function toPaginatedResponse<Dto, Entity extends ObjectLiteral>(mapper: (entity: Entity) => Dto, repository: Repository<Entity>, paginationOptions: IPaginationOptions, searchOptions?: FindOptionsWhere<Entity> | FindManyOptions<Entity>): Promise<Paginated<Dto>>;
9
8
  export declare const ApiPaginatedResponse: (options: ApiResponseNoStatusOptions & {
@@ -15,12 +14,14 @@ export declare class PaginationMeta implements IPaginationMeta {
15
14
  itemsPerPage: number;
16
15
  totalPages?: number;
17
16
  currentPage: number;
17
+ constructor(source: PaginationMeta);
18
18
  }
19
19
  export declare class PaginationLinks implements IPaginationLinks {
20
20
  first?: string;
21
21
  previous?: string;
22
22
  next?: string;
23
23
  last?: string;
24
+ constructor(source?: IPaginationLinks);
24
25
  }
25
26
  export declare class Paginated<T> extends Pagination<T, PaginationMeta> {
26
27
  readonly items: T[];
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAC3D,OAAO,EAIL,0BAA0B,EAE3B,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAE,KAAK,gBAAgB,EAAmB,MAAM,mBAAmB,CAAA;AAE1E,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EAGvB,UAAU,EACX,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,KAAK,aAAa,EAClB,UAAU,EACV,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAA;AAIhB,wBAAsB,6BAA6B,CAAC,GAAG,EAAE,UAAU,SAAS,aAAa,EACvF,UAAU,EAAE,gBAAgB,CAAC,UAAU,CAAC,EACxC,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,GAAG,EACvC,YAAY,EAAE,kBAAkB,CAAC,UAAU,CAAC,EAC5C,iBAAiB,EAAE,kBAAkB,GACpC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAUzB;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,SAAS,aAAa,EACzE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,GAAG,EAC/B,YAAY,EAAE,kBAAkB,CAAC,MAAM,CAAC,EACxC,iBAAiB,EAAE,kBAAkB,GACpC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;AAE1B,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,SAAS,aAAa,EACzE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,GAAG,EAC/B,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,EAC9B,iBAAiB,EAAE,kBAAkB,EACrC,aAAa,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,GACjE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;AAuB1B,eAAO,MAAM,oBAAoB,GAC/B,SAAS,0BAA0B,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;CAAE,KAC5D,iBAoBF,CAAA;AAED,qBAAa,cAAe,YAAW,eAAe;IAIpD,SAAS,EAAE,MAAM,CAAI;IAKrB,UAAU,CAAC,EAAE,MAAM,CAAA;IAKnB,YAAY,EAAE,MAAM,CAAI;IAKxB,UAAU,CAAC,EAAE,MAAM,CAAA;IAKnB,WAAW,EAAE,MAAM,CAAI;CACxB;AAED,qBAAa,eAAgB,YAAW,gBAAgB;IAGtD,KAAK,CAAC,EAAE,MAAM,CAAA;IAId,QAAQ,CAAC,EAAE,MAAM,CAAA;IAIjB,IAAI,CAAC,EAAE,MAAM,CAAA;IAIb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,EAAE,cAAc,CAAC;IAC7D,SACiB,KAAK,EAAE,CAAC,EAAE,CAAA;IAE3B,SACiB,IAAI,EAAE,cAAc,CAAA;IAErC,SACiB,KAAK,CAAC,EAAE,eAAe,CAAA;CACzC;AAED,qBAAa,eAAe;IAI1B,IAAI,EAAE,MAAM,CAAI;IAMhB,KAAK,EAAE,MAAM,CAAK;CACnB"}
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAC3D,OAAO,EAIL,0BAA0B,EAE3B,MAAM,iBAAiB,CAAA;AAExB,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EAGvB,UAAU,EACX,MAAM,yBAAyB,CAAA;AAChC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,KAAK,aAAa,EAClB,UAAU,EACV,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAA;AAIhB,wBAAsB,6BAA6B,CAAC,GAAG,EAAE,UAAU,SAAS,aAAa,EACvF,YAAY,EAAE,kBAAkB,CAAC,UAAU,CAAC,EAC5C,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,GAAG,EACvC,iBAAiB,EAAE,kBAAkB,GACpC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAOzB;AAED,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,SAAS,aAAa,EACzE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,GAAG,EAC/B,YAAY,EAAE,kBAAkB,CAAC,MAAM,CAAC,EACxC,iBAAiB,EAAE,kBAAkB,GACpC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;AAE1B,wBAAsB,mBAAmB,CAAC,GAAG,EAAE,MAAM,SAAS,aAAa,EACzE,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,GAAG,EAC/B,UAAU,EAAE,UAAU,CAAC,MAAM,CAAC,EAC9B,iBAAiB,EAAE,kBAAkB,EACrC,aAAa,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,MAAM,CAAC,GACjE,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;AAuB1B,eAAO,MAAM,oBAAoB,GAC/B,SAAS,0BAA0B,GAAG;IAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;CAAE,KAC5D,iBAoBF,CAAA;AAED,qBAAa,cAAe,YAAW,eAAe;IAIpD,SAAS,EAAE,MAAM,CAAI;IAKrB,UAAU,CAAC,EAAE,MAAM,CAAA;IAKnB,YAAY,EAAE,MAAM,CAAI;IAKxB,UAAU,CAAC,EAAE,MAAM,CAAA;IAKnB,WAAW,EAAE,MAAM,CAAI;gBAEX,MAAM,EAAE,cAAc;CAOnC;AAED,qBAAa,eAAgB,YAAW,gBAAgB;IAGtD,KAAK,CAAC,EAAE,MAAM,CAAA;IAId,QAAQ,CAAC,EAAE,MAAM,CAAA;IAIjB,IAAI,CAAC,EAAE,MAAM,CAAA;IAIb,IAAI,CAAC,EAAE,MAAM,CAAA;gBAED,MAAM,CAAC,EAAE,gBAAgB;CAMtC;AAED,qBAAa,SAAS,CAAC,CAAC,CAAE,SAAQ,UAAU,CAAC,CAAC,EAAE,cAAc,CAAC;IAC7D,SACiB,KAAK,EAAE,CAAC,EAAE,CAAA;IAE3B,SACiB,IAAI,EAAE,cAAc,CAAA;IAErC,SACiB,KAAK,CAAC,EAAE,eAAe,CAAA;CACzC;AAED,qBAAa,eAAe;IAQ1B,IAAI,EAAE,MAAM,CAAI;IAMhB,KAAK,EAAE,MAAM,CAAK;CACnB"}
@@ -29,18 +29,14 @@ var __rest = (this && this.__rest) || function (s, e) {
29
29
  };
30
30
  import { applyDecorators } from '@nestjs/common';
31
31
  import { ApiExtraModels, ApiProperty, ApiResponse, getSchemaPath, } from '@nestjs/swagger';
32
- import { plainToInstance } from 'class-transformer';
33
32
  import { IsOptional, Max, Min } from 'class-validator';
34
33
  import { paginate, paginateRaw, Pagination, } from 'nestjs-typeorm-paginate';
35
34
  import { Repository, } from 'typeorm';
36
35
  import { ExposeApiProperty, TransformEmptyString } from './serialization.js';
37
- export function toPaginatedProjectionResponse(projection, mapper, queryBuilder, paginationOptions) {
36
+ export function toPaginatedProjectionResponse(queryBuilder, mapper, paginationOptions) {
38
37
  return __awaiter(this, void 0, void 0, function* () {
39
38
  const result = yield paginateRaw(queryBuilder, paginationOptions);
40
- return new Pagination(plainToInstance(projection, result.items, { excludeExtraneousValues: true }).map(mapper), plainToInstance(PaginationMeta, result.meta), plainToInstance(PaginationLinks, result.links, {
41
- exposeDefaultValues: false,
42
- exposeUnsetFields: false,
43
- }));
39
+ return new Pagination(result.items.map(mapper), new PaginationMeta(result.meta), result.links ? new PaginationLinks(result.links) : undefined);
44
40
  });
45
41
  }
46
42
  export function toPaginatedResponse(mapper, queryBuilderOrRepository, paginationOptions, searchOptions) {
@@ -52,7 +48,7 @@ export function toPaginatedResponse(mapper, queryBuilderOrRepository, pagination
52
48
  else {
53
49
  result = yield paginate(queryBuilderOrRepository, paginationOptions);
54
50
  }
55
- return new Pagination(result.items.map(mapper), plainToInstance(PaginationMeta, result.meta), plainToInstance(PaginationLinks, result.links));
51
+ return new Pagination(result.items.map(mapper), new PaginationMeta(result.meta), result.links ? new PaginationLinks(result.links) : undefined);
56
52
  });
57
53
  }
58
54
  export const ApiPaginatedResponse = (options) => {
@@ -70,10 +66,15 @@ export const ApiPaginatedResponse = (options) => {
70
66
  } })));
71
67
  };
72
68
  export class PaginationMeta {
73
- constructor() {
69
+ constructor(source) {
74
70
  this.itemCount = 0;
75
71
  this.itemsPerPage = 0;
76
72
  this.currentPage = 1;
73
+ this.currentPage = source.currentPage;
74
+ this.itemCount = source.itemCount;
75
+ this.itemsPerPage = source.itemsPerPage;
76
+ this.totalItems = source.totalItems;
77
+ this.totalPages = source.totalPages;
77
78
  }
78
79
  }
79
80
  __decorate([
@@ -107,6 +108,12 @@ __decorate([
107
108
  __metadata("design:type", Number)
108
109
  ], PaginationMeta.prototype, "currentPage", void 0);
109
110
  export class PaginationLinks {
111
+ constructor(source) {
112
+ this.first = source === null || source === void 0 ? void 0 : source.first;
113
+ this.previous = source === null || source === void 0 ? void 0 : source.previous;
114
+ this.next = source === null || source === void 0 ? void 0 : source.next;
115
+ this.last = source === null || source === void 0 ? void 0 : source.last;
116
+ }
110
117
  }
111
118
  __decorate([
112
119
  ExposeApiProperty({ description: 'A link to the "first" page.', format: 'uri' }),
@@ -149,7 +156,11 @@ export class PaginatedParams {
149
156
  }
150
157
  }
151
158
  __decorate([
152
- ExposeApiProperty({ description: 'The page number.', default: 1, required: false }),
159
+ ExposeApiProperty({
160
+ description: 'The page number.',
161
+ default: 1,
162
+ required: false,
163
+ }),
153
164
  IsOptional(),
154
165
  Min(1),
155
166
  __metadata("design:type", Number)
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../src/pagination.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { type ApiPropertyOptions } from '@nestjs/swagger';
2
2
  import { type ExposeOptions } from 'class-transformer';
3
3
  export declare const TransformEmptyString: (defaultValue?: string) => PropertyDecorator;
4
- type ModifiableExposeOptions = Omit<ExposeOptions, 'name' | 'toClassOnly' | 'toPlainOnly'>;
5
4
  /**
6
5
  * Expose a property with snake_case naming in the API documentation and during serialization.
7
6
  *
@@ -9,7 +8,6 @@ type ModifiableExposeOptions = Omit<ExposeOptions, 'name' | 'toClassOnly' | 'toP
9
8
  * @see ApiProperty
10
9
  */
11
10
  export declare const ExposeApiProperty: (options?: ApiPropertyOptions & {
12
- expose?: ModifiableExposeOptions;
11
+ groups?: ExposeOptions["groups"];
13
12
  }) => PropertyDecorator;
14
- export {};
15
13
  //# sourceMappingURL=serialization.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../src/serialization.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEtE,OAAO,EAAU,KAAK,aAAa,EAAa,MAAM,mBAAmB,CAAA;AAEzE,eAAO,MAAM,oBAAoB,GAAI,eAAe,MAAM,KAAG,iBAG1D,CAAA;AAEH,KAAK,uBAAuB,GAAG,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,aAAa,GAAG,aAAa,CAAC,CAAA;AAE1F;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAU,kBAAkB,GAAG;IAAE,MAAM,CAAC,EAAE,uBAAuB,CAAA;CAAE,KAClE,iBAOF,CAAA"}
1
+ {"version":3,"file":"serialization.d.ts","sourceRoot":"","sources":["../src/serialization.ts"],"names":[],"mappings":"AACA,OAAO,EAAe,KAAK,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEtE,OAAO,EAAU,KAAK,aAAa,EAAa,MAAM,mBAAmB,CAAA;AAEzE,eAAO,MAAM,oBAAoB,GAAI,eAAe,MAAM,KAAG,iBAG1D,CAAA;AAEH;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAU,kBAAkB,GAAG;IAC7B,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAA;CACjC,KACA,iBAMF,CAAA"}
@@ -22,10 +22,9 @@ export const TransformEmptyString = (defaultValue) => applyDecorators(Transform(
22
22
  */
23
23
  export const ExposeApiProperty = (options) => {
24
24
  return (target, propertyKey) => {
25
- const _a = options !== null && options !== void 0 ? options : {}, { expose } = _a, otherOptions = __rest(_a, ["expose"]);
26
- Expose(Object.assign(Object.assign({}, (expose !== null && expose !== void 0 ? expose : {})), { name: options === null || options === void 0 ? void 0 : options.name, toClassOnly: true }))(target, propertyKey);
27
- ExposeSnakeCase(Object.assign(Object.assign({}, (expose !== null && expose !== void 0 ? expose : {})), { toPlainOnly: true }))(target, propertyKey);
28
- ApiPropertySnakeCase(otherOptions)(target, propertyKey);
25
+ const _a = options !== null && options !== void 0 ? options : {}, { groups: _ } = _a, rest = __rest(_a, ["groups"]);
26
+ ExposeSnakeCase(options)(target, propertyKey);
27
+ ApiPropertySnakeCase(rest)(target, propertyKey);
29
28
  };
30
29
  };
31
30
  const ExposeSnakeCase = (options) => {
@@ -1 +1 @@
1
- {"version":3,"file":"serialization.js","sourceRoot":"","sources":["../src/serialization.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,WAAW,EAA2B,MAAM,iBAAiB,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,MAAM,EAAsB,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAEzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,YAAqB,EAAqB,EAAE,CAC/E,eAAe,CACb,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAsB,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAC5F,CAAA;AAIH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,OAAmE,EAChD,EAAE;IACrB,OAAO,CAAC,MAAc,EAAE,WAA4B,EAAE,EAAE;QACtD,MAAM,KAA8B,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,EAA3C,EAAE,MAAM,OAAmC,EAA9B,YAAY,cAAzB,UAA2B,CAAgB,CAAA;QACjD,MAAM,iCAAM,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC,KAAE,IAAI,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,EAAE,WAAW,EAAE,IAAI,IAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAC1F,eAAe,iCAAM,CAAC,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,EAAE,CAAC,KAAE,WAAW,EAAE,IAAI,IAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAC9E,oBAAoB,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACzD,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,OAAuB,EAAqB,EAAE;IACrE,OAAO,CAAC,MAAc,EAAE,WAA4B,EAAE,EAAE;;QACtD,MAAM,iCAAM,OAAO,KAAE,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAG,CAC3E,MAAM,EACN,WAAW,CACZ,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAAC,OAA4B,EAAqB,EAAE;IAC/E,OAAO,CAAC,MAAc,EAAE,WAA4B,EAAE,EAAE;;QACtD,WAAW,iCAAM,OAAO,KAAE,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAG,CAChF,MAAM,EACN,WAAW,CACZ,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"serialization.js","sourceRoot":"","sources":["../src/serialization.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,WAAW,EAA2B,MAAM,iBAAiB,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,MAAM,EAAsB,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAEzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,YAAqB,EAAqB,EAAE,CAC/E,eAAe,CACb,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,EAAsB,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAC5F,CAAA;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,OAEC,EACkB,EAAE;IACrB,OAAO,CAAC,MAAc,EAAE,WAA4B,EAAE,EAAE;QACtD,MAAM,KAAyB,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,EAAtC,EAAE,MAAM,EAAE,CAAC,OAA2B,EAAtB,IAAI,cAApB,UAAsB,CAAgB,CAAA;QAC5C,eAAe,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QAC7C,oBAAoB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACjD,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,OAAuB,EAAqB,EAAE;IACrE,OAAO,CAAC,MAAc,EAAE,WAA4B,EAAE,EAAE;;QACtD,MAAM,iCAAM,OAAO,KAAE,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAG,CAC3E,MAAM,EACN,WAAW,CACZ,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,oBAAoB,GAAG,CAAC,OAA4B,EAAqB,EAAE;IAC/E,OAAO,CAAC,MAAc,EAAE,WAA4B,EAAE,EAAE;;QACtD,WAAW,iCAAM,OAAO,KAAE,IAAI,EAAE,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,mCAAI,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAG,CAChF,MAAM,EACN,WAAW,CACZ,CAAA;IACH,CAAC,CAAA;AACH,CAAC,CAAA"}