Skip to main content

katana_document_viewer/
lib.rs

1//! UI-independent document artifact and export foundation for KatanA.
2//!
3//! KDV receives KMM public DTOs, delegates supported rendering to KRR,
4//! and keeps viewer UI concerns outside this crate.
5
6pub mod artifact;
7pub mod backend;
8pub mod cli_api;
9pub mod document;
10pub mod evaluation;
11mod export_assets;
12#[path = "export_html/export_block_payload.rs"]
13mod export_block_payload;
14#[path = "export_html/export_code_payload.rs"]
15mod export_code_payload;
16pub mod export_contract;
17mod export_contract_entries;
18#[path = "export_html/export_details_payload.rs"]
19mod export_details_payload;
20#[path = "export_html/export_footnote_payload.rs"]
21mod export_footnote_payload;
22#[path = "export_html/export_heading_payload.rs"]
23mod export_heading_payload;
24#[path = "export_html/export_html_ops.rs"]
25mod export_html_ops;
26#[path = "export_html/export_html_payload.rs"]
27mod export_html_payload;
28#[path = "export_html/export_html_style.rs"]
29mod export_html_style;
30#[path = "export_payload/export_image_payload.rs"]
31mod export_image_payload;
32#[path = "export_html/export_inline_payload.rs"]
33mod export_inline_payload;
34#[path = "export_html/export_legacy_note_payload.rs"]
35mod export_legacy_note_payload;
36#[path = "export_html/export_list_payload.rs"]
37mod export_list_payload;
38#[path = "export_html/export_math_payload.rs"]
39mod export_math_payload;
40#[path = "export_payload/export_payload.rs"]
41mod export_payload;
42#[path = "export_payload/export_pdf_payload.rs"]
43mod export_pdf_payload;
44mod export_postprocess;
45mod export_quality;
46mod export_semantics;
47mod export_surface;
48#[path = "export_surface/export_surface_code.rs"]
49mod export_surface_code;
50#[path = "export_surface/export_surface_font.rs"]
51mod export_surface_font;
52#[path = "export_surface/export_surface_helpers.rs"]
53mod export_surface_helpers;
54#[path = "export_surface/export_surface_line.rs"]
55mod export_surface_line;
56#[path = "export_surface/export_surface_math.rs"]
57mod export_surface_math;
58#[path = "export_surface/export_surface_span.rs"]
59mod export_surface_span;
60#[path = "export_surface/export_surface_svg.rs"]
61mod export_surface_svg;
62#[path = "export_surface/export_surface_text.rs"]
63mod export_surface_text;
64#[path = "export_html/export_table_payload.rs"]
65mod export_table_payload;
66pub mod forge;
67mod forge_diagram_render;
68mod forge_diagram_render_types;
69mod forge_types;
70mod html_sanitizer;
71mod render_runtime;
72mod theme;
73
74pub use artifact::{
75    Artifact, ArtifactBytes, ArtifactDiagnostic, ArtifactDiagnostics, ArtifactFormat, ArtifactId,
76    ArtifactKind, ArtifactManifest, ArtifactUri, DiagnosticSeverity,
77};
78pub use backend::diagram::{KrrDiagramInputFactory, KrrRenderOutputFactory};
79pub use cli_api::{
80    CliApi, CliBuildRequest, CliDiagnostics, CliExportDebugRequest, CliExportRequest, CliOutput,
81    CliRequest, CliThemeMode,
82};
83pub use document::{
84    DocumentId, DocumentKind, DocumentMetadataView, DocumentModelError, DocumentOutline,
85    DocumentOutlineItem, DocumentSnapshot, DocumentSnapshotFactory, DocumentSource, SourceKind,
86    SourceRevision, SourceUri,
87};
88pub use evaluation::{
89    BackendCapability, BackendCapabilityMatrix, CoverageStatus, EvaluationCoverageMatrix,
90    EvaluationFeatureCoverage, EvaluationFixture, EvaluationFixtureMatrix, FixtureCategory,
91};
92pub use export_contract::{HtmlExportContractEntry, HtmlExportContractMatrix, HtmlExportReadiness};
93pub use export_postprocess::{
94    ExportPostprocessEvaluationReport, ExportPostprocessEvaluationRequest,
95    ExportPostprocessEvaluationService, ExportPostprocessMode, ExportPostprocessPolicy,
96    ExportPostprocessStatus, KaruiPdfPostprocessAdapter, PdfPostprocessAdapter,
97    PdfPostprocessError, PdfPostprocessInput, PdfPostprocessOutput,
98};
99pub use export_quality::{
100    ExportFormatQualityScore, ExportQualityArtifacts, ExportQualityCheck, ExportQualityGate,
101    ExportQualityReport,
102};
103pub use forge::{
104    BuildGraph, BuildProfile, BuildRequest, ExportFormat, ExportOutput, ExportRequest,
105    ForgeBackend, ForgeDiagnostics, ForgeError, ForgePipeline, ManifestOnlyBackend,
106    MarkdownEvaluationTarget, RenderedDiagram, TransformStep,
107};
108pub use forge_diagram_render_types::{
109    DiagramRenderEngine, DiagramRenderRequest, DiagramRenderingBackend, KrrDiagramRenderEngine,
110};
111pub use theme::{KdvThemeMode, KdvThemeSnapshot};
112
113#[cfg(test)]
114mod test_support;