UNPKG

drizzle-orm

Version:

Drizzle ORM package for SQL databases

34 lines 1.07 kB
import { entityKind } from "../../entity.js"; import { getColumnNameAndConfig } from "../../utils.js"; import { PgColumn, PgColumnBuilder } from "./common.js"; class PgIntervalBuilder extends PgColumnBuilder { static [entityKind] = "PgIntervalBuilder"; constructor(name, intervalConfig) { super(name, "string", "PgInterval"); this.config.intervalConfig = intervalConfig; } /** @internal */ build(table) { return new PgInterval(table, this.config); } } class PgInterval extends PgColumn { static [entityKind] = "PgInterval"; fields = this.config.intervalConfig.fields; precision = this.config.intervalConfig.precision; getSQLType() { const fields = this.fields ? ` ${this.fields}` : ""; const precision = this.precision ? `(${this.precision})` : ""; return `interval${fields}${precision}`; } } function interval(a, b = {}) { const { name, config } = getColumnNameAndConfig(a, b); return new PgIntervalBuilder(name, config); } export { PgInterval, PgIntervalBuilder, interval }; //# sourceMappingURL=interval.js.map