serial.js 681 B

1234567891011121314151617181920212223242526272829
  1. import { entityKind } from "../../entity.js";
  2. import { PgColumn, PgColumnBuilder } from "./common.js";
  3. class PgSerialBuilder extends PgColumnBuilder {
  4. static [entityKind] = "PgSerialBuilder";
  5. constructor(name) {
  6. super(name, "number", "PgSerial");
  7. this.config.hasDefault = true;
  8. this.config.notNull = true;
  9. }
  10. /** @internal */
  11. build(table) {
  12. return new PgSerial(table, this.config);
  13. }
  14. }
  15. class PgSerial extends PgColumn {
  16. static [entityKind] = "PgSerial";
  17. getSQLType() {
  18. return "serial";
  19. }
  20. }
  21. function serial(name) {
  22. return new PgSerialBuilder(name ?? "");
  23. }
  24. export {
  25. PgSerial,
  26. PgSerialBuilder,
  27. serial
  28. };
  29. //# sourceMappingURL=serial.js.map