Skip to content

Commit 8739b05

Browse files
committed
Removed old Postgres RunListPresenter
1 parent 9d88b84 commit 8739b05

File tree

5 files changed

+54
-436
lines changed

5 files changed

+54
-436
lines changed

apps/webapp/app/components/runs/v3/TaskRunsTable.tsx

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,16 @@ import { Header3 } from "~/components/primitives/Headers";
1818
import { PopoverMenuItem } from "~/components/primitives/Popover";
1919
import { useSelectedItems } from "~/components/primitives/SelectedItemsProvider";
2020
import { SimpleTooltip } from "~/components/primitives/Tooltip";
21+
import { TruncatedCopyableValue } from "~/components/primitives/TruncatedCopyableValue";
22+
import { useEnvironment } from "~/hooks/useEnvironment";
2123
import { useFeatures } from "~/hooks/useFeatures";
2224
import { useOrganization } from "~/hooks/useOrganizations";
2325
import { useProject } from "~/hooks/useProject";
24-
import { useUser } from "~/hooks/useUser";
2526
import {
26-
type RunListAppliedFilters,
27-
type RunListItem,
28-
} from "~/presenters/v3/RunListPresenter.server";
29-
import { formatCurrencyAccurate, formatNumber } from "~/utils/numberFormatter";
27+
type NextRunListAppliedFilters,
28+
type NextRunListItem,
29+
} from "~/presenters/v3/NextRunListPresenter.server";
30+
import { formatCurrencyAccurate } from "~/utils/numberFormatter";
3031
import { docsPath, v3RunSpanPath, v3TestPath } from "~/utils/pathBuilder";
3132
import { DateTime } from "../../primitives/DateTime";
3233
import { Paragraph } from "../../primitives/Paragraph";
@@ -51,17 +52,13 @@ import {
5152
filterableTaskRunStatuses,
5253
TaskRunStatusCombo,
5354
} from "./TaskRunStatus";
54-
import { useEnvironment } from "~/hooks/useEnvironment";
55-
import { CopyableText } from "~/components/primitives/CopyableText";
56-
import { ClipboardField } from "~/components/primitives/ClipboardField";
57-
import { TruncatedCopyableValue } from "~/components/primitives/TruncatedCopyableValue";
5855

5956
type RunsTableProps = {
6057
total: number;
6158
hasFilters: boolean;
62-
filters: RunListAppliedFilters;
59+
filters: NextRunListAppliedFilters;
6360
showJob?: boolean;
64-
runs: RunListItem[];
61+
runs: NextRunListItem[];
6562
isLoading?: boolean;
6663
allowSelection?: boolean;
6764
variant?: TableVariant;
@@ -411,7 +408,7 @@ export function TaskRunsTable({
411408
);
412409
}
413410

414-
function RunActionsCell({ run, path }: { run: RunListItem; path: string }) {
411+
function RunActionsCell({ run, path }: { run: NextRunListItem; path: string }) {
415412
const location = useLocation();
416413

417414
if (!run.isCancellable && !run.isReplayable) return <TableCell to={path}>{""}</TableCell>;

apps/webapp/app/presenters/v3/ApiRunListPresenter.server.ts

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,13 @@ import {
77
import { type Project, type RuntimeEnvironment, type TaskRunStatus } from "@trigger.dev/database";
88
import assertNever from "assert-never";
99
import { z } from "zod";
10+
import { clickhouseClient } from "~/services/clickhouseInstance.server";
1011
import { logger } from "~/services/logger.server";
1112
import { CoercedDate } from "~/utils/zod";
13+
import { ServiceValidationError } from "~/v3/services/baseService.server";
1214
import { ApiRetrieveRunPresenter } from "./ApiRetrieveRunPresenter.server";
13-
import { type RunListOptions, RunListPresenter } from "./RunListPresenter.server";
15+
import { NextRunListPresenter, type RunListOptions } from "./NextRunListPresenter.server";
1416
import { BasePresenter } from "./basePresenter.server";
15-
import { ServiceValidationError } from "~/v3/services/baseService.server";
1617

1718
export const ApiRunListSearchParams = z.object({
1819
"page[size]": z.coerce.number().int().positive().min(1).max(100).optional(),
@@ -136,10 +137,12 @@ export class ApiRunListPresenter extends BasePresenter {
136137
}
137138

138139
let environmentId: string | undefined;
140+
let organizationId: string | undefined;
139141

140142
// filters
141143
if (environment) {
142144
environmentId = environment.id;
145+
organizationId = environment.organizationId;
143146
} else {
144147
if (searchParams["filter[env]"]) {
145148
const environments = await this._prisma.runtimeEnvironment.findMany({
@@ -152,13 +155,18 @@ export class ApiRunListPresenter extends BasePresenter {
152155
});
153156

154157
environmentId = environments.at(0)?.id;
158+
organizationId = environments.at(0)?.organizationId;
155159
}
156160
}
157161

158162
if (!environmentId) {
159163
throw new ServiceValidationError("No environment found");
160164
}
161165

166+
if (!organizationId) {
167+
throw new ServiceValidationError("No organization found");
168+
}
169+
162170
if (searchParams["filter[status]"]) {
163171
options.statuses = searchParams["filter[status]"].flatMap((status) =>
164172
ApiRunListPresenter.apiStatusToRunStatuses(status)
@@ -205,11 +213,15 @@ export class ApiRunListPresenter extends BasePresenter {
205213
options.batchId = searchParams["filter[batch]"];
206214
}
207215

208-
const presenter = new RunListPresenter();
216+
if (!clickhouseClient) {
217+
throw new Error("Clickhouse is not supported yet");
218+
}
219+
220+
const presenter = new NextRunListPresenter(this._prisma, clickhouseClient);
209221

210222
logger.debug("Calling RunListPresenter", { options });
211223

212-
const results = await presenter.call(environmentId, options);
224+
const results = await presenter.call(organizationId, environmentId, options);
213225

214226
logger.debug("RunListPresenter results", { runs: results.runs.length });
215227

0 commit comments

Comments
 (0)