import { BaseRepository } from "@edr/api-common"; import { Injectable } from "@nestjs/common"; import { InjectRepository } from "@nestjs/typeorm"; import { Repository } from "typeorm"; import { Publication } from "./entities/publication.entity"; @Injectable() export class PublicationsRepository extends BaseRepository { constructor( @InjectRepository(Publication) repository: Repository, ) { super(repository); } /** Public list: published rows only, in display order. */ findPublished(): Promise { return this.repository.find({ where: { published: true }, order: { sortOrder: "ASC", publishedAt: "DESC" }, }); } /** Admin list: every row, published or not. */ override findAll(): Promise { return this.repository.find({ order: { sortOrder: "ASC" } }); } }