StrictDoc Documentation
strictdoc/export/html/generators/document_table.py
Source file coverage
Path:
strictdoc/export/html/generators/document_table.py
Lines:
41
Non-empty lines:
37
Non-empty lines covered with requirements:
37 / 37 (100.0%)
Functions:
2
Functions covered by requirements:
2 / 2 (100.0%)
1
"""
2
@relation(SDOC-SRS-62, scope=file)
3
"""
4
 
5
from markupsafe import Markup
6
 
7
from strictdoc.backend.sdoc.models.document import SDocDocument
8
from strictdoc.core.project_config import ProjectConfig
9
from strictdoc.core.traceability_index import TraceabilityIndex
10
from strictdoc.export.html.document_type import DocumentType
11
from strictdoc.export.html.generators.view_objects.document_screen_view_object import (
12
    DocumentScreenViewObject,
13
)
14
from strictdoc.export.html.html_templates import HTMLTemplates
15
from strictdoc.export.html.renderers.link_renderer import LinkRenderer
16
from strictdoc.export.html.renderers.markup_renderer import MarkupRenderer
17
from strictdoc.helpers.git_client import GitClient
18
 
19
 
20
class DocumentTableHTMLGenerator:
21
    @staticmethod
22
    def export(
23
        project_config: ProjectConfig,
24
        document: SDocDocument,
25
        traceability_index: TraceabilityIndex,
26
        markup_renderer: MarkupRenderer,
27
        link_renderer: LinkRenderer,
28
        git_client: GitClient,
29
        html_templates: HTMLTemplates,
30
    ) -> Markup:
31
        view_object = DocumentScreenViewObject(
32
            document_type=DocumentType.TABLE,
33
            document=document,
34
            traceability_index=traceability_index,
35
            project_config=project_config,
36
            link_renderer=link_renderer,
37
            markup_renderer=markup_renderer,
38
            jinja_environment=html_templates.jinja_environment(),
39
            git_client=git_client,
40
        )
41
        return view_object.render_screen()