diff --git a/apps/ingest-worker/package.json b/apps/ingest-worker/package.json index f38f3a6a5..e3ac9de3b 100644 --- a/apps/ingest-worker/package.json +++ b/apps/ingest-worker/package.json @@ -8,7 +8,7 @@ "dependencies": { "@openstatus/tinybird": "workspace:*", "detect-browser": "5.3.0", - "drizzle-orm": "0.30.10", + "drizzle-orm": "0.32.1", "hono": "4.3.9", "zod": "3.23.8" }, diff --git a/apps/screenshot-service/package.json b/apps/screenshot-service/package.json index 412704fd1..de8f38593 100644 --- a/apps/screenshot-service/package.json +++ b/apps/screenshot-service/package.json @@ -13,7 +13,7 @@ "@openstatus/utils": "workspace:^", "@t3-oss/env-core": "0.7.1", "@upstash/qstash": "2.1.8", - "drizzle-orm": "0.30.7", + "drizzle-orm": "0.32.1", "hono": "4.2.2", "playwright": "1.43.0", "zod": "3.23.8" diff --git a/apps/screenshot-worker/package.json b/apps/screenshot-worker/package.json index 5e5505a7b..0a4bd39ed 100644 --- a/apps/screenshot-worker/package.json +++ b/apps/screenshot-worker/package.json @@ -9,7 +9,7 @@ "@hono/zod-validator": "0.2.1", "@libsql/client": "0.6.2", "@openstatus/db": "workspace:*", - "drizzle-orm": "0.30.7", + "drizzle-orm": "0.32.1", "hono": "4.2.2", "zod": "3.23.8" }, diff --git a/packages/api/src/router/monitor.ts b/packages/api/src/router/monitor.ts index a7c9f9310..7ee0785eb 100644 --- a/packages/api/src/router/monitor.ts +++ b/packages/api/src/router/monitor.ts @@ -225,13 +225,18 @@ export const monitorRouter = createTRPCRouter({ // otherwise, using `/public` we don't need to check .input(z.object({ id: z.number(), slug: z.string().optional() })) .query(async (opts) => { - const _monitor = await opts.ctx.db.query.monitor.findFirst({ - where: and( - eq(monitor.id, opts.input.id), - isNull(monitor.deletedAt), - eq(monitor.public, true), - ), - }); + const _monitor = await opts.ctx.db + .select() + .from(monitor) + .where( + and( + eq(monitor.id, opts.input.id), + isNull(monitor.deletedAt), + eq(monitor.public, true), + ), + ) + .get(); + if (!_monitor) return undefined; if (opts.input.slug) { diff --git a/packages/api/src/router/page.ts b/packages/api/src/router/page.ts index 15a0d685c..84d358398 100644 --- a/packages/api/src/router/page.ts +++ b/packages/api/src/router/page.ts @@ -1,31 +1,19 @@ import { TRPCError } from "@trpc/server"; import { z } from "zod"; -import { - and, - eq, - gte, - inArray, - isNotNull, - isNull, - lte, - or, - sql, -} from "@openstatus/db"; +import { and, eq, gte, inArray, isNull, lte, sql } from "@openstatus/db"; import { incidentTable, insertPageSchema, maintenance, monitor, monitorsToPages, - monitorsToStatusReport, page, selectPageSchemaWithMonitorsRelation, selectPublicPageSchemaWithRelation, statusReport, workspace, } from "@openstatus/db/src/schema"; -import { allPlans } from "@openstatus/db/src/schema/plan/config"; import { trackNewPage } from "../analytics"; import { createTRPCRouter, protectedProcedure, publicProcedure } from "../trpc"; @@ -240,30 +228,39 @@ export const pageRouter = createTRPCRouter({ .query(async (opts) => { if (!opts.input.slug) return; - const result = await opts.ctx.db.query.page.findFirst({ - where: sql`lower(${page.slug}) = ${opts.input.slug} OR lower(${page.customDomain}) = ${opts.input.slug}`, - }); + const result = await opts.ctx.db + .select() + .from(page) + .where( + sql`lower(${page.slug}) = ${opts.input.slug} OR lower(${page.customDomain}) = ${opts.input.slug}`, + ) + .get(); if (!result) { return; } - const workspaceResult = await opts.ctx.db - .select() - .from(workspace) - .where(eq(workspace.id, result.workspaceId)) - .get(); + const [workspaceResult, monitorsToPagesResult] = await Promise.all([ + opts.ctx.db + .select() + .from(workspace) + .where(eq(workspace.id, result.workspaceId)) + .get(), + opts.ctx.db + .select() + .from(monitorsToPages) + .leftJoin(monitor, eq(monitorsToPages.monitorId, monitor.id)) + .where( + // make sur only active monitors are returned! + and( + eq(monitorsToPages.pageId, result.id), + eq(monitor.active, true), + ), + ) + .all(), + ]); // FIXME: There is probably a better way to do this - const monitorsToPagesResult = await opts.ctx.db - .select() - .from(monitorsToPages) - .leftJoin(monitor, eq(monitorsToPages.monitorId, monitor.id)) - .where( - // make sur only active monitors are returned! - and(eq(monitorsToPages.pageId, result.id), eq(monitor.active, true)), - ) - .all(); const monitorsId = monitorsToPagesResult.map( ({ monitors_to_pages }) => monitors_to_pages.monitorId, @@ -279,10 +276,9 @@ export const pageRouter = createTRPCRouter({ }, }); - // TODO: monitorsToPagesResult has the result already, no need to query again - const monitors = + const monitorQuery = monitorsId.length > 0 - ? await opts.ctx.db + ? opts.ctx.db .select() .from(monitor) .where( @@ -295,25 +291,26 @@ export const pageRouter = createTRPCRouter({ .all() : []; - const incidents = + const maintenancesQuery = opts.ctx.db.query.maintenance.findMany({ + where: eq(maintenance.pageId, result.id), + with: { maintenancesToMonitors: true }, + orderBy: (maintenances, { desc }) => desc(maintenances.from), + }); + + const incidentsQuery = monitorsId.length > 0 ? await opts.ctx.db .select() .from(incidentTable) - .where( - inArray( - incidentTable.monitorId, - monitors.map((m) => m.id), - ), - ) + .where(inArray(incidentTable.monitorId, monitorsId)) .all() : []; - - const maintenances = await opts.ctx.db.query.maintenance.findMany({ - where: eq(maintenance.pageId, result.id), - with: { maintenancesToMonitors: true }, - orderBy: (maintenances, { desc }) => desc(maintenances.from), - }); + // TODO: monitorsToPagesResult has the result already, no need to query again + const [monitors, maintenances, incidents] = await Promise.all([ + monitorQuery, + maintenancesQuery, + incidentsQuery, + ]); return selectPublicPageSchemaWithRelation.parse({ ...result, diff --git a/packages/api/src/router/statusReport.ts b/packages/api/src/router/statusReport.ts index 5b324574f..bef92291c 100644 --- a/packages/api/src/router/statusReport.ts +++ b/packages/api/src/router/statusReport.ts @@ -311,7 +311,6 @@ export const statusReportRouter = createTRPCRouter({ }, orderBy: (statusReport, { desc }) => [desc(statusReport.updatedAt)], }); - console.log(result); return z.array(selectStatusSchemaWithRelation).parse(result); }), diff --git a/packages/db/package.json b/packages/db/package.json index 2af46ccab..8077b9a4a 100644 --- a/packages/db/package.json +++ b/packages/db/package.json @@ -13,10 +13,9 @@ "dev": "turso dev --db-file ../../openstatus-dev.db" }, "dependencies": { - "@clickhouse/client-web": "1.0.1", - "@libsql/client": "0.6.2", + "@libsql/client": "0.7.0", "@t3-oss/env-core": "0.7.0", - "drizzle-orm": "0.30.10", + "drizzle-orm": "0.32.1", "drizzle-zod": "0.5.1", "zod": "3.23.8" }, @@ -24,9 +23,9 @@ "@openstatus/assertions": "workspace:*", "@openstatus/tsconfig": "workspace:*", "@types/node": "20.8.0", - "better-sqlite3": "10.0.0", + "better-sqlite3": "11.1.2", "bufferutil": "4.0.7", - "drizzle-kit": "0.21.2", + "drizzle-kit": "0.23.0", "encoding": "0.1.13", "next-auth": "5.0.0-beta.17", "typescript": "5.5.2", diff --git a/packages/db/src/schema/maintenances/maintenance.ts b/packages/db/src/schema/maintenances/maintenance.ts index ff9d63397..ac9353867 100644 --- a/packages/db/src/schema/maintenances/maintenance.ts +++ b/packages/db/src/schema/maintenances/maintenance.ts @@ -43,7 +43,7 @@ export const maintenancesToMonitors = sqliteTable( ), }, (t) => ({ - pk: primaryKey(t.monitorId, t.maintenanceId), + pk: primaryKey({ columns: [t.monitorId, t.maintenanceId] }), }), ); diff --git a/packages/db/src/schema/monitor_status/monitor_status.ts b/packages/db/src/schema/monitor_status/monitor_status.ts index 2bb1f68b3..7690d6148 100644 --- a/packages/db/src/schema/monitor_status/monitor_status.ts +++ b/packages/db/src/schema/monitor_status/monitor_status.ts @@ -29,7 +29,7 @@ export const monitorStatusTable = sqliteTable( }, (table) => { return { - primaryKey: primaryKey(table.monitorId, table.region), + primaryKey: primaryKey({ columns: [table.monitorId, table.region] }), monitorStatusIdx: index("monitor_status_idx").on( table.monitorId, table.region, diff --git a/packages/db/src/schema/monitor_tags/monitor_tag.ts b/packages/db/src/schema/monitor_tags/monitor_tag.ts index 4f9b484fa..c0bf9c792 100644 --- a/packages/db/src/schema/monitor_tags/monitor_tag.ts +++ b/packages/db/src/schema/monitor_tags/monitor_tag.ts @@ -40,7 +40,7 @@ export const monitorTagsToMonitors = sqliteTable( ), }, (t) => ({ - pk: primaryKey(t.monitorId, t.monitorTagId), + pk: primaryKey({ columns: [t.monitorId, t.monitorTagId] }), }), ); diff --git a/packages/db/src/schema/monitors/monitor.ts b/packages/db/src/schema/monitors/monitor.ts index ea1fb16f9..f208f5689 100644 --- a/packages/db/src/schema/monitors/monitor.ts +++ b/packages/db/src/schema/monitors/monitor.ts @@ -85,7 +85,7 @@ export const monitorsToPages = sqliteTable( order: integer("order").default(0), }, (t) => ({ - pk: primaryKey(t.monitorId, t.pageId), + pk: primaryKey({ columns: [t.monitorId, t.pageId] }), }), ); diff --git a/packages/db/src/schema/notifications/notification.ts b/packages/db/src/schema/notifications/notification.ts index 3fd8a12ee..8cf7f2984 100644 --- a/packages/db/src/schema/notifications/notification.ts +++ b/packages/db/src/schema/notifications/notification.ts @@ -38,7 +38,7 @@ export const notificationsToMonitors = sqliteTable( ), }, (t) => ({ - pk: primaryKey(t.monitorId, t.notificationId), + pk: primaryKey({ columns: [t.monitorId, t.notificationId] }), }), ); diff --git a/packages/db/src/schema/status_reports/status_reports.ts b/packages/db/src/schema/status_reports/status_reports.ts index f7370d537..e0a5ae3f6 100644 --- a/packages/db/src/schema/status_reports/status_reports.ts +++ b/packages/db/src/schema/status_reports/status_reports.ts @@ -92,7 +92,7 @@ export const monitorsToStatusReport = sqliteTable( ), }, (t) => ({ - pk: primaryKey(t.monitorId, t.statusReportId), + pk: primaryKey({ columns: [t.monitorId, t.statusReportId] }), }), ); diff --git a/packages/db/src/schema/users/user.ts b/packages/db/src/schema/users/user.ts index 6732a081c..3bae3feef 100644 --- a/packages/db/src/schema/users/user.ts +++ b/packages/db/src/schema/users/user.ts @@ -50,7 +50,7 @@ export const usersToWorkspaces = sqliteTable( ), }, (t) => ({ - pk: primaryKey(t.userId, t.workspaceId), + pk: primaryKey({ columns: [t.userId, t.workspaceId] }), }), ); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index daf37968d..b87ea8680 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -38,8 +38,8 @@ importers: specifier: 5.3.0 version: 5.3.0 drizzle-orm: - specifier: 0.30.10 - version: 0.30.10(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1) + specifier: 0.32.1 + version: 0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.7.0(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1) hono: specifier: 4.3.9 version: 4.3.9 @@ -84,8 +84,8 @@ importers: specifier: 2.1.8 version: 2.1.8 drizzle-orm: - specifier: 0.30.7 - version: 0.30.7(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1) + specifier: 0.32.1 + version: 0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1) hono: specifier: 4.2.2 version: 4.2.2 @@ -115,8 +115,8 @@ importers: specifier: workspace:* version: link:../../packages/db drizzle-orm: - specifier: 0.30.7 - version: 0.30.7(@cloudflare/workers-types@4.20240403.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1) + specifier: 0.32.1 + version: 0.32.1(@cloudflare/workers-types@4.20240403.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1) hono: specifier: 4.2.2 version: 4.2.2 @@ -611,21 +611,18 @@ importers: packages/db: dependencies: - '@clickhouse/client-web': - specifier: 1.0.1 - version: 1.0.1 '@libsql/client': - specifier: 0.6.2 - version: 0.6.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + specifier: 0.7.0 + version: 0.7.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) '@t3-oss/env-core': specifier: 0.7.0 version: 0.7.0(typescript@5.5.2)(zod@3.23.8) drizzle-orm: - specifier: 0.30.10 - version: 0.30.10(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1) + specifier: 0.32.1 + version: 0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.7.0(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1) drizzle-zod: specifier: 0.5.1 - version: 0.5.1(drizzle-orm@0.30.10(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1))(zod@3.23.8) + version: 0.5.1(drizzle-orm@0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.7.0(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1))(zod@3.23.8) zod: specifier: 3.23.8 version: 3.23.8 @@ -640,14 +637,14 @@ importers: specifier: 20.8.0 version: 20.8.0 better-sqlite3: - specifier: 10.0.0 - version: 10.0.0 + specifier: 11.1.2 + version: 11.1.2 bufferutil: specifier: 4.0.7 version: 4.0.7 drizzle-kit: - specifier: 0.21.2 - version: 0.21.2 + specifier: 0.23.0 + version: 0.23.0 encoding: specifier: 0.1.13 version: 0.1.13 @@ -2098,12 +2095,6 @@ packages: '@chronark/zod-bird@0.3.6': resolution: {integrity: sha512-hE8kCGLJK5ncH8F7uPaqPiOOqo68vUI66nusg7HO5X9BcyN8lXfeQliu6Ou1kOSq95OYshf9nB2fk2+LEvF4ng==} - '@clickhouse/client-common@1.0.1': - resolution: {integrity: sha512-3L6e0foP6VOktScoi6XWMjJyOpKCWgLUYgPVxP2c7gm6Kotq+iRmmmXtXTSg7B7uozcLZycTtPfIw2d80SYsYw==} - - '@clickhouse/client-web@1.0.1': - resolution: {integrity: sha512-gKmfOxJ3+6kFtlmQaBd0sOz8t8lAiJcBfR9sx1Cmk4M38T5xxza7ZWhyGs3O6I7nJkU60RuM1MY8Woct6vMtRg==} - '@cloudflare/kv-asset-handler@0.3.1': resolution: {integrity: sha512-lKN2XCfKCmpKb86a1tl4GIwsJYDy9TGuwjhDELLmpKygQhw8X2xR4dusgpC5Tg7q1pB96Eb0rBo81kxSILQMwA==} @@ -3208,9 +3199,15 @@ packages: '@libsql/client@0.6.2': resolution: {integrity: sha512-xRNfRLv/dOCbV4qd+M0baQwGmvuZpMd2wG2UAPs8XmcdaPvu5ErkcaeITkxlm3hDEJVabQM1cFhMBxsugWW9fQ==} + '@libsql/client@0.7.0': + resolution: {integrity: sha512-1aLDtWzsErr68GZ640TVyOLkL/+lB2YK8cYvJIfiI7Mt+DEPB22Jkoz2QfBDg5PVGX/efeRHog2j/oVbUhxO8Q==} + '@libsql/core@0.6.2': resolution: {integrity: sha512-c2P4M+4u/4b2L02A0KjggO3UW51rGkhxr/7fzJO0fEAqsqrWGxuNj2YtRkina/oxfYvAof6xjp8RucNoIV/Odw==} + '@libsql/core@0.7.0': + resolution: {integrity: sha512-hCYfXa0S4t9CJtxZIWacboylrcx94ZQO0dEngH4f0f/LHg6ymHSZiubbojAwD7tNy94ahICoGPjEi6aEIyhlcQ==} + '@libsql/darwin-arm64@0.3.10': resolution: {integrity: sha512-RaexEFfPAFogd6dJlqkpCkTxdr6K14Z0286lodIJ8Ny77mWuWyBkWKxf70OYWXXAMxMJFUW+6al1F3/Osf/pTg==} cpu: [arm64] @@ -5572,8 +5569,8 @@ packages: before-after-hook@2.2.3: resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} - better-sqlite3@10.0.0: - resolution: {integrity: sha512-rOz0JY8bt9oMgrFssP7GnvA5R3yln73y/NizzWqy3WlFth8Ux8+g4r/N9fjX97nn4X1YX6MTER2doNpTu5pqiA==} + better-sqlite3@11.1.2: + resolution: {integrity: sha512-gujtFwavWU4MSPT+h9B+4pkvZdyOUkH54zgLdIrMmmmd4ZqiBIrRNBzNzYVFO417xo882uP5HBu4GjOfaSrIQw==} bignumber.js@9.1.2: resolution: {integrity: sha512-2/mKyZH9K85bzOEfhXDBFZTGd1CTs+5IHpeFQo9luiBG7hghdC851Pj2WAhb6E3R6b9tZj/XKhbg4fum+Kepug==} @@ -5774,10 +5771,6 @@ packages: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} - cli-color@2.0.3: - resolution: {integrity: sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ==} - engines: {node: '>=0.10'} - cli-cursor@3.1.0: resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} engines: {node: '>=8'} @@ -5870,10 +5863,6 @@ packages: resolution: {integrity: sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==} engines: {node: ^12.20.0 || >=14} - commander@9.5.0: - resolution: {integrity: sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==} - engines: {node: ^12.20.0 || >=14} - comment-json@4.2.3: resolution: {integrity: sha512-SsxdiOf064DWoZLH799Ata6u7iV658A11PlWtZATDlXPpKGJnbJZ5Z24ybixAi+LUUqJ/GKowAejtC5GFUG7Tw==} engines: {node: '>= 6'} @@ -6024,9 +6013,6 @@ packages: resolution: {integrity: sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA==} engines: {node: '>=12'} - d@1.0.1: - resolution: {integrity: sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==} - data-uri-to-buffer@2.0.2: resolution: {integrity: sha512-ND9qDTLc6diwj+Xe5cdAgVTbLVdXbtxTJRXRhli8Mowuaan+0EJOtdqJ0QCHNSSPyoXGx9HX2/VMnKeC34AChA==} @@ -6184,9 +6170,6 @@ packages: resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} engines: {node: '>=0.3.1'} - difflib@0.2.4: - resolution: {integrity: sha512-9YVwmMb0wQHQNr5J9m6BSj6fk4pfGITGQOOs+D9Fl+INODWFOfvhIU1hNv6GgR1RBoC/9NJcwu77zShxV0kT7w==} - dir-glob@3.0.1: resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} engines: {node: '>=8'} @@ -6223,16 +6206,12 @@ packages: resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==} engines: {node: '>=12'} - dreamopt@0.8.0: - resolution: {integrity: sha512-vyJTp8+mC+G+5dfgsY+r3ckxlz+QMX40VjPQsZc5gxVAxLmi64TBoVkP54A/pRAXMXsbu2GMMBrZPxNv23waMg==} - engines: {node: '>=0.4.0'} - - drizzle-kit@0.21.2: - resolution: {integrity: sha512-U87IhZyCt/9d0ZT/Na3KFJVY31tSxtTx/n9UMcWFpW/5c2Ede39xiCG5efNV/0iimsv97UIRtDI0ldLBW5lbcg==} + drizzle-kit@0.23.0: + resolution: {integrity: sha512-w9jE97z193dd4jzAyj4Uv2SOh8Ydue70Ki6W0awy4bGM1aPXan6zD6Yv+nNTA6oGgNTDl2MJFxutjHG4fden5g==} hasBin: true - drizzle-orm@0.30.10: - resolution: {integrity: sha512-IRy/QmMWw9lAQHpwbUh1b8fcn27S/a9zMIzqea1WNOxK9/4EB8gIo+FZWLiPXzl2n9ixGSv8BhsLZiOppWEwBw==} + drizzle-orm@0.32.1: + resolution: {integrity: sha512-Wq1J+lL8PzwR5K3a1FfoWsbs8powjr3pGA4+5+2ueN1VTLDNFYEolUyUWFtqy8DVRvYbL2n7sXZkgVmK9dQkng==} peerDependencies: '@aws-sdk/client-rds-data': '>=3' '@cloudflare/workers-types': '>=3' @@ -6242,6 +6221,8 @@ packages: '@op-engineering/op-sqlite': '>=2' '@opentelemetry/api': ^1.4.1 '@planetscale/database': '>=1' + '@prisma/client': '*' + '@tidbcloud/serverless': '*' '@types/better-sqlite3': '*' '@types/pg': '*' '@types/react': '>=18' @@ -6256,6 +6237,7 @@ packages: mysql2: '>=2' pg: '>=8' postgres: '>=3' + prisma: '*' react: '>=18' sql.js: '>=1' sqlite3: '>=5' @@ -6276,85 +6258,9 @@ packages: optional: true '@planetscale/database': optional: true - '@types/better-sqlite3': - optional: true - '@types/pg': - optional: true - '@types/react': - optional: true - '@types/sql.js': - optional: true - '@vercel/postgres': - optional: true - '@xata.io/client': - optional: true - better-sqlite3: - optional: true - bun-types: - optional: true - expo-sqlite: - optional: true - knex: - optional: true - kysely: + '@prisma/client': optional: true - mysql2: - optional: true - pg: - optional: true - postgres: - optional: true - react: - optional: true - sql.js: - optional: true - sqlite3: - optional: true - - drizzle-orm@0.30.7: - resolution: {integrity: sha512-9qefSZQlu2fO2qv24piHyWFWcxcOY15//0v4j8qomMqaxzipNoG+fUBrQ7Ftk7PY7APRbRdn/nkEXWxiI4a8mw==} - peerDependencies: - '@aws-sdk/client-rds-data': '>=3' - '@cloudflare/workers-types': '>=3' - '@electric-sql/pglite': '>=0.1.1' - '@libsql/client': '*' - '@neondatabase/serverless': '>=0.1' - '@op-engineering/op-sqlite': '>=2' - '@opentelemetry/api': ^1.4.1 - '@planetscale/database': '>=1' - '@types/better-sqlite3': '*' - '@types/pg': '*' - '@types/react': '>=18' - '@types/sql.js': '*' - '@vercel/postgres': '>=0.8.0' - '@xata.io/client': '*' - better-sqlite3: '>=7' - bun-types: '*' - expo-sqlite: '>=13.2.0' - knex: '*' - kysely: '*' - mysql2: '>=2' - pg: '>=8' - postgres: '>=3' - react: '>=18' - sql.js: '>=1' - sqlite3: '>=5' - peerDependenciesMeta: - '@aws-sdk/client-rds-data': - optional: true - '@cloudflare/workers-types': - optional: true - '@electric-sql/pglite': - optional: true - '@libsql/client': - optional: true - '@neondatabase/serverless': - optional: true - '@op-engineering/op-sqlite': - optional: true - '@opentelemetry/api': - optional: true - '@planetscale/database': + '@tidbcloud/serverless': optional: true '@types/better-sqlite3': optional: true @@ -6384,6 +6290,8 @@ packages: optional: true postgres: optional: true + prisma: + optional: true react: optional: true sql.js: @@ -6446,10 +6354,6 @@ packages: resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} engines: {node: '>=0.12'} - env-paths@3.0.0: - resolution: {integrity: sha512-dtJUTepzMW3Lm/NPxRf3wP4642UWhjL2sQxc+ym2YMj1m/H2zDNQOlezafzkHwn6sMstjHTwG6iQQsctDW/b1A==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - envinfo@7.13.0: resolution: {integrity: sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==} engines: {node: '>=4'} @@ -6458,19 +6362,6 @@ packages: error-ex@1.3.2: resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - es5-ext@0.10.62: - resolution: {integrity: sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA==} - engines: {node: '>=0.10'} - - es6-iterator@2.0.3: - resolution: {integrity: sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==} - - es6-symbol@3.1.3: - resolution: {integrity: sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==} - - es6-weak-map@2.0.3: - resolution: {integrity: sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==} - esbuild-register@3.5.0: resolution: {integrity: sha512-+4G/XmakeBAsvJuDugJvtyF1x+XJT4FMocynNpxrvEBViirpfUn2PgNpCHedfWhF4WokNsO/OvMKrmJOIJsI5A==} peerDependencies: @@ -6577,9 +6468,6 @@ packages: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} engines: {node: '>= 0.6'} - event-emitter@0.3.5: - resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} - event-target-shim@5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} @@ -6611,9 +6499,6 @@ packages: resolution: {integrity: sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==} engines: {node: '>= 0.10.0'} - ext@1.7.0: - resolution: {integrity: sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==} - extend-shallow@2.0.1: resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} engines: {node: '>=0.10.0'} @@ -6939,9 +6824,6 @@ packages: engines: {node: '>=0.4.7'} hasBin: true - hanji@0.0.5: - resolution: {integrity: sha512-Abxw1Lq+TnYiL4BueXqMau222fPSPMFtya8HdpWsz/xVAhifXou71mPh/kY2+08RgFcVccjG3uZHs6K5HAe3zw==} - hard-rejection@2.1.0: resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} engines: {node: '>=6'} @@ -7078,9 +6960,6 @@ packages: header-case@1.0.1: resolution: {integrity: sha512-i0q9mkOeSuhXw6bGgiQCCBgY/jlZuV/7dZXyZ9c6LcBrqwvT8eT719E9uxE5LiZftdl+z81Ugbg/VvXV4OJOeQ==} - heap@0.2.7: - resolution: {integrity: sha512-2bsegYkkHO+h/9MGbn6KWcE45cHZgPANo5LXF7EvWdT0yT2EguSVO1nDgU5c8+ZOPwp2vMNa7YFsJhVcDR9Sdg==} - highlight.js@11.10.0: resolution: {integrity: sha512-SYVnVFswQER+zu1laSya563s+F8VDGt7o35d4utbamowvUNLLMovFqwCLSocpZTz3MgaSRA1IbqRWZv97dtErQ==} engines: {node: '>=12.0.0'} @@ -7384,9 +7263,6 @@ packages: resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} engines: {node: '>=0.10.0'} - is-promise@2.2.2: - resolution: {integrity: sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==} - is-reference@1.2.1: resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} @@ -7516,10 +7392,6 @@ packages: json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - json-diff@0.9.0: - resolution: {integrity: sha512-cVnggDrVkAAA3OvFfHpFEhOnmcsUpleEKq4d4O8sQWWSH40MBrWstKigVB1kGrgLWzuom+7rRdaCsnBD6VyObQ==} - hasBin: true - json-parse-even-better-errors@2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} @@ -7660,9 +7532,6 @@ packages: lodash.sortby@4.7.0: resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} - lodash.throttle@4.1.1: - resolution: {integrity: sha512-wIkUCfVKpVsWo3JSZlc+8MB5it+2AN5W8J7YVMST30UrvcQNZ1Okbj+rbVniijTWE6FGYy4XJq/rHkas8qJMLQ==} - lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} @@ -7714,9 +7583,6 @@ packages: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} engines: {node: '>=12'} - lru-queue@0.1.0: - resolution: {integrity: sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==} - lucide-react@0.279.0: resolution: {integrity: sha512-LJ8g66+Bxc3t3x9vKTeK3wn3xucrOQGfJ9ou9GsBwCt2offsrT2BB90XrTrIzE1noYYDe2O8jZaRHi6sAHXNxw==} peerDependencies: @@ -7873,9 +7739,6 @@ packages: resolution: {integrity: sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==} engines: {node: '>= 4.0.0'} - memoizee@0.4.15: - resolution: {integrity: sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==} - meow@7.1.1: resolution: {integrity: sha512-GWHvA5QOcS412WCo8vwKDlTelGLsCGBVevQB5Kva961rmNfun0PCbv5+xta2kUMFJyR8/oWnn7ddeKdosbAPbA==} engines: {node: '>=10'} @@ -8294,9 +8157,6 @@ packages: react: '*' react-dom: '*' - next-tick@1.1.0: - resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} - next@14.2.4: resolution: {integrity: sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==} engines: {node: '>=18.17.0'} @@ -8797,6 +8657,9 @@ packages: resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} engines: {node: '>=0.4.0'} + promise-limit@2.7.0: + resolution: {integrity: sha512-7nJ6v5lnJsXwGprnGXga4wx6d1POjvi5Qmf1ivTRxTjH4Z/9Czja/UCMLVmB9N93GeWOU93XaFaEt6jbuoagNw==} + prompts@2.4.2: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} @@ -9650,9 +9513,6 @@ packages: through@2.3.8: resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} - timers-ext@0.1.7: - resolution: {integrity: sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==} - tiny-invariant@1.3.1: resolution: {integrity: sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==} @@ -9865,12 +9725,6 @@ packages: resolution: {integrity: sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==} engines: {node: '>= 0.6'} - type@1.2.0: - resolution: {integrity: sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==} - - type@2.7.2: - resolution: {integrity: sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw==} - typescript@5.4.4: resolution: {integrity: sha512-dGE2Vv8cpVvw28v8HCPqyb08EzbBURxDpuhJvTrusShUfGnhHBafDsLdS1EhhxyL6BJQE+2cT3dDPAv+MQ6oLw==} engines: {node: '>=14.17'} @@ -11835,12 +11689,6 @@ snapshots: dependencies: zod: 3.23.8 - '@clickhouse/client-common@1.0.1': {} - - '@clickhouse/client-web@1.0.1': - dependencies: - '@clickhouse/client-common': 1.0.1 - '@cloudflare/kv-asset-handler@0.3.1': dependencies: mime: 3.0.0 @@ -12761,30 +12609,47 @@ snapshots: '@lezer/highlight': 1.2.0 '@lezer/lr': 1.4.1 - '@libsql/client@0.6.2(bufferutil@4.0.7)(utf-8-validate@6.0.3)': + '@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4)': dependencies: '@libsql/core': 0.6.2 + '@libsql/hrana-client': 0.6.0(bufferutil@4.0.8)(utf-8-validate@6.0.4) + js-base64: 3.7.5 + libsql: 0.3.10 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + '@libsql/client@0.7.0(bufferutil@4.0.7)(utf-8-validate@6.0.3)': + dependencies: + '@libsql/core': 0.7.0 '@libsql/hrana-client': 0.6.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) js-base64: 3.7.5 libsql: 0.3.10 + promise-limit: 2.7.0 transitivePeerDependencies: - bufferutil - utf-8-validate - '@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4)': + '@libsql/client@0.7.0(bufferutil@4.0.8)(utf-8-validate@6.0.4)': dependencies: - '@libsql/core': 0.6.2 + '@libsql/core': 0.7.0 '@libsql/hrana-client': 0.6.0(bufferutil@4.0.8)(utf-8-validate@6.0.4) js-base64: 3.7.5 libsql: 0.3.10 + promise-limit: 2.7.0 transitivePeerDependencies: - bufferutil - utf-8-validate + optional: true '@libsql/core@0.6.2': dependencies: js-base64: 3.7.5 + '@libsql/core@0.7.0': + dependencies: + js-base64: 3.7.5 + '@libsql/darwin-arm64@0.3.10': optional: true @@ -15739,7 +15604,7 @@ snapshots: before-after-hook@2.2.3: {} - better-sqlite3@10.0.0: + better-sqlite3@11.1.2: dependencies: bindings: 1.5.0 prebuild-install: 7.1.1 @@ -16005,14 +15870,6 @@ snapshots: clean-stack@2.2.0: {} - cli-color@2.0.3: - dependencies: - d: 1.0.1 - es5-ext: 0.10.62 - es6-iterator: 2.0.3 - memoizee: 0.4.15 - timers-ext: 0.1.7 - cli-cursor@3.1.0: dependencies: restore-cursor: 3.1.0 @@ -16099,8 +15956,6 @@ snapshots: commander@9.4.1: {} - commander@9.5.0: {} - comment-json@4.2.3: dependencies: array-timsort: 1.0.3 @@ -16243,11 +16098,6 @@ snapshots: d3-timer@3.0.1: {} - d@1.0.1: - dependencies: - es5-ext: 0.10.62 - type: 1.2.0 - data-uri-to-buffer@2.0.2: {} data-uri-to-buffer@4.0.1: {} @@ -16372,10 +16222,6 @@ snapshots: diff@5.1.0: {} - difflib@0.2.4: - dependencies: - heap: 0.2.7 - dir-glob@3.0.1: dependencies: path-type: 4.0.0 @@ -16415,67 +16261,57 @@ snapshots: dotenv@16.3.1: {} - dreamopt@0.8.0: - dependencies: - wordwrap: 1.0.0 - - drizzle-kit@0.21.2: + drizzle-kit@0.23.0: dependencies: '@esbuild-kit/esm-loader': 2.6.5 - commander: 9.5.0 - env-paths: 3.0.0 esbuild: 0.19.12 esbuild-register: 3.5.0(esbuild@0.19.12) - glob: 8.1.0 - hanji: 0.0.5 - json-diff: 0.9.0 - zod: 3.23.8 transitivePeerDependencies: - supports-color - drizzle-orm@0.30.10(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1): + drizzle-orm@0.32.1(@cloudflare/workers-types@4.20240403.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1): optionalDependencies: - '@cloudflare/workers-types': 4.20240512.0 - '@libsql/client': 0.6.2(bufferutil@4.0.7)(utf-8-validate@6.0.3) + '@cloudflare/workers-types': 4.20240403.0 + '@libsql/client': 0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4) '@opentelemetry/api': 1.8.0 '@types/react': 18.3.3 - better-sqlite3: 10.0.0 + better-sqlite3: 11.1.2 bun-types: 1.1.8 react: 18.3.1 - drizzle-orm@0.30.10(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1): + drizzle-orm@0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1): optionalDependencies: '@cloudflare/workers-types': 4.20240512.0 '@libsql/client': 0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4) '@opentelemetry/api': 1.8.0 '@types/react': 18.3.3 - better-sqlite3: 10.0.0 + better-sqlite3: 11.1.2 bun-types: 1.1.8 react: 18.3.1 - drizzle-orm@0.30.7(@cloudflare/workers-types@4.20240403.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1): + drizzle-orm@0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.7.0(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1): optionalDependencies: - '@cloudflare/workers-types': 4.20240403.0 - '@libsql/client': 0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4) + '@cloudflare/workers-types': 4.20240512.0 + '@libsql/client': 0.7.0(bufferutil@4.0.7)(utf-8-validate@6.0.3) '@opentelemetry/api': 1.8.0 '@types/react': 18.3.3 - better-sqlite3: 10.0.0 + better-sqlite3: 11.1.2 bun-types: 1.1.8 react: 18.3.1 - drizzle-orm@0.30.7(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1): + drizzle-orm@0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.7.0(bufferutil@4.0.8)(utf-8-validate@6.0.4))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1): optionalDependencies: '@cloudflare/workers-types': 4.20240512.0 - '@libsql/client': 0.6.2(bufferutil@4.0.8)(utf-8-validate@6.0.4) + '@libsql/client': 0.7.0(bufferutil@4.0.8)(utf-8-validate@6.0.4) '@opentelemetry/api': 1.8.0 '@types/react': 18.3.3 - better-sqlite3: 10.0.0 + better-sqlite3: 11.1.2 bun-types: 1.1.8 react: 18.3.1 - drizzle-zod@0.5.1(drizzle-orm@0.30.10(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1))(zod@3.23.8): + drizzle-zod@0.5.1(drizzle-orm@0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.7.0(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1))(zod@3.23.8): dependencies: - drizzle-orm: 0.30.10(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.6.2(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@10.0.0)(bun-types@1.1.8)(react@18.3.1) + drizzle-orm: 0.32.1(@cloudflare/workers-types@4.20240512.0)(@libsql/client@0.7.0(bufferutil@4.0.7)(utf-8-validate@6.0.3))(@opentelemetry/api@1.8.0)(@types/react@18.3.3)(better-sqlite3@11.1.2)(bun-types@1.1.8)(react@18.3.1) zod: 3.23.8 duplexify@4.1.2: @@ -16528,38 +16364,12 @@ snapshots: entities@4.5.0: {} - env-paths@3.0.0: {} - envinfo@7.13.0: {} error-ex@1.3.2: dependencies: is-arrayish: 0.2.1 - es5-ext@0.10.62: - dependencies: - es6-iterator: 2.0.3 - es6-symbol: 3.1.3 - next-tick: 1.1.0 - - es6-iterator@2.0.3: - dependencies: - d: 1.0.1 - es5-ext: 0.10.62 - es6-symbol: 3.1.3 - - es6-symbol@3.1.3: - dependencies: - d: 1.0.1 - ext: 1.7.0 - - es6-weak-map@2.0.3: - dependencies: - d: 1.0.1 - es5-ext: 0.10.62 - es6-iterator: 2.0.3 - es6-symbol: 3.1.3 - esbuild-register@3.5.0(esbuild@0.19.12): dependencies: debug: 4.3.4 @@ -16766,11 +16576,6 @@ snapshots: etag@1.8.1: {} - event-emitter@0.3.5: - dependencies: - d: 1.0.1 - es5-ext: 0.10.62 - event-target-shim@5.0.1: {} eventemitter3@4.0.7: {} @@ -16841,10 +16646,6 @@ snapshots: transitivePeerDependencies: - supports-color - ext@1.7.0: - dependencies: - type: 2.7.2 - extend-shallow@2.0.1: dependencies: is-extendable: 0.1.1 @@ -17253,11 +17054,6 @@ snapshots: optionalDependencies: uglify-js: 3.17.4 - hanji@0.0.5: - dependencies: - lodash.throttle: 4.1.1 - sisteransi: 1.0.5 - hard-rejection@2.1.0: {} has-ansi@2.0.0: @@ -17518,8 +17314,6 @@ snapshots: no-case: 2.3.2 upper-case: 1.1.3 - heap@0.2.7: {} - highlight.js@11.10.0: {} highlight.js@11.9.0: {} @@ -17821,8 +17615,6 @@ snapshots: is-plain-object@5.0.0: {} - is-promise@2.2.2: {} - is-reference@1.2.1: dependencies: '@types/estree': 1.0.3 @@ -17946,12 +17738,6 @@ snapshots: json-buffer@3.0.1: {} - json-diff@0.9.0: - dependencies: - cli-color: 2.0.3 - difflib: 0.2.4 - dreamopt: 0.8.0 - json-parse-even-better-errors@2.3.1: {} json-schema-traverse@1.0.0: {} @@ -18093,8 +17879,6 @@ snapshots: lodash.sortby@4.7.0: {} - lodash.throttle@4.1.1: {} - lodash@4.17.21: {} log-symbols@3.0.0: @@ -18146,10 +17930,6 @@ snapshots: lru-cache@7.18.3: {} - lru-queue@0.1.0: - dependencies: - es5-ext: 0.10.62 - lucide-react@0.279.0(react@18.3.1): dependencies: react: 18.3.1 @@ -18483,17 +18263,6 @@ snapshots: dependencies: fs-monkey: 1.0.5 - memoizee@0.4.15: - dependencies: - d: 1.0.1 - es5-ext: 0.10.62 - es6-weak-map: 2.0.3 - event-emitter: 0.3.5 - is-promise: 2.2.2 - lru-queue: 0.1.0 - next-tick: 1.1.0 - timers-ext: 0.1.7 - meow@7.1.1: dependencies: '@types/minimist': 1.2.5 @@ -19175,8 +18944,6 @@ snapshots: react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - next-tick@1.1.0: {} - next@14.2.4(@opentelemetry/api@1.4.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: '@next/env': 14.2.4 @@ -19759,6 +19526,8 @@ snapshots: progress@2.0.3: {} + promise-limit@2.7.0: {} + prompts@2.4.2: dependencies: kleur: 3.0.3 @@ -20910,11 +20679,6 @@ snapshots: through@2.3.8: {} - timers-ext@0.1.7: - dependencies: - es5-ext: 0.10.62 - next-tick: 1.1.0 - tiny-invariant@1.3.1: {} tiny-invariant@1.3.3: {} @@ -21127,10 +20891,6 @@ snapshots: media-typer: 0.3.0 mime-types: 2.1.35 - type@1.2.0: {} - - type@2.7.2: {} - typescript@5.4.4: {} typescript@5.4.5: {}