UNPKG

@algochad/prisma-core

Version:

A comprehensive NestJS library that provides EF-Core-like operations using Prisma and GraphQL. Features LINQ-style query builders, advanced data manipulation, GraphQL integration with genql, and a unified API for both Prisma and GraphQL operations. Includ

31 lines 1.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.OrderedAsyncEnumerable = void 0; const async_enumerable_1 = require("./async-enumerable"); const linqts_1 = require("linqts"); class OrderedAsyncEnumerable extends async_enumerable_1.AsyncEnumerable { keySelectors; descending; constructor(source, keySelectors, descending) { const linq = new linqts_1.List(source); let sortedItems = linq; for (let i = 0; i < keySelectors.length; i++) { const keySelector = keySelectors[i]; const isDescending = descending[i]; sortedItems = isDescending ? sortedItems.OrderByDescending(keySelector) : sortedItems.OrderBy(keySelector); } super(linq); this.keySelectors = keySelectors; this.descending = descending; } ThenBy(keySelector) { return new OrderedAsyncEnumerable(this.ToArray(), [...this.keySelectors, keySelector], [...this.descending, false]); } ThenByDescending(keySelector) { return new OrderedAsyncEnumerable(this.ToArray(), [...this.keySelectors, keySelector], [...this.descending, true]); } } exports.OrderedAsyncEnumerable = OrderedAsyncEnumerable; //# sourceMappingURL=ordered-async-enumerable.js.map