import { COVERAGE_TAB, DECAY_TAB, GLOSSARY_TAB, MODEL_TAB, PRINCIPLES_TAB, SCALE_TAB, } from "#core/ids/architecture.ids"; import { COVERAGE_TAB_ICON, DECAY_TAB_ICON, GLOSSARY_TAB_ICON, MODEL_TAB_ICON, PRINCIPLES_TAB_ICON, SCALE_TAB_ICON, } from "#configuration/icons/architecture.icons"; import type { Tab, TabbedMeta } from "#types/document.types"; import { CANON_SECTIONS } from "#configuration/strings/canon.strings"; import { DRIFT_SECTIONS } from "#configuration/strings/drift.strings"; import { FAILURE_SECTIONS } from "#configuration/strings/failure.strings"; import { GLOSSARY_SECTIONS } from "#configuration/strings/glossary.strings"; import { GRAPH_SECTIONS } from "#configuration/strings/graph.strings"; import { LAYER_SECTIONS } from "#configuration/strings/layer.strings"; import { RESOURCE_SECTIONS } from "#configuration/strings/resource.strings"; import { SCALE_SECTIONS } from "#configuration/strings/graph.fragment.strings"; import { TENSION_SECTIONS } from "#configuration/strings/canon.fragment.strings"; export const ARCHITECTURE_META: TabbedMeta = { subtitle: "A system as a graph, principles as typed records, and the predicate set that makes an architecture real when a model writes the code.", title: "Software Architecture", version: "1.0.0", }; export const ARCHITECTURE_ATTRIBUTION = " - Software Architecture"; export const ARCHITECTURE_CONTENT: readonly Tab[] = [ { icon: MODEL_TAB_ICON, id: MODEL_TAB, label: "Model", sections: [...GRAPH_SECTIONS, ...LAYER_SECTIONS] }, { icon: PRINCIPLES_TAB_ICON, id: PRINCIPLES_TAB, label: "Principles", sections: [...CANON_SECTIONS, ...RESOURCE_SECTIONS, ...TENSION_SECTIONS], }, { icon: DECAY_TAB_ICON, id: DECAY_TAB, label: "Decay", sections: FAILURE_SECTIONS }, { icon: COVERAGE_TAB_ICON, id: COVERAGE_TAB, label: "Coverage", sections: DRIFT_SECTIONS }, { icon: SCALE_TAB_ICON, id: SCALE_TAB, label: "Scale", sections: SCALE_SECTIONS }, { icon: GLOSSARY_TAB_ICON, id: GLOSSARY_TAB, label: "Glossary", layout: "glossary", sections: GLOSSARY_SECTIONS }, ];