strictdoc 0.9.1__tar.gz → 0.9.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {strictdoc-0.9.1 → strictdoc-0.9.2}/PKG-INFO +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/__init__.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/excel/export/excel_generator.py +2 -6
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/excel/import_/excel_sheet_proxy.py +18 -23
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/excel/import_/excel_to_sdoc_converter.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/p01_sdoc/reqif_to_sdoc_converter.py +3 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/p01_sdoc/sdoc_to_reqif_converter.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/document.py +6 -6
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/document_from_file.py +4 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/document_grammar.py +2 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/document_view.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/model.py +32 -35
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/node.py +5 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/section.py +2 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/type_system.py +5 -4
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/reader.py +1 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/validations/sdoc_validator.py +3 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/caching_reader.py +2 -1
- strictdoc-0.9.2/strictdoc/backend/sdoc_source_code/comment_parser/marker_lexer.py +87 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/marker_parser.py +4 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/models/function.py +1 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/models/source_file_info.py +14 -12
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/processors/general_language_marker_processors.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/reader.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/reader_c.py +14 -4
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/reader_python.py +2 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/cli/main.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/document_finder.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/document_iterator.py +1 -17
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/document_meta.py +37 -34
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/document_tree_iterator.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/file_traceability_index.py +6 -9
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/graph/abstract_bucket.py +11 -11
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/graph/many_to_many_set.py +2 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/graph_database.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/project_config.py +22 -8
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/query_engine/query_object.py +2 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/query_engine/query_reader.py +4 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/source_tree.py +0 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/traceability_index.py +25 -17
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/traceability_index_builder.py +0 -5
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/constants.py +1 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/delete_requirement.py +0 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/delete_section.py +3 -4
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/section.py +4 -4
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/update_document_config.py +3 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/update_requirement.py +3 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/tree_cycle_detector.py +1 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/doxygen/doxygen_generator.py +0 -1
- strictdoc-0.9.2/strictdoc/export/html/document_type.py +48 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/form_objects/grammar_element_form_object.py +3 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/form_objects/grammar_form_object.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/form_objects/included_document_form_object.py +3 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/form_objects/requirement_form_object.py +4 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/document.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/document_deep_trace.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/document_pdf.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/document_table.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/document_trace.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/project_statistics.py +1 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/document_screen_view_object.py +10 -10
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/helpers.py +4 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/nestor_view_object.py +3 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/project_tree_stats.py +3 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/search_screen_view_object.py +3 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/source_file_view_object.py +4 -4
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/html_generator.py +3 -4
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/html_templates.py +3 -67
- strictdoc-0.9.2/strictdoc/export/html/jinja/assert_extension.py +52 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/renderers/link_renderer.py +7 -3
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/renderers/markup_renderer.py +2 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_shared/requirement_tree_left.jinja.html +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_shared/requirement_tree_right.jinja.html +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node/root.jinja +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/viewtype_menu.jinja +5 -5
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/diff_content.jinja +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/traceability_matrix/main.jinja +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/json/json_generator.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/rst/writer.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/spdx/spdx_generator.py +10 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/spdx/spdx_to_sdoc_converter.py +7 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/git/project_diff_analyzer.py +4 -10
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/coverage.py +1 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/file_system.py +6 -5
- strictdoc-0.9.2/strictdoc/helpers/git_client.py +73 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/google_test.py +2 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/parallelizer.py +65 -21
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/paths.py +7 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/sorting.py +4 -1
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/reload_config.py +4 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/routers/main_router.py +175 -116
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/routers/other_router.py +2 -2
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/server.py +2 -2
- strictdoc-0.9.1/strictdoc/backend/sdoc_source_code/comment_parser/marker_lexer.py +0 -59
- strictdoc-0.9.1/strictdoc/core/graph/validations.py +0 -44
- strictdoc-0.9.1/strictdoc/export/html/document_type.py +0 -71
- strictdoc-0.9.1/strictdoc/helpers/git_client.py +0 -102
- {strictdoc-0.9.1 → strictdoc-0.9.2}/.gitignore +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/LICENSE +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/NOTICE +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/README.md +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/pyproject.toml +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/excel/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/excel/excel_import.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/excel/export/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/excel/import_/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/p01_sdoc/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/reqif_export.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/reqif_import.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/sdoc_reqif_fields.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/constants.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/document_reference.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/error_handling.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/errors/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/errors/document_tree_error.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/free_text_reader.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/grammar/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/grammar/grammar.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/grammar/grammar_builder.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/grammar/grammar_grammar.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/grammar/type_system.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/grammar_reader.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/anchor.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/constants.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/document_config.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/free_text.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/inline_link.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/object_factory.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/models/reference.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/pickle_cache.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/processor.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/validations/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc/writer.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/constants.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/coverage_reports/gcov.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/grammar.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/helpers/comment_preprocessor.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/models/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/models/function_range_marker.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/models/range_marker.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/models/requirement_marker.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/models/source_node.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/parse_context.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/reader_robot.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/test_reports/junit_xml_reader.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/test_reports/robot_xml_reader.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/sdoc_source_code/tree_sitter_helpers.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/cli/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/cli/argument_int_range.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/cli/cli_arg_parser.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/cli/command_parser_builder.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/commands/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/commands/about_command.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/commands/diff_command.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/commands/dump_grammar_command.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/commands/manage_autouid_command.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/commands/version_command.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/actions/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/actions/export_action.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/actions/import_action.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/analyzers/document_stats.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/analyzers/document_uid_analyzer.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/asset_manager.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/constants.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/document_tree.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/environment.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/file_dependency_manager.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/file_tree.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/finders/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/finders/source_files_finder.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/graph/one_to_one_dictionary.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/query_engine/grammar.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/update_grammar.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/update_grammar_element.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/update_included_document.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/core/transforms/validation_error.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/autogen.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/base.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/collapsible_list.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/collapsible_toc.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/collapsible_tree.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/content.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/anchor_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/autocompletable_field_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/copy_stable_link_button_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/copy_to_clipboard_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/deletable_field_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/draggable_list_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/dropdown_menu_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/editable_field_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/modal_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/movable_field_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/scroll_into_view_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/controllers/tabs_controller.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/diff.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/diff.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/element.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/favicon.ico +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/fonts/NotoSans-Italic-VariableFont_wdth,wght.ttf +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/fonts/NotoSans-VariableFont_wdth,wght.ttf +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/fonts/NotoSansMono-VariableFont_wdth,wght.ttf +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/form.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/html2pdf4doc.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/layout.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/node.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/node_content.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/pan_with_space.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/project_coverage.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/project_coverage.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/project_tree.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/project_tree.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/requirement-tree.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/requirement__temporary.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/requirements-coverage.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/resizable_bar.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/source-code-coverage.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/source.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/stable_uri_forwarder.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/stimulus_umd.min.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/table_vew.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/toc_highlighting.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/traceability_matrix.css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/tree(not_in_use).css +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/turbo.min.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/viewtype_menu.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static/zoomable.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/LICENSE-MATHJAX +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/tex.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_AMS-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Bold.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Calligraphic-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Bold.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Fraktur-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Bold.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Italic.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-BoldItalic.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-Italic.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Math-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Bold.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Italic.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_SansSerif-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Script-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Typewriter-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Vector-Bold.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/output/chtml/fonts/woff-v2/MathJax_Zero.woff +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mathjax/tex-mml-chtml.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/mermaid/mermaid.min.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/nestor/bundle.umd.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/_static_extra/rapidoc/rapidoc-min.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/form_objects/document_config_form_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/form_objects/form_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/form_objects/rows/row_with_grammar_element_form_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/form_objects/section_form_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/document_tree.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/project_map.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/source_file_coverage.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/source_file_view_generator.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/traceability_matrix.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/diff_screen_results_view_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/diff_screen_view_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/project_statistics_view_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/project_tree_view_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/generators/view_objects/traceability_matrix_view_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/renderers/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/renderers/html_fragment_writer.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/renderers/text_to_html_writer.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg__separator.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_add.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_add_above.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_add_below.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_add_child.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_anchor.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_back.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_book.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_close.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_code.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_copy.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_delete.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_diff.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_document.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_done.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_edit.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_expand.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_file.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_folder.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_folder_collapse.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_folder_sm.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_fragment.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_fragment_draft.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_gear.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_go_to_doc.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_index.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_link.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_list.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_maximize.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_minimize.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_minusminus.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_move_down.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_move_up.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_plusplus.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_project.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_requirement.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_reset.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_search.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_section_collapse.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_source.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_source_pointer_in.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_source_pointer_out.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_stat.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_sync.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_toc.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_res/svg_ico16_tree.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_shared/nav.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/_shared/tags.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/_shared/stream_refresh_document.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/_shared/stream_updated_toc.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/add_document_metadata/stream_add_document_metadata.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/add_requirement_comment/stream_add_requirement_comment.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/add_requirement_relation/stream_add_requirement_relation.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/create_requirement/stream_cancel_new_requirement.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/create_requirement/stream_created_requirement.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/create_requirement/stream_new_requirement.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/create_section/stream_cancel_new_section.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/create_section/stream_created_section.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/create_section/stream_new_section.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/delete_requirement/stream_confirm_delete_requirement.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/delete_requirement/stream_delete_requirement.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/delete_section/stream_confirm_delete_section.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/delete_section/stream_delete_section.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_cancel_edit_document_config.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_edit_document_config.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/edit_document_config/stream_save_document_config.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/edit_requirement/stream_edit_requirement.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/edit_section/stream_edit_section.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/document/edit_section/stream_updated_section.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/node/show_full_node/stream_show_full_node.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/node/show_full_node/stream_show_full_section.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/project_index/import_reqif_document/stream_form_import_reqif_document.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/project_index/import_reqif_document/stream_refresh_with_imported_reqif_document.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/project_index/stream_create_document.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/actions/project_index/stream_new_document.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/autocomplete/field/stream_autocomplete_field.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/autocomplete/uid/stream_autocomplete_uid.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/base.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/anchor/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/badge/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/button/cancel.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/button/confirm.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/button/delete.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/button/diff.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/button/search.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/button/submit.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/confirm/_usage_example.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/confirm/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/field/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/field/autocompletable/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/field/contenteditable/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/field/file/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/field/text/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/field_action_button/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/row/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/example.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/frame.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/row/row_uid_with_reset/stream.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/row/row_with_comment.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/row/row_with_metadata.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/row/row_with_relation.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/row/row_with_text_field.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/form/search.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/grammar_form/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/grammar_form/row_with_grammar_element/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/grammar_form/row_with_new_grammar_element/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/grammar_form_element/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/grammar_form_element/row_with_custom_field/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/grammar_form_element/row_with_relation/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/grammar_form_element/row_with_reserved_field/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/header/_usage_example.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/header/header_pagetype.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/header/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/included_document_form/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/issue/banner.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/issue/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/modal/_usage_example.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/modal/form.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/modal/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node/card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node/copy_stable_link_button.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node/node_controls/card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node/node_controls/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node/readonly.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_content/card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_content/card_extends_card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_content/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_content/index_extends_node.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_content/index_extends_readonly.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_content/tiny.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_content/tiny_extends_card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/README.txt +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/comments/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/document_meta/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/document_title/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/files/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/links/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/meta/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/multiline/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/rationale/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/section_h/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/section_h/pdf.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/section_title/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/statement/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/text/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/title/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/uid/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/node_field/uid_standalone/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/resizable_bar/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/section/card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/section/card_extends_card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/section/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/section/index_extends_node.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/section/pdf.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/section/tiny.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/section/tiny_extends_card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/table_key_value/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/text_node/card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/text_node/card_extends_card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/text_node/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/text_node/index_extends_node.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/text_node/pdf.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/text_node/tiny.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/components/text_node/tiny_extends_card.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/rst/anchor.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/frame_header_document_title.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/frame_show_full_node.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/frame_show_full_section.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/frame_toc.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/project_tree.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/project_tree_child_documents.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/resizable_bar_with_project_tree.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/resizable_bar_with_toc.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/_shared/toc.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/actions.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/frame_document_config.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/frame_document_config_edit.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/frame_document_content.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/frame_document_issues.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/frame_requirement_form.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/frame_section_form.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/document/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/pdf/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/pdf/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/pdf/template/footer.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/pdf/template/frontpage.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/pdf/template/header.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/pdf/toc.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/table/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/table/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/traceability/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/traceability/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/traceability_deep/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/document/traceability_deep/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/changelog_content.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/diff_controls.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/fields/document_fields.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/fields/requirement_fields.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/fields/section_fields.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/form.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/frame_changelog_result.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/frame_diff_result.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/legend.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/nav_tabs.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/node/requirement.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/node/section.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/skeleton.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/git/sync/button.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/nestor/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/actions.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/frame_form_import_reqif.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/frame_form_new_document.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/frame_project_tree.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/project_map.jinja.js +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/project_map_file.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/project_map_folder.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/project_map_node.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/project_map_section.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/project_tree.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/project_tree_file.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_index/project_tree_folder.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_statistics/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/project_statistics/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/search/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/search/legend.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/search/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_coverage/file.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_coverage/folder.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_coverage/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_coverage/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_coverage/thead.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_coverage/value_bar.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/aside.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/file_stats.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/header__actions.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/header__source_file_name.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/main.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/node_title_for_banner_header.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/range_button.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/source_file_view/requirement.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/traceability_matrix/file.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/traceability_matrix/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/traceability_matrix/project_tree_flat_anchor_list.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/traceability_matrix/requirement.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/screens/traceability_matrix/resizable_bar_with_project_tree.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/website/document/index.jinja +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/templates/websocket.jinja.html +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/tools/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html/tools/html_embedded.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html2pdf/html2pdf_generator.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/html2pdf/pdf_print_driver.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/rst/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/rst/directives/raw_html_role.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/rst/directives/wildcard_enhanced_image.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/rst/document_rst_generator.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/rst/rst_templates.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/rst/rst_to_html_fragment_writer.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/rst/templates/requirement.jinja.rst +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/export/spdx/spdx_sdoc_container.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/git/change.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/git/change_generator.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/git/git_client.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/auto_described.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/cast.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/deprecation_engine.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/diff.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/exception.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/file_modification_time.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/file_stats.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/form_data.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/math.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/md5.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/mid.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/net.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/ordered_set.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/path_filter.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/pickle.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/rst.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/sha256.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/shard.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/string.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/textx.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/helpers/timing.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/__init__.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/app.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/config.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/error_object.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/server/helpers/turbo.py +0 -0
- {strictdoc-0.9.1 → strictdoc-0.9.2}/tests/integration/scripting_examples/questionnaires/02_user_provided_example/LICENSE +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: strictdoc
|
3
|
-
Version: 0.9.
|
3
|
+
Version: 0.9.2
|
4
4
|
Summary: StrictDoc is open-source software for technical documentation and requirements management.
|
5
5
|
Project-URL: Changelog, https://github.com/strictdoc-project/strictdoc/blob/main/CHANGELOG.md
|
6
6
|
Project-URL: Homepage, https://strictdoc.readthedocs.io/en/stable/
|
@@ -88,9 +88,7 @@ class ExcelGenerator:
|
|
88
88
|
all_nodes = list(
|
89
89
|
map(
|
90
90
|
lambda node_with_context_: node_with_context_[0],
|
91
|
-
document_iterator.all_content(
|
92
|
-
print_fragments=False, print_fragments_from_files=False
|
93
|
-
),
|
91
|
+
document_iterator.all_content(print_fragments=False),
|
94
92
|
)
|
95
93
|
)
|
96
94
|
req_uid_rows = ExcelGenerator._lookup_refs(all_nodes)
|
@@ -98,9 +96,7 @@ class ExcelGenerator:
|
|
98
96
|
if len(req_uid_rows):
|
99
97
|
for node, _ in traceability_index.get_document_iterator(
|
100
98
|
document
|
101
|
-
).all_content(
|
102
|
-
print_fragments=False, print_fragments_from_files=False
|
103
|
-
):
|
99
|
+
).all_content(print_fragments=False):
|
104
100
|
if not node.is_requirement() or not node.reserved_uid:
|
105
101
|
# Only export the requirements with UID.
|
106
102
|
continue
|
@@ -5,6 +5,7 @@ import openpyxl
|
|
5
5
|
import xlrd
|
6
6
|
|
7
7
|
from strictdoc.helpers.auto_described import auto_described
|
8
|
+
from strictdoc.helpers.cast import assert_cast
|
8
9
|
|
9
10
|
|
10
11
|
class ExcelLibType(Enum):
|
@@ -15,7 +16,7 @@ class ExcelLibType(Enum):
|
|
15
16
|
@auto_described
|
16
17
|
class ExcelSheetProxy:
|
17
18
|
"""
|
18
|
-
|
19
|
+
An adapter class to open xls(xlrd) or xlsx(openpyxl) with the same interface.
|
19
20
|
"""
|
20
21
|
|
21
22
|
def __init__(self, file: str):
|
@@ -23,7 +24,7 @@ class ExcelSheetProxy:
|
|
23
24
|
if file.endswith(".xlsx"):
|
24
25
|
self.workbook = openpyxl.load_workbook(file)
|
25
26
|
self.sheet = self.workbook.active
|
26
|
-
if self.sheet is None:
|
27
|
+
if self.sheet is None: # pragma: no cover
|
27
28
|
raise RuntimeError(
|
28
29
|
"Couldn't open the first sheet of the workbook"
|
29
30
|
)
|
@@ -32,8 +33,8 @@ class ExcelSheetProxy:
|
|
32
33
|
self.workbook = xlrd.open_workbook(file, on_demand=True)
|
33
34
|
self.sheet = self.workbook.sheet_by_index(0)
|
34
35
|
self.lib = ExcelLibType.XLRD
|
35
|
-
else:
|
36
|
-
raise
|
36
|
+
else: # pragma: no cover
|
37
|
+
raise AssertionError("Unsupported file format")
|
37
38
|
|
38
39
|
@property
|
39
40
|
def name(self) -> str:
|
@@ -44,52 +45,46 @@ class ExcelSheetProxy:
|
|
44
45
|
return str(self.sheet.title)
|
45
46
|
elif self.lib == ExcelLibType.XLRD:
|
46
47
|
return str(self.sheet.name)
|
47
|
-
|
48
|
+
raise AssertionError
|
48
49
|
|
49
50
|
@property
|
50
51
|
def ncols(self) -> int:
|
51
52
|
"""
|
52
53
|
The number of columns.
|
53
54
|
"""
|
54
|
-
ncols: int = 0
|
55
55
|
if self.lib == ExcelLibType.OPENPYXL:
|
56
|
-
|
56
|
+
return assert_cast(self.sheet.max_column, int)
|
57
57
|
elif self.lib == ExcelLibType.XLRD:
|
58
|
-
|
59
|
-
|
58
|
+
return assert_cast(self.sheet.ncols, int)
|
59
|
+
raise AssertionError
|
60
60
|
|
61
61
|
@property
|
62
62
|
def nrows(self) -> int:
|
63
63
|
"""
|
64
64
|
The number of rows.
|
65
65
|
"""
|
66
|
-
nrows: int = 0
|
67
66
|
if self.lib == ExcelLibType.OPENPYXL:
|
68
|
-
|
67
|
+
return assert_cast(self.sheet.max_row, int)
|
69
68
|
elif self.lib == ExcelLibType.XLRD:
|
70
|
-
|
71
|
-
|
69
|
+
return assert_cast(self.sheet.nrows, int)
|
70
|
+
raise AssertionError
|
72
71
|
|
73
72
|
def get_cell_value(self, row: int, col: int) -> str:
|
74
73
|
"""
|
75
74
|
Returns the value at row/col as string.
|
76
75
|
"""
|
77
|
-
cell_value: str = ""
|
78
76
|
if self.lib == ExcelLibType.OPENPYXL:
|
79
|
-
|
80
|
-
self.sheet.cell(row=row + 1, column=col + 1).value or ""
|
81
|
-
)
|
77
|
+
return self.sheet.cell(row=row + 1, column=col + 1).value or ""
|
82
78
|
elif self.lib == ExcelLibType.XLRD:
|
83
|
-
|
84
|
-
|
79
|
+
return assert_cast(self.sheet.cell_value(row, col), str)
|
80
|
+
raise AssertionError
|
85
81
|
|
86
82
|
def row_values(self, row: int) -> List[str]:
|
87
83
|
"""
|
88
84
|
Returns a full row as list.
|
89
85
|
"""
|
90
|
-
row_values: List[str] = []
|
91
86
|
if self.lib == ExcelLibType.OPENPYXL:
|
92
|
-
|
87
|
+
return [(cell.value or "") for cell in self.sheet[row + 1]]
|
93
88
|
elif self.lib == ExcelLibType.XLRD:
|
94
|
-
|
95
|
-
|
89
|
+
return assert_cast(self.sheet.row_values(row), list)
|
90
|
+
raise AssertionError
|
{strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/p01_sdoc/reqif_to_sdoc_converter.py
RENAMED
@@ -66,7 +66,7 @@ class P01_ReqIFToSDocConverter:
|
|
66
66
|
def convert_reqif_bundle(
|
67
67
|
reqif_bundle: ReqIFBundle,
|
68
68
|
enable_mid: bool,
|
69
|
-
import_markup: str,
|
69
|
+
import_markup: Optional[str],
|
70
70
|
) -> List[SDocDocument]:
|
71
71
|
context = P01_ReqIFToSDocBuildContext(
|
72
72
|
enable_mid=enable_mid, import_markup=import_markup
|
@@ -361,7 +361,7 @@ class P01_ReqIFToSDocConverter:
|
|
361
361
|
attribute.definition_ref
|
362
362
|
].long_name
|
363
363
|
if long_name_or_none is None:
|
364
|
-
raise NotImplementedError
|
364
|
+
raise NotImplementedError
|
365
365
|
field_name: str = long_name_or_none
|
366
366
|
if attribute.attribute_type == SpecObjectAttributeType.ENUMERATION:
|
367
367
|
sdoc_field_name = P01_ReqIFToSDocConverter.convert_requirement_field_from_reqif(
|
@@ -393,7 +393,7 @@ class P01_ReqIFToSDocConverter:
|
|
393
393
|
|
394
394
|
break
|
395
395
|
else:
|
396
|
-
raise NotImplementedError
|
396
|
+
raise NotImplementedError
|
397
397
|
|
398
398
|
enum_values = ", ".join(enum_values_resolved)
|
399
399
|
fields.append(
|
{strictdoc-0.9.1 → strictdoc-0.9.2}/strictdoc/backend/reqif/p01_sdoc/sdoc_to_reqif_converter.py
RENAMED
@@ -245,7 +245,7 @@ class P01_SDocToReqIFObjectConverter:
|
|
245
245
|
|
246
246
|
# FIXME: ReqIF must export complete documents including fragments.
|
247
247
|
for node_, _ in document_iterator.all_content(
|
248
|
-
print_fragments=False
|
248
|
+
print_fragments=False
|
249
249
|
):
|
250
250
|
if isinstance(node_, SDocSection):
|
251
251
|
raise AssertionError(
|
@@ -12,7 +12,6 @@ from strictdoc.backend.sdoc.models.document_grammar import (
|
|
12
12
|
)
|
13
13
|
from strictdoc.backend.sdoc.models.document_view import DocumentView
|
14
14
|
from strictdoc.backend.sdoc.models.model import (
|
15
|
-
SDocDocumentContentIF,
|
16
15
|
SDocDocumentFromFileIF,
|
17
16
|
SDocDocumentIF,
|
18
17
|
SDocElementIF,
|
@@ -47,7 +46,7 @@ class SDocDocument(SDocDocumentIF):
|
|
47
46
|
config: Optional[DocumentConfig],
|
48
47
|
view: Optional[DocumentView],
|
49
48
|
grammar: Optional[DocumentGrammar],
|
50
|
-
section_contents: List[
|
49
|
+
section_contents: List[SDocElementIF],
|
51
50
|
is_bundle_document: bool = False,
|
52
51
|
) -> None:
|
53
52
|
self.title: str = title
|
@@ -61,7 +60,7 @@ class SDocDocument(SDocDocumentIF):
|
|
61
60
|
view if view is not None else DocumentView.create_default(self)
|
62
61
|
)
|
63
62
|
self.grammar: Optional[DocumentGrammar] = grammar
|
64
|
-
self.section_contents: List[
|
63
|
+
self.section_contents: List[SDocElementIF] = section_contents
|
65
64
|
|
66
65
|
self.is_bundle_document: bool = is_bundle_document
|
67
66
|
|
@@ -86,9 +85,10 @@ class SDocDocument(SDocDocumentIF):
|
|
86
85
|
self, element_type: Optional[str] = None
|
87
86
|
) -> Generator[SDocNodeIF, None, None]:
|
88
87
|
"""
|
89
|
-
|
90
|
-
|
91
|
-
|
88
|
+
Iterate over all non-[TEXT] nodes in the document.
|
89
|
+
|
90
|
+
If element_type is given, then only nodes of type `element_type` are
|
91
|
+
returned. Otherwise, all element types are returned.
|
92
92
|
"""
|
93
93
|
task_list: List[SDocElementIF] = list(self.section_contents)
|
94
94
|
while task_list:
|
@@ -38,9 +38,10 @@ class DocumentFromFile(SDocDocumentFromFileIF):
|
|
38
38
|
self, element_type: Optional[str] = None
|
39
39
|
) -> Generator[SDocNodeIF, None, None]:
|
40
40
|
"""
|
41
|
-
|
42
|
-
|
43
|
-
|
41
|
+
Iterate over all non-[TEXT] nodes in the document.
|
42
|
+
|
43
|
+
If element_type is given, then only nodes of type `element_type` are
|
44
|
+
returned. Otherwise, all element types are returned.
|
44
45
|
"""
|
45
46
|
|
46
47
|
task_list: List[SDocElementIF] = list(self.section_contents)
|
@@ -279,8 +279,8 @@ class DocumentGrammar(SDocGrammarIF):
|
|
279
279
|
|
280
280
|
self.update_with_elements(elements)
|
281
281
|
|
282
|
-
# textX passes an empty string instead of None when
|
283
|
-
# not provided in input.
|
282
|
+
# The textX parser passes an empty string instead of None when
|
283
|
+
# import_from_file is not provided in input.
|
284
284
|
if import_from_file is not None and len(import_from_file) == 0:
|
285
285
|
import_from_file = None
|
286
286
|
self.import_from_file: Optional[str] = import_from_file
|
@@ -3,6 +3,7 @@ from typing import Generator, List, Optional, Union
|
|
3
3
|
|
4
4
|
from strictdoc.backend.sdoc.models.document_config import DocumentConfig
|
5
5
|
from strictdoc.core.document_meta import DocumentMeta
|
6
|
+
from strictdoc.helpers.mid import MID
|
6
7
|
|
7
8
|
|
8
9
|
class SDocNodeFieldIF(ABC):
|
@@ -10,61 +11,71 @@ class SDocNodeFieldIF(ABC):
|
|
10
11
|
|
11
12
|
|
12
13
|
class SDocNodeIF(ABC):
|
14
|
+
reserved_mid: MID
|
13
15
|
node_type: str
|
14
16
|
ng_level: Optional[int]
|
15
17
|
ng_resolved_custom_level: Optional[str]
|
16
|
-
section_contents: List["
|
18
|
+
section_contents: List["SDocElementIF"]
|
19
|
+
|
20
|
+
# FIXME: Get rid of @property everywhere.
|
21
|
+
@property
|
22
|
+
def reserved_uid(self) -> Optional[str]:
|
23
|
+
raise NotImplementedError
|
24
|
+
|
25
|
+
@property
|
26
|
+
def reserved_title(self) -> Optional[str]:
|
27
|
+
raise NotImplementedError
|
17
28
|
|
18
29
|
@abstractmethod
|
19
30
|
def is_normative_node(self) -> bool:
|
20
|
-
raise NotImplementedError
|
31
|
+
raise NotImplementedError
|
21
32
|
|
22
33
|
@abstractmethod
|
23
34
|
def is_text_node(self) -> bool:
|
24
|
-
raise NotImplementedError
|
35
|
+
raise NotImplementedError
|
25
36
|
|
26
37
|
@abstractmethod
|
27
38
|
def get_debug_info(self) -> str:
|
28
|
-
raise NotImplementedError
|
39
|
+
raise NotImplementedError
|
29
40
|
|
30
41
|
@abstractmethod
|
31
42
|
def get_document(self) -> Optional["SDocDocumentIF"]:
|
32
|
-
raise NotImplementedError
|
43
|
+
raise NotImplementedError
|
33
44
|
|
34
45
|
@abstractmethod
|
35
46
|
def get_including_document(self) -> Optional["SDocDocumentIF"]:
|
36
|
-
raise NotImplementedError
|
47
|
+
raise NotImplementedError
|
37
48
|
|
38
49
|
@abstractmethod
|
39
50
|
def get_parent_or_including_document(self) -> "SDocDocumentIF":
|
40
|
-
raise NotImplementedError
|
51
|
+
raise NotImplementedError
|
41
52
|
|
42
53
|
@abstractmethod
|
43
54
|
def get_prefix(self) -> Optional[str]:
|
44
|
-
raise NotImplementedError
|
55
|
+
raise NotImplementedError
|
45
56
|
|
46
57
|
|
47
58
|
class SDocSectionIF(ABC):
|
48
59
|
parent: Union["SDocDocumentIF", "SDocSectionIF"]
|
49
60
|
ng_level: Optional[int]
|
50
61
|
ng_resolved_custom_level: Optional[str]
|
51
|
-
section_contents: List["
|
62
|
+
section_contents: List["SDocElementIF"]
|
52
63
|
|
53
64
|
@abstractmethod
|
54
65
|
def get_document(self) -> Optional["SDocDocumentIF"]:
|
55
|
-
raise NotImplementedError
|
66
|
+
raise NotImplementedError
|
56
67
|
|
57
68
|
@abstractmethod
|
58
69
|
def get_prefix(self) -> str:
|
59
|
-
raise NotImplementedError
|
70
|
+
raise NotImplementedError
|
60
71
|
|
61
72
|
@abstractmethod
|
62
73
|
def get_debug_info(self) -> str:
|
63
|
-
raise NotImplementedError
|
74
|
+
raise NotImplementedError
|
64
75
|
|
65
76
|
@abstractmethod
|
66
77
|
def get_display_title(self, include_toc_number: bool = True) -> str:
|
67
|
-
raise NotImplementedError
|
78
|
+
raise NotImplementedError
|
68
79
|
|
69
80
|
|
70
81
|
class SDocGrammarIF:
|
@@ -75,32 +86,32 @@ class SDocDocumentIF(ABC):
|
|
75
86
|
config: DocumentConfig
|
76
87
|
grammar: Optional[SDocGrammarIF]
|
77
88
|
meta: Optional[DocumentMeta]
|
78
|
-
section_contents: List["
|
89
|
+
section_contents: List["SDocElementIF"]
|
79
90
|
included_documents: List["SDocDocumentIF"]
|
80
91
|
is_bundle_document: bool
|
81
92
|
ng_level: Optional[int]
|
82
93
|
|
83
94
|
@abstractmethod
|
84
95
|
def get_prefix(self) -> str:
|
85
|
-
raise NotImplementedError
|
96
|
+
raise NotImplementedError
|
86
97
|
|
87
98
|
@abstractmethod
|
88
99
|
def get_debug_info(self) -> str:
|
89
|
-
raise NotImplementedError
|
100
|
+
raise NotImplementedError
|
90
101
|
|
91
102
|
@abstractmethod
|
92
103
|
def iterate_included_documents_depth_first(
|
93
104
|
self,
|
94
105
|
) -> Generator["SDocDocumentIF", None, None]:
|
95
|
-
raise NotImplementedError
|
106
|
+
raise NotImplementedError
|
96
107
|
|
97
108
|
@abstractmethod
|
98
109
|
def get_display_title(self, include_toc_number: bool = True) -> str:
|
99
|
-
raise NotImplementedError
|
110
|
+
raise NotImplementedError
|
100
111
|
|
101
112
|
@property
|
102
113
|
def ng_resolved_custom_level(self) -> Optional[str]:
|
103
|
-
raise NotImplementedError
|
114
|
+
raise NotImplementedError
|
104
115
|
|
105
116
|
|
106
117
|
class SDocDocumentFromFileIF(ABC):
|
@@ -112,25 +123,11 @@ class SDocDocumentFromFileIF(ABC):
|
|
112
123
|
self,
|
113
124
|
element_type: Optional[str] = None,
|
114
125
|
) -> Generator[SDocNodeIF, None, None]:
|
115
|
-
raise NotImplementedError
|
126
|
+
raise NotImplementedError
|
116
127
|
|
117
128
|
@property
|
118
129
|
def section_contents(self) -> List[SDocDocumentIF]:
|
119
|
-
raise NotImplementedError
|
120
|
-
|
121
|
-
|
122
|
-
SDocSectionContentIF = Union[
|
123
|
-
SDocNodeIF,
|
124
|
-
SDocSectionIF,
|
125
|
-
SDocDocumentFromFileIF,
|
126
|
-
]
|
127
|
-
|
128
|
-
|
129
|
-
SDocDocumentContentIF = Union[
|
130
|
-
SDocDocumentFromFileIF,
|
131
|
-
SDocNodeIF,
|
132
|
-
SDocSectionIF,
|
133
|
-
]
|
130
|
+
raise NotImplementedError
|
134
131
|
|
135
132
|
|
136
133
|
SDocElementIF = Union[
|
@@ -14,8 +14,8 @@ from strictdoc.backend.sdoc.models.document_grammar import (
|
|
14
14
|
from strictdoc.backend.sdoc.models.inline_link import InlineLink
|
15
15
|
from strictdoc.backend.sdoc.models.model import (
|
16
16
|
SDocDocumentIF,
|
17
|
+
SDocElementIF,
|
17
18
|
SDocNodeIF,
|
18
|
-
SDocSectionContentIF,
|
19
19
|
SDocSectionIF,
|
20
20
|
)
|
21
21
|
from strictdoc.backend.sdoc.models.reference import (
|
@@ -108,7 +108,7 @@ class SDocNode(SDocNodeIF):
|
|
108
108
|
fields: List[SDocNodeField],
|
109
109
|
relations: List[Reference],
|
110
110
|
is_composite: bool = False,
|
111
|
-
section_contents: Optional[List[
|
111
|
+
section_contents: Optional[List[SDocElementIF]] = None,
|
112
112
|
node_type_close: Optional[str] = None,
|
113
113
|
) -> None:
|
114
114
|
assert parent
|
@@ -142,7 +142,7 @@ class SDocNode(SDocNodeIF):
|
|
142
142
|
has_meta = True
|
143
143
|
ordered_fields_lookup.setdefault(field.field_name, []).append(field)
|
144
144
|
|
145
|
-
self.section_contents: List[
|
145
|
+
self.section_contents: List[SDocElementIF] = (
|
146
146
|
section_contents if section_contents is not None else []
|
147
147
|
)
|
148
148
|
|
@@ -624,6 +624,8 @@ class SDocNode(SDocNodeIF):
|
|
624
624
|
value: Optional[Union[str, SDocNodeField]],
|
625
625
|
) -> None:
|
626
626
|
"""
|
627
|
+
Create or update a field by name with the given value.
|
628
|
+
|
627
629
|
The purpose of this purpose is to provide a single-method API for
|
628
630
|
updating any field of a requirement. A requirement might use only some
|
629
631
|
fields of a document grammar, so an extra exercise done by the method is
|
@@ -12,7 +12,7 @@ from strictdoc.backend.sdoc.models.document_grammar import (
|
|
12
12
|
)
|
13
13
|
from strictdoc.backend.sdoc.models.model import (
|
14
14
|
SDocDocumentIF,
|
15
|
-
|
15
|
+
SDocElementIF,
|
16
16
|
SDocSectionIF,
|
17
17
|
)
|
18
18
|
from strictdoc.helpers.auto_described import auto_described
|
@@ -36,7 +36,7 @@ class SDocSection(SDocSectionIF):
|
|
36
36
|
custom_level: Optional[str],
|
37
37
|
title: str,
|
38
38
|
requirement_prefix: Optional[str],
|
39
|
-
section_contents: List[
|
39
|
+
section_contents: List[SDocElementIF],
|
40
40
|
):
|
41
41
|
self.parent: Union[SDocDocumentIF, SDocSectionIF] = parent
|
42
42
|
|
@@ -70,8 +70,8 @@ class FileEntry:
|
|
70
70
|
file_path_posix = g_file_path.replace("\\", "/")
|
71
71
|
self.file_path_posix = file_path_posix
|
72
72
|
|
73
|
-
# textX passes an empty string even if there is no LINE_RANGE
|
74
|
-
# in the SDoc source.
|
73
|
+
# The textX parser passes an empty string even if there is no LINE_RANGE
|
74
|
+
# provided in the SDoc source.
|
75
75
|
g_line_range = (
|
76
76
|
g_line_range
|
77
77
|
if g_line_range is not None and len(g_line_range) > 0
|
@@ -88,7 +88,8 @@ class FileEntry:
|
|
88
88
|
int(range_components_str[1]),
|
89
89
|
)
|
90
90
|
|
91
|
-
# textX parses an optional element as an empty string. We
|
91
|
+
# The textX parser parses an optional element as an empty string. We
|
92
|
+
# make it to None ourselves.
|
92
93
|
self.function: Optional[str] = (
|
93
94
|
function if function is not None and len(function) > 0 else None
|
94
95
|
)
|
@@ -198,7 +199,7 @@ class GrammarElementFieldTag(GrammarElementField):
|
|
198
199
|
|
199
200
|
|
200
201
|
@auto_described
|
201
|
-
class GrammarElementRelationParent:
|
202
|
+
class GrammarElementRelationParent: # noqa: PLW1641
|
202
203
|
def __init__(
|
203
204
|
self, parent, relation_type: str, relation_role: Optional[str]
|
204
205
|
):
|
@@ -77,8 +77,7 @@ class SDReader:
|
|
77
77
|
self, file_path: str, project_config: ProjectConfig
|
78
78
|
) -> SDocDocument:
|
79
79
|
"""
|
80
|
-
|
81
|
-
object.
|
80
|
+
Parse a provided .sdoc file and convert it into a Document object.
|
82
81
|
"""
|
83
82
|
|
84
83
|
unpickled_content = PickleCache.read_from_cache(
|
@@ -29,6 +29,7 @@ MULTIPLE_CHOICE_FIELD_REGEX = re.compile(
|
|
29
29
|
def multi_choice_regex_match(value: str) -> bool:
|
30
30
|
"""
|
31
31
|
Validate MultipleChoice field value.
|
32
|
+
|
32
33
|
Bug: Forward slashes in field values cause errors #2197,
|
33
34
|
https://github.com/strictdoc-project/strictdoc/issues/2197
|
34
35
|
"""
|
@@ -39,8 +40,8 @@ def multi_choice_regex_match(value: str) -> bool:
|
|
39
40
|
|
40
41
|
class SDocValidator:
|
41
42
|
"""
|
42
|
-
|
43
|
-
|
43
|
+
Class that validates SDoc after textX parsing and processing steps.
|
44
|
+
|
44
45
|
FIXME: In the future, all processing validation steps could be moved to this
|
45
46
|
class as well. This would remove the need in the ParseContext class
|
46
47
|
and simplify several other implementation details.
|
@@ -73,7 +73,8 @@ class SourceFileTraceabilityCachingReader:
|
|
73
73
|
or path_to_file.endswith(".hpp")
|
74
74
|
or path_to_file.endswith(".cpp")
|
75
75
|
):
|
76
|
-
|
76
|
+
parse_nodes = project_config.shall_parse_nodes(path_to_file)
|
77
|
+
return SourceFileTraceabilityReader_C(parse_nodes=parse_nodes)
|
77
78
|
if path_to_file.endswith(".robot"):
|
78
79
|
return SourceFileTraceabilityReader_Robot()
|
79
80
|
return SourceFileTraceabilityReader()
|
@@ -0,0 +1,87 @@
|
|
1
|
+
from string import Template
|
2
|
+
|
3
|
+
from lark import Lark, ParseTree, UnexpectedToken
|
4
|
+
|
5
|
+
from strictdoc.backend.sdoc_source_code.constants import (
|
6
|
+
REGEX_REQ,
|
7
|
+
RESERVED_KEYWORDS,
|
8
|
+
)
|
9
|
+
|
10
|
+
|
11
|
+
class GrammarTemplate(Template):
|
12
|
+
delimiter = "##"
|
13
|
+
|
14
|
+
|
15
|
+
RELATION_MARKER_START = r"@relation[\(\{]"
|
16
|
+
|
17
|
+
GRAMMAR = GrammarTemplate("""
|
18
|
+
start: ##START
|
19
|
+
|
20
|
+
relation_marker: _RELATION_MARKER_START _WS? (relation_node_uid _SEP _WS)+ "scope=" relation_scope ("," _WS "role=" relation_role)? _WS? _BRACE_RIGHT
|
21
|
+
|
22
|
+
_RELATION_MARKER_START: /##RELATION_MARKER_START/
|
23
|
+
relation_node_uid: /##REGEX_REQ/
|
24
|
+
relation_scope: /file|class|function|line|range_start|range_end/
|
25
|
+
relation_role: ALPHANUMERIC_WORD
|
26
|
+
|
27
|
+
node_field: node_name ":" node_multiline_value
|
28
|
+
node_name: /(?!(##RESERVED_KEYWORDS))[A-Z_]+/
|
29
|
+
node_multiline_value: (_WS_INLINE | _NL) (NODE_FIRST_STRING_VALUE _NL) (NODE_STRING_VALUE _NL)*
|
30
|
+
|
31
|
+
NODE_FIRST_STRING_VALUE.2: /\\s*[^\n\r]+/x
|
32
|
+
NODE_STRING_VALUE.2: /(?![ ]*##RELATION_MARKER_START)(?!\\s*[A-Z_]+: )[^\n\r]+/x
|
33
|
+
|
34
|
+
_NORMAL_STRING_NO_MARKER_NO_NODE: /(?!\\s*##RELATION_MARKER_START)((?!\\s*[A-Z_]+: )|(##RESERVED_KEYWORDS)).+/
|
35
|
+
|
36
|
+
_NORMAL_STRING_NO_MARKER: /(?!\\s*##RELATION_MARKER_START).+/
|
37
|
+
|
38
|
+
_BRACE_LEFT: /[\\(\\{{]/
|
39
|
+
_BRACE_RIGHT: /[\\)\\}}]/
|
40
|
+
|
41
|
+
_SEP: ","
|
42
|
+
|
43
|
+
_NL : (CR? LF)
|
44
|
+
|
45
|
+
_WS : WS
|
46
|
+
_WS_INLINE : WS_INLINE
|
47
|
+
|
48
|
+
ALPHANUMERIC_WORD: /[a-zA-Z0-9_]+/
|
49
|
+
|
50
|
+
%import common.WS -> WS
|
51
|
+
%import common.CR -> CR
|
52
|
+
%import common.LF -> LF
|
53
|
+
%import common.WS_INLINE -> WS_INLINE
|
54
|
+
%import common.NEWLINE -> NEWLINE
|
55
|
+
""")
|
56
|
+
|
57
|
+
|
58
|
+
class MarkerLexer:
|
59
|
+
@staticmethod
|
60
|
+
def parse(source_input: str, parse_nodes: bool = False) -> ParseTree:
|
61
|
+
if parse_nodes:
|
62
|
+
start = "(relation_marker | node_field | _NORMAL_STRING_NO_MARKER_NO_NODE | _WS)*"
|
63
|
+
else:
|
64
|
+
start = "(relation_marker | _NORMAL_STRING_NO_MARKER | _WS)*"
|
65
|
+
|
66
|
+
grammar = GRAMMAR.substitute(
|
67
|
+
RELATION_MARKER_START=RELATION_MARKER_START,
|
68
|
+
RESERVED_KEYWORDS=RESERVED_KEYWORDS,
|
69
|
+
REGEX_REQ=REGEX_REQ,
|
70
|
+
START=start,
|
71
|
+
)
|
72
|
+
parser: Lark = Lark(
|
73
|
+
grammar, parser="lalr", cache=True, propagate_positions=True
|
74
|
+
)
|
75
|
+
|
76
|
+
try:
|
77
|
+
# FIXME: Without rstrip, there is an edge case where the parser
|
78
|
+
# breaks when resolving conflicts between multiline node
|
79
|
+
# fields and normal strings.
|
80
|
+
# See also test: test_31_single_node_field.
|
81
|
+
tree: ParseTree = parser.parse(source_input.rstrip() + "\n")
|
82
|
+
except UnexpectedToken as exception_: # pragma: no cover
|
83
|
+
print( # noqa: T201
|
84
|
+
"error: could not parse source comment:\n" + source_input
|
85
|
+
)
|
86
|
+
raise exception_
|
87
|
+
return tree
|
@@ -28,6 +28,7 @@ class MarkerParser:
|
|
28
28
|
comment_line_start: int,
|
29
29
|
entity_name: Optional[str] = None,
|
30
30
|
col_offset: int = 0,
|
31
|
+
parse_nodes: bool = False,
|
31
32
|
) -> SourceNode:
|
32
33
|
"""
|
33
34
|
Parse relation markers from source file comments.
|
@@ -48,7 +49,9 @@ class MarkerParser:
|
|
48
49
|
|
49
50
|
input_string = preprocess_source_code_comment(input_string)
|
50
51
|
|
51
|
-
tree: ParseTree = MarkerLexer.parse(
|
52
|
+
tree: ParseTree = MarkerLexer.parse(
|
53
|
+
input_string, parse_nodes=parse_nodes
|
54
|
+
)
|
52
55
|
|
53
56
|
for element_ in tree.children:
|
54
57
|
if not isinstance(element_, Tree):
|