From 68bf454415159967d9b89d903edeab916c838197 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adel=20Rodr=C3=ADguez?= Date: Wed, 18 Feb 2026 22:42:08 -0400 Subject: [PATCH] refactor: move storage types from utils to storage package --- bun.lock | 1 + packages/db/package.json | 1 + packages/db/src/schema.ts | 3 ++- packages/storage/package.json | 3 ++- packages/storage/src/buckets.ts | 7 +++++++ packages/storage/src/client.ts | 2 +- packages/storage/src/helpers.ts | 6 +++++- packages/utils/src/constants/asset.ts | 13 ------------- packages/utils/src/constants/index.ts | 1 - 9 files changed, 19 insertions(+), 18 deletions(-) create mode 100644 packages/storage/src/buckets.ts delete mode 100644 packages/utils/src/constants/asset.ts diff --git a/bun.lock b/bun.lock index b86ee944..65c7d6bf 100644 --- a/bun.lock +++ b/bun.lock @@ -352,6 +352,7 @@ "dependencies": { "@init/env": "workspace:*", "@init/observability": "workspace:*", + "@init/storage": "workspace:*", "@init/utils": "workspace:*", "drizzle-orm": "0.45.1", "drizzle-zod": "0.8.3", diff --git a/packages/db/package.json b/packages/db/package.json index f30dc28d..2ff98cbb 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -25,6 +25,7 @@ "dependencies": { "@init/env": "workspace:*", "@init/observability": "workspace:*", + "@init/storage": "workspace:*", "@init/utils": "workspace:*", "drizzle-orm": "0.45.1", "drizzle-zod": "0.8.3" diff --git a/packages/db/src/schema.ts b/packages/db/src/schema.ts index 0f7374da..caa8311e 100644 --- a/packages/db/src/schema.ts +++ b/packages/db/src/schema.ts @@ -1,4 +1,5 @@ -import type { MimeType, StorageBucket } from "@init/utils/constants" +import type { StorageBucket } from "@init/storage/buckets" +import type { MimeType } from "@init/storage/helpers" import type { ConstrainedString } from "@init/utils/type" import { createIdGenerator } from "@init/utils/id" import * as z from "@init/utils/schema" diff --git a/packages/storage/package.json b/packages/storage/package.json index 167f42dc..d923b655 100644 --- a/packages/storage/package.json +++ b/packages/storage/package.json @@ -5,7 +5,8 @@ "type": "module", "exports": { "./client": "./src/client.ts", - "./helpers": "./src/helpers.ts" + "./helpers": "./src/helpers.ts", + "./buckets": "./src/buckets.ts" }, "scripts": { "clean": "git clean -xdf .cache .turbo dist node_modules", diff --git a/packages/storage/src/buckets.ts b/packages/storage/src/buckets.ts new file mode 100644 index 00000000..03c53b05 --- /dev/null +++ b/packages/storage/src/buckets.ts @@ -0,0 +1,7 @@ +export const StorageBucket = { + MAIN: "init-main", + TEMP: "init-temp", +} as const + +export const STORAGE_BUCKETS = Object.values(StorageBucket) +export type StorageBucket = (typeof STORAGE_BUCKETS)[number] diff --git a/packages/storage/src/client.ts b/packages/storage/src/client.ts index 8b35a3d6..3f62f136 100644 --- a/packages/storage/src/client.ts +++ b/packages/storage/src/client.ts @@ -1,4 +1,4 @@ -import type { StorageBucket } from "@init/utils/constants" +import type { StorageBucket } from "@init/storage/buckets" import { s3 as s3Env } from "@init/env/presets" import { S3Client, type S3Options } from "bun" diff --git a/packages/storage/src/helpers.ts b/packages/storage/src/helpers.ts index d307b048..77eca5b2 100644 --- a/packages/storage/src/helpers.ts +++ b/packages/storage/src/helpers.ts @@ -1,6 +1,10 @@ -import type { MimeType, MimeTypeExtension, MimeTypeExtensions } from "@init/utils/constants" +import type standardTypes from "mime/types/standard.js" import mime from "mime/lite" +export type MimeType = keyof typeof standardTypes +export type MimeTypeExtension = (typeof standardTypes)[T][0] +export type MimeTypeExtensions = (typeof standardTypes)[T][number] + export function getMimeType(filename: string): MimeType { return mime.getType(filename) as MimeType } diff --git a/packages/utils/src/constants/asset.ts b/packages/utils/src/constants/asset.ts deleted file mode 100644 index 3ef19bda..00000000 --- a/packages/utils/src/constants/asset.ts +++ /dev/null @@ -1,13 +0,0 @@ -import type standardTypes from "mime/types/standard.js" - -export type MimeType = keyof typeof standardTypes -export type MimeTypeExtension = (typeof standardTypes)[T][0] -export type MimeTypeExtensions = (typeof standardTypes)[T][number] - -export const StorageBucket = { - MAIN: "init-main", - TEMP: "init-temp", -} as const - -export const STORAGE_BUCKETS = Object.values(StorageBucket) -export type StorageBucket = (typeof STORAGE_BUCKETS)[number] diff --git a/packages/utils/src/constants/index.ts b/packages/utils/src/constants/index.ts index 8b8514e1..c62b73c4 100644 --- a/packages/utils/src/constants/index.ts +++ b/packages/utils/src/constants/index.ts @@ -1,2 +1 @@ export * from "#constants/app.ts" -export * from "#constants/asset.ts"