chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
import { type PrismaClient } from "@trigger.dev/database";
|
||||
import { CreateBulkActionSearchParams } from "~/routes/resources.orgs.$organizationSlug.projects.$projectParam.env.$envParam.runs.bulkaction";
|
||||
import { clickhouseFactory } from "~/services/clickhouse/clickhouseFactoryInstance.server";
|
||||
import { RunsRepository } from "~/services/runsRepository/runsRepository.server";
|
||||
import { getRunFiltersFromRequest } from "../RunFilters.server";
|
||||
import { BasePresenter } from "./basePresenter.server";
|
||||
|
||||
type CreateBulkActionOptions = {
|
||||
organizationId: string;
|
||||
projectId: string;
|
||||
environmentId: string;
|
||||
request: Request;
|
||||
};
|
||||
|
||||
export class CreateBulkActionPresenter extends BasePresenter {
|
||||
public async call({
|
||||
organizationId,
|
||||
projectId,
|
||||
environmentId,
|
||||
request,
|
||||
}: CreateBulkActionOptions) {
|
||||
const filters = await getRunFiltersFromRequest(request);
|
||||
const { mode, action } = CreateBulkActionSearchParams.parse(
|
||||
Object.fromEntries(new URL(request.url).searchParams)
|
||||
);
|
||||
|
||||
const clickhouse = await clickhouseFactory.getClickhouseForOrganization(
|
||||
organizationId,
|
||||
"standard"
|
||||
);
|
||||
const runsRepository = new RunsRepository({
|
||||
clickhouse,
|
||||
prisma: this._replica as PrismaClient,
|
||||
});
|
||||
|
||||
const count = await runsRepository.countRuns({
|
||||
organizationId,
|
||||
projectId,
|
||||
environmentId,
|
||||
...filters,
|
||||
});
|
||||
|
||||
return {
|
||||
filters,
|
||||
mode,
|
||||
action,
|
||||
count,
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user