From a4cce87950e479654b48985270000fa1f80ea2b9 Mon Sep 17 00:00:00 2001 From: Joe Monk Date: Thu, 1 May 2025 17:55:23 +0100 Subject: [PATCH] radash exists --- bun.lock | 3 +++ package.json | 25 +++++++++++++------------ src/server/api/routers/docker.ts | 7 +++---- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/bun.lock b/bun.lock index a013a24..1322193 100644 --- a/bun.lock +++ b/bun.lock @@ -20,6 +20,7 @@ "dockerode": "^4.0.6", "next": "^15.3.1", "postcss": "^8.5.3", + "radash": "^12.1.0", "react": "^19.1.0", "react-dom": "^19.1.0", "semver": "^7.7.1", @@ -335,6 +336,8 @@ "pump": ["pump@3.0.2", "", { "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw=="], + "radash": ["radash@12.1.0", "", {}, "sha512-b0Zcf09AhqKS83btmUeYBS8tFK7XL2e3RvLmZcm0sTdF1/UUlHSsjXdCcWNxe7yfmAlPve5ym0DmKGtTzP6kVQ=="], + "react": ["react@19.1.0", "", {}, "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg=="], "react-dom": ["react-dom@19.1.0", "", { "dependencies": { "scheduler": "^0.26.0" }, "peerDependencies": { "react": "^19.1.0" } }, "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g=="], diff --git a/package.json b/package.json index d3df174..db940f6 100644 --- a/package.json +++ b/package.json @@ -15,31 +15,32 @@ "update-regctl": "mkdir bin && curl -L https://github.com/regclient/regclient/releases/latest/download/regctl-linux-amd64 >bin/regctl && chmod 755 bin/regctl" }, "dependencies": { + "@biomejs/biome": "1.9.4", "@t3-oss/env-nextjs": "^0.13.0", "@tailwindcss/postcss": "^4.1.4", "@tanstack/react-query": "^5.74.4", "@trpc/client": "^11.1.1", "@trpc/react-query": "^11.1.1", "@trpc/server": "^11.1.1", - "daisyui": "^5.0.28", - "dockerode": "^4.0.6", - "next": "^15.3.1", - "react": "^19.1.0", - "react-dom": "^19.1.0", - "semver": "^7.7.1", - "server-only": "^0.0.1", - "superjson": "^2.2.2", - "zod": "^3.24.3", - "zx": "^8.5.3", - "@biomejs/biome": "1.9.4", "@types/bun": "^1.2.10", "@types/dockerode": "^3.3.38", "@types/react": "19.1.2", "@types/react-dom": "^19.1.2", "@types/semver": "^7.7.0", + "daisyui": "^5.0.28", + "dockerode": "^4.0.6", + "next": "^15.3.1", "postcss": "^8.5.3", + "radash": "^12.1.0", + "react": "^19.1.0", + "react-dom": "^19.1.0", + "semver": "^7.7.1", + "server-only": "^0.0.1", + "superjson": "^2.2.2", "tailwindcss": "^4.1.4", - "typescript": "^5.8.3" + "typescript": "^5.8.3", + "zod": "^3.24.3", + "zx": "^8.5.3" }, "ct3aMetadata": { "initVersion": "7.39.3" diff --git a/src/server/api/routers/docker.ts b/src/server/api/routers/docker.ts index 703f7b3..8578cb0 100644 --- a/src/server/api/routers/docker.ts +++ b/src/server/api/routers/docker.ts @@ -2,6 +2,7 @@ import Docker from "dockerode"; import semver from "semver"; import { z } from "zod"; import { $ } from "zx"; +import { sift } from "radash"; import { createTRPCRouter, publicProcedure } from "@/server/api/trpc"; import { TRPCError, type inferRouterOutputs } from "@trpc/server"; @@ -38,7 +39,7 @@ export const dockerRouter = createTRPCRouter({ const containers = await getContainers(docker); // All this data should be local/from the local docker socket/api - let dockerInfo = await Promise.all( + let dockerInfo = sift(await Promise.all( containers.map(async (container) => { try { if (!container.Id) { @@ -74,9 +75,7 @@ export const dockerRouter = createTRPCRouter({ return null; } }), - ); - - dockerInfo = dockerInfo.filter((info) => !!info); + )); if (dockerInfo.length === 0) { throw new TRPCError({