Add component persistence foundation

This commit is contained in:
2026-07-30 19:15:00 +02:00
parent a88c4b2086
commit e7607c90c4
15 changed files with 3146 additions and 12 deletions
@@ -0,0 +1,27 @@
import { real, sqliteTable, text } from "drizzle-orm/sqlite-core";
import type {
BreakerTripCharacteristic,
FuseUtilizationCategory,
ProtectionDeviceType,
RcdType,
} from "../../shared/constants/protection-device.js";
import { circuits } from "./circuits.js";
export const circuitProtectionDevices = sqliteTable(
"circuit_protection_devices",
{
circuitId: text("circuit_id")
.primaryKey()
.references(() => circuits.id, { onDelete: "cascade" }),
type: text("type").$type<ProtectionDeviceType>().notNull(),
ratedCurrentA: real("rated_current_a").notNull(),
fuseUtilizationCategory: text(
"fuse_utilization_category"
).$type<FuseUtilizationCategory>(),
tripCharacteristic: text(
"trip_characteristic"
).$type<BreakerTripCharacteristic>(),
rcdType: text("rcd_type").$type<RcdType>(),
ratedResidualCurrentMa: real("rated_residual_current_ma"),
}
);