- Seitenansicht (/projects/:projectId/print): tabular cover page, board overview with supply structure and power sums, one plan per board with a repeating title block; PDF via the browser print dialog with named @page rules (A4 portrait cover, A4/A3 landscape plans, page x of y). - Distribution-board info card (board number, location, fed-from, remark) in the board edit dialog, persisted through the additively extended distribution-board.update command (migration 0008, snapshot schema 6, legacy subtree commands normalized). - Global document logo upload (PNG/JPEG/SVG, max 2 MB) outside project revisions and snapshots. - fed-from stays free text; the overview hierarchy and cumulated sums are preliminary until the feed link is modeled. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
67 lines
1.8 KiB
TypeScript
67 lines
1.8 KiB
TypeScript
export const distributionBoardSupplyTypes = [
|
||
"AV",
|
||
"SV",
|
||
"EV",
|
||
"USV",
|
||
"MSR",
|
||
"SiBe",
|
||
] as const;
|
||
|
||
export type DistributionBoardSupplyType =
|
||
(typeof distributionBoardSupplyTypes)[number];
|
||
|
||
export const defaultDistributionBoardSupplyTypes: DistributionBoardSupplyType[] =
|
||
[...distributionBoardSupplyTypes];
|
||
|
||
export const distributionBoardSupplyTypeLabels: Record<
|
||
DistributionBoardSupplyType,
|
||
string
|
||
> = {
|
||
AV: "AV – Allgemeine Stromversorgung",
|
||
SV: "SV – Sicherheitsstromversorgung",
|
||
EV: "EV – Ersatzstromversorgung",
|
||
USV: "USV – Unterbrechungsfreie Stromversorgung",
|
||
MSR: "MSR – Mess-, Steuerungs- und Regelungstechnik",
|
||
SiBe: "SiBe – Sicherheitsbeleuchtung",
|
||
};
|
||
|
||
/**
|
||
* Planner-owned descriptive distribution-board data shown on the board info
|
||
* card and in the print view. The values are local planning values. A later
|
||
* Revit/CSV round-trip may prefill them from mapped model parameters, but only
|
||
* through a previewed, explicitly confirmed project command (see
|
||
* docs/spec/revit-csv-integration-requirements.md); imports never overwrite
|
||
* them silently.
|
||
*
|
||
* `fedFrom` is intentionally free text for now. How a board is logically
|
||
* linked to its upstream board or feeding circuit is not decided yet.
|
||
*/
|
||
export const distributionBoardInfoFields = [
|
||
"boardNumber",
|
||
"location",
|
||
"fedFrom",
|
||
"remark",
|
||
] as const;
|
||
|
||
export type DistributionBoardInfoField =
|
||
(typeof distributionBoardInfoFields)[number];
|
||
|
||
export const distributionBoardInfoFieldLabels: Record<
|
||
DistributionBoardInfoField,
|
||
string
|
||
> = {
|
||
boardNumber: "Verteilernummer",
|
||
location: "Örtlichkeit",
|
||
fedFrom: "Gespeist von",
|
||
remark: "Bemerkung",
|
||
};
|
||
|
||
export const distributionBoardInfoFieldMaxLengths: Record<
|
||
DistributionBoardInfoField,
|
||
number
|
||
> = {
|
||
boardNumber: 50,
|
||
location: 200,
|
||
fedFrom: 200,
|
||
remark: 2000,
|
||
};
|