refactor(database): ♻️ Use dates instead of strings in database
Some checks failed
CodeQL Scan / Analyze (javascript-typescript) (push) Failing after 1s
Build Docker Images / lint (push) Failing after 7s
Build Docker Images / check (push) Failing after 7s
Build Docker Images / tests (push) Failing after 7s
Build Docker Images / detect-circular (push) Failing after 7s
Deploy Docs to GitHub Pages / build (push) Failing after 0s
Build Docker Images / build (server, Dockerfile, ${{ github.repository_owner }}/server) (push) Has been skipped
Build Docker Images / build (worker, Worker.Dockerfile, ${{ github.repository_owner }}/worker) (push) Has been skipped
Deploy Docs to GitHub Pages / Deploy (push) Has been skipped
Mirror to Codeberg / Mirror (push) Failing after 0s
Nix Build / check (push) Failing after 0s
Test Publish / build (client) (push) Failing after 0s
Test Publish / build (sdk) (push) Failing after 0s

This commit is contained in:
Jesse Wierzbinski 2025-12-11 04:03:57 +01:00
parent 1fefafdbad
commit 6056a6622c
No known key found for this signature in database
25 changed files with 2548 additions and 67 deletions

View file

@ -28,13 +28,12 @@ import {
import type { z } from "zod";
const createdAt = () =>
// TODO: Change mode to Date
timestamp("created_at", { precision: 3, mode: "string" })
timestamp("created_at", { precision: 3, mode: "date", withTimezone: true })
.defaultNow()
.notNull();
const updatedAt = () =>
timestamp("updated_at", { precision: 3, mode: "string" })
timestamp("updated_at", { precision: 3, mode: "date", withTimezone: true })
.defaultNow()
.notNull();
@ -47,7 +46,8 @@ export const Challenges = pgTable("Challenges", {
challenge: jsonb("challenge").notNull().$type<Challenge>(),
expiresAt: timestamp("expires_at", {
precision: 3,
mode: "string",
mode: "date",
withTimezone: true,
})
.default(
// 5 minutes
@ -191,7 +191,11 @@ export const Filters = pgTable("Filters", {
>(),
title: text("title").notNull(),
filterAction: text("filter_action").notNull().$type<"warn" | "hide">(),
expireAt: timestamp("expires_at", { precision: 3, mode: "string" }),
expireAt: timestamp("expires_at", {
precision: 3,
mode: "date",
withTimezone: true,
}),
createdAt: createdAt(),
});
@ -330,7 +334,11 @@ export const Tokens = pgTable("Tokens", {
id: id(),
scopes: text("scopes").array().notNull().default(sql`ARRAY[]::text[]`),
accessToken: text("access_token").notNull(),
expiresAt: timestamp("expires_at", { precision: 3, mode: "string" }),
expiresAt: timestamp("expires_at", {
precision: 3,
mode: "date",
withTimezone: true,
}),
createdAt: createdAt(),
userId: uuid("userId")
.references(() => Users.id, {
@ -363,7 +371,8 @@ export const AuthorizationCodes = pgTable("AuthorizationCodes", {
redirectUri: text("redirect_uri"),
expiresAt: timestamp("expires_at", {
precision: 3,
mode: "string",
mode: "date",
withTimezone: true,
}).notNull(),
createdAt: createdAt(),
codeChallenge: text("code_challenge"),