UNPKG

@solid-nestjs/rest-api

Version:

solid-nestjs Rest-API utilities

61 lines 2.71 kB
"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.GroupedPaginationResult = exports.GroupResultRest = void 0; const swagger_1 = require("@nestjs/swagger"); const pagination_result_1 = require("./pagination-result"); /** * Represents a group result for REST API responses. * Contains the grouped key and aggregated values as JSON strings for easy REST consumption. */ class GroupResultRest { } exports.GroupResultRest = GroupResultRest; __decorate([ (0, swagger_1.ApiProperty)({ description: 'The group key as a JSON string', example: '{"category": "Electronics"}' }), __metadata("design:type", String) ], GroupResultRest.prototype, "key", void 0); __decorate([ (0, swagger_1.ApiProperty)({ description: 'The aggregated values as a JSON string', example: '{"count": 5, "avgPrice": 299.99}' }), __metadata("design:type", String) ], GroupResultRest.prototype, "aggregates", void 0); /** * Represents the result of a grouped query with pagination for REST API. * * @implements {CommonGroupedPaginationResult} * * @property {GroupResultRest[]} groups - Array of grouped results with keys and aggregates as JSON strings. * @property {PaginationResult} pagination - Pagination metadata for the grouped results. */ class GroupedPaginationResult { } exports.GroupedPaginationResult = GroupedPaginationResult; __decorate([ (0, swagger_1.ApiProperty)({ type: [GroupResultRest], description: 'Array of grouped results' }), __metadata("design:type", Array) ], GroupedPaginationResult.prototype, "groups", void 0); __decorate([ (0, swagger_1.ApiProperty)({ type: pagination_result_1.PaginationResult, description: 'Pagination metadata' }), __metadata("design:type", pagination_result_1.PaginationResult) ], GroupedPaginationResult.prototype, "pagination", void 0); //# sourceMappingURL=grouped-pagination-result.js.map