UNPKG

drizzle-orm

Version:

Drizzle ORM package for SQL databases

60 lines 1.39 kB
import { entityKind } from "../../entity.js"; import { getColumnNameAndConfig } from "../../utils.js"; import { PgColumn } from "./common.js"; import { PgDateColumnBaseBuilder } from "./date.common.js"; class PgDateBuilder extends PgDateColumnBaseBuilder { static [entityKind] = "PgDateBuilder"; constructor(name) { super(name, "date", "PgDate"); } /** @internal */ build(table) { return new PgDate(table, this.config); } } class PgDate extends PgColumn { static [entityKind] = "PgDate"; getSQLType() { return "date"; } mapFromDriverValue(value) { return new Date(value); } mapToDriverValue(value) { return value.toISOString(); } } class PgDateStringBuilder extends PgDateColumnBaseBuilder { static [entityKind] = "PgDateStringBuilder"; constructor(name) { super(name, "string", "PgDateString"); } /** @internal */ build(table) { return new PgDateString( table, this.config ); } } class PgDateString extends PgColumn { static [entityKind] = "PgDateString"; getSQLType() { return "date"; } } function date(a, b) { const { name, config } = getColumnNameAndConfig(a, b); if (config?.mode === "date") { return new PgDateBuilder(name); } return new PgDateStringBuilder(name); } export { PgDate, PgDateBuilder, PgDateString, PgDateStringBuilder, date }; //# sourceMappingURL=date.js.map